US 7,353,276 B2
Bi-directional affinity
William L. Bain, Bellevue, Wash. (US); and Kyril Faenov, Seattle, Wash. (US)
Assigned to Microsoft Corporation, Redmond, Wash. (US)
Filed on Feb. 13, 2003, as Appl. No. 10/365,810.
Prior Publication US 2004/0205250 A1, Oct. 14, 2004
Int. Cl. G06F 15/167 (2006.01); G06F 15/16 (2006.01)
U.S. Cl. 709—225  [709/214; 709/217] 14 Claims
OG exemplary drawing
 
1. A network load balancing/external network interface node, for use in a system including multiple network load balancing/external network interface nodes, including bi-directional load balancing affinity with regard to requests from external clients and corresponding responses from internal network servers, the network load balancing/external network interface node comprising:
an external network load balancing adapter that executes a load-balancing algorithm to determine whether a received client request is accepted by the network load balancing/external network interface node;
an external network interface utility that processes the received client request and maintains state information associated with the received client request;
an internal network load balancing adapter that ensures the network load balancing/external network interface node accepts a response from an internal network server corresponding to the received client request, the internal network load balancing adapter comprising:
a complementary load-balancing algorithm to ensure that the network load balancing/external network interface node that processed the received client request processes the received server response, wherein the complementary load-balancing algorithm executes simultaneously on the network load balancing/external network interface nodes.