曹耘豪的博客

TCP协议

  1. TCP/IP四层模型
  2. 三次握手
  3. 四次挥手
    1. Q: 等待2MSL(Maximum Segment Lifttime)原因
    2. Q: 为什么是2MSL?
  4. 参考

TCP/IP四层模型

作用
4.应用层直接为应用进程提供服务,加密、解密、格式化数据、HTTP、FTP、SMTP
3.运输层TCP、UDP、端口
2.网络层进行连接的建立和终止、IP地址的寻找。IP协议、ARP协议、路由协议
1.网络接口层传输数据的物理媒介

三次握手

三次握手最主要的目的就是双方确认自己与对方的发送与接收是正常的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
      client  ---
---
---
---
---
-> server
CLOSED LISTEN
1. | ---
---
-SYN(seq=j) ---
-> |
SYN_SENT
2. | <--ACK(j+1) SYN(seq=k)-- |
SYN_RECV
3. | ---
---
-ACK(k+1) ---
---
-> |
ESTABLISHED ESTABLISHED

四次挥手

由于 TCP 的半关闭(half-close)特性,TCP 提供了连接的一端在结束它的发送后还能接收来自另一端数据的能力,所以需要主动关闭连接

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
      client  ---
---
---
---
---
-> server
ESTABLISHED ESTABLISHED
1. | ---
---
-FIN(1),seq=u---
-> |
FIN-WAIT-1
2. | <---
--ACK(u+1),seq=v---
- |
FIN-WAIT-2 CLOSE_WAIT
3. | <--FIN=1,seq=w,ACK(u+1)- |
LAST_ACK
4. | ---
-ACK(w+1),seq=u+1---
> |
TIME_WAIT(2MSL) CLOSED
CLOSED

Q: 等待2MSL(Maximum Segment Lifttime)原因

Q: 为什么是2MSL?

参考

   /