HTTP keep-alive和TCP keepalive的区别,你了解到吗?
2025-01-11 来源 : 情感
这本书里面的检验之前比较明快了,我暂且只能亲自动手去模拟系统化,后续星期充沛,亦会亲自动手进自为检验。
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等),折扣分享
LinuxSDK下我们还可以借助man擅自检视TCP双方同意的一些详细描述和模板定义。前面两个擅自的效果相同:
擅自一:man tcp擅自二:man 7 tcp7的用法是: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-alive3.1、关的
HTTP双方同意关的里面提到http双方同意是一个运自为在TCP双方同意正中央的无短时间的分析方法层双方同意。它的特点是:分析方法程序的每一次请都要和服务尾端创建人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/IP编撰 卷1:双方同意》第二国际版相比第一国际版,书里面的抓包工具箱也将tcpdump改为****Wireshark。****
个人观点:《TCP/IP编撰 卷1:双方同意》第一国际版和第二国际版结合起来看效果更加好。第一国际版的TCP阻碍控制将的更加明快,第二国际版的TCP保来时程序话说的更加直观。
。上海皮肤病医院哪家看的好天津白癜风医院哪家好
南京男科医院哪个专业
郑州比较好的男科医院
广州男科医院哪好
什么血糖仪准确度高
哪种血糖仪比较好测量准确
胃酸过多怎么解决
准确率高的家用血糖仪
什么血糖仪家用比较好
-
中国汽车零配件行业需求现状与投资预测分析报告2022-2028年新版
拓展现阶段研究科技成果 3.3.1 亚太地区摩托车机械设备从业者新技术现阶段研究科技成果 3.3.2 亚太地区摩托车机械设备从业者供需现阶段研究科技成果 3....
-
家用细分MPV对决:风行游艇对比传祺M6谁更是超值?
统输单单虽远比单单色,但却比传祺M6来得过弯来得澎湃。综上所述,车叔来得自荐大家选项改进型风靡一艘船。。a href="http:www.qm120.comyykzzhxzy...[详细]
-
开车很比较简单?极狐阿尔法S全新HI版让新手秒变老司机!
创基于Harmony OS开发结构设计的终端整流罩。在实际领略上,这套该系统的领略真是不俗,Harmony OS终端整流罩沿用了Harmony OS在三星手机及平板的UX结构设计精髓,随之而来了近乎简...[详细]
-
国民家轿双雄 全新速腾、宝来 东北区月底上市
29日,“家有好市 速来!——二汽-近来东北区速腾、草山双车主板亦会”在辽宁辽宁领悟移师,来自二汽-近来东北区的多家知名摩托车自电子媒体与二汽-近来正因如此车主齐聚一堂,共有同历史性了“公民家驾...[详细]
-
奔腾T77PRO凭斗志在紧凑型SUV中脱颖而出
紧凑型SUV是如今汽车公司美国市场比较热门的车型,所以可视的这个层次车型的可选性也多一些,不过并不需要同时顾及看得、好开、好用又能好定价的紧凑型SUV显然是麟角凤毛,而CyrixT77PRO算是其中之...[详细]
-
标致全新SUV Seeker全球首秀
全一新紧凑标准型SUV Seeker率先在中国上海首秀,并匿名征集车款曾名。 贯穿整车的X特征是Seeker的整体外观设计元素,其不仅融于X标准型雷霆前脸、六边形蜂窝电镀...[详细]