转载请注明出处:http://blog.csdn.net/q1007729991/article/details/69696055

1. FIN_WAIT2 状态

如果你完成了上一篇文章的实验,你肯定见过了 FIN_WAIT2 状态。

当主动关闭一方进入 FIN_WAIT2 状态时,只要对端还没有发送 FIN 段过来(处于 CLOSE_WAIT 状态,等等再关闭,我还有数据要发送),就会一直停留在这个状态。因此,FIN_WAIT2 状态会非常容易见到。


图1 处于 FIN_WAIT2 状态

很不幸,主动关闭一方有可能永远处于 FIN_WAIT2 状态,只要对方不发送 FIN 段的话(比如对端在 CLOSE_WAIT 状态时突然断电、网线掉了)。

在有些系统实现中,为了防止这种无限 FIN_WAIT2,设置了一个定时器。如果这个连接空闲 10 分钟 75 秒,TCP 将进入 CLOSED 状态。实际上,这是违反协议的,但又未尝不可呢?

2. 总结

  • 知道如何进入 FIN_WAIT2 状态
  • 知道有些系统是如何处理长期处于 FIN_WAIT2 状态的。

13-TCP 协议(FIN_WAIT2)相关推荐

  1. 基于TCP协议的网络程序(基础学习)

    下图是基于TCP协议的客户端/服务器程序的一般流程: 图 37.2. TCP协议通讯流程 服务器调用socket().bind().listen()完成初始化后,调用accept()阻塞等待,处于监听 ...

  2. tcp协议系列文章(2):从man 7 tcp开始

    本文从tcp的man手册内容开始.以下是man 7 tcp的翻译.翻译参考了一些网络上同道中人的翻译成果,对此表示感谢.下文中的错误之处请读者指出. 文末有文中所有/proc选项的列表,文中所有soc ...

  3. 浅谈网络之“TCP协议”

    下图是一次TCP通讯的时序图.TCP连接建立断开.包含大家熟知的三次握手和四次握手. 首先客户端主动发起连接.发送请求,然后服务器端响应请求,然后客户端主动关闭连接.两条竖线表示通讯的两端,从上到下表 ...

  4. 用C#实现基于TCP协议的网络通讯

    TCP协议是一个基本的网络协议,基本上所有的网络服务都是基于TCP协议的,如HTTP,FTP等等,所以要了解网络编程就必须了解基于TCP协议的编程.然而TCP协议是一个庞杂的体系,要彻底的弄清楚它的实 ...

  5. 面试:TCP协议经典十五连问!

    以下文章来源方志朋的博客,回复"666"获面试宝典 前言 TCP协议是大厂面试必问的知识点.整理了15道非常经典的TCP面试题,希望大家都找到理想的offer呀 1.  讲下TCP ...

  6. 基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器——《干饭聊天室》

    基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器--<干饭聊天室> 在这里首先感谢前端小伙伴飞鸟 前端技术请看一款基于React.C++,使用TCP/HTTP协 ...

  7. Wireshark数据包分析之TCP协议包解读

    *此篇博客仅作为个人笔记和学习参考 三次握手建立连接(SYN标志) 客户端发送链接请求,此时处于等待确认状态;服务端收到请求,回应确认请求;最后客户端确认;建立完毕,开始传输数据! 四次握手断开连接( ...

  8. 基于 tcp协议完成的上传下载

    ps: 下面两个版本全部是 基于 tcp协议完成的. 简单版(无注释): 服务器(server)代码: from socket import socket sk = socket() sk.bind( ...

  9. ubuntu怎么测tcp协议的服务器,Ubuntu利用TCP协议来获取server时间(示例代码)

    Linux利用TCP协议来获取server时间 这里使用Unix网络编程里面的一个小程序,该client建立一个到server的TCP连接,然后读取由server以直观可读格式简单地送回的当前时间和日 ...

  10. 网络协议 9 - TCP协议(下):聪明反被聪明误

    网络协议 9 - TCP协议(下):聪明反被聪明误 原文:网络协议 9 - TCP协议(下):聪明反被聪明误 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - ...

最新文章

  1. 二、OCR训练时,将txt文件和图片数据转为lmdb文件格式
  2. 【cocos2d-js官方文档】九、cc.loader
  3. carsim学习笔记3——仿真环境(驾驶员道路环境)
  4. javascript底层练习
  5. 运维利器:万能的 strace
  6. 把我的爱送给你――C#3.5(这题目似乎写错了)
  7. 计算机考试前的心情作文,考试时的心情作文(七篇)
  8. Spring AOP AspectJ
  9. 前端知识天天学(4)
  10. JS数据结构第六篇 --- 二叉树力扣练习题
  11. 基于IAR for RH850的瑞萨RH850 FCL库用法介绍
  12. 通过51单片机开发板USB转TTL模块烧录ESP8266-01固件
  13. SQL 同比、环比计算公式及实例演示
  14. 阿拉伯数字转中文数字(大写或小写)
  15. android实现短信自动转发,利用短信通知的方式在Tasker中实现收到Android手机短信自动转发到微信...
  16. windows 上面git 克隆clone 的时候报错 warning:Clone succeeded,but checkout failed
  17. 电脑远程连接打印机打印
  18. 【论文笔记】Hierarchical Paired Channel Fusion Network for Street Scene Change Detection
  19. ADB——连接手机的三种方式
  20. sap 用户权限表_sap权限相关后台表

热门文章

  1. Intellij Idea创建maven项目,App.java代码编辑区没有run选项
  2. 服务器正在维护中是什么意思王者,王者荣耀服务器正在维护中怎么回事 7月4日王者荣耀进不去解决办法...
  3. mysql 1146 错误处理
  4. 23个开源App的App Store地址和源代码
  5. Mesosphere DCOS安装
  6. C#【控件篇】按Tab键可以跳转到下个控件(TabIndex、TabStop的设置)
  7. 支付宝、微信、银联三种支付平台链接
  8. opencv 去除背景算法的比较
  9. Threejs教程之着色器
  10. 2022广西省安全员C证上岗证题目及在线模拟考试