当前位置:首页 > 实用技巧 >

协议的数据单元是什么(物理层协议的数据单元)

来源:原点资讯(www.yd166.com)时间:2024-01-27 12:22:19作者:YD166手机阅读>>

之前写过一篇《通俗易懂TCP/IP(概述)》,广受欢迎和好评,有网友催更,便抽空续写IP章节,回应粉丝期待。

TCP/IP网络模型

TCP/IP网络模型分为4层,自下而上分布为链路层(又叫网络接口层)、网络层、传输层、应用层。

协议的数据单元是什么,物理层协议的数据单元(1)

  1. 链路层:处理数据在媒介上的表示、传输以及与硬件交互的细节。
  2. 网络层:IP层负责IP数据报的路由转发,所有的TCP、UDP、ICMP和IGMP数据都通过IP数据报传输。网络层(IP)提供了一种尽力而为、无连接、不可靠的数据报交付服务,IP负责将IP数据报(又叫分组)放入数据链路层传输,并处理分片和*逻辑。
  3. 传输层:为端主机上运行的应用程序提供端到端服务,包括TCP和UDP。
  4. TCP提供了带流量控制、拥塞控制、有序、可靠的流交付,TCP需要处理丢包检测重传、重排序等IP层不处理的问题,TCP面向连接,不保留消息边界。
  5. UDP提供的功能基本上没有超越IP,不提供速率控制和差错控制,不保证可靠性,UDP只是提供一套端口号,用于复用、多路分解(即把收到的数据报交给应用层对应程序处理)和校验数据完整性(只检错不纠错),UDP面向非连接,保留消息边界。
  6. 应用层:负责处理特定应用的细节,通常应用的实现都是基于TCP/IP或者UDP/IP。应用层与应用细节相关,与网络数据传输无关,而之下的三层(链路层、网络层、传输层)则对应用一无所知,但需要处理通信的细节。
分层&协议对照

OSI七层网络模型和TCP/IP四层网络模型的对应关系如下图,对应层的常用协议也列于表中。

协议的数据单元是什么,物理层协议的数据单元(2)

分层的目标是隔离,通过分层实现:下层对上层透明,而上层利用下层提供的能力

分层的另一个优点是协议复用,这种复用允许多种协议共存于同一基础设施之中,复用可以发生在不同层,并在每层都有不同类型的标识符区分,用于确定信息属于哪个协议。

比如在链路层的数据帧(Frame)有一个协议标识符字段,用来标识链路层帧携带的协议是IP还是ARP;又比如在网络层的IP数据报头部有一个8位协议字段,标识该IP数据报来自于TCP、还是UDP、亦或是ICMP、IGMP...

封装

数据在发送端从上到下经过TCP/IP协议栈,遵循应用层->TCP/UDP->IP->链路层的顺序。

当某层的一个协议数据单元(PDU)对象转换为由底层携带的数据格式表示,这个过程称为在相邻低层的封装,即上层被封装对象作为不透明数据充当底层的Payload部分,封装是层层包裹的过程。

协议的数据单元是什么,物理层协议的数据单元(3)

每层都有自己的消息对象(PDU)的概念。

  • TCP层的PDU叫TCP段(segment)
  • UDP层的PDU叫UDP数据报(Datagram)
  • IP层的PDU叫IP数据报(Datagram)
  • 链路层的PDU叫链路层帧(Frame)

封装的本质是将来自上层的数据看成不透明、无须解释的信息,经过本层的处理,在上层PDU的前面加上本层协议的头部,有些协议是增加尾部(链路层),头部用于在发送时复用数据,接收方基于各层封装过程中增加头部中的分解标识符执行分解。

具体到TCP传输数据而言,发送端的数据要经过三次封装。

  1. 应用层数据经过TCP层的时候,会增加TCP头部,产生TCP Segment,TCP头部中的端口号是该层的分解标识符。
  2. TCP Segment经过IP层的时候,会增加IP头部,产生IP Datagram,IP头部中的协议类型字段是该层的分解标识符。
  3. IP分组经过链路层的时候,会增加以太网首部和尾部,产生以太网Frame,帧头部中的以太网类型字段,可用于区分IPv4(0x8000)、IPv6(0x86DD)和ARP(0x0806)。
分用

数据到达接收端(是目的机器),会从下到上经过TCP/IP协议栈,遵循链路层->IP->TCP/UDP->应用层的顺序。

接收端的数据还原也需要经历三次解封。

  1. 经过链路层会剥离以太网首尾部,根据以太网类型字段,如果是IP Datagram则交给IP模块。
  2. 经过IP层会清除IP头部,根据IP头部中的协议类型字段,交给TCP、UDP或者ICMP、IGMP模块。
  3. 经过TCP/UDP层去掉TCP/UDP头部,根据端口号,最终将数据还原取出,并交付给应用程序。

协议的数据单元是什么,物理层协议的数据单元(4)

首页 123下一页

栏目热文

请求参数缺失什么意思(请求参数异常是怎么回事)

请求参数缺失什么意思(请求参数异常是怎么回事)

2023年上半年军队直接选拔招录普通高等学校应届毕业生工作全面展开,今年计划提供3500余个军(警)官岗位,直接选拔招录...

2024-01-27 12:39:19查看全文 >>

协议接口地址指的是什么地址(通信中接口地址是指什么)

协议接口地址指的是什么地址(通信中接口地址是指什么)

Postman实现接口测试内容大纲一览:一、什么是接口?为什么需要接口?接口指的是实体或者软件提供给外界的一种服务。因为...

2024-01-27 12:25:35查看全文 >>

常量存储区是什么意思(常量数据储存在哪里)

常量存储区是什么意思(常量数据储存在哪里)

简述一下堆和栈的区别1、堆栈空间分配不同。栈由操作系统自动分配释放,存放函数的参数值,局部变量的值等。堆区一般由程序员分...

2024-01-27 12:26:12查看全文 >>

data与state的区别(data访问权限怎么解释)

data与state的区别(data访问权限怎么解释)

XSS 简介XSS,全称Cross Site Scripting,即跨站脚本攻击,是最普遍的Web应用安全漏洞。这类漏洞...

2024-01-27 12:11:50查看全文 >>

协议数据单元是什么意思(协议报文解析是什么意思)

协议数据单元是什么意思(协议报文解析是什么意思)

如何毁掉一个婴儿?断了他的奶。如何毁掉一个年轻人?断了他的网。“网络之于年轻人,正如同奶水之于婴儿”什么是网?什么是域名...

2024-01-27 12:22:40查看全文 >>

协议类型和数据长度含义(网络中各个层的协议)

协议类型和数据长度含义(网络中各个层的协议)

1. MIDI 简介MIDI 协议即数字音乐接口(Musical Instrument Digital Interfac...

2024-01-27 12:27:54查看全文 >>

宝马7系自动空调怎么设置(宝马7系自动空调怎么关)

宝马7系自动空调怎么设置(宝马7系自动空调怎么关)

宝马空调使用小技巧。很多人抱怨宝马空调不好用,其实是你没有设置正确。今天,我来分享几个空调小技巧。如果你觉得夏天空调制冷...

2024-01-27 12:24:58查看全文 >>

宝马7系解锁后天窗自动打开(宝马7系后排天窗为啥开门自动打开)

宝马7系解锁后天窗自动打开(宝马7系后排天窗为啥开门自动打开)

在我们中国汽车界有一句话叫作“坐奔驰、开宝马”,德系豪华品牌,奔驰和宝马在我国消费者心中的地位可以说是非常高的。不过,奔...

2024-01-27 12:48:25查看全文 >>

宝马7系怎么设置空调自动开启(宝马7系空调为啥总是自动开启)

宝马7系怎么设置空调自动开启(宝马7系空调为啥总是自动开启)

宝马汽车作为一种高端豪华车品牌,其车内空调系统也是非常先进和智能化的。在宝马车的空调面板上,有几个英文字母,它们代表着不...

2024-01-27 12:09:43查看全文 >>

09款宝马七系空调自动打开怎么关(宝马七系一键启动正确启动方法)

09款宝马七系空调自动打开怎么关(宝马七系一键启动正确启动方法)

车辆概况:宝马1系2020款,提车1年行驶里程1.5万公里,从未出过交通事故,车况良好。故障描述:车辆行驶过程中空调会自...

2024-01-27 12:57:08查看全文 >>

文档排行