310 likes | 420 Views
BWdetail: A bandwidth tester with detailed reporting . Masters of Engineering Project Presentation Mark McGinley April 19, 2007 Advisor: Malathi Veeraraghavan
E N D
BWdetail: A bandwidth tester with detailed reporting Masters of Engineering Project Presentation Mark McGinley April 19, 2007 Advisor: Malathi Veeraraghavan Acknowledgement: This work was carried out under the sponsorship of NSF ITR-0312376, NSF ANI-0335190, and DOE DE-FG02-04ER25640 grants.
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Problem Statement • Growing eScience traffic Terabytes / month ESnet Monthly Accepted Traffic, January, 2000 – June, 2006 Ref. 1
Problem Statement • Scientific research efforts such as Atlas characterized by: • Large datasets • Geographically distributed collaborators • 1800 physicists, 150 universitiesand laboratories • Supporting high speed transfers of datasets often requires system tuning, diagnostics [2]
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Related Work • Iperf from NLANR • Successor to ttcp, similar to nttcp, nuttcp • Web100 • Host system software (autotuning) • Lack of instrumentation/tools for diagnosing performance issues • Iperf100 • Web100-based Iperf
Related Work • Nettest • Incorporates Iperf • Net100 • Leverages Web100 to eliminate “wizard gap” with autotuning • tcpdump
Related Work • Iperf
Related Work • tcpdump
Related Work • BWdetail
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Overview of BWdetail • Bandwidth estimation ability of Iperf • Instrumentation capabilities similar to Web100, without kernel modification
Overview of BWdetail • Software architecture • C program • TCP_INFO struct associated with each socket • Kernel parameters read/written using getsockopt(), setsockopt(), sysctl(), system()
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Features and Uses • Data transfer for goodput estimation • Memory-to-memory is most common usage • Disk/memory-to-disk/memory • Memory transfer can either be a specific size or duration • Disk transfer using a file of specific size, to eliminate caching effects
Features and Uses • Effect of caching • 1 GB disk-to-disk successive transfer
Features and Uses • Multi-threaded client • Client uses separate threads to send data and monitor flow
Features and Uses • Tunable parameters from command line • Socket buffer size • TCP congestion control algorithm • CTCP-enabled Web100 capable • SACK, Nagle, no metrics save
Features and Uses • Adjustable reporting granularity • Client and server report goodput over some small, configurable interval (100ms) • Client reports cwnd, RTT, etc, every smaller, configurable interval (5ms)
Features and Uses • Applications • Research regarding transport protocols • CTCP/Reno/BIC • Cwnd and RTT measurements • Improving performance on a path • Records relevant kernel parameters • Ongoing recording of cwnd, RTT, goodput • Change parameters, repeat
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Outline • Problem Statement • Related Work • Overview of BWdetail • Features and Uses • Demonstration • Conclusion
Conclusion • Available bandwidth estimation • Instrumentation such as cwnd without requiring kernel modification or privileged access
Thank you Questions?
References • [1] W.E. Johnston, ESnet4: Networking for the Future of DOE Science, http://www.es.net/ESnet4/ESnet4-Internet2Members-Dec-06-2006-1.ppt, Dec. 5, 2006 • [2] The Atlas Experiment, www.atlas.ch
Limitations • Does not replace tcpdump • tcpdump handles content • Needed to detect retransmissions, Ethernet PAUSE frames, verification • Incorporation of libpcap capabilities would degrade the non-interference status of BWdetail • BWdetail is interested in statistics, not content
Limitations • BWdetail does not replace an expert • Still requires knowledge to tune, does not provide autotuning • Use of TCP_INFO struct presents portability issues
Impact of monitoring • Minimal, even at ~1 Gbps