netem und tc: netem ist ein Netzwerksimulationsmodul, das von den Linux-Kernelversionen 2.6 und höher bereitgestellt wird. Mit diesem Funktionsmodul können komplexe Internetübertragungsleistungen wie geringe Bandbreite, Übertragungsverzögerung, Paketverlust usw. in einem lokalen Netzwerk mit guter Leistung simuliert werden. Viele Linux-Distributionen, die die Kernelversion Linux 2.6 (oder höher) verwenden, haben diese Kernelfunktion aktiviert, etwa Fedora, Ubuntu, Redhat, OpenSuse, CentOS, Debian usw. tc ist ein Tool im Linux-System und sein vollständiger Name lautet Traffic Control. tc kann verwendet werden, um den Arbeitsmodus von netem zu steuern. Das heißt, wenn Sie netem verwenden möchten, sind mindestens zwei Bedingungen erforderlich. Erstens muss die netem-Funktion im Kernel enthalten sein, und zweitens muss tc erforderlich sein. Es ist zu beachten, dass die in diesem Artikel vorgestellte Flusssteuerung nur die Paketsendeaktion steuern kann, nicht jedoch die Paketempfangsaktion. Gleichzeitig wirkt sie sich direkt auf die physische Schnittstelle aus. Wenn die physische eth0 gesteuert wird, ist auch die logische Netzwerkkarte (z. B. eth0:1) betroffen. Wenn Sie umgekehrt die logische Netzwerkkarte steuern, kann die Steuerung ungültig sein. (Hinweis: Mehrere Netzwerkkarten in einer virtuellen Maschine können als mehrere physische Netzwerkkarten in der virtuellen Maschine angesehen werden.) Linux verfügt über ein TC-Tool (Traffic Control), mit dem sich Paketverluste und -verzögerungen im Netzwerk simulieren lassen. Wenn wir bei der Entwicklung eines Backend-Servers wissen möchten, ob der Server unter bestimmten Netzwerkpaketverlustbedingungen eine gute Leistung erbringt, können wir mit tc die Paketverlustrate simulieren. Paketverlust simulieren Der folgende Befehl kann einen Paketverlust simulieren und 10 % der Pakete, die den Netzwerkport eth0 verlassen, gehen zufällig verloren: sudo tc qdisc add dev eth0 root netem Verlust 10 % Analoge Verzögerung Der folgende Befehl verzögert die vom Netzwerkport eth0 gesendeten Pakete um 40 ms: sudo tc qdisc add dev eth0 root netem Verzögerung 40 ms Paketverlust und Latenz in bestimmten Szenarien Beachten Sie, dass die oben vorgestellten Befehle für den gesamten Netzwerkport eth0 gelten, das heißt, bei allen von eth0 ausgehenden Paketen kommt es zu zufälligen Paketverlusten oder Verzögerungen. Manchmal möchten wir jedoch, dass Paketverlust und Verzögerung nur eine bestimmte Zieladresse betreffen. Was sollen wir tun? sudo tc qdisc add dev eth0 root-Handle 1: prio sudo tc qdisc add dev eth0 parent 1:3 handle 30: Netem-Verlust 13 %, Verzögerung 40 ms sudo tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 199.91.72.192 match ip dport 36000 0xffff flowid 1:3 Im obigen Befehl weisen wir tc an, 13 % Paketverlust und 40 ms Verzögerung für an 199.91.72.192:36000 gesendete Netzwerkpakete zu generieren, während an andere Zieladressen gesendete Netzwerkpakete nicht betroffen sind. Löschen einer Regel OK, denken Sie daran, nach der Simulation von Paketverlust und Latenz die Regel zu löschen: sudo tc qdisc del dev eth0 root Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Anwendungsbeispiele für React Hooks (6 gängige Hooks)
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis Einführung Vier Merkmale von T...
Wie installiere ich Nginx an einem bestimmten Ort...
MYSQL bietet offiziell eine Installer-Methode zum...
Offizielle Docker Hub-Website 1. Suchen Sie nach ...
1. Erstellen Sie eine Testtabelle CREATE TABLE `t...
Inhaltsverzeichnis Normale Paging-Abfrage So opti...
Empfohlene Docker-Lernmaterialien: https://www.ru...
Die Farbdarstellung auf einer Webseite wird von ve...
Es zeigt hauptsächlich, wie X-Frame-Options, X-XS...
Inhaltsverzeichnis WarteschlangeMikrotask asynchr...
1. Laden Sie das komprimierte Tomcat-Paket von de...
CEP – Komplexe Ereignisverarbeitung. Die Zahlung ...
Serverstatusanalyse CPU-Details des Linux-Servers...
Vorwort Ein Zeichensatz ist eine Reihe von Symbol...