- 第一次握手
1.客户端发起创建一个连接的数据包请求,发送到服务端,
2.产生标志位:SYN=1(表示这是一个创建连接请求的数据包),Seq=X
3.服务端接收到数据包,开始创建连接,开启一个TCP端口 - 第二次握手
1.创建连接,开启一个TCP端口,返回请求给客户端
2.产生标志位:SYN=1,ACK=X+1,Seq=Y(服务端的Seq)
3.客户端拿到后,表示服务端允许创建TCP连接 - 第三次握手
1.服务端允许创建TCP连接后,再去发送ACK=Y+1,Seq=Z
为什么要进行三次握手
为了防止服务端开启一些无用的连接,避免网络延时导致的服务器开销问题