网络层
数据包的结构图
网络层中最小的数据单元为“数据包”。一个数据包由首部固定部分+首部可变部分+数据部分组成。
下面对数据包每个部分进行详细说明
-
版本:占4位,标明当前网络层使用什么协议来传输数据包。
0b0100:IPv4
0b0110:IPv6
补充:0b表示后面的数是2进制,即IPv4是0b0100,即等于十进制的4 -
首部长度:占4位,最终长度=首部长度4
因为数据包固定部分为20字节,所以数据包最小长度为20.即20/4=5=0b0101.所以首部长度最小为0b0101。
因为首部长度占4位,所以最大为0b1111=15,154=60,所以首部长度最大为60,即可变部分最大为60-20=40。 -
区分服务:占8位,有于提高网络的服务质量。
比如百度云开了会员之后,百度云网盘服务器端可以对响应的数据包给区分服务设置成某一个值,然后百度云的路由器就会优先传输这些数据包,以实现会员加速的功能。 -
总长度:占16位
数据包的总长度,即首部固定部分+首部可变部分+数据部分的总长度,最大值65535,所以一个数据包最大为65535字节。
中场说明: