Yandex a publié skbtrace, un utilitaire pour tracer les opérations réseau sous Linux

Yandex a publié le code source de l'utilitaire skbtrace, qui fournit des outils pour surveiller le fonctionnement de la pile réseau et suivre l'exécution des opérations réseau sous Linux. L'utilitaire est implémenté en tant que module complémentaire du système de débogage dynamique BPFtrace. Le code est écrit en Go et distribué sous licence MIT. Prend en charge le travail avec les noyaux Linux 4.14+ et avec la boîte à outils BPFTrace 0.9.2+.

Lors de son exécution, l'utilitaire skbtrace génère des scripts dans le langage BPFtrace de haut niveau qui tracent et analysent dynamiquement le temps d'exécution des opérations liées à la pile réseau Linux et aux sockets réseau. Les scripts sont ensuite traduits sous forme de demande eBPF et exécutés au niveau du noyau.

Parmi les capacités spécifiques de skbtrace, la mesure du temps d'envoi des paquets entre les interfaces réseau entrantes et sortantes, la durée de vie d'une connexion TCP depuis la réception du SYN jusqu'à l'arrivée du FIN/RST, les délais entre les différents événements de traitement des paquets, et le temps pour négocier une connexion TCP sont notés. Skbtrace peut également être utilisé pour détecter la retransmission de paquets TCP, même s'ils sont encapsulés dans d'autres paquets, et agir comme un simple analogue de l'utilitaire tcpdump, capable d'analyser l'exécution de certaines routines du noyau, comme appeler kfree_skb pour libérer de la mémoire. lors de la suppression des paquets.

Source: opennet.ru

Ajouter un commentaire