[程序员] TCP 关闭连接的不同版本,哪个才是对的?

看到网上有几种 TCP 关闭连接过程。

哪个才是对的?

1

[程序员] TCP 关闭连接的不同版本,哪个才是对的?插图

来自: https://wiki.wireshark.org/TCP-4-times-close.md


2

[程序员] TCP 关闭连接的不同版本,哪个才是对的?插图(1)

来自: https://www.geeksforgeeks.org/why-tcp-connect-termination-need-4-way-handshake/


3

 TCP A TCP B 1. ESTABLISHED ESTABLISHED 2. (Close) FIN-WAIT-1 --> <SEQ=100><ACK=300><CTL=FIN,ACK> --> CLOSE-WAIT 3. FIN-WAIT-2 <-- <SEQ=300><ACK=101><CTL=ACK> <-- CLOSE-WAIT 4. (Close) TIME-WAIT <-- <SEQ=300><ACK=101><CTL=FIN,ACK> <-- LAST-ACK 5. TIME-WAIT --> <SEQ=101><ACK=301><CTL=ACK> --> CLOSED 6. (2 MSL) CLOSED Normal Close Sequence

来自官方文档: https://datatracker.ietf.org/doc/html/rfc793#page-39

我也是醉了。