Virtual and Overlay Networks
presented by Joe Touch
Director, Postel Center for Experimental Networking, and Research Associate Professor USC/ISI
Overlays provide network architects the ability to customize a network without the overhead of deploying real links. Originally intended as a s top-gap to enable the incremental deployment of new protocols (e.g., multicast), they are increasingly being used for more permanent purposes, including application-specific networks and virtual infrastructure. This tutorial covers the basics of virtual and overlay networks, and how they can be used to simplify applications, network management, and testbed deployment. It discusses the unique opportunities afforded by this capability, the different overlay methods available, how they challenge the Internet architecture, and their current and inherent limitations. Attendees will be provided with sufficient working knowledge to apply virtual networks as a tool in their own research.
Tutorial Contents
I. What is a virtual/overlay net?
Discusses the components of a virtual or overlay net that are virtualized, including links, routers, addressing, forwarding, routing, and naming. Compares V/ONs to VPNs and peer networks.

II. Related work
Surveys the original overlays - the M-Bone, 6-Bone, and even precursors involving OSI. Covers the variety of network layer end-to-end overlays (X-Bone/DynaBone/GeoNet) and core-based overlays (RON/Detour/SOS/VNS/PPVPNs). Also covers multi-layer overlays (VAN/SuperNet/MorphNet), as well as service overlays (GRID/PlanetLab/NetLab) and application overlays (A-Bone/YOID/Yallcast).

III. Uses of V/ONs
Describes the capabilities and applications of V/ONs. This includes their original motivation for testing new protocols and services. The discussion includes new motivations, including network abstraction and support for concurrency and protection, with special attention given to analogies to virtual memory. Their use to support VPN access is also covered, including the distinction between VPN use and V/ONs in general. The X-Bone will be used as an example to demonstrate the capabilities of V/ONs for research and education, as well as to highlight opportunities for the future Internet architecture.

IV. Challenges
Discusses the variety of extensions to the Internet in specific and network architectures in general that are needed to support V/ONs. These include extensions to component capabilties (hosts and routers), to protocols (routing, network, and transport), as well as to naming and addressing. Support at all levels in the endsystem is considered as well, including the interaction between networking, network management, and application interfaces to V/ONs. Particular attention is given to 'reentrancy', the ability to support V/ONs on top of V/ONs, as a metric for correctness and completeness.
This portion will also cover the converging implications of multihoming and V/ONs. The Internet is evolving to need more consistent and pervasive support for multihoming to support mobility and fault tolerance; such support approaches and revisits the challenges V/ONs present.

IV. Advanced concepts
Covers advanced concepts of V/ON support and operation. One portion focuses on the deployment, management, and monitoring of V/ONs. The other portion focuses on advanced mechanisms needed to support V/ON operation, notably recursion (of the topology as well as of packet processing), revisitation (visiting the same physical node multiple times), and optimization (paths, component placement, topology). As before, both reentrancy and analogies from virtual memory are used to consider correctness and completeness.

V. Future directions
Considers where V/ONs are headed, both as immediate solutions and as long-term impact on network architecture. This section covers the potential to integrate various systems (V/ONs, VPNs, peer nets), the use of V/ONs for infrastructure management, and the convergence of V/ONs and virtual memory.
Joe Touch (IEEE M '92, Sr '02; ACM M '92) is the Director of the Postel Center for Experimental Networking at USC's Information Sciences Institute (ISI) and a Research Associate Professor in USC's Computer Science and Electrical Engineering Departments. He has been architecting overlay systems since 1997, and has led the development of multilayer (recursive) overlays, and created solutions for a variety of overlay support mechanisms, including IPsec interactions with dynamic routing, multihomed host demultiplexing, and revisitation. He has led several projects in overlay networks, including X-Bone (IP overlays), DynaBone (multilayer overlays for fault tolerance), NetFS (OS support for overlays), and GeoNet (geographic overlays). He edited a special issue of Computer Networks on overlays, and as author of book chapters on Overlay Networks (Handbook of Internet Computing) and Network Architecture (Grid book), as well as co-author of a book on High-Speed Networking. His other research includes optical Internets, communication latency, web caching, TCP performance, and high-speed networking.