为何接收的数据比发送的多?

cellx 2000-07-25 08:33:00
用winsock的异步方式发送和接收数据,发送端发送了8888个字节
接收端触发了两次FD_READ事件,分别收到8192及840字节,比发送端多了144字节
经比较,多出来的144字节是在第一次FD_READ收到的8192字节中的最后144字节,
且全为0。其余数据正确。两端的发送及接收缓冲均为缺省的8192,如发送8192字节的话则无问题。why?
...全文
272 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
freyliu 2000-09-14
  • 打赏
  • 举报
回复
能将你发送的源程序发一份给我看看吗?
freyliu@yeah.net
  • 打赏
  • 举报
回复
????有没有可能是网上其它计算机发现的广播
zzh 2000-07-27
  • 打赏
  • 举报
回复
把缓冲区改大,还有可能是你发送时没有确保发送成功,此时可能会出现问题。或者没有接收完全。
LaoZheng 2000-07-27
  • 打赏
  • 举报
回复
有没有可能你第一次没有把数据取完?
jiujiejushi 2000-07-25
  • 打赏
  • 举报
回复
我以前的一点经验,也许可以参考。

我以前写了个串口程序,传输文件时多出一些字节,后来是通过设定文件的二进制方式打开解决的。文本文件存盘时系统对回车换行进行了内部处理,使内存中的字节数和磁盘上的不一样。
在证书的体系架构当中,包括了四个基本的组件,分别是密钥与加密算法,证书和证书颁发机构,证书申请、续订和吊销的通道,以及使用证书的应用程序 密钥与加密算法,就能够将明文信息,转化成为密文信息,以确保在网络当中传输时信息的安全,它主要分为两种类型,一种是对称加密算法,加密和解密时使用的都是同样的密钥和算法,一般用于加密数据,另外的一种是非对称加密算法,它包括了一对加密密钥,分别是公钥和私钥,如果公钥用于加密明文成为密文,那么私钥将用于解密密文到明文,公钥可以在网络当中进行传输,私钥不在网络当中传输 一般来说,如果两台计算机之间要传输数据,首先将由发送方计算机通过对称加密完成数据的加密过程,然后再由接收方计算机通过网络传输公钥给发送方,发送方再使用公钥加密对称加密的密钥,并且与加密的数据一起发送接收方计算机,接收方计算机再使用私钥解密出对称加密的密钥,再使用密钥解密加密的数据,完成数据安全传输的过程 而反过来,如果接收方使用私钥加密一个文件,再通过网络将加密文件、公钥和明文一起发送发送方,发送方使用公钥解密了文件,与一起接收的明文对比,如果相同,就能证明文件未进行修改,实现签名的功能 而证书,就是加密密钥和算法的载体,一张证书当中,包括了加密密钥,算法,签名等信息,并且对于证书申请、颁发、续订和吊销的整个生命周期,还包括了很多其它的一些属性,应用程序可以通过读取证书的这些信息,完成数据的加密解密,签名和身份验证等不同的应用场景 而证书颁发机构,将负责的证书的整个生命周期管理,证书颁发机构是一个层次化的体系结构,根证书颁发机构将只负责子证书颁发机构的证书颁发和吊销管理,子证书颁发机构将负责应用程序证书的申请请求和管理,根证书颁发机构可以放置在一个隔离的环境当中,进一步增强整个证书链的安全,而子证书颁发机构可以按照需求进行扩展,满足不同规模的应用要求 在我们的课程当中,将按照此最佳实践,完成证书服务当中,不同组件的安装和配置

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧