IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置:首页系统集成网络管理 → TCP三次握手协议的简单解释

TCP三次握手协议的简单解释

时间:2015/6/28来源:IT猫扑网作者:网管联盟我要评论(0)

  刚才看Linux下connect()函数的时候,其返回值会代表一些错误信息,既然是网络连接过程中的错误信息,当然跟跟三次握手协议有很大的关系,这下把三次握手协议从百度拿了过来。重新理解了一下。

  TCP握手协议

  在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。

  第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

  SYN: 同步序列编号(Synchronize Sequence Numbers)

  第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

  第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

  完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:

  未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于 Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。

  Backlog参数:表示未连接队列的最大容纳数目。

  SYN-ACK 重传次数服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。

  半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。

关键词标签:TCP三次握手协议

相关阅读

文章评论
发表评论

热门文章 路由器地址大全-各品牌路由设置地址路由器地址大全-各品牌路由设置地址各品牌的ADSL与路由器出厂默认IP、帐号、密各品牌的ADSL与路由器出厂默认IP、帐号、密Nslookup命令详解-域名DNS诊断Nslookup命令详解-域名DNS诊断站长装备:十大网站管理员服务器工具软件站长装备:十大网站管理员服务器工具软件

相关下载

人气排行 各品牌的ADSL与路由器出厂默认IP、帐号、密码路由器地址大全-各品牌路由设置地址腾达路由器怎么设置?腾达路由器设置教程ADSL双线负载均衡设置详细图文教程路由表说明(详解route print)网管员实际工作的一天用此方法让2M带宽下载速度达到250K/S左右网管必会!了解交换机控制端口流量