inet_peer 缓存是什么
内核对每个对端 IP 维护一份共享缓存条目,用来存放路径 MTU 这类可以跨连接复用的信息,同一个对端上的多条连接共用一份。inet_peer 系列参数控制这份缓存的容量阈值与回收节奏,属于池级的全局设置,而不是某个套接字的属性。
基本信息
| 查看命令 | sysctl -a | grep inet_peer |
|---|---|
| 涉及参数 | inet_peer_threshold、inet_peer_minttl、inet_peer_maxttl、inet_peer_gc_mintime 等 |
| 作用范围 | 池级共享缓存,影响所有对端条目 |
| 调整前提 | 有明确指标异常,且理解各时间参数之间的关系 |
| 观察方式 | 调整后跟踪条目数量与相关内存占用变化 |
典型使用场景
- 对端数量极大的场景,评估缓存条目的增长是否合理
- 路径 MTU 异常时,确认是否与对端缓存中的记录有关
- 内存压力排查中,确认这部分内核缓存的实际占用
- 内核参数基线审计时,把 inet_peer 系列纳入清单
- 异常流量导致对端条目激增时,评估回收节奏是否足够快
查看现状
查看现状
sysctl -a | grep inet_peer # 列出全部相关参数与当前值
sysctl net.ipv4.inet_peer_threshold
# 记录当前值后再评估:没有基线就无法判断调整是否有效参数职责
| 参数 | 作用 | 调整含义 |
|---|---|---|
| inet_peer_threshold | 对端缓存条目的容量阈值 | 阈值以上按更短的保留时间处理 |
| inet_peer_minttl | 条目保留时间的下界 | 影响条目最短存活时间 |
| inet_peer_maxttl | 条目保留时间的上界 | 影响条目最长存活时间 |
| inet_peer_gc_mintime | 垃圾回收的最小间隔 | 影响回收的频率 |
使用注意
- 常规环境保持默认值即可,没有计数器支撑就不要改动
- 该参数影响所有对端条目,改动前评估全局影响
- 调整后要有可对比的观测指标,否则无法判断效果
- 把改动写入配置文件并记录回滚方法
只有在能给出明确指标依据时才调整这一组参数;凭印象改 TTL 与回收间隔,容易让路径 MTU 缓存过早失效,反而引入额外的分片与重传。
不同内核版本暴露的参数集合不完全一致,某些参数名是历史遗留的别称,读取实际值应以本机 sysctl 输出为准。