关于tcp半关闭的问题
请看下面的图片:
客户端发起半关闭请求并得到确认,如果我没有误解的话半关闭意味着什么,客户端之后不应该能够发送任何数据,那么它如何稍后发回ACK。
please see the following pic:
the client initiate a half-close request and get acknowledged,if i dont misunderstand what half-close means,the client should not be able to send any data afterwards, then how can it send back an ACK later.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
正在发送的不是客户端数据,而是客户端发送数据后收到的服务器数据的确认
shutdown( fd, SHUT_WR )
,这意味着客户端将不再发送,但仍然可以接收。ACK
本身是传输协议的一部分,而不是应用程序的一部分。It's not the client data that is being sent, it the acknowledgement for the server data received after client does
shutdown( fd, SHUT_WR )
, which means client will not send anymore, but can still receive. TheACK
itself is part of the transport protocol, not the application.