什么是TCP连接的三次握手

通信网络

650人已加入

描述

所谓的“三次握手”:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。

为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包传送给目标机之后的确认消息。TCP总是用来发送大批量的数据。当应用程序在收到数据后要做出确认时也要用到TCP。

TCP的三次握手和四次挥手实质就是TCP通信的连接和断开。

三次握手:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。

四次挥手:即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。

TCP连接的三次握手是指TCP协议在建立连接时所采用的一种三次确认方法,常被称为“三次握手”(Three-way Handshake)。它的流程如下:

第一次握手:客户端向服务端发送一个初始化序列号(ISN)并打开一个请求连接的标志(SYN),进入SYN_SEND状态。

第二次握手:服务端接收到客户端请求连接的数据包后,会发送确认序列号(ACK)给客户端,以确认客户端所发送的SYN请求包,同时服务端也向客户端发送一个SYN请求包,以表明它自己也愿意建立一个连接,进入SYN_RECV状态。

第三次握手:客户端收到确认应答后,向服务端发送一个确认序列号(ACK)以确认接收到服务端的SYN请求包,进入ESTABLISHED状态。此时,服务端也进入ESTABLISHED状态。

这个过程中的“三次握手”是指客户端和服务端在建立TCP连接时,需要交换的三个数据包:SYN,SYN/ACK,ACK。这个过程可以保证一些重要的性质,比如防止过期的连接请求的影响、防止服务端接收到客户端请求但是没有确认的情况等,从而保证一个可靠的TCP连接。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分