An overlay network is a computer network that is built on top of another network. Nodes in the overlay network can be thought of as being connected by virtual or logical links, each of which corresponds to a path, perhaps through many physical links, in the underlying network. For example, distributed systems such as peer-to-peer networks and client-server applications are overlay networks because their nodes run on top of the Internet. The Internet was originally built as an overlay upon the telephone network, while today (through the advent of VoIP), the telephone network is increasingly turning into an overlay network built on top of the Internet.
Uses of overlay networks
Overlay networks are used in telecommunication because of the availability of digital circuit switching equipment and optical fiber. Telecommunication transport networks and IP networks (which combined make up the broader Internet) are all overlaid with at least an optical fiber layer, a transport layer and an IP or circuit switching layers (in the case of the PSTN).
Enterprise private networks were first overlaid on telecommunication networks such as frame relay and Asynchronous Transfer Mode packet switching infrastructures but migration from these (now legacy) infrastructures to IP based MPLS networks and virtual private networks started (2001~2002).
From a physical standpoint overlay networks are quite complex (see Figure 1) as they combine various logical layers that are operated and built by various entities (businesses, universities, government etc.) but they allow separation of concerns that over time permitted the buildup of a broad set of services that could not have been proposed by a single telecommunication operator (ranging from broadband Internet access, voice over IP or IPTV, competitive telecom operators etc.).
Over the Internet
Nowadays the Internet is the basis for more overlaid networks that can be constructed in order to permit routing of messages to destinations not specified by an IP address. For example, distributed hash tables can be used to route messages to a node having a specific logical address, whose IP address is not known in advance.
Overlay networks have also been proposed as a way to improve Internet routing, such as through quality of service guarantees to achieve higher-quality streaming media. Previous proposals such as IntServ, DiffServ, and IP multicast have not seen wide acceptance largely because they require modification of all routers in the network. On the other hand, an overlay network can be incrementally deployed on end-hosts running the overlay protocol software, without cooperation from ISPs. The overlay has no control over how packets are routed in the underlying network between two overlay nodes, but it can control, for example, the sequence of overlay nodes a message traverses before reaching its destination.
For example, Akamai Technologies manages an overlay network which provides reliable, efficient content delivery (a kind of multicast). Academic research includes End System Multicast and Overcast for multicast; RON (Resilient Overlay Network) for resilient routing; and OverQoS for quality of service guarantees, among others.
Resilient Overlay Networks (RON) are architectures that allow distributed Internet applications to detect and recover from disconnection or interference. Current wide area routing protocols that take at least several minutes to recover from are improved upon with this application layer overlay. The RON nodes monitor the Internet paths among themselves and will determine whether or not to reroute packets directly over the internet or over other RON nodes thus optimizing application specific metrics.
The Resilient Overlay Network has a relatively simple conceptual design. RON nodes are deployed at various locations on the Internet. These nodes form an application layer overlay that cooperate in routing packets. Each of the RON nodes monitor the quality of the Internet paths between each other and uses this information to accurately and automatically select paths from each packet, thus reducing the amount of time required needed to recover from poor quality of service.
Overlay multicast is also known as End System or Peer-to-Peer Multicast. High bandwidth multi-source multicast among widely distributed nodes is a critical capability for a wide range of applications including audio and video conferencing, multi-party games and content distribution. Throughout the last decade, a number of research projects have explored the use of multicast as an efficient and scalable mechanism to support such group communication applications. Multicast decouples the size of the receiver set from the amount of state kept at any single node and potentially avoids redundant communication in the network.
The limited deployment of IP Multicast, a best effort network layer multicast protocol, has led to considerable interest in alternate approaches that are implemented at the application layer, using only end-systems. In an overlay or end-system multicast approach participating peers organize themselves into an overlay topology for data delivery. Each edge in this topology corresponds to a unicast path between two end-systems or peers in the underlying Internet. All multicast-related functionality is implemented at the peers instead of at routers, and the goal of the multicast protocol is to construct and maintain an efficient overlay for data transmission.
- Slow in spreading the data.
- Long latency.
- Duplicate packets at certain points.
List of overlay network protocols
Overlay network protocols based on TCP/IP include:
- Distributed hash tables (DHTs), such as KAD and other protocols based on the Kademlia algorithm, for example.
- XMPP: the routing of messages based on an endpoint Jabber ID (Example: nodeId_or_userId@domainId\resourceId) instead of by an IP Address
- Many peer-to-peer protocols including Gnutella, Gnutella2, Freenet, I2P and Tor.
- Solipsis: a France Télécom system for massively shared virtual world
- HyParView: a highly robust unstructured overlay for gossip broadcast
Overlay network protocols based on UDP/IP include:
- List of overlay network implementations, July 2003
- Resilient Overlay Networks
- Overcast: reliable multicasting with an overlay network
- OverQoS: An overlay based architecture for enhancing Internet QoS
- HyParView: a membership protocol for reliable gossip-based broadcast. João Leitão, José Pereira and Luís Rodrigues. Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), 2007
- RFC 3170
- Multicast over TCP/IP HOWTO
- Nemo - Resilient Overlay Multicast
- FatNemo - Emulating FatTrees for Overlay Multisource/Multicast
- End System Multicast
- Bibliography on overlay multicast and application layer multicast for the IRTF Scalable Adaptive Multicast Research Group
- AT&T history of Network transmission
- Fransman, Martin. Telecoms in the Internet Age: From Boom to Bust to ...?. Oxford University Press.
- David Andersen , Hari Balakrishnan , Frans Kaashoek , Robert Morris (December 2001). "Resilient Overlay Networks". Proceedings of the eighteenth ACM symposium on Operating systems principles: 131–145. doi:10.1145/502034.502048.