HTTP从入门到入土——TCP三次握手

Posted karthuslorin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP从入门到入土——TCP三次握手相关的知识,希望对你有一定的参考价值。

TCP三次握手

客户端与服务器之间互相发送HTTP请求响应之前需要先进行TCP连接,因为HTTP是一个无连接、无状态协议,不存在连接的概念,只有请求和响应的概念。而请求和响应实际上只是数据包,他们需要传输通道进行传输,而这个传输通道就是TCP创建的通道。那么这个通道是如何创建的呢?就是通过TCP三次握手。

什么是TCP三次握手?

TCP三次握手的流程如下所示:

技术分享图片

从图中可以看出,三次握手分为三步:

1.客户端向服务端发送连接请求报文

2.服务端分配资源,并向客户端发送确认报文

3.客户端分配资源,并向服务端发送确认报文

但是,为什么需要三次握手?因为网络带宽拥有着很大的延时并且不稳定,经常会出现数据包延时到达甚至丢失的情况,而如果没有了三次握手后两步的确认步骤,会出现服务器已经打开端口而客户端一直不连接的情况。而三次握手可以解决这个问题。

以上是关于HTTP从入门到入土——TCP三次握手的主要内容,如果未能解决你的问题,请参考以下文章

TCP/IP三次握手和HTTP过程

TCP/IP三次握手和HTTP过程

TCP 三次握爪 四次挥手

TCP三次握手和四次挥手

TCP 三次握手(相当于寄信需要回执,第一次握手:我寄给你一封信。第二次握手:你回我一封信。第三次握手:我再给你一个回执,这样你才能确认我收到信了)

tcp三次握手四次挥手