所有 BPF Map 都是有使用容量上限的。超出限制的插入将失败,从而限制了数据路径的可扩展性。下表显示了映射的默认值。每个限制都可以在源代码中更改。如果需要,将根据要求添加配置选项。

使用 --bpf-map-dynamic-size-ratio 标志,几个大型 BPF Map 的容量上限在代理启动时根据给定的总系统内存比率确定。例如,给定的 0.0025 比率导致 0.25% 的总系统内存用于这些映射。

kube-proxy根据机器拥有的内核数设置为 linux 连接跟踪表中的最大条目数。 无论机器有多少内核,kube-proxy 默认每个内核的最大条目数是 32768 和最小条目数是 131072。

Cilium 有自己的连接跟踪表作为 BPF Map,并且此类映射的条目数是根据节点中的总内存量计算的,无论机器有多少内存,条目最少数是 131072。