ip首部校验和例题 ip数据报的首部是5,校验和是怎么计算的?求详细解答,计算过程?
ip数据报的首部是5,校验和是怎么计算的?求详细解答,计算过程?
IP数据报验证只检查报头,不检查数据部分。先以16位数字为单位,然后进行二进制逆码求和,然后将结果依次放入校验和字段,这样就可以了!你说第一部分是5,这有点不正常,一般是20个字节,用二进制写的
ip协议为什么要对ip数据包首部,进行校验?
链路层验证只能确保从一个路由器到另一个路由器的数据之间没有错误(在大多数情况下,可以保证)。数据包到达路由器后,路由器将数据包分解,并根据下一跳的地址设置新链路层报头的目的地址、CRC校验值、IP报头的TTL值。它甚至可以分割数据包,从而进行更多的修改。如果路由器处理过程中数据有误,链路层检查没有发现错误。因此,为了确保从发送端到目的地址没有错误,传输层需要有自己的验证。至于网络层的验证,现在看来确实没有必要了。为了提高IPv6网络层的速度,不再进行验证。IPv6中间路由器不会对数据包进行分段。
为什么ip数据包只进行ip首部校验而不对整个数据报进行校验?
不可避免的变化是生存时间(TTL),第一个校验和。每跳路由器后,TTL值减少1,根据报头生成报头校验和,当TTL字段改变时,报头校验和也会改变。可能的变化是标志、片偏移量、数据报总长度
由于网络层是“尽最大努力完成传输包”,错误检测已经由数据链路层实现,不需要IP层再次检查。
优点是它不负责错误检测和纠正,因此可以获得高传输性能。缺点是IP层不负责错误检测,因此错误检测只能在传输层或应用层发现,这增加了错误纠正的时间。试想一下,如果两台PC通过Internet进行通信,并且它们之间有许多路由器,PC1就会向PC2发送一个数据包。到达第一路由器后,在包转发过程中发生了一个错误:1-由于IP层没有做错误检查,第二路由器通过WAN协议(HDLC、PPP等)接收数据后,只要数据链路层正常,就不知道接收到的IP包是否正确,并且错误将以这种方式传输,直到它在PC2中被发现。2-如果IP可以实现错误检查功能,路由器2在到达第二个路由器时不会继续发送错误包,错误将被终止。但是现在网络传输的误码率很低,所以不需要IP层再做一次检查!
ip首部校验和例题 校验和的计算例子详细 ip校验和的计算例子详细
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。