目录
IP数据包的格式
网络层的功能:
定义了基于IP协议的逻辑地址
连接不同的媒介类型
选择数据通过网络的最佳路径,完成逻辑地址寻址
IP数据包格式(分为20字节的固定部分,表示每个ip数据包必须包含的部分,和40字节的可变长部分)
版本号(4bit):指IP协议版本。并且通信双方使用的版本必须一致,目前我们使用的是IPv4,表示为0100首
长度(4) : IP数据包的包头长度
优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,用于实现QoS(服务质量)的要求。
总长度(16):IP数据包的总长度,最长为65535字节,包括包头和数据。
标识符(16):该字段用于表示IP数据包的标识符。当IP对上层数据进行分片时,它将给所有的分片分配一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据
标志(3):和标识符一起传递,指示不可以被分片或者最后一个分片是否发出
段偏移量(13):在一个分片序列中如何将各分片连接起来,按什么顺序连接起来
TTL生命周期(8):可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器-1,当TTL的值为0时,该数据包将被丢弃
协议号(8):封装的上层哪个协议,ICMP: 1 TCP:6 UDP: 17
首部校验和(16):这个字段只检验数据报的首部,不包括数据部分。这是因为数据报每 经过一次路由器,都要重新计算一下首部校验和(因为,一些字段如生存时间、标志、片偏移等可能发生变化)
源地址(32):源IP地址,表示发送端的IP地址
目标地址( 32):目标IP地址,表示接收端的IP地址
可选项:选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。例如,可以输入创建该数据包的时间等。在可选项之后,就是上层数据注:根据实际情况可变长,例如创建时间等上层数据
ICMP协议
ICMP是一个“错误侦测与回馈机制”