The original Internet was built around the point-to- point communication abstraction. The simplicity of this abstraction is one of the main reason behind the scalability and efficiency of today's Internet. However, as the Internet evolves into a global economic infrastructure, there is an increasing need to support more general services such as multicast, anycast, and host mobility. Attempts to generalize the Internet's point-to-point communication abstraction to provide these services have faced challenging technical problems and deployment barriers.
To address this problem, we have developed an overlay-based Internet Indirection Infrastructure (i3) that offers a rendezvous-based communication abstraction. Instead of explicitly sending a packet to a destination, each packet is associated with an identifier; this identifier is then used by the receiver to obtain delivery of the packet. This level of indirection decouples the act of sending from the act of receiving, and allows i3 to efficiently support a wide variety of fundamental communication services such as multicast,
anycast, mobility and service composition.
However, developing an overlay-network such as i3 is of little use if this would require to rewrite all existing applications to take advantage of their functionality. To address this problem, we have developed OCALA, an overlay convergence architecture that achieves
this goal. OCALA interposes an overlay convergence layer below the transport layer. This layer is composed of an overlay independent sub-layer that interfaces with legacy applications, and an overlay dependent sub-layer that delivers packets to the overlay. Unlike
previous efforts, OCALA enables: (a) simultaneous access to multiple overlays (including i3) (b) communication between hosts in different overlays (c) communication between overlay hosts and legacy hosts (d) extensibility, allowing researchers to incorporate their overlays into OCALA.