IP Library Granted Patent US 8,400,917
Granted Patent B2
US 8,400,917 · App. 12/846,263 · Granted Mar 19, 2013

Method and system for load balancing using queued packet information

Inventors: Sunay Tripathi (Palo Alto, CA); Erik Nordmark (Mountain View, CA); Nicolas G. Droux (Rio Rancho, NM)
Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,400,917
App. No.
12/846,263
Granted
Mar 19, 2013
Kind
B2
Abstract

A computer readable medium including instructions executable by a processor to perform a method, the method including obtaining a packet by a load balancer, obtaining queued packet information for a plurality of target hosts operatively connected to the load balancer, selecting the one of the plurality of target hosts using the queued packet information, and sending the packet to the selected target host using a first communication channel between the load balancer and the selected target host.

Claims (30)

1. A non-transitory computer readable medium comprising instructions executable by a processor to perform a method, the method comprising:

obtaining a packet by a load balancer;

obtaining queued packet information for a plurality of target hosts operatively connected to the load balancer, wherein obtaining the queued packet information comprises sending a request for the queued packet information to at least one of the plurality of target hosts and wherein the request is sent to the at least one of the plurality of target hosts using a second communication channel between the load balancer and the at least one of the plurality of target hosts;

selecting one of the plurality of target hosts using the queued packet information to identify a selected target host; and

sending the packet to the selected target host using a first communication channel between the load balancer and the selected target host.

2. The non-transitory computer readable medium of claim 1 , wherein the selected target host comprises a virtual network stack (VNS) and wherein the queued packet information comprises a number packets queued in the VNS.

3. The non-transitory computer readable medium of claim 2 , wherein the VNS comprises an inbound virtual serialization queue (VSQ) interposed between an Internet Protocol (IP) layer and a Transport layer and wherein the queued packet information is the number of packets queued in the inbound VSQ.

4. The non-transitory computer readable medium of claim 1 , wherein a response to the request is communicated to the load balancer using the second communication channel, wherein packets communicated on the second communication channel are processed at a higher priority level by a computer executing the load balancer than packets communicated on the first communication channel.

5. A system, comprising:

a processor;

a first physical network interface, communicatively coupled to a network;

a second physical network interface, communicatively coupled to a plurality of target hosts; and

a load balancer, configured to:

obtain a packet from the first physical network interface;

for each of the plurality of target hosts, send a request for queued packet information using a second communication channel between the load balancer and the each of the plurality of target hosts;

for each of the plurality of target hosts, receive queued packet information using the second communication channel;

select one of the plurality of target hosts using the queued packet information; and

send the packet to the one of the plurality of target hosts using a first communication channel between the load balancer and the one of the plurality of target hosts.

6. The system of claim 5 , wherein packets communicated on the second communication channel are processed at a higher priority level by a computer executing the load balancer than packets communicated on the first communication channel.

7. The system of claim 5 , wherein the packet is received by the first physical network interface from the network.

8. The system of claim 5 , wherein each of the plurality of target hosts comprises a virtual network stack (VNS).

9. The system of claim 8 , wherein, for each of the plurality of target hosts, the queued packet information comprises a number of packets queued in the VNS.

10. The system of claim 8 , wherein the VNS comprises an inbound virtual serialization queue (VSQ) interposed between an Internet Protocol (IP) layer and a Transport layer, and wherein the queued packet information is the number of packets queued in the inbound VSQ.

11. The system of claim 8 , wherein each of the plurality of target hosts further comprises a virtual network interface (VNIC).

12. The system of claim 5 , further comprising:

a first VNS interposed between the first physical interface and the load balancer; and

a second VNS interposed between the second physical interface and the load balancer.

13. The system of claim 12 , further comprising:

a first VNIC interposed between the first physical interface and the first VNS; and

a second VNIC interposed between the second physical interface and the second VNS.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0195 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2012
From: TRIPATHI, SUNAY; NORDMARK, ERIK; DROUX, NICOLAS G.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 029427/0221 →
Continuity (2)
Continuation 12053676 · Mar 24, 2008
Related Publication 20110019553A1 · Jan 27, 2011