Routing-Cache in den neuesten Linux-Kerneln

7

Soweit ich weiß, wurde der Routing-Cache seit dem Linux-Kernel 3.6 entfernt. In Systemen mit älterem Linux-Kernel konnte man den Inhalt des Routing-Cache mit ip route show cacheBefehl anzeigen und der Routing-Cache wurde vor den Routing-Tabellen konsultiert. Wie ist der Status des Routing-Caches in den neuesten Linux-Kerneln? Wurde es einfach entfernt und alle Pakete durchlaufen die Routing-Tabellen? Gibt es eine Art (ähnliches) Ersatzsystem?

Martin
quelle

Antworten:

5

Nach dem, was ich im LinuxFR-Artikel gelesen habe (französisch)

Dieser Cache hatte einen schlechten Leistungsengpass im Vergleich zu den heutigen Latenzanforderungen und Sicherheitsproblemen, bei denen Angreifer aufgrund von Sicherheitslücken diesen Cache manchmal vergiften konnten. Auch die durchschnittliche Trefferquote lag bei <10%.

Es gibt jetzt einen kleinen Cache pro Eintrag, jedoch nur für zusätzliche Informationen (TCP-Statistiken, PTMU, ...).

Hier ist die Mail-Zusammenfassung des Entwicklers nach Version 3.6

Ein weiterer Kommentar zur Leistung des Caches: LWN.net

mveroone
quelle
5
Gibt es eine Möglichkeit, den Inhalt dieses Caches pro Eintrag anzuzeigen? Und bin ich richtig , dass nach der Routing - Cache jedes eingehende Entfernen und ausgehenden IPv4 / IPv6 - Paket wird direkt gegen Routing - Tabellen geprüft ( local, mainusw.)?
Martin
1
Ich bezweifle, dass es eine andere Möglichkeit gibt, diesen Cache als Entwicklertools nachzuschlagen und Kernel-Dumps zu analysieren. Ich bezweifle auch sehr, dass es für einen anderen Zweck als die Entwicklung dieses Teils des Kernels sinnvoll wäre. Für das "Wie" funktioniert es jetzt vermutlich direkt mit den Routing-Tabellen, obwohl die zugrunde liegenden Mechanismen etwas komplexer erscheinen. Siehe git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/…
mveroone
Aus dem vorherigen Link wird empfohlen, die Kernelmodule net_test_tools wie kbench_mod.sound dann die perfTools zu verwenden
mveroone