首页 > 其他分享 >一、TCP/IP协议

一、TCP/IP协议

时间:2024-05-28 09:23:47浏览次数:12  
标签:协议 IP TCP 传输 MAC 以太网 网络接口

学习自###### https://xiaolincoding.com/network/1_base/tcp_ip_model.html#%E5%BA%94%E7%94%A8%E5%B1%82

前提

同一设备间的通信:管道、消息队列、共享内容、信号等方式
不同设备间的通信:通用的网络协议来兼容各种设备
网络协议是分层的:应用层、传输层、网络层、网络接口层

应用层(Application Layer)

用户直接接触到的,专注于为用户提供应用功能,应用层的数据会传给传输层,但是不会考虑如何传输

传输层(Transport Layer)

仅作为传输媒介,不实现传输功能

有两个传输协议:TCP和UDP
TCP(传输控制协议Transmission Control Protocol):
  • 应用更广泛
  • 相比UDP多了很多特性:流量控制、超时重传、拥塞控制
  • 保证数据包可靠传输给对方。
    -TCP段:传输数据包超过MSS(TCP最大报文段长度),就需要进行分块运输。
    image
  • 端口:用编号将在接收或者传输数据的应用进行区分;80端口通常是Web服务器使用;22端口通常是远程登录服务器使用。
UDP(用户数据报协议 User Datagram Protocol):
  • 只负责发送数据包,不保证能否抵达
  • 实时性好,效率高
  • 将TCP的特性在应用层实现就可以实现UDP的可靠传输

网络层(Internet Layer)

负责实现实际的传输功能
image

最常用的是IP协议(Internet Protocol):

image

  • IP协议将传输层的报文作为数据部分,再加上IP包头组装成IP报文。
  • IP报文大小如果超过MTU(以太网中一般为1500字节)就会再次进行分片
IP地址:给设备进行编号
  • 网络号:负责识别该IP地址属于哪个【子网】的;

  • 主机号:负责标识同一【子网】下的不同主机

##### IP协议的寻址作用告诉我们去往下一个目的地该朝哪个方向走,路由则是根据【下一个目的地】选择路径。

网络接口层(Link Layer)

在IP头部前面加上MAC头部,并封装成数据帧(Data fame)发送到网络上。
image
IP 头部中的接收方 IP 地址表示网络包的目的地,通过这个地址我们就可以判断要将包发到哪里,但在以太网的世界中,这个思路是行不通的。

什么是以太网呢?电脑上的以太网接口,Wi-Fi接口,以太网交换机、路由器上的千兆,万兆以太网口,还有网线,它们都是以太网的组成部分。以太网就是一种在「局域网」内,把附近的设备连接起来,使它们之间可以进行通讯的技术。
以太网在判断网络包目的地时和 IP 的方式不同,因此必须采用相匹配的方式才能在以太网中将包发往目的地,而 MAC 头部就是干这个用的,所以,在以太网进行通讯要用到 MAC 地址。
MAC 头部是以太网使用的头部,它包含了接收方和发送方的 MAC 地址等信息,我们可以通过 ARP 协议获取对方的 MAC 地址。
所以说,网络接口层主要为网络层提供「链路级别」传输的服务,负责在以太网、WiFi 这样的底层网络上发送原始数据包,工作在网卡这个层次,使用 MAC 地址来标识网络上的设备。

总结

TCP/IP协议分为四层:应用层、传输层、网络层、网络接口层
image

封装格式****

image

传输单位统称为数据包****

网络接口层传输单位为帧(frame)、IP层传输单位为包(package)、TCP层传输单位为段(segment)、HTTP的传输单位为消息或报文(message)

标签:协议,IP,TCP,传输,MAC,以太网,网络接口
From: https://www.cnblogs.com/cassie-xiong/p/18217052

相关文章

  • 《计算机网络微课堂》4-4 IP数据报的发送和转发过程
    本节课我们介绍IP数据报的发送和转发过程。IP数据报的发送和转发过程包含以下两部分,一部分是主机发送IP数据报,另一部分是路由器转发IP数据报。需要说明的是为了将重点放在TCP协议站的网际层,发送和转发IP数据报的过程上,在本节课的举例中,我们将忽略使用ARP协议来获取......
  • 《计算机网络微课堂》4-3 IPv4地址
    开始讲IP地址。‍4.3.1IPv4地址概述本节课我们介绍IPv4地址的基本概念:在TCPIP体系中,IP地址是一个最基本的概念,我们必须把它弄清楚IPv4地址就是给因特网上的一台主机或路由器的每一个接口,分配一个在全世界范围内是唯一的32比特的标识符IP地址,由因特网名字和数字......
  • 《计算机网络微课堂》4-8 网际控制报文协议ICMP
    本节课我们介绍网际控制报文协议ICMP(InternetControlMessageProtocol):‍为了更有效的转发IP数据报和提高交付成功的机会,在网际层使用了网际控制报文协议ICMP主机或路由器使用ICMP协议来发送差错报告报文和询问报文ICMP报文被封装在IP数据报中发送ICMP差错报告......
  • 《计算机网络微课堂》4-7 IPv4数据报的首部格式
    本节课我们介绍IPv4数据报的首部格式,为了简单起见,之后我们将IPv4数据报简称为IP数据报,而不指出、版本号。IP数据报的首部格式及其内容是实现IP协议主要功能的基础,因此我们有必要搞清楚这部分内容,如图所示:​​这是IP数据报的首部格式,它由20字节的固定部分和最大40......
  • 如何有效测试防火墙的NAT64与ALG应用协议转换能力
    在本文开始介绍如何去验证防火墙(DUT)支持NAT64ALG应用协议转换能力之前,我们先要简单了解2个比较重要的知识点,即,NAT64和ALG这两个家伙到底是什么?网络世界中的“翻译官”-NAT64技术简而言之,NAT64技术堪称网络世界的“翻译官”,其核心功能在于实现IPv6与IPv4之间的无缝转换,即能将I......
  • TCP滑动窗口
    发送方发送报文不再使用一个一个报文发送然后等待一个一个确认,而是进行一段(多个报文)发送接收方接收到数据后,发送当前接收到数据序列值+1,以及下一次可以接收的窗口值 也就是说,发送方需要配合接收方接受的窗口大小来确定数值发送 发送方窗口左边为后沿,右边为前沿。1.当......
  • 你不知道的JavaScript(上中下合集) (作者 [美] Kyle Simpson 译者 赵望野 梁杰 单业 姜
    书:pan.baidu.com/s/199LHxxIlMixw3gYSY8tyPw?pwd=ywxg提取码:ywxg作用域与闭包:详细解释了词法作用域、动态作用域以及闭包的概念,展示了它们如何影响变量和函数的可访问性。函数作用域与块作用域:区分了函数作用域和块作用域,并解释了let和const等关键字如何引入块级作用域。变量......
  • pipeline的执行顺序
    假设pipeline里面有这样的handler顺序OutBoundHandler1InBoundHandler1OutBoundHandler2InBoundHandler2*当在【InBoundHandler1】里面执行【ctx.write()】时*向上执行触发【OutBoundHandler1.write()】方法*由于【OutBoundHandler2】在【InBoundHandler1】的......
  • Linux Script 笔记
    LinuxScript笔记sed-i's/\r//'filename#将dos下的换行符替换成linux的换行符awk-F'|''{if(length($1)==7)printNR}'#打印第一列字符串长度为7的行号grep-c"print"-r.#显示匹配到的行数#逐行读入文件common中的行,并进行处理#!/bin/bashcat......
  • [NOIP2001 提高组] 一元三次方程求解
    题目描述形如: 这样的一个一元三次方程。给出该方程中各项的系数(......