weixin_44775420
#include<lc>
2021-05-16 18:10
采纳率: 100%
浏览 60

在TCP协议基础上又加入自定义协议(长度值和CRC校验)是否有意义?

最近在做socket网络编程,使用的TCP流式套接字进行收发。

一直在思考一个问题,由于TCP协议的底层做了很多校验:包括传输层TCP首部中的检验和、网络层IP数据包头部检验和数据链路层mac帧的CRC校验,在传输层可不可以认为数据就是准确无误的接收呢?

在TCP基础之上,又在应用层加入自己的协议或者校验是否还有必要?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • zcg2073
    zcg2073 2021-05-16 19:01
    已采纳

    有必要。因为在接收端,数据层层解包和处理过程中,传输层(TCP层)完成了解包和检验并正确,但在后面的层(会话,表示,应用)数据处理过程中可能会出现问题,因此最好在用户应用层进行检验,同时也可以定义用户协议

    点赞 1 评论

相关推荐