sync sent
(sync m ->)
sync recved
(ack m+1/sync n <-)
established
(ack n+1 ->)
established
.
.
.
.
.
.
.
.
fin_wait_1
(fin ->)
close_wait
(ack <-)
fin_wait_2
last_ack
(fin <-)
time_wait
(ack ->)
closed
1 tcp关闭中的fin只表示本端不再写,但是可以读
2 time_wait发生在主动关闭端; close_wait在被动关闭端
3 time_wait的作用有两个 (1) 确保对端在超时重发fin时可以回复ack (2)等待本次连接中的最后一个报文在网络中消失。 一般时间在1-4分钟