A method of routing data to a load-balanced
server through a network having one or more load-balancing nodes is disclosed. The first packet of a
client request is received at one of the load-balancing nodes, which stores information identifying a flow associated with the packet and an incoming interface identifier. The node then makes a
server load-balancing decision and stores an outgoing interface identifier. When the packet reaches the last load-balancing node before the selected
server, that last node also requests an MPLS
label to uniquely identify the flow, connection and
route. The
label is stored in a mapping at the last node that associates the
label with the flow and interface identifying information. The packet is routed to the selected server. The first server response packet is switched hop-by-hop and the MPLS label is stored at each node traversed by the response packets, in association with a flow identifier and incoming and outgoing interface identifiers. For all other packets in the request and response, nodes fast-switch the packets based on the label mappings. As a result, packet flows are rapidly routed from the same
client to the same server without time-consuming hop-by-hop routing decisions or repeated load-balancing decisions.