Socket编程 发送缓冲区与接收缓冲区

服务器与客户端在不同的主机上(采用Socket通信方式),当服务器与客户端的网络中断时,发送缓冲区与接收缓存去的数据是否会丢失?还是说在下次连接过程中会继续发送发送缓冲区的内容和接收接收缓存去的内容呢?

网络中断了,连接就断了,你说的缓冲区也没了,下次新建立的连接是另外的了,跟他无关,数据当然没了。但是,如果只是丢包的话,连接没断开的话,就没事。追问

非常感谢你的回答,但我还是有点疑惑:那就是说断开瞬间存在与缓冲区的那部分数据要丢失了?

追答

对断开了缓冲区的数据就丢失了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-03
还得取决于具体协议。udp的话会丢数据,tcp不会,tcp是由发送接收窗口控制的,双方会协定好一个速度。

参考http://msdn.microsoft.com/en-us/library/ms740149(VS.85).aspx
第2个回答  2013-04-02
下次连接,不会继续发送发送缓冲区的内容和接收接收缓存区,两次不同的连接分配的缓冲区分别独立的。追问

网络中断后,如果接收缓存区与发送缓存区中还有数据的话,这些数据会不会丢失?非常感谢你的回答

相似回答