http的keepalive和tcp的keepalive

1.HTTP的keepalive

在http1.0的时候,每个http请求都是要求打开一个tcp socket,并且使用一次之后就断开这个tcp连接了。使用keepalive可以改善这种状态,即在一次tcp连接中可以持续发送多份数据而不会断开连接。通过使用keepalive技术可以减少tcp连接次数,也意味着可以减少time_wait状态,以此来提高性能。但是keepalive也有一定的缺点:长时间的tcp连接容易导致系统资源的无效占用。

2.TCP的keepalive

链接建立之后,如果应用程序或者上层协议一直不发送数据,或者隔很长时间才发送一次数据,当链接很久没有数据报文传输时如何去确定对方还在线,到底是掉线了还是确实没有发送数据,链接还需不需要保持,这种情况下tcp协议中给出了一个方法:当超过一段时间之后,TCP自动发送一个数据为空的报文给对方,如果对方回应了这个报文,说明对方还在线,链接可以继续保持,如果对方没有报文返回,并且重试了很多次之后则认为链接丢失,没有必要继续保持链接。

说到底,tcp的keepalive机制和http的keepalive机制是两种不同的东西,tcp的keepalive是在establish状态的时候,双方如何检测链接的可用性。而http的keepalive说的是如何避免进行重复的tcp三次握手和四次挥手。

相关推荐
星恒讯工业路由器13 小时前
Wi‑Fi DCM 双载波调制解析
网络·信息与通信·wifi7·wifi6·wi‑fi dcm 双载波调制
IP搭子来一个14 小时前
爬虫采集大量返回 403、429,到底卡在哪一环?
网络·爬虫·python
之歆14 小时前
Day16_JavaScript 轮播图与事件工程实战(下篇)
服务器·开发语言·前端·javascript·网络·性能优化
IT大白鼠14 小时前
ICMP协议详解:从基础原理到网络应用实践
网络
云登指纹浏览器15 小时前
静态IP和动态IP哪个好:跨境电商代理选型指南
网络·网络协议·tcp/ip
不昀18 小时前
VOOHU沃虎:音频变压器的频率响应范围是多少?如何影响音质?
网络
H Journey18 小时前
防火墙基本原理、开发部署概述
网络·防火墙
liulilittle19 小时前
BBR 状态机
网络·通信
l1t19 小时前
DeepSeek总结的使用实体-组件-系统和基于存在性处理进行Python编程12-14
开发语言·网络·python
Promise微笑19 小时前
智能示警器(驱鸟器)性价比深度解析:科技赋能的生态防护新范式
网络·科技