TCP 连接的问题。
问题是这样的:
当C和S进行TCP连接的时候,当客户接受数据的TCP连接异常断开,客户端的网卡中会不会有数据没有来得及被socket从网卡内存取到socket buffer中,而不能被释放,然后影响到后面的网络通信?
[ 本帖最后由 sealdad 于 2006-6-14 11:13 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
tcp连接属于传输层概念,再往下的层中没有连接的概念,因此你所说的“从网卡内存读取到socket buffer”这个过程只不过是底层数据块(在链路层叫frame,在ip层叫packet,对系统来说只是数据结构mbuf或者skbuf而已)的往高层传递而已,只有到了传输层,这层的处理过程才会根据socket对判断此数据块是否属于某连接,如果不存在socket对或者如你所说连接已经被终止,那这个判断不成立,一般情况操作系统会直接丢弃数据块或者发送rst。
所以你这个题目的答案是“否”。