Yandex ha pubblicato skbtrace, un'utilità per tracciare le operazioni di rete in Linux

Yandex ha pubblicato il codice sorgente dell'utilità skbtrace, che fornisce strumenti per monitorare lo stack di rete e tracciare le operazioni di rete in Linux. L'utilità è implementata come componente aggiuntivo per il sistema di debug dinamico BPFtrace. Il codice è scritto in Go e distribuito sotto la licenza MIT. Supporta il lavoro con kernel Linux 4.14+ e toolkit BPFTrace 0.9.2+.

Durante il funzionamento, l'utilità skbtrace genera script nel linguaggio BPFtrace di alto livello che eseguono la traccia dinamica e l'analisi del tempo di esecuzione delle operazioni relative allo stack di rete Linux e ai socket di rete. Gli script vengono quindi tradotti in applicazioni eBPF ed eseguiti a livello di kernel.

Tra le caratteristiche specifiche di skbtrace, c'è la misurazione del tempo di inoltro dei pacchetti tra l'interfaccia di rete in entrata e in uscita, la durata di una connessione TCP dalla ricezione di SYN all'arrivo di FIN/RST, i ritardi tra i diversi eventi di elaborazione dei pacchetti e il tempo per negoziare una connessione TCP. Skbtrace può anche essere utilizzato per rilevare la ritrasmissione di pacchetti TCP, anche se sono incapsulati in altri pacchetti, e agire come un semplice analogo dell'utilità tcpdump che può analizzare l'esecuzione di alcune procedure del kernel, come chiamare kfree_skb per liberare memoria quando i pacchetti vengono abbandonati.

Fonte: opennet.ru

Aggiungi un commento