TCP建立连接(三次握手)
2024-08-27 17:55:57
TCP的三次握手
TCP作为可靠稳定的传输方式要建立会话,会话的发起者是请求者(客户机),下文中A为客户机,B为服务器。
1.客户机(A)从closed状态转化为主动打开,服务器(B)此时从closed状态转为LISTEN状态(服务状态),等待客户的连接请求。
2.A向B发送请求报文段,SYN=1,ACK=0,初始序号seq为x。
3.B收到连接请求,同意建立连接的话,会向A发送确认报文,内容为SYN=1,同时ACK=1,确认号为ack=x+1,同时标记回复序号seq=y。
4.A收到B的同意连接报文,需要向B发出确认,序号为seq=x+1,确认号为seq=y+1。
三次握手原因:防止失效连接请求错误打开服务器连接。
因为传输问题(时延或者链路断开终端重新发送等)客户端请求在网络中滞留,客户端因没有在时限内收到连接确认,重新发送了请求。而滞留请求在稍后到达服务器,如果没有三次握手,服务器就会打开错误连接,会导致服务器资源被浪费。
最新文章
- MySQL获取汉字的首字母
- hdf第二周,每天加班,周末加班,周日健身
- Asp.net Session保存到Redis: 使用 RedisSessionStateProvider
- Asp.net的服务器推技术 (Server Push)
- Android Handler的使用
- Github 的一些基本操作
- v$session_wait p1 p1raw p1_16
- SWT中Display和Shell是个什么东东
- vs2013执行Add-Migration出现的问题
- 《Shell脚本学习指南》学习笔记之自定义函数
- Python基础(解压序列)
- c# 创建项目时提示:未能正确加载“microsoft.data.entity.design.bootstrappackage
- hanlp在Python环境中的安装失败后的解决方法
- Python脚本语言第一行的写法
- Git工程迁移方法总结(命令行) .(转载)
- phpmailer SMTP Error: Could not connect to SMTP host. 错误解决
- mac电脑iTerm2链接linux服务器断线解决方案
- lnmp集成环境Access Denied的问题
- Java 设计模式六原则及23中常用设计模式
- Android-显示意图和隐式意图