NetCheck : Network Diagnoses from Blackbox Traces
description
Transcript of NetCheck : Network Diagnoses from Blackbox Traces
![Page 1: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/1.jpg)
NetCheck: Network Diagnoses from Blackbox Traces
Yanyan Zhuang, Eleni GessiouNYU Poly,
University of British Columbia
![Page 2: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/2.jpg)
Motivation
• Ping– Only reachability
• Wireshark– Applicationor network-specific knowledge
• Network Config Analysis– Detailed network knowledge – HW + config
• …
![Page 3: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/3.jpg)
Goal
• Diagnose network problems in large and complex applications
• Without modifying the original application
![Page 4: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/4.jpg)
Syscall trace from strace
![Page 5: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/5.jpg)
Challenges
• Accuracy: ambiguity in order reconstruction
• Efficiency: exploring an exponential space of possible orderings
• Network complexity: diagnosing issues in real networks
![Page 6: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/6.jpg)
NetCheck Overview
Finding deviations from the model of the network (Deutsch’s Fallacies)network is reliable, latency is zero, etc.
![Page 7: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/7.jpg)
Priority & Dependency of syscalls
![Page 8: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/8.jpg)
e.g.
![Page 9: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/9.jpg)
Fault diagnoses
![Page 10: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/10.jpg)
Rules summary
Example of rule (1): when a client is behind a NAT, (i) the client uses a private IP, (ii) the peer socket address in server’s accept is not the client’s IP
![Page 11: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/11.jpg)
Evaluation
• Reproduce reported bugs from bug trackers (Python, Apache, Ruby, Firefox, etc.)– A total of 71 bugs– Correct analysis of 95.7% bugs
• Twenty faults observed in practice on a live network(Seattle Testbed)– 90% of cases correctly detected
![Page 12: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/12.jpg)
Runtime performance overhead
Best: O(l)
Worst: O(nl)
![Page 13: NetCheck : Network Diagnoses from Blackbox Traces](https://reader036.fdocuments.us/reader036/viewer/2022062301/56816335550346895dd3bf03/html5/thumbnails/13.jpg)
Conclusion
• Derives a plausible global traces ordering as a proxy for the ground truth
• Uses a model of expected and simple network behavior to identify and diagnose unexpected behavior