A method and apparatus providing highly scalable
server load balancing are disclosed. Data packets from a
client are routed through one or more routers to a
server load balancer, which is selected from among a plurality of
server load balancers in a network. In response to receiving a request packet, a particular server site to process the
client request is selected. A first path to a second
router associated with the particular server site, and a second path to a
server load-balancing device associated with the second
router, are determined. A mapping of flow identifying information, associated with the packet, to a first
label value that identifies the first path and to a second
label value that identifies the second path, is created. The first
label value and the second label value are stored in the packet. All subsequent packets associated with the
client request are forwarded to the
server load-balancing device based on looking up the first label value and second label value in the mapping. As a result, a network is scalable to process and load-balance numerous client requests, which are efficiently routed to the site,
server load-balancer, and server that are handling the request.