Kalim U D 2017.Pdf (10.97Mb)
Total Page:16
File Type:pdf, Size:1020Kb
Cognizant Networks: A Model and Framework for Session-based Communications and Adaptive Networking Umar Kalim Dissertation submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science and Applications Wu-chun Feng, Chair Pavan Balaji Mark Gardner Eli Tilevich Yaling Yang June 30, 2017 Blacksburg, Virginia Keywords: Session Management, Context Awareness, Dynamic Network Configuration, Network-Stack Extensions, Next-Generation Networking Copyright 2017, Umar Kalim Cognizant Networks: A Model and Framework for Session-based Communications and Adaptive Networking Umar Kalim ABSTRACT The Internet has made tremendous progress since its inception. The kingpin has been the transmission control protocol (TCP), which supports a large fraction of communication. With the Internet’s wide- spread access, users now have increased expectations. The demands have evolved to an extent which TCP was never designed to support. Since network stacks do not provide the necessary functionality for modern applications, developers are forced to implement them over and over again — as part of the application or supporting libraries. Consequently, application developers not only bear the burden of developing application features but are also responsible for building networking libraries to support sophisticated scenarios. This leads to considerable duplication of effort. The challenge for TCP in supporting modern use cases is mostly due to limiting assumptions, simplis- tic communication abstractions, and (once expedient) implementation shortcuts. To further add to the complexity, the limited TCP options space is insufficient to support extensibility and thus, contemporary communication patterns. Some argue that radical changes are required to extend the networks func- tionality; some researchers believe that a clean slate approach is the only path forward. Others suggest that evolution of the network stack is necessary to ensure wider adoption — by avoiding a flag day. In either case, we see that the proposed solutions have not been adopted by the community at large. This is perhaps because the cost of transition from the incumbent to the new technology outweighs the value offered. In some cases, the limited scope of the proposed solutions limit their value. In other cases, the lack of backward compatibility or significant porting effort precludes incremental adoption altogether. In this dissertation, we focus on the development of a communication model that explicitly acknowl- edges the context of the conversation and describes (much of) modern communications. We highlight how the communication stack should be able to discover, interact with and use available resources to compose richer communication constructs. The model is able to do so by using session, flow and endpoint abstractions to describe communications between two or more endpoints. These abstractions provide means to the application developers for setting up and manipulating constructs, while the abil- ity to recognize change in the operating context and reconfigure the constructs allows applications to adapt to the changing requirements. The model considers two or more participants to be involved in the conversation and thus enables most modern communication patterns, which is in contrast with the well-established two-participant model. Our contributions also include an implementation of a framework that realizes such communication methods and enables future innovation. We substantiate our claims by demonstrating case studies where we use the proposed abstractions to highlight the gains. We also show how the proposed model may be implemented in a backwards compatible manner, such that it does not break legacy applications, network stacks, or middleboxes in the network infrastructure. We also present use cases to substantiate our claims about backwards compatibility. This establishes that incremental evolution is possible. We highlight the benefits of context awareness in setting up complex communication constructs by pre- senting use cases and their evaluation. Finally, we show how the communication model may open the door for new and richer communication patterns. This work is supported in part by Juniper Networks and Virginia Tech. Cognizant Networks: A Model and Framework for Session-based Communications and Adaptive Networking Umar Kalim GENERAL AUDIENCE ABSTRACT In this dissertation, we focus on the development of a communication model that explicitly acknowl- edges the context of the conversation and describes (much of) modern communications. We highlight how the networking software should be able to discover, interact with and use available resources. The model is able to do so by using abstractions that describe communications between participants as if human beings were having a conversation i.e., the semantics of interactions between participants are defined in terms of a conversation session. These abstractions provide means to the application developers for describing communications in a holistic manner, recognizing change in the context and reconfigure communications to allow adaptation to changing requirements. The model considers two or more participants to be involved in the conversation and thus enables most modern communication patterns, which is in contrast with the well-established two-participant legacy model. Our contributions also include an implementation of a framework that realizes such communication methods and enables future innovation. We substantiate our claims by demonstrating case studies where we use the proposed abstractions to highlight the gains. We also show how the proposed model may be implemented in a backwards compatible manner, such that it does not break legacy applications, networking software, or network infrastructure. We also present use cases to substantiate our claims about backwards compatibility. This establishes that incremental evolution is possible. We highlight the benefits of context awareness in setting up complex communication constructs by presenting use cases and their evaluation. Finally, we show how the communication model may open the door for new and richer communication patterns. This work is supported in part by Juniper Networks and Virginia Tech. iv To my parents, Ataullah and Ghazala, my wife, Mariam, my sisters, Umairah and Faria, and my brother, Zubair, for their unconditional love and support. v ACKNOWLEDGEMENTS I thank Almighty Allah, who blessed me with the ability to pursue graduate studies and persevere. Alhamdullilah (all praise and thanks is for Allah). Many people have contributed in different ways towards the successful completion of my graduate studies. I am grateful to everyone involved, for all manner of support. My experience as a doctoral student has been intensive and rewarding. If there was one reason that enabled me to persevere, it would be the unconditional support and encouragement of my family. My parents, Ataullah and Ghazala, always reassured me that by the grace of Allah I can surmount all obstacles; they instilled in me that with tenacity I can persevere through all challenges. My regular conversations with them allowed me to benefit from their wisdom and stay positive in spite of the circumstances. Their continuous prayers, wise counsel, well wishes, and nurture have enabled me to accomplish all that I have in my life. My wife, Mariam, went above and beyond in enabling me to make continuous and effective progress towards graduation. Her limitless compassion and encouragement allowed me to overcome numerous challenges. I cannot be thankful enough for the unconditional support of my sisters, Umairah and Faria, and prayers of my brother Zubair. My son Ahmed, with his enthusiasm and liveliness, has always reminded me to take a step back from the daily grind and be grateful for the blessings that have been bestowed upon us. I am in debt to my advisor, Dr. Wu Feng, for his continuous guidance and support. He introduced me to the challenges of scientific research; his patient approach enabled me to learn the ropes, understand the process of research and develop my academic abilities. He provided me with ample opportunities to grow and facilitated my participation in various scholarly and scientific activities — e.g., reviewing technical papers, writing and presenting research papers, and volunteering for state-of-the-art setups such as SCinet at the Super Computing conference. I learned many life lessons by silently observing him and his approach towards challenges, which I hope will allow me to emulate him and be a better human being. His approach of leading by example, such as putting in long hours or going the extra mile, always pushed me to do better. I am also grateful to my thesis committee, Dr. Pavan Balaji, Dr. Mark Gardner, Dr. Eli Tilevich, and Dr. Yaling Yang, for their valuable comments, feedback, and support. Dr. Mark Gardner and Eric Brown have been instrumental towards my research. This dissertation would not have been possible without their invaluable support, guidance, and patience in bearing with my endless questions. They were always accessible and available; I consider myself lucky to have access to these wise and compassionate professionals. I cannot be appreciative enough of their support. The support, encouragement, and sage advice that I received from Dr. Eli Tilevich had a significant impact on my academic development. His compassionate approach and genuine concern