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三次握手和四次挥手。

相关推荐
星恒讯工业路由器4 分钟前
IP地址冲突:成因、影响与工业网络中的应对策略
网络·信息与通信·ip地址冲突·工业网络·网络故障排查·ip-mac绑定
深圳恒讯8 分钟前
CN2 GIA和CN2 GT的区别
运维·服务器·网络
盗理者38 分钟前
AI Agent 技能分享|从零实现一个 MCP Server,让 AI Agent 安全调用内部系统
网络·人工智能·安全·agent
wear工程师40 分钟前
接口超时别只调大 timeout:Java HTTP 客户端其实有 3 段等待
java·http
蜡台41 分钟前
本机 局域网 搭建本地 HTTPS 域名完整方案
网络协议·http·https·openssl
国科安芯1 小时前
详解ADC 规则组外部触发:CH2、CH3 与 TRGO2
运维·网络·单片机·嵌入式硬件·mcu·系统架构
便利店10241 小时前
以太网:局域网如何用 MAC 与交换机转发帧
网络·智能路由器·mac·以太网
梅菲塔亚2 小时前
Keepalived高可用全解析
linux·运维·服务器·开发语言·网络·php
basketball6163 小时前
软考中级网络工程师 第6章 网络安全 备考总结
大数据·网络·web安全·网络工程师·软考
云老大-阿里云国际站代理商4 小时前
腾讯云国际站代理商:CVM 跨地域网络抖动排查,深度分析 TCP 重传与 MTU 问题
网络·tcp/ip·腾讯云