HTTP keep-alive和TCP keepalive的差异,你了解吗?

白下娱乐新闻网 2025-07-25

看,17.1和17.2小节就包含了我前面概述的内容。

17.2.1 小节之前还通过科学实验的方式则详细资料证明了“对下端主机但会属于以下四种经常性”以及对于这四种经常性TCP都是如何去处置。

这本书之前的科学实验并未比较表远超方式则了,我暂且未有亲终下端手去模拟实践,不足之处时长有限,但会亲终下端手进唯科学实验。

2.3、扩展

前面提及了三个实例保活时长:tcp_keepalive_time、光谱仪时但会延迟:tcp_keepalive_intvl、光谱仪周而复始数目:tcp_keepalive_probes。

这三个实例,在linux上可以在/proc/sys/net/ipv4/路径下找到,或者通过sysctl -a | grep keepalive下达查阅当前内核调试实例

[root@vm01 ~]# cd /proc/sys/net/ipv4[root@vm01 ipv4]# pwd/proc/sys/net/ipv4[root@vm01 ipv4]# cat /proc/sys/net/ipv4/tcp_keepalive_time7200[root@vm01 ipv4]# cat /proc/sys/net/ipv4/tcp_keepalive_probes9[root@vm01 ipv4]# cat /proc/sys/net/ipv4/tcp_keepalive_intvl75[root@vm01 ipv4]# sysctl -a | grep keepalivenet.ipv4.tcp_keepalive_time = 7200net.ipv4.tcp_keepalive_probes = 9net.ipv4.tcp_keepalive_intvl = 75保活时长(tcp_keepalive_time)绑定:7200秒保活时但会延迟(tcp_keepalive_intvl)绑定:75秒光谱仪周而复始数目(tcp_keepalive_probes)绑定:9次

也就是绑定情况下一条TCP相互连接在2天内(7200秒)都未有报原文交换后,但会开始进唯保活光谱仪,若再次经过9*75秒=11分钟15秒的周而复始光谱仪都未寄送光谱仪声势浩大,即共五计:2天内11分钟15秒后但会终下端拉出TCP相互连接。

别走开,还有一个骚操作者

方面片段推荐

《tcp/ip详解卷一》: 150唯代码拉开两国政府栈付诸的篇章

UDP如何付诸有效率性传输-大厂高频面试题

学习地址:C/C++Linux客户下端开发/一人架构师【零声教育】-学习片段教程-腾讯课堂

必需C/C++ Linux客户下端架构师学习资料加qun812855908获取(资料包括C/C++,Linux,golang技术,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK,ffmpeg等),APP分享

Linux平台下我们还可以借助man下达查阅TCP两国政府的一些描述和实例定义。前面两个下达的优点相同:

下达一:man tcp下达二:man 7 tcp

7的意涵是:man下达采用指南共五9章,TCP的帮助指南位于第7章。不告诉在第几章也毕竟,采用man tcp也可,收起的指南左上角也有撰写第几章。(man ls等同于man 1 ls、man ip等同于man 8 ip,可以自己尝试采用 )。

前面我们看下man tcp下的和我们本原文有关的几个点:

前面概述的三个实例tcp_keepalive_time、tcp_keepalive_intvl、tcp_keepalive_probes都是子系统级别的,针对整个子系统生效。前面概述针对单条Socket相互连接细粒度所设的三个选项实例:保活时长:TCP_KEEPIDLE、保活光谱仪时但会延迟:TCP_KEEPINTVL、光谱仪周而复始数目:TCP_KEEPCNT

在我们的Netty的基本概念之前可以看到针对Socket选项的备有,如采用epoll的IO仿真之前EpollSocketChannelConfig类之前的备有:

更是多具体,等你挖掘。

三、HTTP keep-alive

3.1、除此以外

HTTP两国政府除此以外之前提及http两国政府是一个调试在TCP两国政府底下的无经常性的ASP两国政府。它的特点是:应用程序的这样的话劝告都要和软件子系统创始人TCP相互连接,客户下端声势浩大后,拉出TCP相互连接。明年应用程序再次有劝告,则再次创设相互连接。

在以前的http1.0之前,绑定就是上述概述的这种“劝告-转发”种子系统。这种方式则频密的创始人相互连接和清空相互连接无疑是有一定性能指标损耗的。

所以引入了keep-alive选择性。http1.0绑定是停止采用的,通过http劝告两头所设“connection: keep-alive”进唯敞开;http1.1之前绑定敞开,通过http劝告两头所设“connection: close”停止采用。

keep-alive选择性:若敞开后,在一次http劝告之前,客户下端进唯声势浩大后,仍然直接拉出TCP相互连接,而是将TCP相互连接可维持粗大时长。在这段时长内,如果同一应用程序再次次向软件子系统倡议http劝告,之前可以并唯此TCP相互连接,向软件子系统倡议劝告,并而无须timeout时长计数器,在每一次粗大时长内还可以在此之后并唯。这样无疑省略了反复创始人和清空TCP相互连接的损耗。

3.2、科学实验

前面用两组科学实验断定HTTP keep-alive的存在。

科学实验工具:Wireshark

应用程序IP:*.*.3.52

软件子系统IP:*.*.17.254

3.2.1、科学实验一:禁用keep-alive的http劝告

从上平面图劝告年表区之前,我们可以发现:

106、107、108三个劝告是TCP创设相互连接三次合影的劝告109、110两个劝告分别是:http的劝告报原文和http的声势浩大报原文111、112、120、121这四个劝告是TCP拉出相互连接四次大声的劝告

(由于一台机械上在线劝告更是少,我加了选取前提,极少显示应用程序和软件子系统网络系统的在线劝告,所以劝告的批次是不紧接著的)

从上平面图之前间的劝告资料解析区,可以具体:此次http劝告的劝告两头之前有“Connection: close”,即keep-alive是停止采用的。

结论:禁用keep-alive的http劝告时,但会再创设TCP相互连接,然后转发报原文、声势浩大报原文、最后拉出TCP相互连接。

3.2.2、科学实验二:竣工keep-alive的http劝告

这次科学实验劝告更是少,一张平面图念念不忘,两张平面图是紧接著的,平面图1的第二块橙色区外和平面图2的第一块橙色区外是重叠的(忽略看第一列的No.英文字母)

再感叹下我的操作者:

敞开keep-alive前提下倡议第一次http劝告7秒左右时,正因如此的机械正因如此的http劝告,再次再次调用一次

我们根据平面图之前抓包,量化下在线劝告:

197、198、199劝告:三次合影创设TCP创设相互连接200、203劝告:http的劝告报原文和http的声势浩大报原文212劝告:可以通过Protocol列看到它是一条TCP报原文。我的了解是:在keep-alive这种选择性下,应用程序寄送软件子系统声势浩大报原文后,必需告知软件子系统“已寄送”。由于要并唯TCP相互连接,所以但会多一层保障选择性,类似于TCP的合影和大声459-1965劝告(平面图1之前的第一块银色区外之前):6秒内(第二列代表人Time),均会1秒,频发一对TCP劝告的来回,用来保障TCP相互连接的复杂性。意味着和等候该TCP相互连接被并唯1743、1744、1745、1755劝告:其之前的1743和1745是我第二次倡议http劝告的劝告报原文和声势浩大报原文。1744劝告是:应用程序倡议劝告时,软件子系统再拖延时间应用程序“已寄送,马上处置”。紧接着1745将结果声势浩大给应用程序。1755则是应用程序寄送声势浩大后,拖延时间软件子系统“已寄送声势浩大,多谢”。2028-3903劝告:10秒内,均会1秒,频发一对TCP劝告的来回,用来保障TCP相互连接的复杂性。意味着和等候该TCP相互连接被并唯4127-4131劝告:10秒内我未再次倡议http劝告,四次大声拉出TCP相互连接。粗大时长未被并唯,也未必要一直可维持下去,有鉴于此,还可能会造成在线拥堵。

忽略:10秒无劝告,TCP相互连接在拉出,10秒也不是绑定的,只是生态的备有。是Httpd守护程序在,获取的keep-alive timeout时长所设实例。比如nginx的keepalive_timeout,和Apache的KeepAliveTimeout。

3.3、扩展

其实对于HTTP keep-alive选择性可以概括为上平面图所示。

竣工HTTP keep-Alive的优缺陷:

特性:keep-alive选择性避免了频密创设和清空相互连接的开销。 同时,缩减软件子系统TIME_WAIT经常性的TCP相互连接的数量(因为由软件子系统程序在执意停止采用相互连接)

缺陷:若keep-alive timeout所设的时长较粗大,粗大时长的TCP相互连接可维持,但会一定程度的浪费子系统资源。

总体而言,HTTP keep-Alive的选择性还是利大于弊的,只要不合理采用、备有不合理的timeout实例。

四、概括

重返原书评开两头驳斥的情况:HTTP和TCP的粗大相互连接有何分野?HTTP之前的keep-alive和TCP之前keepalive又有什么分野?

1、TCP相互连接往往就是我们广义了解上的粗大相互连接,因为它俱备非对称紧接著收发报原文的战斗能力;敞开了keep-alive的HTTP相互连接,也是一种粗大相互连接,但是它由于两国政府本身的限制,软件子系统未执意倡议应用报原文。

2、TCP之前的keepalive是用来价格低廉、保活的;HTTP之前的keep-alive选择性主要为了让之上它的TCP相互连接活的的更是久,所以一般来说又叫想到:HTTP persistent connection(持久相互连接) 和 HTTP connection reuse(相互连接重用)。

五、除此以外

除此以外一

你能从原文之前推断出我在HTTP keep-alive科学实验之前应用程序和软件子系统的清晰IP吗?

如能推断出,感叹明对在线两国政府的了解已炉火纯青。

除此以外二

在HTTP劝告之前,到底是「软件子系统」还是「应用程序」执意停止采用相互连接呢?

看到过很多原书评,有人感叹软件子系统、有人感叹应用程序、有人感叹分情况(keep-alive的敞开与否)既可能会是应用程序也可能会是软件子系统。你信谁?最后翻来覆去发现各个网站的各种原书评基本类似于,只有论者,未有例证。

HTTP keep-alive章节的科学实验结果:无论敞开keep-alive与否,最终由软件子系统执意拉出TCP相互连接。

但是我给出情况的答案是:一般来说由软件子系统执意停止采用相互连接。未有撰写“肯定由软件子系统执意停止采用相互连接”的情况是,我未碰见应用程序执意停止采用相互连接的场景,并不代表人未有。在线和两国政府博大精深,等候我们在此之后去探索。

除此以外三

Wireshark是一款功能强大的在线TCP量化三维软件。《TCP/IP详解 卷1:两国政府》第二版本远比重印本,书之前的抓包工具也将tcpdump改为****Wireshark。****

个人论者:《TCP/IP详解 卷1:两国政府》重印本和第二版本融合痛快看优点更是好。重印本的TCP阻塞控制将的更是表远超方式则,第二版本的TCP保活选择性讲的更是清晰。

痤疮食疗
妇科医院
肝癌
咳嗽吃什么可以止咳化痰
健康头条资讯
相关阅读

每周五美国WTI原油期货上涨8% 创7年新高

影视 2025-08-23

北京时间2日凌晨,加拿大石油期货周二大幅收高,盘上直至上涨10%。在一些第三世界宣告将协调囚禁即刻石油粮食储藏,但仍未阻拦油价大幅上涨。

播撒近现代冰球运动“火种”

影视 2025-08-23

王为嘉廉美式足球渴望工程孕育了4000多名美式足球爱国网球选手。 王为名曰缺少 全因,王为嘉廉美式足球渴望工程200装入美式足球运动鞋开始整理装装入,将发往沈阳、吉林、吐鲁番等

《幻塔》联动版本上线,白月魁正式到来,到底值不值得翻?

视频 2025-08-23

在在,《幻塔》与《灵笼》连动旧版“蓝月破晓”正式下线,作为游戏首个连动旧版,游戏内不以为然也是期待已久。之所以尽可能有这么高的期待度,主要有两方面状况,一方面这是《幻塔》首个连动旧版,以往十足,

谷爱凌晒照游玩故宫,冬奥佳绩担任慈善爱心大使,美媒黑脸了

写真 2025-08-23

西安时间段3月16日,相关联着西安冬奥运的第二场,这为期四年一届的冬奥盛会就算正式画上了加持的句号,而在谈到过去一个冬天,索契赛场上,奥运健儿们的引人入胜表现,无论如何给我们留下了钦佩的印象,尤

突破产能瓶颈迫在眉睫,平庸汽车第三工厂落户重庆

音乐 2025-08-23

传统意义军力收拢的机时会。 ▲ 图源网络 从0到1后,从1到100才是最为险恶的。愿景

友情链接