GNU/Linux >> Linux Esercitazione >  >> Linux

Linux:come misurare il tempo in cui arriva un pacchetto?

Quando il pacchetto arriva, la NIC genera un interrupt e il kernel prende il controllo. Voglio misurare l'ora in cui arriva un pacchetto di un particolare flusso TCP.

Come posso farlo in Linux? Questo è ciò che fanno strumenti come tcpdump.

Risposta accettata:

tcpdump timestamp di tutti i pacchetti. Quindi dovresti essere in grado di usare tcpdump. Altrimenti potresti provare wireshark, che controlla anche il traffico di rete, ma con una GUI bella e potente. Se non hai bisogno di scrivere questo processo, direi che Wireshark è tuo amico in questa situazione.

Puoi dare un'occhiata a http://www.howtogeek.com/104278/how-to-use-wireshark-to-capture-filter-and-inspect-packets/ per maggiori informazioni su come usare Wireshark.

Se sei più interessato a come misurarlo tu stesso, puoi controllare tcpdump con strace oppure, come suggerito, leggi la fonte. strace ti fornirà un elenco di chiamate di sistema che puoi utilizzare nella tua applicazione. La soluzione più semplice, tuttavia, sarebbe eseguire tcpdump , quindi filtra l'output tramite awk o qualche altro strumento in grado di filtrare la colonna timestamp.

Inoltre, puoi trovare maggiori informazioni su come usare tcpdump su http://danielmiessler.com/study/tcpdump/


Linux
  1. Come usare il comando Linux grep

  2. Come usare il comando cronologia in Linux

  3. Come Linux è arrivato al mainframe

  4. Come ottenere l'ora di inizio di un processo Linux di lunga durata?

  5. Come reindirizzare l'output del comando time su un file in Linux?

Come utilizzare il comando xargs di Linux

Come utilizzare il comando tee di Linux

Come impostare o modificare il fuso orario in Linux

Come scoprire chi ha riavviato il sistema Linux e quando

Controlla il fuso orario in Linux

Comprendere il comando dell'ora in Linux