一天一八股——TCP保活keepalive和HTTP的Keep-Alive

TCP属于传输层,关于TCP的设置在内核态完成

HTTP属于用户层的协议,主要用于web服务器和浏览器之间的

  1. http的Keep-Alive都是为了减少多次建立tcp连接采用的保持长连接的机制,而tcp的keepalive是为了保证已经建立的tcp连接依旧可用(双端依旧可以通过此tcp连接进行正常通信)。
  2. http的keep-Alive设置在http的connection字段中,可以设置connection字段为close来进行关闭(http1.1之后默认开启长连接,设置为Keep-alive),tcp的保活机制是协议设置层面实现的,由内核进行实施。
  3. http的keep-alive是在keepalive_timeout参数设置的时间之后依旧双端依旧没有通信,就会触发回调函数结束连接,tcp的保活设置保活计时器,长时间无数据交互,会发送保活报文,服务端无响应,连续几次后,结束连接,有相应重置保活计时器。
  4. http的长连接通过应用程序进行实现,tcp的保活通过内核实现
相关推荐
Cx330❀9 小时前
【Linux网络】网络层协议 IP :从网络层原理到 Linux 内核源码
linux·运维·服务器·网络·tcp/ip·ai·ai编程
ITxiaobing202310 小时前
广告归因场景下的IP情报工程化:提升AppsFlyer P360匹配精度的实践思路
大数据·人工智能·tcp/ip
FPC工厂——皇榜科技11 小时前
机器人灵巧手线路板:从“握得住”到“摸得准”:一只机械手的柔性神经密码
网络·人工智能·科技·机器人·pcb工艺
Orange_sparkle11 小时前
Pi Agent vs LangGraph:从人机交互、企业 RAG 到持久化工作流的完整选型指南
java·网络·人机交互
右耳朵猫AI12 小时前
Go周刊2026W36 | Go 1.27.1 发布、TinyGo 0.42、HTTP/2 原生迁入 net/http、quic-go 0.62
redis·http·golang
xiaoye-duck12 小时前
《Linux 网络编程》深入传输层 UDP 协议原理:端口、报文、缓冲区与内核源码解析
linux·网络·udp
好评12413 小时前
【Linux】数据链路层
linux·运维·网络
天衍四九-13 小时前
第一章:从 LLM 到 Agent —— DeepSeek Harness 入门
网络·数据库·人工智能·python
Jae den13 小时前
网络丢包是什么?
网络
CC城子14 小时前
EtherNet/IP I/O 丢包排查(linux系统)
linux·单片机·tcp/ip·ethernetip