1.三次握手

客户端机器访问服务器端的web服务的时候,需要在客户端和服务器之间创建TCP connection 的连接 。 TCP请求是在这个连接的基础上去发送的,只有在建立连接的基础上才能发送http请求。

在http的不同版本上创建的连接的时间不一样。http1.0的时候在一次访问完成后就断开。 http1.1在一次访问之后还可以保持连接。

 

 首先 客户端机器给服务器发送一个TCP请求报文,关于TCP/IP报文格式参见这个连接<https://www.cnblogs.com/feng9exe/p/8058891.html>

第一次握手:发送报文中把SYN置为1,参数seq=x  然后客户端处于SYN-Sent状态

第二次握手:服务器端收到报文之后,给报文来源ip返回一个确认包,其中SYN=1 ,确认序号ACK=x+1,参数sqe=Y,此时服务器端状态为SYN-Recive,此时建立的连接为半连接(DDOS攻击就是基于这个协议来进行,使服务器产生半连接占用,导致正常用户无法访问)

第三次握手:客户端机器收到服务器发来的报文,确认SYN=1 ,ACK=之前自己发送的seq+1,确定已经建立半连接,然后再次向服务器发送ACK=seq+1,Seq=Z ,此时,服务器端收到该报文之后确定ACK=自己发出的seq+1,则确定第三次握手成功,建立起TCP连接。之后在两着之前经行http请求数据的发送与接收。

2.四次挥手

四次挥手也叫连接终止协议。百度说的很详细,这里仅作自己理解参考。

posted on 2019-03-08 15:39  王章章章  阅读(828)  评论(0编辑  收藏  举报