When the no linger is set, the networking stack sends FIN followed by
RST immediately when shutting down the socket. By enabling linger when
shutting down we have a proper shutdown sequence on the wire.
Signed-off-by: Daniel Wagner <dwagner@xxxxxxx>
---
The current shutdown sequence on the wire is a bit harsh and
doesn't let the remote host to react. I suppose we should
introduce a short (how long?) linger pause when shutting down
the connection. Thoughs?
Why? I'm not really a TCP expert, but why is this different from
say iSCSI or NBD?
I am also no TCP expert. Adding netdev to Cc.
During testing the nvme-tcp subsystem by one of our partners we observed
this. Maybe this is perfectly fine. Just as I said it looks a bit weird
that a proper shutdown of the connection a RST is send out right after
the FIN.
No idea how iSCSI or NBD handles this. I'll check.