Extensible Transport Switching
Anypoint is a new model for one-to-many communication with ensemble
sites---aggregations of end nodes that appear to the external Internet as a
unified site. Anypoint routers reside at the network edge, redirecting
individual client requests among the ensemble members. The extensible
architecture allows routing policies to be defined by application-layer
plugins in the switch.
Anypoint is the first general indirection approach that operates at the
transport layer at the granularity of frames. The transport-layer solution
enables reliable, ordered, rate-controlled Anypoint communication,
complementing IP-layer approaches(e.g., Anycast and i3), which support
wide-area ensembles but provide only best-effort packet delivery. By
leveraging transports with framing, our approach is amenable to
implementation on high-speed switches and routers.
- Service Extension and Virtualization with Anypoint- Anypoint
enables transparent extension and virtualization of network services based
on application-layer (L7) protocols, by interposing L7 plug-in extensions
in network switches. This communication model generalizes ``L4-L7'' server
switches that support server load balancing or content-based request
routing for the Web and related services. Commercial Web switches are
limited to service protocols (e.g., HTTP) that issue each request in a
separate transport connection, or process requests on each connection
serially. Anypoint extends this idea to allow independent, concurrent
handling of multiple requests arriving on the same persistent transport
connection, enabling a new class of virtualization switches for network
storage protocols and other Internet services. We have developed an NFS L7
storage router,based on Slice, to explore the impact on
- Anypoint-Compatible Protocol (ACP)- Anypoint is designed for
advanced IP transports with partial ordering, explicit rate control, and
application-level framing, as proposed by Clark and Tennenhouse over a
decade ago. Reliance on these capabilities---which TCP does not
support---enables an approach that is both more powerful and more elegant
than solutions based on TCP connection migration. Our ACP prototype is
based on TCP with the addition of a light-weight framing shim between the
protocol stack and socket layer. It also supports explicit rate
control mechanisms in the form of XCP [Katabi, et. al.].
- Transport Equivalence- Anypoint is transport-equivalent: end
nodes use the same transport code for point-to-point and Anypoint
connections. Note that---in contrast to application-level proxies---an
Anypoint intermediary does not terminate transport connections. Anypoint
avoids both the CPU and transport-layer buffering overhead associated with
termination. In contrast to a terminating proxy, an Anypoint switch
maintains state about the current number of outstanding frames in the
New Paper: Explicit
Rate Control for Anypoint Communication by Ken Yocum and Jeff
Chase. In submission, Technical report CS-2004-05, July 2004.
Anypoint: Extensible Transport Switching on the Edge by Ken Yocum, Darrell Anderson,
Jeff Chase, and Amin Vahdat. In USITS 2003.
paper briefly motivates and describes our approach.