上位机和底层控制模块建立TCP/IP连接,然后进行通信,数据平均5秒钟交换一次,数据量不足100字节,通信协议有必要加上CRC16校验吗,好像TCP通信自己是有校验的,是稳定的传输,请各位给个意见!
看你的链路层怎么做了,
如果链路层采用现有协议如slip,hdlc之类的,本身协议就包含有crc校验
如果自己写的协议,最好还是加上校验,不一定crc啦。
slip 没有crc校验
PPP使用crc校验
如果你上位机应用层中有自己通讯格式
那统统省掉,在上层检测 加速运行
根据稳定性决定,如果稳定性要求非常高,例如一年持续运行,不出错一次,加的好
否则不用了
有必要啊 http://www.tianyi-dz.com
经过TCP/IP协议的每一个层,都有自己的校验机制,出错的机会很少。 如果需要校验做一个简单的校验和就好了。 并且你的数据交互不频繁,数据只有100字节左右。 我做过给予串口的512字节的通信,使用简单校验和,运行3个月了,好像没发现过错包的log信息。哈哈
modbus tcp就把modbus的CRC校验去掉了,因为TCP/IP是可靠通讯。