什么是需要在各个层面进行校验?例如,TCP层和IP层都有校验和,以太网层也有。 在一层有校验和吗?为什么在TCP和IP头中有单独的校验和?
14
A
回答
0
可能是因为它们覆盖了不同的数据,不是吗?
15
需要所有这三个层,出于多种原因:
IP并不总是运行在以太网上(想象IP通过RS-232串口,这是每一个思科和Unix机器可以做)
IP不校验数据
TCP数据包可以从错误的IP数据包和片段各有重新组合完美校验
即使正确地重新装配,软件或其他错误,可以在IP和TCP之间的层引入
即使所有软件功能正常,和TCP/IP是在以太网上,校验的有限尺寸可以是意外地纠正(并且将在某些点,给予足够的数据包)面对持久性错误,所以有多个校验和是有帮助的。
每次引入新的头文件时,都会有更多的校验和,而新层无法看到下面图层的头文件位。
6
以太网校验和是跳跃校验和 - 意味着每当以太网报头字段更改时重新计算。 TCP/UDP校验和是端到端的校验和,意味着它由发送方计算并由接收方验证。 TCP/UDP校验和覆盖整个网段。 IP校验和只包含头文件。以太网CRC覆盖整个框架。
0
IPv6的设计者决定在所有这些层中都不需要它,并将其移除以支持其他层(例如您提到的那些层)的校验和。
相关问题
- 1. 验证IP标头和TCP标头的校验和
- 2. TCP报头和校验和
- 3. TCP/IP校验和有多强大
- 4. IP标头校验和:0x0000
- 5. ICMP头和IP头校验和计算
- 6. 更新头文件中的TCP/IP校验和
- 7. 关于TCP/IP层的校验和
- 8. LWIP TCP/IP校验和错误
- 9. maven:“校验和校验失败,没有可用的校验和”,为什么?
- 10. TCP上的校验和
- 11. C:如果源IP头更改,TCP头校验和也会更改
- 12. 为什么最终补充TCP/UDP校验和?
- 13. TCP校验和字段?
- 14. C编程TCP校验和
- 15. 比较TCP校验和Scapy?
- 16. 在python中计算TCP校验和
- 17. 计算的tcp校验和与原始的tcp校验和不匹配
- 18. IPV4头校验和验证
- 19. 在Python中计算IP校验和
- 20. tcpreplay删除IP校验和?
- 21. 为什么在AutoIt UDP协议中有头校验错误?
- 22. IP分片和TCP报头
- 23. macOS NKE ipf_filter - IP校验和为0
- 24. crc ip verdog中的hdr校验和
- 25. 什么会导致UDP数据报不能计算IP头校验和?
- 26. 为什么要在libpcap程序中重新声明TCP和IP头文件?
- 27. 在ICMP头校验和计算中?
- 28. 什么校验和技术会让我从它的部件的校验和中计算整个校验和?
- 29. PdfSharp.SharpZipLib.SharpZipBaseException - 头校验和非法
- 30. TTL字段和IP校验和
“传输层”,“网络层”和“数据链路层”是btw的实际名称。 – TheTrowser