TCP作为安全协议,但是一直有两个疑问没能解决
1,TCP的校验一定准确吗,存不存在客户端发了一条报文在中途损坏,但是服务端检验的时候却没检验出来?如果存在,这种几率有多大?我是做硬件相关的,工业上常用的串口通讯也有校验,比如CRC校验,它就不是百分之百正确的,TCP的校验是绝对安全吗?
2,TCP作为一种安全协议,为什么发送客户端在发送过去后,对方的应用层往往还要进行一个回复确认,这个TCP层面不是已经帮你做了吗?比如我听说微信有自己的私有协议,A手机发送一个“你好”到B手机上,而B手机收到“你好”两个字后还要在应用层再回复一下确认收到,这种操作多余吗?
比如我们做AGV机器人,客户端给机器人通过TCP发送一条报文,机器人收到后,在应用层面会再给我一个回复,一直很困惑为什么这样做,看似多余。之前跟同行业一个人聊过这个问题,问TCP层面已经是安全了,为什么机器人代码里面业务还要再回复一下,当初忘记了他如何回答了,所以想请教你一下