我是希望如果服务器发现客户端的数据发送错了,就把这条消息扔了,让服务器再发一条,客户端也一样。可是应该用什么方式呢?我最初是想设定消息的头和尾,可是如果中间错了就不知道了,又想是不是可以设定消息长度,可是如果不一小心正好记录长度的那段出问题了,岂不是错了也查不出来。哪位大侠大虾指点一下。万分感谢!另外,我是用socket做的

解决方案 »

  1.   

    TO: lemon1689(风之羽翼) 
    我这个名字是申请了专利的,请改改你的名字.
      

  2.   

    SHA-1,HMAC等对数据进行签名,当然会在包中占用一定长度,但是如果20个字节左右的长度对于一个包来说是值得的。
    如果用加密的办法,也是要签名的。所以不管你怎么加密,不签名的话很难保证判断数据是否正确。
      

  3.   

    我看了一下,crc校验的,应该说字符串长的时候是可以在很大程序上保证发送的消息无误,但是肯定运行速度会降低,后来考虑只对传输的重要协议进行校验,比如上线,下线,登录,注册等,可是这些我都是用三位数表示的,比如001是注册,002是上线,那么在这种情况下,crc还有用吗?多谢,另外,想知道,如何给分?我发现我的分没有被分出去呀?