GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie überwacht man cwnd- und ssthresh-Werte für eine TCP-Verbindung?

Ich bin mit der Antwort von Nemo nicht einverstanden. Wireshark (sowie dumpcap, tcpdump) sind nicht in der Lage, cwnd und ssthresh zu messen/protokollieren, da diese keine Felder in den TCP-Datagrammen sind, sondern nur Werte sind, die sich als Kernel-Strukturen im Kernel befinden. Staukontrolldaten werden nicht über die Leitung übertragen, sondern nur Flusskontrolldaten.

Um diese Werte zu überwachen, implementieren Sie entweder get_info und die Daten regelmäßig abtasten, oder werfen Sie einen Blick auf tcp_probe Kernel-Modul (siehe:http://www.linuxfoundation.org/collaborate/workgroups/networking/tcptesting)

UPDATE:Ich habe eine gepatchte Version des tcp_probe-Moduls erstellt, das zur Überwachung von cwnd und ssthread verwendet werden kann, siehe https://github.com/Dynalon/tcp_probe_fixed


Das Dienstprogramm ss generiert diese Ausgabe für Sockets:

# ss -i
State      Recv-Q Send-Q      Local Address:Port          Peer Address:Port   
ESTAB      0      2054000          1.2.3.4:34069          1.2.3.5:ssh     
     htcp wscale:11,11 rto:247 rtt:47/0.75 ato:40 cwnd:1542 ssthresh:742 send 380.1Mbps rcv_rtt:14 rcv_space:64240

Sie können die cwnd/ssthresh-Werte daraus überprüfen.


Linux
  1. Wie ich Ansible und Anacron für die Automatisierung verwende

  2. So überwachen Sie Netzwerk-Switch und Ports mit Nagios

  3. Wie beendet man eine einzelne TCP-Verbindung in Linux?

  4. Tool zum Teilen von PCAP-Dateien per TCP-Verbindung?

  5. So beenden Sie eine TCP-Verbindung mit dem Dienstprogramm tcpkill

So überwachen Sie TCP- und UDP-Ports in Echtzeit

Wie man nach mehreren Zeichenfolgen und Mustern grep

So sichern und wiederherstellen Sie eine SD-Karte für Raspberry Pi

So fügen Sie Icinga Director für Icinga2 und Icinga Web 2 hinzu.

Erste Schritte und Installation von Wine für Ubuntu

So installieren und konfigurieren Sie das Windows-Subsystem für Linux