IP Library Granted Patent US 11,330,044
Granted Patent B2
US 11,330,044 · App. 16/791,346 · Granted May 10, 2022

Method and system for processing load balancing using virtual switch in virtual network environment

Inventor: Seong Woo Park (Seongnam-si, KR)
Assignee: NHN Entertainment Corporation
H04L67/1008H04L47/125H04L49/25H04L49/70H04L12/4641H04L67/1027H04L67/42H04L69/22H04L69/326
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 11,330,044
App. No.
16/791,346
Granted
May 10, 2022
Kind
B2
Abstract

A method to load balance via a load balancing node in a virtual network environment, the method including: receiving a request packet from a client through a router; selecting, via a load balancer of the load balancing node, a backend virtual machine server to receive the received request packet; generating, via a virtual switch of the load balancing node, a packet for virtual networking by overlaying information for transmitting the received request packet to the selected backend virtual machine server through a virtual network to the received request packet; and transmitting the generated packet for virtual networking to a hypervisor node including the selected backend virtual machine server.

Claims (89)

1. A method to load balance via a load balancing node in a virtual network environment, the method comprising:

receiving a request packet from a client through a router and a public network;

selecting, via a load balancer of the load balancing node, a backend virtual machine server to receive the received request packet;

generating, via a virtual switch of the load balancing node, a packet for virtual networking by overlaying information for transmitting the received request packet to the selected backend virtual machine server through a virtual network as a private network to the received request packet;

transmitting the generated packet for virtual networking to a hypervisor node comprising the selected backend virtual machine server; and

collecting and analyzing, by a monitoring virtual machine included in hypervisor, the generated packet, the monitoring virtual machine performing deep packet inspection (DPI) of the generated packet,

wherein:

the load balancer comprises a layer 4 (L4) direct server return (DSR) load balancer,

wherein the collecting and analyzing comprises:

mirroring, by a mirroring unit implemented in the monitoring virtual machine, the generated packet through a virtual switch included in the hypervisor node; and

analyzing, by a analyzing unit implemented in the monitoring virtual machine, the mirrored packet by performing DPI for the mirrored packet, and

wherein the virtual switch of the hypervisor node is configured to separate the request packet from the generated packet and to transmit the separated request packet to the selected backend virtual machine server, and further configured to directly transmit a response packet from the selected backend virtual machine server to the router without passing through the load balancing node.

2. The method of claim 1 , wherein the hypervisor node is configured to:

receive the transmitted packet for virtual networking through the virtual network;

extract the request packet via a virtual switch for the selected backend virtual machine server among virtual switches of the hypervisor node; and

transmit the extracted request packet to the selected backend virtual machine server.

3. The method of claim 1 , wherein:

the transmitted packet for virtual networking is transmitted to a top of rack (ToR) switch, reconverted to the request packet through a virtual switch for the selected backend virtual machine server among virtual switches of the ToR switch, and transmitted to the hypervisor node; and

the hypervisor node is configured to transmit the reconverted request packet to the selected backend virtual machine server.

4. The method of claim 1 , wherein:

the request packet comprises a networking address of the client; and

the networking address of the client is transmitted to the selected backend virtual machine server through the packet for virtual networking.

5. The method of claim 1 , wherein generating the packet for virtual networking comprises generating the packet for virtual networking for tunneling via application of a virtual networking protocol, the virtual networking protocol being one of virtual extensible local area network (VxLAN), virtual LAN (VLAN), generic route encapsulation (GRE), and 802.11 br.

6. The method of claim 1 , wherein the information overlaid to the request packet comprises header information for layer 2 and layer 3 of a network model and header information for a virtual networking protocol.

7. A method to load balance via a hypervisor node in a virtual network environment, the method comprising:

receiving, via a virtual network from a load balancing node comprising a load balancer, a packet for virtual networking, the packet for virtual networking having been generated, via a virtual switch of the load balancing node, by overlaying information to a request packet received from a client through a router and a public network by the load balancing node, the information enabling transmission of the request packet through the virtual network as a private network;

extracting the request packet from the packet for virtual networking through a virtual switch for a backend virtual machine server selected by the load balancer among virtual switches of the hypervisor node;

collecting and analyzing, by a monitoring virtual machine included in the hypervisor, the extracted request packet, the monitoring virtual machine performing deep packet inspection (DPI) of the extracted request packet; and

transmitting the extracted request packet to the selected backend virtual machine server,

wherein:

the load balancer comprises a layer 4 (L4) direct server return (DSR) load balancer,

wherein the collecting and analyzing comprises:

mirroring, by a mirroring unit implemented in the monitoring virtual machine, the generated packet through a virtual switch included in the hypervisor node; and

analyzing, by a analyzing unit implemented in the monitoring virtual machine, the mirrored packet by performing DPI for the mirrored packet, and

wherein the virtual switch of the hypervisor node is configured to separate the request packet from the generated packet and to transmit the separated request packet to the selected backend virtual machine server, and further configured to directly transmit a response packet from the selected backend virtual machine server to the router without passing through the load balancing node.

8. A non-transitory computer-readable media comprising a computer program to implement a method for processing load balancing in conjunction with a load balancing node implemented via a computer, the method comprising:

receiving a request packet from a client through a router and a public network;

selecting, via a load balancer of the load balancing node, a backend virtual machine server to receive the received request packet;

generating, via a virtual switch of the load balancing node, a packet for virtual networking by overlaying information for transmitting the received request packet to the selected backend virtual machine server through a virtual network as a private network to the received request packet;

transmitting the generated packet for virtual networking to a hypervisor node comprising the selected backend virtual machine server; and

collecting and analyzing, by a monitoring virtual machine included in the hypervisor, the generated packet, the monitoring virtual machine performing deep packet inspection (DPI) of the generated packet,

wherein:

the load balancer comprises a layer 4 (L4) direct server return (DSR) load balancer,

wherein the collecting and analyzing comprises:

mirroring, by a mirroring unit implemented in the monitoring virtual machine, the generated packet through a virtual switch included in the hypervisor node; and

analyzing, by a analyzing unit implemented in the monitoring virtual machine, the mirrored packet by performing DPI for the mirrored packet, and

wherein the virtual switch of the hypervisor node is configured to separate the request packet from the generated packet and to transmit the separated request packet to the selected backend virtual machine server, and further configured to directly transmit a response packet from the selected backend virtual machine server to the router without passing through the load balancing node.

9. The non-transitory computer-readable media of claim 8 , wherein the hypervisor node is configured to:

receive the transmitted packet for virtual networking through the virtual network;

extract the request packet via a virtual switch for the selected backend virtual machine server among virtual switches of the hypervisor node; and

transmit the extracted request packet to the selected backend virtual machine server.

10. The non-transitory computer-readable media of claim 8 , wherein:

the transmitted packet for virtual networking is transmitted to a top of rack (ToR) switch, reconverted to the request packet through a virtual switch for the selected backend virtual machine server among virtual switches of the ToR switch, and transmitted to the hypervisor node; and

the hypervisor node is configured to transmit the reconverted request packet to the selected backend virtual machine server.

11. The non-transitory computer-readable media of claim 8 , wherein:

the request packet comprises a networking address of the client; and

the networking address of the client is transmitted to the selected backend virtual machine server through the packet for virtual networking.

12. A load balancing node implemented via a computer, the load balancing node comprising:

at least one processor; and

at least one memory comprising one or more sequences of one or more instructions configured to, in response to being executed by the at least one processor, cause the load balancing node at least to:

receive a request packet from a client through a router and a public network;

select, via a load balancer of the load balancing node, a backend virtual machine server to receive the received request packet;

generate, via a virtual switch of the load balancing node, a packet for virtual networking via overlay of information for transmission of the received request packet to the selected backend virtual machine server through a virtual network as a private network to the received request packet; and

transmit the generated packet for virtual networking to a hypervisor node comprising the selected backend virtual machine server; and

collect and analyze, by a monitoring virtual machine included in the hypervisor, the generated packet, the monitoring virtual machine performing deep packet inspection (DPI) of the generated packet,

wherein:

the load balancer comprises a layer 4 (L4) direct server return (DSR) load balancer,

wherein the collect and analyze comprises:

mirroring, by a mirroring unit implemented in the monitoring virtual machine, the generated packet through a virtual switch included in the hypervisor node; and

analyzing, by a analyzing unit implemented in the monitoring virtual machine, the mirrored packet by performing DPI for the mirrored packet, and

wherein the virtual switch of the hypervisor node is configured to separate the request packet from the generated packet and to transmit the separated request packet to the selected backend virtual machine server, and further configured to directly transmit a response packet from the selected backend virtual machine server to the router without passing through the load balancing node.

13. The load balancing node of claim 12 , wherein the hypervisor node is configured to:

receive the transmitted packet for virtual networking through the virtual network;

extract the request packet via a virtual switch for the selected backend virtual machine server among virtual switches of the hypervisor node; and

transmit the extracted request packet to the selected backend virtual machine server.

14. The load balancing node of claim 12 , wherein:

the transmitted packet for virtual networking is transmitted to a top of rack (ToR) switch, reconverted to the request packet through a virtual switch for the selected backend virtual machine server among virtual switches of the ToR switch, and transmitted to the hypervisor node; and

the hypervisor node is configured to transmit the reconverted request packet to the selected backend virtual machine server.

15. The load balancing node of claim 12 , wherein:

the request packet comprises a networking address of the client; and

the networking address of the client is transmitted to the selected backend virtual machine server through the packet for virtual networking.

16. The method of claim 1 , further comprising:

separating, by the mirroring unit, real packets from virtual packets transmitted to and received for the selected virtual machine server.

17. The method of claim 7 , further comprising:

separating, by the mirroring unit, real packets from virtual packets transmitted to and received for the selected virtual machine server.

18. The non-transitory computer-readable media of claim 8 , the method for processing load balancing in conjunction with a load balancing node implemented via a computer further comprising:

separating, by the mirroring unit, real packets from virtual packets transmitted to and received for the selected virtual machine server.

19. The load balancing node of claim 12 , the one or more sequences of one or more instructions further configured to, in response to being executed by the at least one processor, cause the load balancing node at least to:

separate, by the mirroring unit, real packets from virtual packets transmitted to and received for the selected virtual machine server.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2022
From: NHN CORPORATION
To: NHN CLOUD CORPORATION
Reel/Frame 060690/0798 →
CHANGE OF NAME Recorded Jul 21, 2022
From: NHN ENTERTAINMENT CORPORATION
To: NHN CORPORATION
Reel/Frame 060575/0181 →
Priority Claims (2)
KR 10-2016-0108373 · Aug 25, 2016 · national
KR 10-2016-0108376 · Aug 25, 2016 · national
Continuity (2)
Continuation 15685418 · Aug 24, 2017
Related Publication 20200186598A1 · Jun 11, 2020