HTTP 协议的三次握手
HTTP(Hypertext Transfer Protocol):超文本传输协议
TCP(Transmission Control Protocol):传输控制协议
HTTP协议和TCP/IP协议的区别?
答:TCP/IP协议是传输层协议,主要解决数据如何在网络中传输。而HTTP是应用层协议,主要解决如何包装数据。Web使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP作传输层协议将它发送到网络上。
过程:
第一次握手:客户端先进行一个connect连接,然后会发送一个SYN到客户端,紧接着自身的状态变为了SYN_SEND。
第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。