普通的IP首部长20个字节(不包含选项字段),包含协议版本号、首部长度、总长度、唯一标识、TTL、首部检验和、源IP地址和目的IP地址。
- 通过首部长度和总长度字段就可以知道IP数据报中数据内容的起始位置和长度。
- TTL生存时间字段设置了数据报可以经过的最多路由器数。初始值由源主机设置,一旦经过一个处理它的路由器,其值就减一;当该字段的值为0时,数据报就被丢弃。
- 首部检验和字段是根据IP首部计算的检验和码(ICMP、UDP、TCP检验和同时覆盖了首部和数据部分)。
- 如果长度超过了MTU,则要进行分片,根据IP头部的格式,有一个16位的标识,分片的时候会把这个标识复制到所有的分片中去,也就是说同一个IP的分片,他们的标识是一样的;然后3bit标志中有一位是表示是否最后一片,除了最后一片为0,其它片这个标识位都为1;修改IP的长度为分片中实际数据的长度;片偏移量是该片偏移原始数据的位置。 接收端根据 标识,是否为最后一片,各个片的长度,偏移量就可以把分片的包重新组装起来。
网友评论