码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2018-08-22 00:16:33      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:连接   没有   服务器   打开   延时   tar   开端口   分享图片   三次握手   

TCP三次握手

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

什么是TCP三次握手?

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

技术分享图片

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

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

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

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

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

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

标签:连接   没有   服务器   打开   延时   tar   开端口   分享图片   三次握手   

原文地址:https://www.cnblogs.com/karthuslorin/p/9515196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!