HTTP协议客户端和服务器交互的三次握手、持续连接、断开连接过程

本文详细介绍了TCP连接的全过程,从三次握手建立连接开始,到数据传输期间的保持连接,直至最后的连接关闭。通过生动的比喻及Wireshark抓包截图,让读者直观理解每个阶段的标志位含义及其作用。

找了一系列文章,涉及到的要么只有三次握手协议,要么最多有个断开的过程,都没有将保持连接的过程,然而实际上是存在多次数据往来一个短时间的连接过程。

建立连接:三次握手

1. 客户端发生请求,求服务端勾兑,下面是WireShark的截图

比喻->客户端对服务端说:“给你发数据,要的不?"

Flag:0x02 对应 SYN

  

2. 服务端接受请求,答复客户端

比喻->服务端客户端说:“要的嘛,你好久发?"

Flag:0x12 对应 SYN  ACK


3. 服务端接受请求,答复客户端

比喻->客户端对服务端说:“马上发,稍等?"

Flag:0x10 对应 ACK


保持连接:传输数据

1. 客户端正式向服务端请求数据。

Flag:0x18 对应PSH ACK

图中,Next sequence number参数的值表示的是下次请求的信息大小,也是维持连接的标示

2. 服务端返回数据包括两部分,显示表示数据收到,再次是返回相应的数据,

    图中红色框线中的三个数字,分别表示确认收到的请求大小、本次请求大小、下次请求大小

       


3. 若客户端发生的信息不带Next sequence number,则服务器会发起关闭连接


关闭连接:双向确认





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值