为什么TIME_WAIT状态是2MSL?(2个原因)

article/2025/11/5 10:57:11

为什么TIME_WAIT的时间是2MSL? 先来看看上文中TIME_WAIT状态存在的两个理由。

首先看理由1,为了可靠地实现全双工连接的终止,假设图2-5中客户端发送的最后一个ACK丢失,服务端将重传FIN,为了能够收到这个超时重传的FIN,客户端需要TIME_WAIT状态;那TIME_WAIT状态就必须是2MSL了吗?其实这个要看服务端FIN的超时重传时间RTO,如果RTO小于MSL,那TIME_WAIT状态MSL就够了,如果RTO大于2MSL那么TIME_WAIT状态2MSL也是不够的,所以只有RTO在MSL和2MSL之间的时候,TIME_WAIT状态存在的理由1才是TIME_WAIT的时间是2MSL的原因。其实一般情况下,RTO都是远远小于MSL的,但考虑到最糟糕的情况,RTO是为2MSL,所以TIME_WAIT状态为2MSL可以保证最糟糕情况也可以收到超时重传的FIN。

TIME_WAIT的时间是2MSL另外一个重要原因理由2,为了保证本连接持续的时间所产生的所有分组都从网络中消失,也就是保证新建立一个TCP连接时,来自该连接老的重复分组都已经在网络中消失了。这里可能有的人会有个疑问:客户端回复最后一个ACK之后,感觉一个MSL就可以所有分组消失了啊,为什么还要2MSL所有分组才消失呢?我的理解是:

假设客户端发送ACK刚刚过了一个MSL时间,而服务端在收到这个ACK之前一瞬间刚好启动超时重传FIN,所以要等这个FIN也消失,就是2MSL了。文中所指的另一个方向的应答应该就是这个超时重传的FIN。

参考来源:《UNIX 网络编程 卷1》第3版)


http://chatgpt.dhexx.cn/article/8dUVMBgb.shtml

相关文章

Time-wait状态(2MSL)

本文转自:https://blog.csdn.net/overstack/article/details/8833894,尊重原创 三次握手四次挥手图: time_wait之后会等2msl。 什么是2MSL: MSL是Maximum Segment Lifetime,译为“报文最大生存时间”,他是任何报文在…

【Linux网络编程】TCP状态转换、半关闭、2MSL时长

------------->【Linux系统编程/网络编程】(学习目录汇总) <-------------- 目录 1. 三次握手、四次挥手过程中的状态变化2. TCP状态转换图3. 半关闭4. 2MSL时长4.1 为什么要2MSL时长&#xff1f;4.2 端口复用 1. 三次握手、四次挥手过程中的状态变化 先结合下图回顾一下…

TIME_WAIT状态(2MSL)的作用

主动关闭的Socket端会进入TIME_WAIT状态&#xff0c;并且持续2MSL时间长度&#xff0c;MSL就是maximum segment lifetime(最大分节生命期&#xff09;&#xff0c;这是一个IP数据包能在互联网上生存的最长时间&#xff0c;超过这个时间将在网络中消失。MSL在RFC 1122上建议是2分…

【CSS】关于CSS的几种移动端布局方式

关于CSS的几种移动端布局方式 一、移动端布局01.meta视口标签设置02.移动布局的分类有哪些&#xff1f;03.为什么需要二倍图&#xff1f;&#xff08;1&#xff09;物理像素和物理像素比&#xff08;2&#xff09;二倍图&#xff08;根据需要确定多倍图&#xff09;&#xff08…

css:居中的几种布局方式

居中布局的方式 初始状态 <!DOCTYPE html> <html lang"en"> <head><style>.outer {width: 100px;height: 100px;border: 1px solid #f00;}.inner {width: 30px;height: 30px;background-color: #000;}</style> </head> <bo…

常见的CSS页面布局方式

详情&#xff1a;CSS页面结构是我们日常生活中最常使用到的&#xff0c;当然目前可能大家用的最多的是elementUI实现布局&#xff0c;简单方柏霓&#xff0c;下面介绍几种常见的原生页面布局的方式 公共的样式部分 <style>* {margin: 0;padding: 0;}.layout {margin-bot…

css的几种布局方式都在这

说道布局方式&#xff0c;是我们经常遇到的问题&#xff0c;下面我们就来讲解css的常见的一些布局方式。 1.双飞翼布局&#xff08;两边定宽&#xff0c;中间自适应&#xff09; 主要是通过浮动与margin实现&#xff0c;代码如下&#xff1a; <!DOCTYPE html PUBLIC &quo…

css横向布局的几种方式

首先我们先看看 html部分 bodyTip 内的三个标签我们需要让他们横向显示并且根据浏览器宽度平均显示 <body> <!--头部--> <div class"head">我是头部 </div> <div class"bodyTip"><!--左边--><div class"lef…

CSS 多种布局方式

​css布局是工作中最常碰到的&#xff0c;同时也是笔试 or 面试中会被问到的问题&#xff0c;故在本文整理了css多种布局方式&#xff0c;以供参考。 此篇较长四千五百字左右&#xff0c;读者可分三部分阅读&#xff0c;水平居中布局&#xff0c;垂直居中布局&#xff0c;水平…

HTML+CSS第十课:常见的3种网页布局方式:表格布局、DIV+CSS布局、框架布局

知识点:网页布局的方式 1、网页布局 常见的页面布局方式:表格布局、DIV+CSS布局、框架布局。 表格布局:用来显示较多的数据,如OA系统、ERP系统或CRM系统。(一般用在局部)DIV+CSS布局:相对来说最灵活的布局方式,完全实现内容和样式的分离。框架布局:通常用在网站后台…

css常见布局方式

css常见布局方式 0、前言1、两栏布局1.1 浮动 margin1.2 浮动 BFC&#xff08;overflow: hidden&#xff09;1.3 定位 margin-left1.4 给父容器设置flex布局&#xff0c;左盒子固定宽度&#xff0c;然后给右子元素设置 flex: 1。1.5 table布局 2、三栏布局2.1 float布局2.2 …

CSS布局的三种方式

绝对定位 绝对定位&#xff1a; ​ 属性&#xff1a;position 值&#xff1a;absolute <style> p.abs{position: absolute;left: 150px;top: 50px; }</style><p >正常文字1</p> <p >正常文字2</p> <p class"abs" >绝对定…

CSS五种布局方式

是CSS知识体系的重中之重 早期以table为主&#xff08;简单&#xff09; 后来以技巧性布局为主&#xff08;难&#xff09; 现在有flexbox/grid(偏简单) 响应式布局是必备知识 常用布局方法 table表格布局 <!DOCTYPE html> <html lang"en"> <head&…

CSS+DIV三种布局方式

在学习了盒模型、块级元素和行内元素得到概念后&#xff0c;我们来说一下CSS的一个比较重要的用途&#xff1a;布局。以前我们学过表格可以起到布局页面的作用&#xff0c;比如布局表单&#xff0c;但实际工作表格的布局通常也仅仅是用来布局表单。绝大多数的模具工作是由CSSDI…

Css 常用布局方式

1.CSS 参考手册 2.元素的分类 首先我们要知道一共有几种元素 1.行内元素&#xff08;可以与其他行内元素位于同一行&#xff0c;不会以新行开始高度、宽度不能设置&#xff09; 2.块级元素&#xff08;每个块级元素都从新的一行开始&#xff0c;其后的元素也另起一行。默认…

css五大布局方式详解

css布局方式 table布局float布局flex布局响应式布局Grid布局 table布局 table布局在如今已经很少使用&#xff0c;原因是&#xff1a;table布局比其它html标记占更多的字节&#xff0c;会阻挡浏览器渲染引擎的渲染顺序&#xff0c;会影响其内部的某些布局属性的生效。 使用…

css中常见的布局方式

1.流体布局 流体布局是网页缩小和放大时网页布局会随着浏览器的大小而改变。 两边的宽度是固定的&#xff0c;中间的宽度是可以根据屏幕的大小进行改变的 思路: 给左右两边的盒子设置固定的宽高并设置左右浮动&#xff0c;中间盒子通过设置margin-left和margin-right(margin的…

CSS的三大布局方式(流式布局,浮动布局和层布局)

文章目录 前言一、标准文档流二、三种布局方式1.流式布局2.浮动布局&#xff08;1&#xff09;字围效果&#xff08;2&#xff09;圣杯布局 3.层布局定位的分类&#xff1a;&#xff08;1&#xff09; 相对定位 position:relative&#xff08;2&#xff09; 绝对定位 position:…

Unity 初识:SkyBox(天空盒)

概念 天空盒是包裹整个场景的环境效果。 制作天空盒 1、创建材质球。 2、设置材质球Shader为SkyBox。 SkyBox/6 Sided&#xff0c;将六张贴图放到对应位置。 使用天空盒 为场景添加&#xff1a; 方法一、直接将做好的材质拖到场景中。 方法二、菜单栏Window--->Lighting-…

unity 天空盒介绍

天空盒其实很简单&#xff0c;就是直接找贴图&#xff0c;比如网上直接搜 然后将图片导入Unity&#xff0c;把texture shape 改为Cube模式&#xff0c;点击Apply应用即可 当应用之后Unity会自动帮我们生成材质球&#xff0c;直接将材质球拖到Scene场景即可&#xff0c;看到…