Yandex เผยแพร่ skbtrace ซึ่งเป็นยูทิลิตี้สำหรับติดตามการทำงานของเครือข่ายใน Linux

Yandex ได้เผยแพร่ซอร์สโค้ดของยูทิลิตี้ skbtrace ซึ่งมีเครื่องมือสำหรับตรวจสอบการทำงานของสแต็กเครือข่ายและติดตามการดำเนินการของการดำเนินงานเครือข่ายใน Linux ยูทิลิตี้นี้ถูกนำมาใช้เป็นส่วนเสริมให้กับระบบดีบักไดนามิกของ BPFtrace รหัสนี้เขียนในภาษา Go และเผยแพร่ภายใต้ใบอนุญาต MIT รองรับการทำงานกับเคอร์เนล Linux 4.14+ และชุดเครื่องมือ BPFTrace 0.9.2+

ขณะรัน ยูทิลิตี skbtrace จะสร้างสคริปต์ในภาษา BPFtrace ระดับสูงที่ติดตามและวิเคราะห์เวลาดำเนินการของการดำเนินการที่เกี่ยวข้องกับสแต็กเครือข่าย Linux และซ็อกเก็ตเครือข่ายแบบไดนามิก จากนั้นสคริปต์จะถูกแปลเป็นรูปแบบแอปพลิเคชัน eBPF และดำเนินการในระดับเคอร์เนล

ในบรรดาความสามารถเฉพาะของ skbtrace การวัดเวลาในการส่งแพ็คเก็ตระหว่างอินเทอร์เฟซเครือข่ายขาเข้าและขาออก อายุการใช้งานของการเชื่อมต่อ TCP ตั้งแต่การรับ SYN จนถึงการมาถึงของ FIN/RST ความล่าช้าระหว่างเหตุการณ์การประมวลผลแพ็คเก็ตที่แตกต่างกัน และเวลา สำหรับการเจรจาการเชื่อมต่อ TCP จะถูกบันทึกไว้ Skbtrace ยังสามารถใช้เพื่อตรวจจับการส่งสัญญาณซ้ำของแพ็กเก็ต TCP แม้ว่าจะถูกห่อหุ้มไว้ในแพ็กเก็ตอื่น และทำหน้าที่เป็นอะนาล็อกอย่างง่ายของยูทิลิตี้ tcpdump ซึ่งสามารถวิเคราะห์การทำงานของรูทีนเคอร์เนลบางตัว เช่น การเรียก kfree_skb เพื่อเพิ่มหน่วยความจำ เมื่อทิ้งแพ็คเก็ต

ที่มา: opennet.ru

เพิ่มความคิดเห็น