本文共 1194 字,大约阅读时间需要 3 分钟。
版本: 目前IP的版本是4(已经有6了) 也就是IPV4(IPV6)。占4位
首部长度:首都长度单位是按照首部的字节长度/4字节(32bit)算1个单位。那因为他是4bit换成10进制就是15,15*4(32bit)就是60字节了
。那如果没有选项,普通的IP数据报 ,那就是5了(20字节/4字节)占4位服务类型(TOS):总共8位,由3位优先权字段(弃)1位未用位(0)和4位TOS子字段组成。 这4位TOS子字段每个位分别代表最小延时,最大吞吐量,最高可靠性,最小费用。这4各位只有其中1个位能是1。如果都是0。那么表示是一般服务。下图是不同的应用服务对应的TOS子字段
TOS字段好像用的比较少总长度:IP数据报的总长度(不包括首部)单位为字节。因为是字段长度为16bit 所以最大支持65535字节(16个1, 1代表1字节)。但是一般不会传这么大 受主机和协议影响,一般会做切片传输。
标识,标志和偏移是用于数据分片。等到说到数据分片的时候再说。
生存时间(TTL): 指该数据报可以经过的最多路由器数量。源主机设置,通常是32或64。每经过1台路由器,该值就减一。直到为0丢弃。
协议: 识别是哪个协议向IP传送数据报
首部检验和:根据IP首部计算检验和码。不计算数据部分。但是ICMP,IGMP,UDP和TCP都有同时覆盖首部和数据的检验和码
计算方法: 检验和字段设0, 首部每16bit进行二进制反码求和,然后将结果存储在检验和字段中。 接受到1份IP数据报时也是将首部每16bit进行二进制反码求和。这时候计算的内容是有包括发过来的ip数据报中的检验和字段。所以,当反码求和后是全1,如果不是全1则IP认为是有问题的数据报,丢弃并且不发送差错报文。只能通过上层协议去发现丢失的数据并且重传。 ICMP,IGMP,TCP和UDP都采用此方法(包括了数据报部分) 具体实现技术参考32位源IP地址和32位目的IP地址:就是IP地址咯 32位。
任意项: 可以变长的可选项。包括
转载地址:http://lzepi.baihongyu.com/