Improving wide-area network performance with the extensible session protocol: a protocol for future internet architectures

The effective and efficient utilization of wide-area networks is a persistent challenge in today's network ecosystem despite continuing advances in available link capacity. The trend towards increasingly distributed computing environments supporting data intensive applications only compounds the issue, making data movement a cross-cutting concern, affecting users of distributed computing and data intensive science alike. The evolving paradigm of dynamic networks, in which dedicated network resources can be requested and reserved on-demand, has contributed to an increasingly heterogeneous network landscape that has pushed the limits of existing transport layer protocols and necessitated the need for new approaches. Recent "future Internet'' and "clean slate'' initiatives have also identified a number of design requirements for developing next-generation Internet architectures, spanning key areas such as security, addressing and naming, quality of service, management, and performance. This dissertation argues that the effective use of both existing and future networks will benefit from a data movement system supported by the development of a new session layer protocol, and a departure from the stateless approach to end-to-end connection management. We propose an architecture that spans three main areas: a network middleware environment called Phoebus, a system for the intelligent movement of data bursts over dedicated backbone paths called Session Layer Burst Switching (SLaBS), and the development and integration of the eXtensible Session Protocol (XSP) to control both Phoebus and SLaBS services as well as the underlying network configuration. Together, these components form a system for improved wide-area network performance that is designed to be easily leveraged by existing applications. First, we propose our eXtensible Session Protocol (XSP), as a mechanism to build and interact with novel network architectures and services. We argue that a single, flexible, and extensible session layer implementation provides several advantages in enabling applications and middlebox services to take advantage of increasingly diverse networks. Specifically, we develop and evaluate a core set of XSP services that provide a consistent interface to an underlying set of protocol, security, and dynamic network configuration functionalities. Second, we describe our Phoebus middleware service. A key feature of Phoebus is the use of protocol adaptation techniques to improve transfer performance over challenged network environments. Through the direct use of XSP, Phoebus enables the concept of end-to-end path segmentation, which allows for the optimization of each transport-specific sub path to achieve greater overall network utilization. We present an evaluation of Phoebus over a number of conditions and transfer scenarios, and we show how commonly used data movement applications can easily take advantage of our system to achieve significant performance gains over high-speed networks. Finally, we investigate the role of large buffers in the network with the introduction of our SLaBS model. By defining bursts of data at the session layer, SLaBS allows aggregated flows bound for a common destination to be intelligently buffered and switched onto dynamically configured, dedicated paths when a sufficient burst size has been reached. Within SLaBS, we propose and implement an asynchronous data movement model using XSP that enables the use of low-level protocols through out-of-band metadata exchange. We show significant gains in achievable network utilization and reduced overhead compared to traditional transport protocols. In addition to supporting our performance-enhancing services, we describe XSP as a general framework for the signaling and exchange of both network state and application-specific data between session-enabled network peers. We demonstrate these capabilities in the context of a measurement architecture for monitoring and analyzing multi-gigabit transfer performance from an end-to-end perspective.