27读缓冲区(滑动窗口)耗尽与write阻塞、拆包、延迟(五)linger 3s
在读缓冲区(滑动窗口)耗尽与write阻塞、拆包、延迟(三)中,tcpnodelay+no so_linger
18读缓冲区(滑动窗口)耗尽与write阻塞、拆包、延迟(四)linger中,tcpnodelay+so_linger true 0
本文 tcpnodelay+so_linger true 3
以上,客户端mac
做出来与(三)中一样,并没有像解释的那样,等待3s,3s以后,如果发送缓冲区还有东西,则rst,而是等了12s,发出了fin
放到linux上,使用阿里云(centos 7.5)做client
服务端(腾讯):
43690
/39.104.48.166:60368
。。。。
96
97
98
99
100
101
102
103
客户端(阿里)
send + 94
send + 95
send + 96
send + 97
send + 98
send + 99 无阻塞
结论:
linux下,也会拆包,16,152
so_linger 3s mac与linux下都没用,过了3s即使发送缓冲区还有积压,也没发rst而是发fin,无论显式还是隐式close