怎么区分网络协议中各层的传输单位

  • 日常交流中,常会用到报文、数据报、数据段、数据包、数据帧等名词。参考了些许资料并加以整理归纳,以便区分和记忆。如有误,欢迎指正。

MAC 层的传输单位是帧(frame),IP 层的传输单位是包(packet),TCP 层的传输单位是段(segment),HTTP 的传输单位则是消息或报文(message)。但这些名词并没有什么本质的区分,可以统称为数据包。
--出自 极客时间《透视HTTP协议》第5讲

我们可以这样比喻,如果 MAC 层定义了本地局域网的传输行为,IP 层定义了整个网络端到端的传输行为,这两层基本定义了这样的基因:网络传输是以包为单位的,二层叫帧,网络层叫包,传输层叫段。我们笼统地称为包。包单独传输,自行选路,在不同的设备封装解封装,不保证到达。基于这个基因,生下来的孩子 UDP 完全继承了这些特性,几乎没有自己的思想。
--出自 极客时间《趣谈网络协议》第10讲

Packet(数据包):封装的基本单元,它穿越网络层和数据链路层的分解面。通常一个Packet映射成一个Frame,但也有例外:即当数据链路层执行拆分或将几个Packet合成一个Frame的时候。
数据链路层的PDU叫做Frame(帧);
网络层的PDU叫做Packet(数据包);
传输层TCP的叫做Segment(数据段);UDP的叫做Datagram。(数据报)——在网络层中的传输单元(例如IP)。一个Datagram可能被封装成一个或几个Packets,在数据链路层中传输。

  1. 比特流(bit):物理层/一层。
  2. 数据帧(frame):数据链路层/二层。
  3. 数据包/报文分组(packet):网络层/三层。
  4. 数据报(datagram):传输层 UDP/四层。
  5. 数据段(segment):传输层 TCP/四层。
  6. 消息/报文(message):三层以上,通常指应用层/七层。

参考链接:

  • https://www.cnblogs.com/my_life/articles/1949972.html

你可能感兴趣的:(怎么区分网络协议中各层的传输单位)