Linux arp缓存超时值
我正在尝试为
Linux内核arp缓存超时配置合理的值,但我找不到关于它们如何在任何地方工作的详细解释.即使是kernel.org文档也没有给出很好的解释,我只能找到建议的值来缓解溢出.
以下是我拥有的值的示例: net.ipv4.neigh.default.gc_thresh1 = 128 net.ipv4.neigh.default.gc_thresh2 = 512 net.ipv4.neigh.default.gc_thresh3 = 1024 现在,从我到目前为止收集的内容: > gc_thresh1是垃圾收集器开始删除任何条目之前允许的arp条目数. 现在,如果我理解正确,如果arp条目的数量超过gc_thresh1但仍然低于gc_thresh2,则将通过gc_interval设置的间隔定期删除多余的条目. 我的问题是,如果条目数超过gc_thresh2但低于gc_thresh3,或者数字超出gc_thresh3,那么条目是如何删除的? 解决方法
每当有强制垃圾收集条目时,last_flush字段在邻居表neigh_table中更新.
如果满足下列条件之一,则会发生强制垃圾收集条目: >表中的条目数大于gc_thresh3 当请求强制垃圾收集条目时,将丢弃满足以下条件的条目: >没有人提到这个条目 如果条目总数大于gc_thresh1,则neigh_periodic_work会定期执行工作,尝试释放未引用的条目. 来源:Linux内核源码,neighbour.c (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |