栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

TCP三次握手and数据传输and四次分手解析简述

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

TCP三次握手and数据传输and四次分手解析简述

TCP三次握手
总所周知tcp的中文名叫传输控制协议,属于传输层 主要目的是给用户提供可靠的传输服务
三次握手是tcp用来建立端到端之间connection(连接)的方式
首先由发送端(发送端可以是pc机也可以是服务器)发送请求报文
pc1——————-————————————————>server
>>>>seq(序列号)=x(随机值),ack=0(确认号)
>>>>flag:syn(请求连接)=1,ACK=0(ack无效)
此时的ack(确认号)=0
pc1<——————-————————————————server
<<<(ack=seq+1)
<<<syn=1(答应了pc1的请求),ACK=1(此时ack确认号有效)

pc1——————-————————————————>server
>>>>seq=x+1,ack=b+1
>>>>flag:syn=0 (已经完成三次握手不在请求),ACK=1
数据传输
单个传输
传输数据时序列号等于上个报文的确认号
确认号等于上个报文的序列号+数据大小

pc1——————-————————————————>server
传输一个100字节大的数据
>>>>seq=x+1,ack=b+1
>>>>flag:syn=0,ACK=1;date=100
pc1<——————-————————————————server
<<< <<< 批量传输
pc1——————-————————————————>server
传输一个200字节大的数据
>>>>seq=x+1+100,ack=b+1+0
>>>>flag:syn=0,ACK=1;date=200
pc1——————-————————————————>server
传输一个150字节大的数据
>>>>seq=x+1+100,ack=b+1+0
>>>>flag:syn=0,ACK=1;date=150
pc1——————-————————————————>server
传输一个100字节大的数据
>>>>seq=x+1+100,ack=b+1+0
>>>>flag:syn=0,ACK=1;date=100
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
pc1<——————-————————————————server
<<< <<< pc1<——————-————————————————server
<<< <<< pc1<——————-————————————————server
<<< <<< 四次分手
pc1——————-————————————————>server
>>>>seq=x+1+100+450,ack=b+1+0
>>>>flag:syn=0,FIN=1(释放连接),ACK=1;
pc1<——————-————————————————server
<<< <<< pc1<——————-————————————————server
<<< <<< pc1——————-————————————————>server
>>>>seq=x+1+100+450,ack=b+1+0+1
>>>>flag:syn=0,FIN=0(完全释放连接),ACK=1;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/704528.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号