TCP/IP三次握手

在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存活时间。 参考网址:http://baike.baidu.com/view/1003841.htm

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JetpropelledSnake

HCNP学习笔记之TCP中FLAGS字段SYN, FIN, ACK, PSH, RST, URG

1202
来自专栏猿人谷

TCP协议的三次握手过程

TCP(Transmission Control Protocol) 传输控制协议 TCP的连接建立过程又称为TCP三次握手。 首先发送方主机向接收方主机发起一...

2408
来自专栏PHP实战技术

OSI 七层模型简单梳理!

功能:OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。 7.应用层 网络服务与最终用户的一个接口。 协议有:HTTP F...

53412
来自专栏风中追风

TCP 三次握手与四次挥手 看了你必懂

最近在思考一个问题,当我们在浏览器中输入URL按下回车键后,他的详细流程是怎样的;以前刚用springMVC的时候弄懂了一个请求的流程,好几个月以为那就是我想要...

3887
来自专栏Golang语言社区

Golang语言--UDP实现

UDP IN GO Go语言对UDP的支持并没有像TCP那样被众多的博客和论坛关注。UDP作为一个重要的传输层协议,是构成很多应用层软件协议的基础。 net包支...

4268
来自专栏即时通讯技术

理论经典:TCP协议的3次握手与4次挥手过程详解

尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务。TCP提供一种面向连接的、可靠的字节流服务。

972
来自专栏Python

TCP协议三次握手与四次挥手通俗解析

 TCP/IP协议三次握手与四次握手流程解析 一、TCP报文格式 TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。下面是TCP报文格式图: ? 图...

2517
来自专栏有困难要上,没有困难创造困难也要上!

Windows上通过命令行参数限制CPU

3107
来自专栏JavaEdge

计算机网络基础知识点1. OSI,TCP/IP,五层协议的体系结构,以及各层协议2. IP地址的分类3. ARP是地址解析协议,简单语言解释一下工作原理。4. 各种协议的介绍5. 描述RARP协议6.

5628
来自专栏猿人谷

Linux下TCP连接过程总结

一、Linux服务器上11种网络连接状态: ?       图:TCP的状态机 通常情况下,一个正常的TCP连接,都会有三个阶段:1、TCP三次握手; 2、数...

3255

扫码关注云+社区

领取腾讯云代金券