Throughput and Delay on the Packet Switched Internet (A Cross-Disciplinary Approach)
Total Page:16
File Type:pdf, Size:1020Kb
University of California Santa Barbara Throughput and Delay on the Packet Switched Internet (A Cross-Disciplinary Approach) A dissertation submitted in partial satisfaction of the requirements for the degree Doctor of Philosophy in Computer Science by Daniel Mark Havey Committee in charge: Professor Kevin Almeroth, Chair Fred Baker, Fellow Cisco Systems, Inc. Professor Elizabeth Belding Professor Phill Conrad June 2015 The Dissertation of Daniel Mark Havey is approved. Fred Baker, Fellow Cisco Systems, Inc. Professor Elizabeth Belding Professor Phill Conrad Professor Kevin Almeroth, Committee Chair March 2015 Throughput and Delay on the Packet Switched Internet (A Cross-Disciplinary Approach) Copyright c 2015 by Daniel Mark Havey iii This dissertation is dedicated to the one true God who created the universe full of scientific wonder for us to explore and enjoy. iv Acknowledgements Funding for this PhD was provided by the University of California Santa Barbara, by Lockheed Martin, by Cisco Systems, Inc, and by Microsoft. This PhD would not have been possible without the support of many people students, professors and many others. I would like to offer thanks to all of my friends from San Bernardino who often said that someday you will be a doctor and I would love to see it. This is the day. We have made it. To all the professors in my undergraduate work who encouraged me along the way and guided me towards research in particular Keith Schubert and David Turner. To the students from my lab at UCSB. To Lara who started after, finished right before and often suffered through tough times with along with me. To David who sat behind me during our perplexing first few years and worked with me on our original TCP experiments that eventually became the starting point of my work. To Rohit, Sathiish and Devdeep for working with David and I during the split TCP experience and to many others too numerous to name here. A special thanks to my advisor Kevin Almeroth who took me in as a student all of those years ago and stuck with it through tough times and through good. To Elizabeth Belding for asking the tough questions and teaching me a thing or two about humility. To Phill Conrad for his excellent editorial work on the final dissertation and especially to Fred Baker a fine Christian gentleman and “Rock Star” of engineering who taught me about the importance of latency and having a good and cheerful attitude. Fred, you are a man with an amazingly humble servant attitude and a powerful force for the good of the Internet. If I can emulate these two things throughout my career it will be a fine future and worth living. My mom really deserves extra special thanks for encouraging my love of learning from before I was old enough to talk and to this day. Thank you mom! This is just v a small token repayment for all your love and encouragement. Also a special thanks to Sarah Joy who supported me with prayer and encouragement throughout the final laps of the dissertation process. From providing the logistics for the final defense to organizing the food to helping me wander through the final bureaucracy required to complete the PhD. Thank you for listening to me when I was confused and for praying for me when I was discouraged. I don’t think I could have made the final steps without you. As it says in the Proverbs, “There is gold and abundance of costly stones, but the lips of knowledge are a precious jewel.” Mom encouraged my natural love of learning, but, God put that love in place. From the beginning of creation He planned the world including this PhD with all its ins and outs and ups and downs and all of the wonderful people who have encouraged me along the way. He did this so that it would develop me into the person He intends me to be. When I look back at who I was when I started this journey I can see an immense amount of learning and growth both as a researcher and as a person. Now, much like Jesus said nearly 2000 years ago, “It is finished” and it is time to give the honor where it is truly due to our Lord and Savior Jesus Christ. Without Him even knowledge and learning are merely vexation of spirit and a chasing after the wind. I will always remember this and put my knowledge and learning to its proper use to honor and glorify our Lord. Used in this manner knowledge and learning are precious jewels as it says in the Proverb and greatly satisfying to gather, organize and put to use. vi Curriculum Vitæ Daniel Mark Havey Education University of California in Santa Barbara (UCSB) – Ph.D. in Computer Science, (Fall 2006 - Summer 2014 estimated) California State University in San Bernardino (CSUSB) – Bachelor of Arts in Computer Systems, (Fall 2002 - Spring 2006) Research interests Emerging markets, mesh networks, Adaptive Bit Rate (ABR) video streaming, network protocols (application, socket, trans- port, MAC), wired/wireless, packet scheduling Academic projects Advanced transport, UCSB (Sept 2013–current) Networks in emerging markets such as the one in Macha Zambia are often plagued with challenging characteristics such as slow links, high PER, and large RTTs. These characteristics degrade throughput and latency. In this project we improve throughput and latency characteristics using TCP port forwarding to ”split” the large RTT into smaller segments. Leveraging the smaller seg- ment RTTs we will also explore the use of CoDel style buffer management techniques to further improve throughput and la- tency characteristics. xTCP, Qualcomm (June 2013–Sept 2013) DASH ABR video streams are sensitive to packet loss and delay. In this project we design a client side only TCP modification that is immune to packet loss and highly robust to delay. This client side kernel modification uses a ”lazy” retransmit scheme not reacting immediately to packet loss to offset the DASH ABR video streams sensitivity to packet loss and delay. Fast Wireless Protocol (FWP), UCSB (March 2012–June 2013) As wireless speeds increase with 802.11n and 802.11ac the over- head characteristics become more challenging. In this project we investigate the use of variable packet aggregation techniques to reduce overhead and increase throughput. This project is built with the Atheros ath9k open source 802.11n driver for Linux. vii Active Packet Scheduling, Cisco (September 2012–June 2012) The recent increase in multimedia streaming into the home has intensified the need for good resource management at the home access router. In this project we develop network sensing tech- niques to determine when a packet scheduling profile should be applied. We also implement an adaptive packet scheduler at the IP layer to provide superior management of network resources. Parallel TCP, UCSB (June 2011–Sept 2011) Parallel TCP is known to be robust against packet loss and delay, however, it is also known to have two main drawbacks. It is unfair to other flows, and, it is difficult to distribute the data over the parallel streams. In this project we develop a parallel TCP with an application layer fairness mechanism. The fairness mechanism determines the correct share of bandwidth then distributes the data over the parallel streams round robin. Our parallel TCP is fair with single flows as well as robust against packet loss and delay. Work experience Research intern, Qualcomm (June 2013–Sept 2013) Designed and tested xTCP, a TCP variant that is immune to packet loss and therefore very robust against delay. xTCP is a client side kernel modification built on the Linux 3.8.0 kernel. It uses ”packet injection” techniques to disguise loss from TCP and a ”lazy” retransmit scheme to retrieve lost packets. Research intern, Cisco Systems (June 2012–Sept 2012) Performed a detailed study of ABR and progressive video steams characterizing the behavior of each video flow in context with net- work conditions. Built instrumentation at the video server and the home access router to read TCP service rate, CWND values, and TCP congestion points. Built an adaptive packet schedul- ing system using this instrumentation that provides improved re- source management to the home access network. Research intern, Aerospace Corporation (June 2010–Sept 2010) Designed a ground to space emulation system. This ground-space emulation system component functions as a part of the larger Mobility Satellite Emulation System (MSET). It addresses the requirements for ground segment emulation at high speed and fidelity, with various degrees of mobility. Research intern, Citrix Online, LLC (June 2009–Sept 2009) This internship was about bandwidth shaping, modeling, and viii adaptivity. Created prototype modules for the Go to Meeting (G2M) product. Conducted experiments with the Citrix Online testbed measuring the benefits to quality of customer experience with the prototype modules. Research intern, Santa Barbara Labs, LLC (May 2008–May 2009) Conducted satellite network studies in conjunction with Lockheed Martin. Produced white paper deliverables for the Air Force’s TSAT Mission Operations System (TMOS) project. Assisted in the design and implementation of the Mobility Satellite Emula- tion Testbed (MSET). Used this testbed to examine the behavior of mobile IPv6 satellite networks. Teaching Assistant, UC Santa Barbara (Fall 2006–Fall 2012) Held weekly classes for 10–20 students to provide additional de- tail not available in lecture. Held weekly office hours to answer questions and help students prepare for tests. Designed projects and homeworks for the students Selected publications Refereed Conferences and Workshops • Daniel Havey, and Keven Almeroth, ”Fast Wireless