Yandex skbtrace యుటిలిటీ యొక్క సోర్స్ కోడ్ను ప్రచురించింది, ఇది నెట్వర్క్ స్టాక్ యొక్క ఆపరేషన్ను పర్యవేక్షించడానికి మరియు Linuxలో నెట్వర్క్ ఆపరేషన్ల అమలును గుర్తించడానికి సాధనాలను అందిస్తుంది. యుటిలిటీ BPFtrace డైనమిక్ డీబగ్గింగ్ సిస్టమ్కు యాడ్-ఆన్గా అమలు చేయబడింది. కోడ్ గోలో వ్రాయబడింది మరియు MIT లైసెన్స్ క్రింద పంపిణీ చేయబడుతుంది. Linux కెర్నలు 4.14+ మరియు BPFTrace 0.9.2+ టూల్కిట్తో పని చేయడానికి మద్దతు ఇస్తుంది.
నడుస్తున్నప్పుడు, skbtrace యుటిలిటీ అధిక-స్థాయి BPFtrace భాషలో స్క్రిప్ట్లను ఉత్పత్తి చేస్తుంది, ఇది Linux నెట్వర్క్ స్టాక్ మరియు నెట్వర్క్ సాకెట్లకు సంబంధించిన ఆపరేషన్ల అమలు సమయాన్ని డైనమిక్గా ట్రేస్ చేస్తుంది మరియు విశ్లేషిస్తుంది. స్క్రిప్ట్లు eBPF దరఖాస్తు ఫారమ్లోకి అనువదించబడతాయి మరియు కెర్నల్ స్థాయిలో అమలు చేయబడతాయి.
skbtrace యొక్క నిర్దిష్ట సామర్థ్యాలలో, ఇన్కమింగ్ మరియు అవుట్గోయింగ్ నెట్వర్క్ ఇంటర్ఫేస్ల మధ్య ప్యాకెట్లను పంపే సమయం యొక్క కొలత, SYNని స్వీకరించడం నుండి FIN/RST రాక వరకు TCP కనెక్షన్ యొక్క జీవితకాలం, వివిధ ప్యాకెట్ ప్రాసెసింగ్ ఈవెంట్ల మధ్య ఆలస్యం మరియు సమయం TCP కనెక్షన్ను చర్చించడం కోసం గుర్తించబడింది. TCP ప్యాకెట్లను ఇతర ప్యాకెట్లలో నిక్షిప్తం చేసినప్పటికీ, వాటి పునఃప్రసారాన్ని గుర్తించడానికి Skbtrace కూడా ఉపయోగించబడుతుంది మరియు tcpdump యుటిలిటీ యొక్క సాధారణ అనలాగ్గా పనిచేస్తుంది, ఇది kfree_skbని ఉచిత మెమరీకి కాల్ చేయడం వంటి నిర్దిష్ట కెర్నల్ రొటీన్ల అమలును విశ్లేషించగలదు. ప్యాకెట్లను విస్మరించేటప్పుడు.
మూలం: opennet.ru