Яндекс Linux жүйесінде желілік операцияларды бақылауға арналған skbtrace утилитасын шығарды

Яндекс skbtrace утилитасының бастапқы кодын жариялады, ол желілік стек жұмысын бақылауға және Linux жүйесінде желілік операциялардың орындалуын қадағалауға арналған құралдарды ұсынады. Утилита BPFtrace динамикалық жөндеу жүйесіне қосымша ретінде жүзеге асырылады. Код Go бағдарламасында жазылған және MIT лицензиясы бойынша таратылады. Linux ядролары 4.14+ және BPFTrace 0.9.2+ құралдар жинағымен жұмысты қолдайды.

Іске қосу кезінде skbtrace утилитасы Linux желі стекіне және желілік сокеттерге қатысты операциялардың орындалу уақытын динамикалық түрде қадағалайтын және талдайтын жоғары деңгейлі BPFtrace тілінде сценарийлерді жасайды. Содан кейін сценарийлер eBPF өтінім пішініне аударылады және ядро ​​деңгейінде орындалады.

skbtrace-тің ерекше мүмкіндіктерінің ішінде кіріс және шығыс желі интерфейстері арасындағы пакеттерді жіберу уақытын өлшеу, SYN қабылдаудан FIN/RST келгенге дейін TCP қосылымының қызмет ету мерзімі, әртүрлі пакеттерді өңдеу оқиғалары арасындағы кідірістерді және уақытты өлшеу. TCP қосылымын келісуге арналған. Skbtrace сонымен қатар TCP пакеттерін қайта жіберуді анықтау үшін пайдаланылуы мүмкін, тіпті егер олар басқа пакеттерде инкапсуляцияланған болса да және жадты босату үшін kfree_skb шақыру сияқты белгілі бір ядролық процедуралардың орындалуын талдауға қабілетті tcpdump утилитасының қарапайым аналогы ретінде әрекет етеді. пакеттерді тастау кезінде.

Ақпарат көзі: opennet.ru

пікір қалдыру