1.tcp校验和 接收方在接收数据时检验数据包在传输过程中是否改变的验证方式
发送方将数据体取反码,检验和也取反码相加,高于4bit的和低于4bit的相加,得到的就是校验和,保存在tcp头的校验和字段,
接收方将数据取反码,校验和取反码,相加为1111则数据包没有异常,否则丢弃数据包。
参考此文
2.为什么Internet协议: IP, ICMP, IGMP, UDP, TCP 收到有检验和错误的分组都仅作丢弃处理?
不丢弃如何恢复数据呢?不恢复数据通知发送方重发?接收方也不确定是哪里出错。所以做丢弃处理。
tcp有重发机制,udp本来就是不可靠的传输层协议。只有链路层的CRC协议会尝试恢复数据分组。
参考知乎文章
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/222975.html原文链接:https://javaforall.cn