Deliverable D3.3 - Extended Transport System and Transparent Support of Non-NEAT Applications
Karl‐Johan Grinnemo, Zdravko Bozakov, Anna Brunström, Maria Isabel Sanchez Bueno, Thomas Dreibholz, Kristian Evensen, Gorry Fairhurst, Audun Fosselie Hansen, David A. Hayes, Per Hurtig, Mohammad Rajiullah, Tom Jones, David Ros, Tomasz Rozensztrauch, Michael Tüxen, Éric Vyncke · Digitala vetenskapliga arkivet (Diva) (Karlstad University) · 2017
This deliverable summarises and concludes our work in Work Package 3 (WP3) to extend the transport services provided by the NEAT System developed in Work Package 2, and to enable non-NEAT applications to harness the transport services offered by NEAT. We have demonstrated how a policy- and information-based selection of transport protocol by NEAT could provide a more efficient transport service for web applications. The information on which NEAT makes its transport selection decisions resides in the Characteristics Information Base (CIB). The CIB is populated by various CIB sources, and in WP3 we have designed, implemented, and evaluated various CIB sources, including meta data from mobile broadband networks, passive measurements, IPv6 Provisioning Domain protocols and the Happy Eyeballs mechanism, which caches the outcome of its connection attempts. A key property of NEAT is that it not only “vertically” decouples applications from transport protocols, but also “horizontally”. Particularly, it enables applications to harness information about resource availability and policies from Software Defined Networking (SDN) controllers in managed networks, without these applications actually being SDN-aware. To extend the use of NEAT to non-NEAT applications, we have implemented a BSDcompatible sockets API on top of NEAT and a NEAT proxy that intercepts and replaces standard TCP connections with NEAT flows, i.e., with the transport solutions deemed most appropriate by NEAT.We have also proposed a way for non-NEAT applications to make use of NEAT through the deployment of NEAT-enabled virtual appliances in SDN-controlled networks: connections from these applications are routed via an SDN-controlled proxy that terminates the original connection and replaces it with a NEAT-selected connection.