|
|
![]()
In this project, we are combining two emerging trends in the area of networking:
Web-switches serve four key functions with respect to routing user requests:
Typically, web switches either use TCP/IP headers (layer 4) or application layer header for dispatching user requests. Layer4 switches are suitable for load-balancing and high performance but are unable to support content routing. Content routing requires terminating incoming TCP connections and examining higher-layer headers. As web application requirements evolve, there will be a need for more sophisticated dispatching since the approach of layer4 switching of examining only TCP/IP headers provides insufficient functionality, while layer7 dispatchers suffer from scalability and performance limitations due to their requirement of terminating incoming connections. In this project, we are working on a approach that, when combined with an intelligent client-side proxy, can implement a dispatcher using off-the-shelf MPLS switching hardware, while also providing the flexibility of a content-aware router.
MPLS has been proposed both as a means of speeding up packet processing and for establishing traffic-engineered paths within a network. Rather than use labels to express routing and forwarding policies, the key idea in this project is to map application layer information to enable high-performance and yet flexible, web-switching. MPLS provides for label stacking and we exploit this feature of MPLS to stack the label used for web-switching below the routing labels. Consequently, the intermediate MPLS network between a client-side proxy and the web-switch in front of a server farm, is unaffected by our use of MPLS labels for web-switching at the edge of the network. A mapping of labels to application-layer semantics is communicated by the dispatcher to the proxy through a control connection and this mapping can implement content-based routing, client-server affinity, client-specific service differentiation and server load balancing without requiring termination of TCP connections at the network dispatcher.
The main advantage of this approach is that it removes a critical bottleneck from the system, namely the need for terminating incoming TCP connections at a single point for dispatching user requests. Further, it lends itself to realization in a standard off-the-shelf MPLS switch, thus obviating the need for specialized, layer-7 web switching hardware.
We have completed an architecture design for an MPLS-based web switching system.Currently we are working on a simulation model to evaluate its load-balancing capabilities, as well as a Linux implementation to demonstrate the architecture.
A. Acharya, A. Shaikh, R. Tewari, and D. Verma, "Web Switching using MPLS," MPLS World News Technical Focus, January 2002. (Please send us a request for an off-line copy if this link is broken).
A. Acharya, A. Shaikh, R. Tewari, and D. Verma, "Scalable Web Request Routing with MPLS," IBM Research Report RC 22275, December 2001. (postscript) (pdf)
A. Acharya, A. Shaikh, R. Tewari, and D. Verma, "MPLS-based Request Routing,"
Proc. Int'l Workshop on Web Caching and Content Distribution (WCW '01),
R&D Synopsis, June 2001. (postscript)
(pdf) (talk
slides)
A. Acharya, A. Shaikh, R. Tewari, and D. Verma, "MPLS-based Web Switching," First New York Metro Area Networking Workshop, March 2001. Workshop slides (postscript) (pdf).
A. Acharya, "Multi-protocol Label Switching: Overview and Applicability," August 2000. (postscript) (pdf).