CAREER: An Evolvable Architecture for Internet Data Transfer
Carnegie Mellon University, Pittsburgh PA
Investigators
Abstract
Making changes to the established Internet architecture and its core protocols has become increasingly difficult as the Internet has exploded in popularity. Changes may require modifying dozens or hundreds of software implementations deployed on hundreds of millions of computers. Other than sheer scale, a major reason that these changes are difficult to deploy is a high degree of coupling between applications and the underlying network protocols and their semantics. This coupling is evident for an important class of network applications that function primarily as data transfer agents (e.g., email, file transfer, web, and so on). These applications typically bundle the functions of content negotiation---naming objects, negotiating common languages, handling cookies, etc.---and data transfer---the process of actually sending the data across the network. The result of this coupling is that in order to deploy a novel data transfer mechanism, one must modify every application that makes use of the network. Intellectual Merit: The Principal Investigator proposes to design and implement a novel data-oriented transfer layer that performs data transfer on behalf of applications. The transfer layer will be a narrow waist at which to introduce new mechanisms for data transfer, and have them immediately benefit all applications using the transfer layer. By serving as a locus for modifications, the transfer layer will also facilitate the adoption of changes within the underlying network. A new transfer-layer module will be able to make the network-intensive portion of applications use new network-layer functionality with no application modification. As a first use of the transfer layer, this project will develop novel techniques for improving the resilience of Internet applications to challenging network environments. These environments are characterized by intermittent connectivity or poor link quality, such as that provided by cheap wireless links or satellites. The techniques developed will be used to create a network that performs drastically better in the face of accidental and malicious failures. The approaches the project will explore include performing transfers by using multiple network paths in parallel, supporting out of band transfers via portable storage, and ensuring that transfers continue to make forward progress in the face of network interruptions. This project will address several major challenges to building and deploying a practical transfer service. The first is the design and evaluation of the interface that the transfer service provides to applications. The design must simultaneously fit naturally into existing and future applications, while not precluding the optimization necessary for its use in a production environment. The second challenge is the development and implementation of a security model that balances the need to provide equivalent or better security while allowing an efficient implementation. The appropriate security model will likely require the development of novel techniques for securely sharing cached data. The third challenge is the design of algorithms to select among the different sources of data that the transfer layer will enable. These algorithms must react to changing network conditions and balance between shared paths with incredibly different performance characteristics. Broader Impact: Continued evolution is critical for making the Internet and its protocols suitable for more applications, particularly those that require more availability than today's Internet can provide. Improved protocols may also significantly reduce the operational costs associated with managing the Internet. This research may significantly accelerate the rate of adoption of new protocols and technologies by providing a narrowed interface on which developers can concentrate, instead of spreading their effort across dozens of different applications. The techniques developed as a part of this research for communication in challenging environments could help improve the availability and reach of the Internet into areas formerly only poorly served by network connectivity. The project will release a freely available reference implementation of the transfer service for others to build upon. The PI will use the framework developed in the course of this research as a central part of an upcoming graduate class at CMU. If successfully deployed, the transfer framework will be used as a vehicle for making course content (slides, notes, assignments, and videos of each lecture) from the PI's classes freely available on the Internet in a way that is accessible to students in underserved areas with poor network connectivity.
View original record on NSF Award Search →