文章目录
- 计算机网络数据单元基本联系
- PDU/SDU/PCI
- PDU别名
- IP数据报
- 用户数据的多次封装:(4次头部封装)
- IP数据报分片
- wireshark 分析IP 数据报首部
- IP数据报/以太网Mac帧之间的关系
- 以太网MAC帧格式有两种标准:
- 无效的以太网MAC 帧
- 以太网MAC帧特点
计算机网络数据单元基本联系
PDU/SDU/PCI
协议数据单元PDU
- PDU=SDU+PCI
PDU别名
段,报,帧
- 传输层(TCP/UDP):报文
段
(Segment) - 网络层
- 分组(Packet)(比网络层分组Packet更加具体的是IP数据报/IP数据报分片)
- IP数据
报
(IP Datagram) - IP数据报的分片(fragment)(a fragment of IP Datagram)
- 以上两者统称为
分组
- 链路层(Ethernet/…):
帧
(frame) - 物理层:比特(bit)
review: - Segment
A segment is the unit of end-to-end transmission in the TCP protocol. A segment consists of a TCP header followed by application data. A segment is transmitted by encapsulation inside an IP datagram. - IP Datagram
An IP datagram is the unit of end-to-end transmission in the IP protocol. An IP datagram consists of an IP header followed by transport layer data, i.e., of an IP header followed by a message.
In the description of the internet layer (Section 3), the unqualified term “datagram” should be understood to refer to an IP datagram. - Packet
A packet is the unit of data passed across the interface between the internet layer and the link layer. It includes an IP header and data. A packet may bea complete IP datagram
ora fragment of an IP datagram
. - Frame
A frame is the unit of transmission in a link layer protocol, and consists of a link-layer header followed by
a packet.
IP数据报
报文头部的结构是体现IP分组的核心
其中,固定部分又是核心中的核心(共占有20B)(80bit)
下表中,第一行(即分组头部的前4Byte)包含的内容该分组的最基本信息
第二行内容有三个字段,体现网络层的分组和该分组可能在数据链路层被分片有关
更细的划分
用户数据的多次封装:(4次头部封装)
总的来说,数据往越底层走,需要封装的内容就越多(处理的工序越多)
- 应用程序添加的头部
- TCP头部(传输层头部)
- IP头部(网络层头部)
- Ethernet头部和尾部(封装成帧)
- 如果数据链路层局域网采用以太网技术,那么IP分组的大小不超过1500Byte(不足46Bytes时,需要数据链路层做填充处理)
- 如果数据链路层采用的不是Ethernet,那么对IP分组的大小有其他要求
- EtherNet 和各层数据报之间的大致关系:
IP数据报分片
- 原始数据报首部被复制为各数据报片的首部,但必须修改有关字段的值。
- 例如:
- 一数据报的总长度为 3820 字节,其
数据部分的长度为 3800 字节
(使
用固定首部),需要分片为长度不超过 1420 字节
的数据报片。
因固定首部长度为 20 字节,因此每个数据报片的数据部分长度
不能超
过 1400 字节。
于是分为 3 个数据报片,其数据部分的长度分别为 1400、1400 和
1000 字节。
wireshark 分析IP 数据报首部
-
Identivication
标识占了16位(从上面的抓包的取值0x739c(六进制数,而且是4位16进制数,每个十六进制数相当于4位二进制数,所以标识字段占2Byte:16bit -
Flags
标志
- 标志字段占三位
- 现在,仅有后面两位有用处,第一位暂时保留不用
- DF=1时,表示数据报不可分片(否则可)
- MF=1时,表示该IP分组是某个IP数据报的某个分片,且不是最后一个分片(否则就是最后一个分片)
- 偏移位占13位
- 头部的第2行(4~7)字节中,第4字节的值是
0100 0000
,其十六进制表示为0x40
- review:
IP数据报/以太网Mac帧之间的关系
以太网MAC帧格式有两种标准:
- DIX Ethernet V2标准(即以太网V2标准)
- IEEE 802.3标准
- 网络层IP数据报作为数据链路层中的MAC子层的MAC帧的数据部分,即MAC帧作基于IP数据包进行封装
- 封装以太网MAC帧(会插入8Byte:64bit)的头部(包括48bit的前同步码和8bit的帧开始定界符)
- 在帧的前面插入(硬件生成)的8 字节中
- 第一个字段共 7 个字节,是
前同步码
,用来迅速实现MAC 帧的比特同步。 - 第二个字段1 个字节是
帧开始定界符
,表示后面的信息就是MAC 帧
。
- 在
以太网链路
上的数据包称作以太帧
- 下图中包含前头8
字节
的完整数据包可以称为以太帧
- 更主要的,是其中以太帧中的
以太网MAC帧
-
以太帧
起始部分由前导码和帧开始定界符组成 - 目的地址+源地址+类型(14Byte)构成
以太网MAC帧报头
- 以太网MAC帧的中部的数据部分一般是IP数据报
无效的以太网MAC 帧
- 数据字段的长度与长度字段的值不一致;
- 帧的长度不是整数个字节;
- 用收到的帧检验序列FCS 查出有差错;
- 数据字段的长度不在46 ~ 1500 字节之间。
以太网MAC帧特点
- 有效的MAC 帧长度为64 ~ 1518 字节之间。
- 对于检查出的无效MAC 帧就简单地丢弃。以太网不负责重传
丢弃的帧。