HTTP发展各版本特点,专治各种“疑难杂症”的面试官(下)
http/2 中,同域名下的所有请求都在一个连接上完成,这个连接可以承载任意数量的双向数据流。每个数据流都以消息的形式发送,消息由一个或多个帧组成。
1为什么连接的时候需要三次握手,关闭时需要四次握手
在建立TCP连接时,Server端在接收到客户端的SYN连接请求后,可以直接发送SYN+ACK包,其中ACK作为应答,SYN用来发起连接请求。但是关闭连接时,服务端收到FIN包时,可能还没有发送完数据,不能立即关闭,所以只能先回复ACK包进行确认,告知客户端已经收到FIN报文。然后等到服务端数据都发送完毕,才能向客户端发送FIN包,所以需要四次握手。
2为什么建立连接要三次握手,为什么不是2次,4次
三次是最小的安全次数,可以保证通信的双方都具有发送消息和接收响应的能力,发送方和接收方始终同步序号,可以实现可靠传输。
3TCP与HTTP的区别?
TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”
术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。
TCP/IP和其他的协议在最初OSI模型中
本文是相关系列文章,主要讲解TCP、HTTP、HTTPS
《大厂面试指南——TCP协议相关篇》
《TCP握手为何三次而不是二次或者四次?》
《HTTP发展各版本特点,专治各种“疑难杂症”的面试官(上)》
《HTTP发展各版本特点,专治各种“疑难杂症”的面试官(下)》
《HTTPS相关,面试想要的都在这》
转载请注明:小猪云服务器租用推荐 » TCP握手为何三次而不是二次或者四次?