您的位置:首页 > 理论基础 > 计算机网络

一例TCP优雅关闭失败SO_LINGER选项未起作用

2014-12-31 15:37 344 查看
通过setsockopt :SO_LINGER 选项可以指定函数close对面向连接的协议如何操作。

内核缺省close操作是立即返回,如果有数据残留在套接口缓冲区中则系统将试着将这些数据发送给对方。

但是如果close时,接收缓冲区有未接收数据,则操作系统会直接发送RST报文结束链接,也就是说TCP链接不会优雅关闭。

所以,如果希望链接被优雅关闭,应在接受完缓冲区内的所有数据后再调用close。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: