博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的三次握手以及四次挥手
阅读量:5092 次
发布时间:2019-06-13

本文共 736 字,大约阅读时间需要 2 分钟。

 

三次握手

1.客户端对服务端说:我的序号是x,我要向你请求连接;(第一次握手,发送SYN包,然后进入SYN-SEND状态)
2.服务端听到之后对客户端说:我的序号是y,期待你下一句序号是x+1的话(意思就是收到了序号为x的话,即ack=x+1),同意建立连接。(第二次握手,发送ACK-SYN包,然后进入SYN-RCVD状态)
3.客户端听到服务端说同意建立连接之后,对客户端说:与确认你同意与我连接(ack=y+1,ACK=1,seq=x+1)。(第三次握手,客户端已进入ESTABLISHED状态)
4.服务端听到客户端的确认之后,也进入ESTABLISHED状态。

 

描述四次挥手就是:

1.客户端与服务端交谈结束之后,客户端要结束此次会话,对服务端说:我要关闭连接了(seq=u,FIN=1)。(第一次挥手,客户端进入FIN-WAIT-1)
2.服务端收到客户端的消息后说:确认,你要关闭连接了。(seq=v,ack=u+1,ACK=1)(第二次挥手,服务端进入CLOSE-WAIT)
3.客户端收到服务端的确认后,等了一段时间,因为服务端可能还有话要对他说。(此时客户端进入FIN-WAIT-2)
4.服务端说完了他要说的话(只是可能还有话说)之后,对客户端说,我要关闭连接了。(seq=w, ack=u+1,FIN=1,ACK=1)(第三次挥手)
5.客户端收到服务端要结束连接的消息后说:已收到你要关闭连接的消息。(seq=u+1,ack=w+1,ACK=1)(第四次挥手,然后客户端进入CLOSED)
6.服务端收到客户端的确认后,也进入CLOSED。

转载于:https://www.cnblogs.com/liudemeng/p/9372052.html

你可能感兴趣的文章
PXE+Kickstart无人值守安装操作系统
查看>>
今天解决了价位没有同步更新的问题
查看>>
mysql常见字符串处理函数
查看>>
[js]js设计模式-构造函数模式
查看>>
npm install 报node-sass错误
查看>>
软件常用问题
查看>>
上传文件(ajax结合form表单)
查看>>
selenium python grid
查看>>
nc(NetCat)命令
查看>>
CNN卷积神经网络-tensorflow
查看>>
JS性能优化
查看>>
P3930 SAC E#1 - 一道大水题 Knight
查看>>
Linux中tar命令
查看>>
Vue 中watch和computed 的用法及区别
查看>>
设计模式:第二章--抽象工厂模式
查看>>
Redis分布式锁
查看>>
yum 崩溃的解决方法
查看>>
Entity Framework之问题收集
查看>>
iOS 设计模式
查看>>
渗透小助手——几个密码收集工具
查看>>