2017-07-05 5 views
0

Ich habe eine Udp-Datei mit Scapy erstellt und ich verwende tcpreplay, um das Paket zu senden. Ich habe zwei verdrahtete Probleme konfrontiert: 1. Die Anzahl der gesendeten Pakete ist nicht identisch mit dem Parameter (--pps). Nicht sicher, ob die Antwort ist (http://tcpreplay.appneta.com/wiki/faq.html#why-doesnt-tcpreplay-send-traffic-as-fast-as-i-told-it-to)
2. Wenn ich weniger Pakete, d. H. --pps = 10, senden, ist die CPU-Last höher, wenn ich mehr Pakete, d. H. --pps = 200, sende. Ich habe es andersherum erwartet.Tcpreplay Parameter und CPU-Auslastung

BTW, ich bin mit tcpreplay Version 3.4.4

Antwort

1

Ausgabe 1. viele --pps behobenen Probleme in latest Tcpreplay version

Ausgabe 2. CPU-Auslastung mit der neuesten Version verbessert wird, aber Sie können erwarten Sie immer noch, dass 100% CPU gemeldet wird. In Wirklichkeit wird die CPU-Auslastung bei Verwendung der Optionen -t oder --mbps = 0 überschritten. In diesen Fällen liefert Tcpreplay den sendenden Thread immer dann, wenn die TX-Puffer voll sind. Dadurch wird Tcpreplay zum Scheduler für die CPU. Das Ergebnis ist eine gemeldete 100% CPU, jedoch bleiben andere Prozesse in der CPU reaktionsfähig.

+0

Vielen Dank Fred !!!!! – Tom

+0

Hallo @fredk Ich habe Tcpreplay auf den neuesten Stand gebracht und ein besseres Ergebnis bekommen. Nach 70000 p/s ist die Rate jedoch nicht mehr genau. Weißt du, warum ? Die CPU des Senders erreicht weder das Limit, noch ist es nah. – Tom

+0

Multiplizieren Sie die durchschnittliche Größe Ihrer Pakete mit 8 und dann mit 70000 Paketen/Sek. Übertrifft es die Übertragungsrate Ihrer Karte? In meinem Labor kann ich volle 10GigE-Raten zu den erwarteten Raten erhalten, indem ich --pps anpasse. Sobald die Verbindung jedoch gesättigt ist, wird sie durch Erhöhen von --pps schneller. – fredk