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开发者_如何学Python.
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. The ACK
itself is part of the transport protocol, not the application.
精彩评论