正常情况下的四次挥手:
一、客户端:服务器在嘛?我想要断开连接?

Client将FIN置为1,序号seq=u,发送给Server,进入FIN_WAIT_1状态;

二、服务器:在的,但是我这边还有数据没传送完,你等我下

Server收到后,将ACK置为1,ack=u+1,响应给Client,进入CLOSE_WAIT状态;Client收到响应后,进入FIN_WAIT_2状态;

三、服务器:客户端好了,我数据传输完成了,你可以彻底关闭连接离开我了

Server在结束所有数据传输后,将Fin置为1,seq=w,发送给Client,进入LAST_ACK状态;

四、客户端:好的服务器,我走啦

Client收到后,将ACK置为1,ack=w+1,响应给Server,进入TIME_WAIT状态,等待2MSL后,进入CLOSED状态 Server收到后,进入CLOSED状态



访问我的服务器的三次挥手

这边相比较于上面的四次挥手,这边少了一次ack;将第二次和第三次进行合并;

一、客户端:服务器在嘛?我想要断开连接?

二、服务器:在的,我这边也没有数据要传了,你可以直接关闭了

三、客户端:好的服务器,我走啦

原因:
在TCP/IP协议族翻书翻到,TCP连接终止时有两种选择:三次挥手和具有半关闭选项的四次挥手。 三次挥手:客户机发送FIN+ACK->服务器接受并发送FIN+ACK标记位的包->客户机发送ACK确认包,完成连接终止,我的测试服务器就是这种情况,而抓的百度数据包则是半关闭选项的四次挥手。

三次挥手:当一方关闭连接,另外一方没有数据发送时,马上关闭连接,也就将第二步的ack与第三步的fin合并为一步了,这个优化在RFC793 3.5节有讲,从理论上也确实是这样,之所以有四次挥手,是因为第二次和第三次中间服务端还需要继续发送数据,如果没有数据需要发送,就可以将这两次进行合并。

话外:time_wait是主动发起断开连接的一方的状态,2MSL等待时间,存在的原因:
1、为了可以处理延迟达到的请求。
2、防止发送ack丢失,可以保证ack的重新发送。

微信公众号:
少年的志向,不应该是房子,他们应该伏案疾书,或为心中的梦想而挥洒汗水,畅想着自己未来光明的人生,少年的梦想,也不应该是生活,他们应该想要集齐七颗龙珠,或者幻想着拥有一颗皮卡丘。

tcp/ip三次挥手? YES相关推荐

  1. 在深谈TCP/IP三步握手四步挥手原理及衍生问题—长文解剖IP

    如果对网络工程基础不牢,建议通读<细说OSI七层协议模型及OSI参考模型中的数据封装过程?> 下面就是TCP/IP(Transmission Control Protoco/Interne ...

  2. 再深谈TCP/IP三步握手四步挥手原理及衍生问题—长文解剖IP

    转载地址: https://www.zhoulujun.cn/html/theory/ComputerScienceTechnology/network/2015_0708_65.html 如果对网络 ...

  3. 【运维面试】面试官问到tcp/ip三次握手,四次挥手,这么回答就对了

    我之前面试过很多运维人员,每次都绕不开tcp/ip三次握手,四次挥手: 面试者的回答也是八仙过海各显神通 有讲故事的,有画图的,有把自己讲晕了的: 那这个该怎么回答呢? 我总结下来可以这么来说: 三次 ...

  4. 使用tcpdump探测TCP/IP三次握手

    读计算机应该就同说过TCP/IP三次握手,但是都没有去验证过,今天心血来潮,去验证了一下,于是乎写下了这篇博客,可能写的可能有问题,还请多多指教 包括我学习,还有从很多资料来看资料,第三次握手,应该会 ...

  5. 以女朋友为例讲解 TCP/IP 三次握手与四次挥手

    来自:开源中国,作者:Champin 链接:https://my.oschina.net/u/3708120/blog/1581023 背景 和女朋友异地恋一年多,为了保持感情我提议每天晚上视频聊天一 ...

  6. TCP/IP 三次握手和四次挥手

    方案 TCP建立连接为什么是三次握手,而不是两次或四次? TCP,名为传输控制协议,是一种可靠的传输层协议,IP协议号为6. 顺便说一句,原则上任何数据传输都无法确保绝对可靠,三次握手只是确保可靠的基 ...

  7. tcp wireshark 过滤syn_使用 WireShark 分析 TCP/IP 三次握手 和 四次挥手

    TCP 三次握手 示意图 Wireshark 抓包注意事项 为了演示一个TCP三次握手建立连接的过程,我们通过 Chrome 访问一个网页. 已知 HTTP 协议就是建立在TCP链接上的 通过 Cmd ...

  8. 理解TCP/IP三次握手与四次挥手的正确姿势

    为什么80%的码农都做不了架构师?>>>    背景 和女朋友异地恋一年多,为了保持感情我提议每天晚上视频聊天一次. 从好上开始,到现在,一年多也算坚持下来了. 问题 有时候聊天的过 ...

  9. TCP/IP三次握手 四次挥手

    什么是三次握手.四次挥手 TCP建立连接的过程: TCP在传输之前会进行三次沟通,一般称为"三次握手", 传完数据断开的时候要进行四次沟通,一般称为"四次挥手" ...

  10. TCP/IP三次握手与四次挥手

    转载自https://blog.csdn.net/zhangliangzi/article/details/50695611 一.首先了解TCP报文格式 其中必须了解的字段有: 1.源端口与目的端口: ...

最新文章

  1. 在Eclipse中使用Maven构建Spring项目
  2. 从看见到听见,机器人传感能否解决智能制造检测的最后一公里难题?
  3. Python Elasticsearch 插入数据
  4. 【转】NuGet学习笔记(2)——使用图形化界面打包自己的类库
  5. 高级数据结构与算法 | LFU缓存机制(Least Frequently Used)
  6. dhcp服务器能为客户端提供哪些信息,为DHCP客户端提供DHCP服务器的MAC [关闭]
  7. 四川中职计算机专业考的学校,四川中职学校哪家专业
  8. 外键为','(逗号)拼接ID,连接查询外键表ID
  9. 【Flink】Could not connect to BlobServer at address
  10. mysql执行计划中 性能最好_MySQL性能优化-explain执行计划
  11. os.path.basename()
  12. ISO27001:2013和ISO27001:2005的差异对比
  13. 《书生云超融合一体机》T-CAM评审会召开
  14. phython学习第二天
  15. 扑克牌java发牌_Java练习——扑克牌发牌器
  16. 写给想成为前端工程师的同学们―前端工程师是做什么的?
  17. IBM推出蓝色基因二代产品蓝色基因/P(转)
  18. 读围城论方鸿渐与孙柔嘉的爱情
  19. 9天拿下CVPR竞赛冠军!家里的狗狗都改了作息时间...
  20. 数据库系统原理与应用教程(047)—— MySQL 查询(九):连接查询

热门文章

  1. 全网最全的多线程知识
  2. 面试经历---铂涛集团(2015年10月17日下午)
  3. Handling error: InvalidRequestException, Missing grant type报错原因之参数写错
  4. 【Java 数据结构 算法】宁可累死自己, 也要卷死别人 14 汉诺塔
  5. 内网渗透的边界场景分析+内网代理整理
  6. SaaS已死?恰恰相反,它或将迎来最好的时代!
  7. 超硬核总结,一举拿下Redis数据库
  8. 电池温度脚检测电池温度原理
  9. Redis(九)—— Geospatial地理位置的使用
  10. Docker - 使用可视化工具管理docker