WO2018120800A1 - 一种负载均衡的方法、装置和系统 - Google Patents
一种负载均衡的方法、装置和系统 Download PDFInfo
- Publication number
- WO2018120800A1 WO2018120800A1 PCT/CN2017/094167 CN2017094167W WO2018120800A1 WO 2018120800 A1 WO2018120800 A1 WO 2018120800A1 CN 2017094167 W CN2017094167 W CN 2017094167W WO 2018120800 A1 WO2018120800 A1 WO 2018120800A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- address
- destination
- access request
- backend server
- load balancer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2514—Translation of Internet protocol [IP] addresses between local and global IP addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Definitions
- the present application relates to the field of IT technologies, and in particular, to a load balancing method, apparatus, and system.
- the load balancing system includes a load balancer and a plurality of back-end servers, wherein the plurality of back-end servers (also called members) form a server resource pool, and the load balancer receives the access request of the client, and provides the client with the load balancing algorithm.
- the backend server for the service.
- the IP address of the load balancer is the IP address externally presented by the server resource pool.
- the client can access the back-end server in the server resource pool through the IP address of the load balancer without knowing the address of the back-end server.
- the mode in which the load balancer provides the load balancing service includes a direct routing (DR) mode and a network address translation (NAT) mode.
- DR direct routing
- NAT network address translation
- the access response returned by the backend server to the client does not need to go through the load balancer, so the transmission performance is high.
- the DR mode requires that the IP address of the load balancer and the IP address of the back-end server are on the same network segment, the back-end server and the load balancer cannot be deployed across the network segment. Therefore, the networking of the load balancing system is greatly restricted. .
- the embodiment of the present invention provides a method, a device, and a system for load balancing, which are used to solve the problem that a back-end server and a load balancer cannot be deployed across a network segment in a DR mode in a cloud computing network.
- a load balancing system for implementing a cross-network deployment of a back-end server and a load balancer in a DR mode in a cloud computing network.
- the system includes a load balancer and at least one service node, wherein the server node runs a virtual switch and at least one backend server, and an IP address of the backend server logical interface is an IP address of the load balancer, and a load
- the equalizer receives the access request of the client, and modifies the destination address of the access request to the IP address of the virtual network card of the destination back-end server.
- the virtual switch of the service node receives the access request, the destination address of the access request is modified to be the load balancer.
- the IP address such that when the destination backend server returns an access response, the source address of the access response is the address of the load balancer.
- the IP addresses of the load balancer and the back-end server can be configured as different network segments, and the service access response of the backhaul can be implemented without the load balancer, which ensures the network performance and solves the DR mode in the cloud computing network.
- system further includes a network controller
- the network controller is configured to send a flow table to the virtual switch, where the flow table is configured to indicate that the access request is sent when the virtual switch receives an access request sent to the destination backend server.
- the destination address is modified to the IP address of the load balancer;
- the virtual switch is specifically configured to modify a destination address of the access request according to the flow table.
- the load balancing system adopts an intranet access mode
- the load balancing system further includes a load balancing node, where the load balancer and the first virtual router are running, where the first virtual router is configured with a gateway address of the load balancer and a gateway address of the destination backend server.
- the load balancer is specifically configured to send the access request to a first port of the first virtual router, where an address of the first port is a gateway address of the load balancer;
- the first virtual router is configured to receive the access request, send the access request from a second port, and the address of the second port is a gateway address of the destination backend server.
- the destination service node runs a second virtual router, and the second virtual router is configured with a gateway address of the client and a gateway address of the destination backend server.
- the destination back-end server is specifically configured to send the access response to a third port of the second virtual router, where an address of the third port is a gateway address of the destination back-end server;
- the second virtual router is configured to receive the access response, and send the access response from a fourth port, where an address of the fourth port is a gateway address of the client.
- the client accesses the load balancer through the intranet address (virtual IP address).
- the load balancer and the back-end server are deployed in the same tenant network.
- the IP addresses of the load balancer and the back-end server are different network segments of the same tenant network, and both can communicate through the virtual router of the node.
- the load balancer is an independent physical server with a public IP address.
- the client accesses the back-end server through the public IP address of the load balancer.
- the back-end server can be a virtual running on the service node. Machine or container.
- the public IP address of the load balancer is associated with a virtual IP address that is on the different network segment of the same tenant network as the IP address of the virtual network card of the backend server and the IP address of the logical interface of the backend server.
- the destination service node runs a third virtual router
- the destination back-end server further has a local area network IP address associated with the IP address of the destination back-end server virtual network card, the local area network IP The address is used to implement network isolation between different tenants.
- the load balancer is specifically configured to modify a destination address of the access request to a local area network IP address of the destination backend server, and send the access request to the destination service node where the destination backend server is located. ;
- the third virtual router on the destination service node is further configured to receive the access request, and modify a destination address of the access request to an IP address of a virtual network card of the destination backend server, where the access is performed.
- a request is sent to the virtual switch.
- IP address of the load balancer is also associated with a public network IP address.
- the virtual switch is further configured to receive the access response, modify a source address of the access response to a public network IP address associated with an IP address of the load balancer, and return the access response to the client. .
- the load balancing method in the scenario of the intranet access mode and the public network access mode is implemented.
- the IP addresses of the load balancer and the backend server can be configured as different network segments, and at the same time, The service access response of the return service does not pass through the load balancer, which ensures the network performance and solves the problem that the back-end server and the load balancer cannot be deployed across the network segment in the DR mode in the cloud computing network.
- a method for load balancing is provided, the method being applied to the load balancing system of the foregoing first aspect, the load balancing system comprising a load balancer and at least one service node, wherein the server node runs a virtual switch And at least one back-end server, the IP address of the back-end server logical interface is an IP address of the load balancer, and the method includes:
- the virtual switch on the destination service node receives the access request, modifies the destination address of the access request to an IP address of the load balancer, and sends the access request to the destination backend server.
- the destination backend server is configured to receive and process the access request, and return an access response to the client, where the source address of the access response is an IP address of the load balancer.
- the various components in the load balancing system perform the steps of the aforementioned first aspect.
- a service node runs a virtual switch and at least one backend server, and the at least one backend server is distributed by a load balancer to a client to provide a service, the backend server logic
- the IP address of the interface is the IP address of the load balancer.
- the virtual switch on the service node is configured to receive an access request of the client sent by the load balancer, where a destination address of the access request is an IP address of the virtual network card of the backend server;
- the virtual switch is further configured to modify a destination address of the access request to an IP address of the load balancer, and send the access request to the backend server;
- the backend server is configured to receive and process the access request, and return an access response to the client, where a source address of the access response is an IP address of the load balancer.
- the virtual switch, the virtual router, and the backend server on the service node perform the steps of the corresponding components in the foregoing first aspect.
- a fourth aspect another method of load balancing is provided, wherein the virtual switch, the virtual router, and the backend server on the service node perform the steps of the corresponding components in the foregoing first aspect.
- a load balancing system in another virtualization environment is provided, which is applied to a public network access mode, where the system includes a load balancer and at least one service node, where the server node runs a virtual switch and a virtual router. And at least one back-end server, where the load balancer is located in the same tenant network as the back-end server, and an IP address of the back-end server logical interface is a virtual IP address of the load balancer.
- the load balancer is configured to receive an access request of the client, select a destination backend server for the client, modify a destination address of the access request to a local area network IP address of the backend server, and send the access request to the The destination service node where the destination backend server is located;
- the virtual router of the destination service node is configured to receive the access request, and modify the destination address of the access request from the local area network address of the destination backend server to the IP address of the virtual network card of the destination backend server according to the first flow table. An address, the access request is sent to the virtual switch of the destination service node;
- the virtual switch is configured to modify, according to the second flow table, the destination address of the access request to an IP address of a logical interface of the destination back-end server, and send the access request to the destination back-end server;
- the destination backend server is configured to receive and process the access request, and return an access response, where the source address of the access response is modified to a virtual IP address of the load balancer;
- the virtual router is further configured to modify, according to the third flow table, a source address of the access response to a public network IP address of the load balancer.
- a service node in a load balancing system is provided, the service node being a physical server having the function of implementing the behavior of components on the service node in the first aspect and any of the possible designs.
- the functions may be implemented by hardware or by corresponding software implemented by hardware.
- the hardware or software includes one or more of the functions described above Corresponding modules.
- the service node includes a transceiver and a processor, wherein the processor is configured to invoke a set of program code to perform the method as described in the fourth aspect.
- a computer storage medium for storing computer software instructions for use by the service node described in the above aspects, comprising a program designed to perform the above aspects.
- FIG. 1 is a schematic structural diagram of a load balancing system in a virtualized environment according to an embodiment of the present invention
- FIG. 2 is a schematic structural diagram of a service node according to an embodiment of the present invention.
- FIG. 3 is a schematic flowchart of a method for load balancing according to an embodiment of the present disclosure
- FIG. 4 is a schematic structural diagram of another load balancing system in a virtualized environment according to an embodiment of the present invention.
- FIG. 5 is a schematic flowchart of another load balancing method according to an embodiment of the present disclosure.
- FIG. 6 is a schematic structural diagram of a hardware structure of a service node according to an embodiment of the present invention.
- FIG. 1 it is a schematic structural diagram of a load balancing system according to an embodiment of the present invention.
- the monitoring system includes a client 11 , a load balancing node 2 , and a service node 3 , and the load balancing node 2 runs first.
- the virtual router 21 and the load balancer 22, the service node 3 runs a second virtual router 31, at least one backend server 32 (for example, a backend server in FIG. 1), and a virtual switch 33.
- the client 11, the load balancing node 2, and the service node 3 may each be multiple, wherein the plurality of service nodes 3 constitute a server resource pool to provide services for the client 11, optionally, load balancing
- the node 2 can be deployed in a distributed manner, which is not limited in this embodiment of the present invention.
- the client 11, the load balancing node 2, and the service node 3 communicate with each other through a cloud network.
- the client 11 may be running on an access node.
- the client may be a virtual machine or a container.
- the load balancer 22 and the backend server 32 may each be a virtual machine or a container running on a physical node.
- the tenant can deploy the client 11 on the access node to configure the IP address for the client 11.
- the IP address of the client 11 is 192.168.1.10/24.
- the tenant deploys the load balancer 22 on the load balancing node 2, and configures the load balancer 22 to be in the NAT mode, and assigns the IP address to the load balancer 22.
- the IP address of the load balancer 22 is 192.168.2.10/24.
- the tenant configures the backend server 32 on the service node 3, and assigns an IP address to the backend server 32.
- the IP address of the backend server 32 includes the IP address of the backend server 32 virtual network card and the IP address of the logical interface of the backend server 32.
- the IP address of the logical interface of the backend server 32 is the IP address of the load balancer 22.
- the IP address of the virtual network card of the backend server 32 is 192.168.3.10/24
- the IP address of the logical interface is 192.168. .2.10.
- the cloud management platform allocates the gateway address of the client 11 , the gateway address of the load balancer 22, and the gateway address of the backend server 32 for a plurality of ports of the virtual router (12/21/31) on each node.
- the system structure shown in Figure 1 corresponds to the intranet access mode.
- FIG. 3 is a schematic flowchart of a method for load balancing according to an embodiment of the present invention. The method includes:
- Step 301 The client sends an access request to the load balancer, where the source address of the access request is an IP address of the client, and the destination address is an IP address of the load balancer.
- the IP address of the load balancer is presented to the client as the entry address of the backend server in the client request server resource pool.
- the IP address of the load balancer is also referred to as a virtual IP address
- the destination address of the access request sent by the client is a virtual IP address of the load balancer.
- the source IP address of the access request is 192.168.1.10, and the destination IP address is 192.168.2.10.
- the access request is sent to the port 1 of the virtual router of the access node (the port corresponding to the gateway address of the client). Because the virtual router of the access node where the client is located is configured with the port corresponding to the gateway address of the load balancer (for example, port 2), after receiving the access request, port 1 of the virtual router of the access node receives the access request according to the purpose of the access request.
- the address (192.168.2.10), sent from the port 2 is sent to the load balancer's IP address 192.168.2.10.
- Step 302 After receiving the access request, the load balancer selects a backend server that provides a service for the client based on a load balancing algorithm.
- the replication equalizer is in a NAT mode, and the load balancer records a list of the back-end servers, and selects a back-end server that provides the service from the list of the back-end servers according to the load balancing algorithm.
- the LVS of the LB server The software configuration stores the information of the backend server, so that the load balancer can obtain the address of the selected backend server.
- Step 303 The load balancer performs NAT translation on the destination address of the access request, and modifies the destination address (192.168.2.10) of the access request to the IP address of the back-end server virtual network card (192.168.3.10).
- the load balancer forwards the access request.
- the source address of the access request is 192.168.1.10 and the destination IP address is 192.168.3.10.
- the load balancer sends the access request to the first port of the first virtual router, the address of the first port is a gateway address of the load balancer, and the first virtual router receives the access request,
- the access request is sent from the second port, and the address of the second port is a gateway address of the destination backend server.
- Step 304 The virtual switch of the service node where the backend server is located receives the access request, modifies the destination address of the access request to an IP address of the load balancer, and sends the access request to the destination backend. server.
- the virtual switch receives a flow table under the network controller, where the flow table is used to indicate that when the virtual switch receives an access request sent to the destination backend server, the purpose of the access request is The address is modified to .
- the virtual switch modifies the IP address of the load balancer (192.168.2.10) according to the flow table according to the flow table, and the IP address of the logical interface of the backend server is the IP address of the load balancer. Therefore, after the virtual switch modifies the destination address of the access request to the IP address of the load balancer, the access request may be sent to the backend server.
- Step 305 The backend server receives and processes the access request.
- Step 306 returns an access response to the client, where the source address of the access response is the IP address of the load balancer.
- the source IP address of the access request received by the backend server is the IP address of the client (192.168.1.10), and the destination IP address is the IP address of the load balancer (192.168.2.10), and the backend server processes the access request. And returning the access response, the source IP address of the access response is the IP address of the load balancer (192.168.2.10), and the destination IP address is the IP address of the client (192.168.1.10).
- the second virtual router on the service node where the backend server is located is configured with a gateway address of the client and a gateway address of the destination backend server, and the destination backend server sends the access response to the second a third port of the virtual router, where the address of the third port is a gateway address of the destination backend server; the second virtual router receives the access response, and the access response is from the first A four port is issued, and the address of the fourth port is the gateway address of the client.
- the virtual switch on the access node After the access response arrives at the access node where the client is located, the virtual switch on the access node sends the access response to the client according to the destination address of the access response.
- the backend server can directly use the IP address of the load balancer as the source address of the access response.
- FIG. 4 is a schematic structural diagram of another load balancing system according to an embodiment of the present invention.
- This embodiment is a public network access mode, that is, an externally presented address of the load balancer is a public network address (for example, 9.9.9.9).
- the client accesses the public network address, and the load balancer provides services for the client to select the backend server.
- the internal network of the hardware resource pool composed of the backend server is invisible to the client.
- the IP address of the client is the public IP address (for example, 8.8.8.8).
- the tenant deploys the load balancer and configures the load balancer to NAT mode.
- the load balancer is deployed in the form of a physical server to provide a load balancing service for the client.
- the virtual IP address of the load balancer (for example, 192.168.2.10) is also associated with a public network IP address (9.9.9.9), which is used by the client.
- the load balancer's public network IP address accesses the load balancer.
- the virtual equalizer is in the same internal network as the back-end server running on the service node. Therefore, the physical address of the load balancer is also configured with a local area network IP address (for example, 100.100.100.100).
- the tenant configures the backend server on the service node, and assigns an IP address to the backend server.
- the IP address of the backend server includes the IP address of the backend server virtual network card (for example, 192.168.3.10) and the IP address of the backend server logical interface.
- the address (eg, 192.168.2.10), the IP address of the backend server logical interface is the IP address of the load balancer.
- the IP address of the virtual network card of the backend server is also associated with the LAN IP address of the backend server (for example, 100.120.2.10).
- the virtual IP of the load balancer is associated with the back-end server running on the service node.
- Load balancers and back-end servers belonging to the same tenant are configured into the same tenant network.
- the load balancer and the back-end server in different tenant networks can be distinguished by the LAN IP address. Therefore, the back-end servers of different tenants can use the same virtual network card IP address, and the load balancers of different tenants can use the same virtual IP address. address.
- the IP address of the virtual network card of one back-end server of tenant A running on the service node in the hardware resource pool is 192.168.3.10
- the virtual network card of one back-end server of tenant B running on the service node in the hardware resource pool The IP address can also be 192.168.3.10.
- the flow of the load balancing system shown in FIG. 4 is another process of the load balancing method provided by the embodiment of the present invention, including:
- Step 501 The client sends an access request, and accesses the public IP address (9.9.9.9) associated with the virtual IP address of the load balancer through the public network IP address (8.8.8.8).
- the client can configure the next hop to 100.100.100.100 route through an intermediate device such as a switch to reach the load balancer.
- Step 502 The load balancer receives the access request, selects a backend server that provides services for the client according to the load balancing algorithm, and modifies the destination address of the access request to the local area network IP address of the backend server, and sends the access request to the destination backend.
- the service node where the server is located receives the access request, selects a backend server that provides services for the client according to the load balancing algorithm, and modifies the destination address of the access request to the local area network IP address of the backend server, and sends the access request to the destination backend.
- the LB server converts the packet, and the translated destination IP address is the LAN IP address (100.120.2.10) of the selected backend server, and the access request is The source IP address remains unchanged, still 8.8.8.8, and the access request is sent to the service node where the backend server is located.
- the load balancer can establish a tunnel with the service node where the back-end server is located, and the access request is transmitted through the tunnel.
- the method for establishing the tunnel can adopt the solution in the prior art, which is not limited in this embodiment of the present invention.
- Step 503 The service node where the selected destination backend server is located receives the access request, and the access request is forwarded to the virtual router of the service node, where the gateway address of all the backend servers on the node is configured.
- the virtual router modifies the destination address of the access request from the local area IP address of the destination back-end server to the IP address of the virtual network card of the destination back-end server according to the first flow table, and sends the access request to the virtual switch of the service node.
- the tenant can manage the load balancing network, and the first flow table is sent to the virtual router by using the network controller, where the first flow table is used to indicate that the virtual router receives the destination address as the backend server local area network.
- the destination address of the access request is modified to the IP address of the virtual server of the backend server.
- Step 504 The virtual switch receives the access request, and according to the second flow table, the destination address of the access request is modified to the IP address of the logical interface of the destination back-end server (that is, the virtual IP address of the load balancer), and the access request is sent. Give the destination backend server.
- the second flow table is configured on the virtual switch by the network controller, and is used to indicate that the virtual switch receives the IP address of the virtual network card of the back server when the destination address is received. (192.168.3.10)
- the second flow table is configured on the virtual switch by the network controller, and is used to indicate that the virtual switch receives the IP address of the virtual network card of the back server when the destination address is received. (192.168.3.10)
- Step 505 The destination backend server receives the access request sent by the virtual switch, processes the access request, and returns a service access response.
- the source address of the service access response is the IP address of the logical interface of the destination backend server (that is, load balancing).
- the destination address is the public IP address of the client.
- Step 506 Since the next hop of the default route of the backend server is the gateway address (192.168.3.1), the packet is first sent to the virtual router of the service node, and the virtual router modifies the source address of the service access response to the load according to the third flow table. The public network IP address of the equalizer, and the virtual router sends the service access response to the client.
- the third flow table is sent to the virtual router by the network controller, where the third flow table is used to indicate that the virtual router receives the source address as the load.
- the packet of the virtual IP address of the equalizer which can be a service access response
- the source address of the packet is changed to the public IP address of the load balancer.
- step 503 and step 504 the destination address of the access request is modified twice: the first time, the virtual router modifies the destination address of the access request from the local area network address of the destination backend server to the destination back end. The IP address of the server's virtual NIC; the second time, the virtual switch modifies the destination address of the access request from the IP address of the virtual NIC of the destination backend server to the virtual IP address of the load balancer.
- the step 503 and the step 504 may be directly replaced by the following steps: when the virtual switch of the service node where the destination back-end server is located receives the access request, according to the flow table sent by the network controller, Modify the destination address of the access request to the virtual IP address of the load balancer (the destination address of the access request is changed from the LAN IP address of the destination backend server to the virtual IP address of the load balancer), and then send the access request to the destination. End server.
- the replacement step only the destination address modification needs to be performed once.
- the source address and the destination address of the service access response are both public network IP addresses
- the service access response can be accurately routed to the client without the load balancer, and the source address of the service access response is The public network IP address of the load balancer. Therefore, the internal network address of the load balancing system is invisible to the client. The client considers that the service access response is sent by the load balancer according to the source address of the service access response.
- the return service access response does not pass through the load balancer, and the load balancing DR mode is implemented.
- the embodiment of the present invention provides a load balancing method in the scenario of an intranet access mode and a public network access mode.
- the IP addresses of the load balancer and the backend server can be configured as different network segments, and can be implemented at the same time.
- the service access response of the return service does not pass through the load balancer, which ensures the network performance and solves the problem that the back-end server and the load balancer cannot be deployed across the network segment in the DR mode in the cloud computing network.
- the backend server may be a virtual machine or container running on a service node.
- the address of the backend server is specifically the address of the virtual machine or container.
- the embodiment of the present application further provides a schematic diagram of a hardware structure of a service node.
- the service node 600 includes a transceiver 601, a processor 602, a memory 603, a transceiver 601, and a memory 603. 602 is connected. It should be noted that the connection manner between the parts shown in FIG. 6 is only one possible example. Alternatively, both the transceiver 601 and the memory 603 are connected to the processor 602, and the transceiver 601 and the memory are connected. There is no connection between 603, or it can be other possible connection methods.
- the memory 603 stores a set of programs, and the processor 602 is configured to call a program stored in the memory 603 to perform the functions of the modules on the service node in the load balancing system and the load balancing method shown in FIG. 1 to FIG. .
- the processor 602 may be a central processing unit (English: central processing unit, abbreviated: CPU), a network processor (English: network processor, abbreviated: NP) or a combination of a CPU and an NP.
- CPU central processing unit
- NP network processor
- Processor 602 can also further include a hardware chip.
- the hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (abbreviated as PLD), or a combination thereof.
- ASIC application-specific integrated circuit
- PLD programmable logic device
- the above PLD can be a complex programmable logic device (English: complex programmable logic device, abbreviation: CPLD), field-programmable gate array (English: field-programmable gate array, abbreviation: FPGA), general array logic (English: generic array Logic, abbreviation: GAL) or any combination thereof.
- the memory 601 may include a volatile memory (English: volatile memory), such as a random access memory (English: random-access memory, abbreviation: RAM); the memory 601 may also include a non-volatile memory (English: non-volatile memory) For example, flash memory (English: flash memory), hard disk (English: hard disk drive, abbreviated: HDD) or solid state drive (English: solid-state drive, abbreviation: SSD); the memory 401 may also include the above types of memory The combination.
- a volatile memory English: volatile memory
- RAM random access memory
- non-volatile memory English: non-volatile memory
- flash memory English: flash memory
- hard disk English: hard disk drive, abbreviated: HDD
- SSD solid state drive
- the memory 401 may also include the above types of memory The combination.
- the physical server where the load balancer is located can also adopt the hardware structure shown in FIG. 6.
- the embodiments of the present invention are not described again.
- embodiments of the present application can be provided as a method, system, or computer program product. Accordingly, the application can take the form of a hardware embodiment, a software embodiment, or an embodiment in combination with software and hardware. Moreover, the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
- computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
- These computer program code can be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular fashion.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
一种负载均衡系统、负载均衡方法以及服务节点,用于实现云计算网络中DR模式下,后端服务器和负载均衡器跨网段部署。所述系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机以及至少一个后端服务器,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,负载均衡器接收客户端的访问请求,将访问请求的目的地址修改为目的后端服务器虚拟网卡的IP地址,当服务节点的虚拟交换机接收到访问请求时,将访问请求的目的地址修改为负载均衡器的IP地址,从而使得当目的后端服务器返回访问响应时,该访问响应的源地址为负载均衡器的地址。
Description
本申请要求于2016年12月29日提交中国专利局、申请号为201611251659.X、发明名称为“一种负载均衡的方法、装置和系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及IT技术领域,特别涉及一种负载均衡的方法、装置和系统。
负载均衡系统包含负载均衡器以及多台后端服务器,所述多台后端服务器(又称为member)组成服务器资源池,负载均衡器接收客户端的访问请求,根据负载均衡算法为客户端选择提供服务的后端服务器。负载均衡器的IP地址为服务器资源池对外呈现的IP地址,客户端通过该负载均衡器的IP地址即可访问服务器资源池中的后端服务器,而无需知道后端服务器的地址。负载均衡器提供负载均衡服务的模式包含直接路由(Direct Routing,DR)模式和网络地址转换(Network Address Translation,NAT)模式。
采用DR模式时,后端服务器向客户端返回的访问响应无需经过负载均衡器,因此传输性能较高。但由于DR模式需要负载均衡器的IP地址和后端服务器的IP地址位于同一网段,后端服务器和负载均衡器不能跨网段部署,因此对负载均衡系统的组网造成了较大的限制。
发明内容
本申请实施例提供一种负载均衡的方法、装置和系统,用以解决云计算网络中DR模式下,后端服务器和负载均衡器不能跨网段部署的问题。
本申请实施例提供的具体技术方案如下:
第一方面,提供一种负载均衡系统,用于实现云计算网络中DR模式下,后端服务器和负载均衡器跨网段部署。所述系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机以及至少一个后端服务器,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,负载均衡器接收客户端的访问请求,将访问请求的目的地址修改为目的后端服务器虚拟网卡的IP地址,当服务节点的虚拟交换机接收到访问请求时,将访问请求的目的地址修改为负载均衡器的IP地址,从而使得当目的后端服务器返回访问响应时,该访问响应的源地址为负载均衡器的地址。
通过上述方式,负载均衡器和后端服务器的IP地址可以配置为不同的网段,同时可以实现返程的业务访问响应不经过负载均衡器,保证了网络性能,解决了云计算网络中DR模式下,后端服务器和负载均衡器不能跨网段部署的问题。
在一种可能的设计中,所述系统还包括网络控制器,
所述网络控制器,用于向所述虚拟交换机下发流表,所述流表用于指示当所述虚拟交换机接收到发送给所述目的后端服务器的访问请求时,将所述访问请求的目的地址修改为负载均衡器的IP地址;
所述虚拟交换机,具体用于根据所述流表,修改所述访问请求的目的地址。
在一种可能的设计中,所述负载均衡系统采用内网访问模式,所述负载均衡系统还包括
负载均衡节点,所述负载均衡节点上运行所述负载均衡器以及第一虚拟路由器,所述第一虚拟路由器上配置有所述负载均衡器的网关地址以及所述目的后端服务器的网关地址,
所述负载均衡器,具体用于将所述访问请求发送到所述第一虚拟路由器的第一端口,所述第一端口的地址为所述负载均衡器的网关地址;
所述第一虚拟路由器,用于接收所述访问请求,将所述访问请求从第二端口发出,所述第二端口的地址为所述目的后端服务器的网关地址。
进一步的,所述目的服务节点上运行有第二虚拟路由器,所述第二虚拟路由器上配置有所述客户端的网关地址以及所述目的后端服务器的网关地址,
所述目的后端服务器,具体用于将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述目的后端服务器的网关地址;
所述第二虚拟路由器,用于接收所述访问响应,将所述访问响应从第四端口发出,所述第四端口的地址为所述客户端的网关地址。
在上述内网访问模式中,客户端通过内网地址(虚拟IP地址)访问负载均衡器。负载均衡器以及后端服务器部署在同一租户网络中,负载均衡器以及后端服务器的IP地址为同一租户网络的不同网段,二者均可以通过所在节点的虚拟路由器进行通信。
在公网访问模式中,负载均衡器为独立的物理服务器,具备公网IP地址,客户端通过负载均衡器的公网IP地址访问后端服务器,后端服务器可以为运行在服务节点上的虚拟机或者容器。负载均衡器的公网IP地址关联有虚拟IP地址,该虚拟IP地址与后端服务器的虚拟网卡的IP地址,以及后端服务器的逻辑接口的IP地址在同一租户网络的不同网段。更进步一步的,为了区分不同租户,负载均衡器以及后端服务器还具备局域网IP地址。
在公网访问模式中,所述目的服务节点上运行有第三虚拟路由器,所述目的后端服务器还具备与所述目的后端服务器虚拟网卡的IP地址关联的局域网IP地址,所述局域网IP地址用于实现不同租户间的网络隔离,
所述负载均衡器,具体用于将所述访问请求的目的地址修改为所述目的后端服务器的局域网IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;
所述目的服务节点上的所述第三虚拟路由器,还用于接收所述访问请求,将所述访问请求的目的地址修改为所述目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送到所述虚拟交换机。
进一步的,所述负载均衡器的IP地址还关联有公网IP地址,
所述虚拟交换机,还用于接收所述访问响应,将所述访问响应的源地址修改为所述负载均衡器的IP地址关联的公网IP地址,将所述访问响应返回给所述客户端。
通过上述方式,实现了内网访问模式和公网访问模式两种场景下的负载均衡方法,在上述方法中,负载均衡器和后端服务器的IP地址可以配置为不同的网段,同时可以实现返程的业务访问响应不经过负载均衡器,保证了网络性能,解决了云计算网络中DR模式下,后端服务器和负载均衡器不能跨网段部署的问题。
第二方面,提供一种负载均衡的方法,所述方法应用于前述第一方面的负载均衡系统,所述负载均衡系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机以及至少一个后端服务器,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所述方法包括:
所述负载均衡器接收客户端的访问请求,为所述客户端选择目的后端服务器,将所述访问请求的目的地址修改为所述目的后端服务器虚拟网卡的IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;
所述目的服务节点上的所述虚拟交换机接收所述访问请求,将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述目的后端服务器;
所述目的后端服务器,用于接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
在第二方面的方法中,所述负载均衡系统中的各个部件执行前述第一方面中的步骤。
第三方面,提供了一种服务节点,所述服务节点运行有虚拟交换机以及至少一个后端服务器,所述至少一个后端服务器由负载均衡器分配给客户端提供服务,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,
所述服务节点上的所述虚拟交换机,用于接收所述负载均衡器发送的所述客户端的访问请求,所述访问请求的目的地址为所述后端服务器虚拟网卡的IP地址;
所述虚拟交换机,还用于将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述后端服务器;
所述后端服务器,用于接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
在第三方面可能的设计中,服务节点上的虚拟交换机、虚拟路由器以及后端服务器执行前述第一方面中对应部件的步骤。
第四方面,提供了另一种负载均衡的方法,服务节点上的虚拟交换机、虚拟路由器以及后端服务器执行前述第一方面中对应部件的步骤。
第五方面,提供了另一种虚拟化环境下的负载均衡系统,应用于公网访问模式,所述系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机、虚拟路由器以及至少一个后端服务器,所述负载均衡器与所述后端服务器位于同一租户网络,所述后端服务器逻辑接口的IP地址为所述负载均衡器的虚拟IP地址,
所述负载均衡器,用于接收客户端的访问请求,为所述客户端选择目的后端服务器,将所述访问请求的目的地址修改为后端服务器的局域网IP地址,将所述访问请求发送到所述目的后端服务器所在的目的服务节点;
所述目的服务节点的虚拟路由器,用于接收所述访问请求,根据第一流表,将所述访问请求的目的地址由目的后端服务器的局域网IP地址修改为目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送给所述目的服务节点的虚拟交换机;
所述虚拟交换机,用于根据第二流表,将所述访问请求的目的地址修改为目的后端服务器逻辑接口的IP地址,将所述访问请求发送给所述目的后端服务器;
所述目的后端服务器,用于接收并处理所述访问请求,返回访问响应,所述访问响应的源地址修改为所述负载均衡器的虚拟IP地址;
所述虚拟路由器,还用于根据第三流表,将所述访问响应的源地址修改为所述负载均衡器的公网IP地址。
第六方面,提供了一种负载均衡系统中的服务节点,该服务节点为物理服务器,具有实现上述第一方面和任一种可能的设计中服务节点上各部件行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能
相对应的模块。
在一个可能的设计中,服务节点包括收发器和处理器,其中,处理器用于调用一组程序代码,以执行如第四方面中所述的方法。
第七方面,提供了一种计算机存储介质,用于储存为上述方面所述的服务节点所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
图1为本发明实施例中的虚拟化环境下的负载均衡系统的结构示意图;
图2为本发明实施例中的服务节点的结构示意图;
图3为本发明实施例提供的一种负载均衡的方法流程示意图;
图4为本发明实施例中的虚拟化环境下的另一种负载均衡系统的结构示意图;
图5为本发明实施例提供的另一种负载均衡方法流程示意图;
图6为本发明实施例提供的一种服务节点硬件结构示意图。
下面将结合附图对本申请作进一步描述。
如图1所示,为本发明实施例提供的一种负载均衡系统的结构示意图,该监控系统包括客户端11、负载均衡节点2以及服务节点3,所述负载均衡节点2上运行有第一虚拟路由器21和负载均衡器22,所述服务节点3上运行第二虚拟路由器31、至少一个后端服务器32(图1中以一个后端服务器为例)以及虚拟交换机33。在所述负载均衡系统中,客户端11、负载均衡节点2以及服务节点3均可以为多个,其中,多个服务节点3组成服务器资源池为客户端11提供服务,可选的,负载均衡节点2可以采用分布式部署,本发明实施例对此并不进行限定。所述客户端11、负载均衡节点2以及服务节点3之间通过云网络相互通信。示例性的,如图2所示,所述客户端11可以为运行在访问节点上,具体的,所述客户端可以为虚拟机或者容器。可选的,所述负载均衡器22以及所述后端服务器32均可以为运行在物理节点上的虚拟机或容器。
租户可以在访问节点上部署客户端11,为客户端11配置IP地址,示例性的,客户端11的IP地址为192.168.1.10/24。租户在负载均衡节点2上部署负载均衡器22,并将负载均衡器22配置为NAT模式,为负载均衡器22分配IP地址,示例性的,负载均衡器22的IP地址为192.168.2.10/24。租户在服务节点3上配置后端服务器32,为后端服务器32分配IP地址,所述后端服务器32的IP地址包括后端服务器32虚拟网卡的IP地址以及后端服务器32逻辑接口的IP地址,所述后端服务器32逻辑接口的IP地址为所述负载均衡器22的IP地址,示例性的,后端服务器32虚拟网卡的IP地址为192.168.3.10/24,逻辑接口的IP地址为192.168.2.10。云管理平台为每个节点上的虚拟路由器(12/21/31)的多个端口分配配置客户端11的网关地址、负载均衡器22的网关地址以及后端服务器32的网关地址。图1所示的系统结构对应于内网访问模式。
基于图1所示的系统结构,如图3所示,为本发明实施例提供的一种负载均衡的方法流程示意图,所述方法包括:
步骤301:客户端向负载均衡器发送访问请求,所述访问请求的源地址为所述客户端的IP地址,目的地址为所述负载均衡器的IP地址。
在一种可能的实施场景中,负载均衡器的IP地址对客户端呈现,作为客户端请求服务器资源池中的后端服务器的入口地址。具体的,在云计算场景下,该负载均衡器的IP地址又称为虚拟IP地址,客户端发送的访问请求的目的地址为负载均衡器的虚拟IP地址。
所述访问请求的源IP地址为192.168.1.10,目的IP地址为192.168.2.10,所述访问请求被发送到所述访问节点的虚拟路由器的端口1(客户端的网关地址对应的端口)。由于客户端所在的访问节点的虚拟路由器上配置有负载均衡器的网关地址对应的端口(例如,端口2),因此,访问节点的虚拟路由器的端口1接收到访问请求后,根据访问请求的目的地址(192.168.2.10),将该访问请求从端口2发出,发送到负载均衡器的IP地址192.168.2.10。
步骤302:负载均衡器接收到所述访问请求后,基于负载均衡算法,为所述客户端选择提供服务的后端服务器。
所述复制均衡器为NAT模式,负载均衡器记录有后端服务器列表,根据负载均衡算法从后端服务器列表中选择提供服务的后端服务器,在一种可能的实施场景中,LB服务器的LVS软件配置中保存了后端服务器的信息,负载均衡器可以从而可以获取选择的后端服务器的地址。
步骤303:负载均衡器对访问请求的目的地址进行NAT转换,将访问请求的目的地址(192.168.2.10)修改为后端服务器虚拟网卡的IP地址(192.168.3.10)。
负载均衡器转发所述访问请求,此时所述访问请求的源地址为192.168.1.10,目的IP地址为192.168.3.10。负载均衡器将所述访问请求发送到所述第一虚拟路由器的第一端口,所述第一端口的地址为所述负载均衡器的网关地址,所述第一虚拟路由器接收所述访问请求,将所述访问请求从第二端口发出,所述第二端口的地址为所述目的后端服务器的网关地址。
步骤304:后端服务器所在的服务节点的虚拟交换机接收所述访问请求,将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述目的后端服务器。
具体的,所述虚拟交换机接收网络控制器下的流表,所述流表用于指示当所述虚拟交换机接收到发送给所述目的后端服务器的访问请求时,将所述访问请求的目的地址修改为。所述虚拟交换机根据所述流表,将所述访问请求的目的地址修改负载均衡器的IP地址(192.168.2.10),由于后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所以,在虚拟交换机将所述访问请求的目的地址修改为所述负载均衡器的IP地址后,所述访问请求可以被发送到所述后端服务器。
步骤305:所述后端服务器接收并处理所述访问请求。
步骤306向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
所述后端服务器接收到的访问请求的源IP地址为客户端的IP地址(192.168.1.10),目的IP地址为负载均衡器的IP地址(192.168.2.10),后端服务器对访问请求进行处理,并返回访问响应,所述访问响应的源IP地址为负载均衡器的IP地址(192.168.2.10),目的IP地址为客户端的IP地址(192.168.1.10)。后端服务器所在的服务节点上的第二虚拟路由器上配置有所述客户端的网关地址以及所述目的后端服务器的网关地址,所述目的后端服务器将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述目的后端服务器的网关地址;所述第二虚拟路由器接收所述访问响应,将所述访问响应从第
四端口发出,所述第四端口的地址为所述客户端的网关地址。
访问响应到达客户端所在的访问节点后,由访问节点上的虚拟交换机根据访问响应的目的地址将所述访问响应发送给所述客户端。
需要说明的是,由于访问请求的目的地址为负载均衡器的IP地址,因此,后端服务器可以直接将负载均衡器的IP地址作为访问响应的源地址。
如图4所示,为本发明实施例提供的另一种负载均衡系统的结构示意图,本实施例为公网访问模式,即负载均衡器对外呈现的地址为公网地址(例如,9.9.9.9),客户端访问该公网地址,由负载均衡器为客户端选择后端服务器提供服务,后端服务器组成的硬件资源池的内部网络对客户端不可见。
客户端的IP地址为公网IP地址(例如,8.8.8.8)。
租户部署负载均衡器,并将负载均衡器配置为NAT模式。负载均衡器以物理服务器的形式部署,为客户端提供负载均衡服务,所述负载均衡器的虚拟IP地址(例如,192.168.2.10)还关联有公网IP地址(9.9.9.9),客户端使用负载均衡器的公网IP地址访问所述负载均衡器。所虚拟均衡器与所述服务节点上运行的后端服务器处于同一内网中,因此,所述负载均衡器物理接口地址上还配置有局域网IP地址(例如,100.100.100.100)。
租户在服务节点上配置后端服务器,为后端服务器分配IP地址,所述后端服务器的IP地址包括后端服务器虚拟网卡的IP地址(例如,192.168.3.10)以及后端服务器逻辑接口的IP地址(例如,192.168.2.10),所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址。进一步的,所述后端服务器的虚拟网卡的IP地址还关联有后端服务器的局域网IP地址(例如,100.120.2.10)。
负载均衡器的虚拟IP关联服务节点上运行的后端服务器。
属于同一租户的负载均衡器和后端服务器被配置到同一租户网络中。不同租户网络中的负载均衡器和后端服务器可以通过局域网IP地址进行区分,因此,不同租户的后端服务器可以使用相同的虚拟网卡的IP地址,不同租户的负载均衡器可以使用相同的虚拟IP地址。例如,硬件资源池中的服务节点上运行的租户A的一个后端服务器的虚拟网卡的IP地址为192.168.3.10,硬件资源池中的服务节点上运行的租户B的一个后端服务器的虚拟网卡的IP地址也可以为192.168.3.10。
结合图4所示的负载均衡系统的结构,如图5所示,为本发明实施例提供的另一种负载均衡方法流程,包括:
步骤501:客户端发送访问请求,通过公网IP地址(8.8.8.8)访问负载均衡器虚拟IP地址关联的公网IP地址(9.9.9.9)。
具体的,客户端可以通过中间设备如交换机,配置下一跳到100.100.100.100的路由,到达负载均衡器。
步骤502:负载均衡器接收该访问请求,根据负载均衡算法选择为客户端提供服务的后端服务器,将访问请求的目的地址修改为后端服务器的局域网IP地址,将访问请求发送给目的后端服务器所在的服务节点。
具体的,由于负载均衡器上部署的LVS配置的是NAT模式,LB服务器对报文进行转换,转换后的目的IP地址为选择的后端服务器的局域网IP地址(100.120.2.10),访问请求的源IP地址保持不变,仍然是8.8.8.8,将访问请求发送给后端服务器所在的服务节点。
具体的,负载均衡器可以与后端服务器所在的服务节点建立隧道,通过隧道传递所述访问请求,隧道建立的方式可以采用现有技术中的方案,本发明实施例对此并不进行限定。
步骤503:选定的目的后端服务器所在服务节点接收该访问请求,该访问请求被转发到服务节点的虚拟路由器,该虚拟路由器上配置有本节点上所有后端服务器的网关地址。该虚拟路由器根据第一流表,将该访问请求的目的地址由目的后端服务器的局域网IP地址修改为目的后端服务器的虚拟网卡的IP地址,将访问请求发送给服务节点的虚拟交换机。
在一种具体的场景中,租户可以对负载均衡网络进行管理,通过网络控制器下发第一流表到虚拟路由器,所述第一流表用于表示当虚拟路由器接收到目的地址为后端服务器局域网IP地址的访问请求时,将访问请求的目的地址修改为该后端服务器虚拟网卡的IP地址。
步骤504:该虚拟交换机接收访问请求,根据第二流表,将访问请求的目的地址修改为目的后端服务器逻辑接口的IP地址(即为负载均衡器的虚拟IP地址),将该访问请求发送给目的后端服务器。
在一种具体的场景中,租户在对负载均衡网络进行管理时,通过网络控制器在虚拟交换机配置第二流表,用于表示当虚拟交换机接收到目的地址为后端服务器虚拟网卡的IP地址(192.168.3.10)的访问请求时,将访问请求的目的地址修改为该后端服务器的逻辑接口的IP地址(192.168.2.10)。
步骤505:目的后端服务器接收虚拟交换机发送的访问请求,对该访问请求进行处理,并返回业务访问响应,该业务访问响应的源地址为目的后端服务器逻辑接口的IP地址(即为负载均衡器的虚拟IP地址),目的地址为客户端的公网IP地址。
步骤506:由于后端服务器默认路由的下一跳为网关地址(192.168.3.1),报文首先发送到服务节点的虚拟路由器,虚拟路由器根据第三流表将业务访问响应的源地址修改为负载均衡器的公网IP地址,所述虚拟路由器将该业务访问响应发送给客户端。
在一种具体的场景中,租户在对负载均衡网络进行管理时,通过网络控制器下发第三流表到虚拟路由器,所述第三流表用于表示当虚拟路由器接收到源地址为负载均衡器虚拟IP地址的报文(具体可以为业务访问响应)时,将该报文的源地址修改为负载均衡器的公网IP地址。
需要说明的是,在步骤503和步骤504中,访问请求的目的地址经过两次修改:第一次为,虚拟路由器将访问请求的目的地址由目的后端服务器的局域网IP地址修改为目的后端服务器的虚拟网卡的IP地址;第二次为,虚拟交换机将访问请求的目的地址由目的后端服务器的虚拟网卡的IP地址修改为负载均衡器的虚拟IP地址。在一种可能的实施方式中,步骤503和步骤504可以由下述步骤直接替换:目的后端服务器所在的服务节点的虚拟交换机在接收到访问请求时,根据网络控制器下发的流表,将访问请求的目的地址修改为负载均衡器的虚拟IP地址(即将访问请求的目的地址由目的后端服务器的局域网IP地址修改为负载均衡器的虚拟IP地址),然后将访问请求发送给目的后端服务器。替换的步骤,只需要执行一次目的地址修改。
需要说明的是,由于业务访问响应的源地址和目的地址均为公网IP地址,因此,该业务访问响应可以不经过负载均衡器准确路由到客户端,且由于该业务访问响应的源地址为负载均衡器的公网IP地址,因此,负载均衡系统的内网地址对客户端不可见,客户端根据该业务访问响应的源地址认为该业务访问响应由负载均衡器发出。
上述过程中,返程的业务访问响应不经过负载均衡器,实现了负载均衡的DR模式。
本发明实施例提供了内网访问模式和公网访问模式两种场景下的负载均衡方法,在上述方法中,负载均衡器和后端服务器的IP地址可以配置为不同的网段,同时可以实现返程的业务访问响应不经过负载均衡器,保证了网络性能,解决了云计算网络中DR模式下,后端服务器和负载均衡器不能跨网段部署的问题。
在本发明各实施例中,后端服务器可以为运行在服务节点上的虚拟机或者容器。后端服务器的地址具体为虚拟机或容器的地址。
基于同一发明构思,参阅图6所示,本申请实施例还提供了服务节点硬件结构示意图,服务节点600,包括收发器601、处理器602、存储器603,收发器601、存储器603均与处理器602连接,需要说明的是图6所示的各部分之间的连接方式仅为一种可能的示例,也可以是,收发器601与存储器603均与处理器602连接,且收发器601与存储器603之间没有连接,或者,也可以是其他可能的连接方式。
其中,存储器603中存储一组程序,处理器602用于调用存储器603中存储的程序,以执行前述图1至图5所示的负载均衡系统和负载均衡方法中服务节点上的各模块的功能。
在图6中,处理器602可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
处理器602还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic array logic,缩写:GAL)或其任意组合。
存储器601可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器601也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器401还可以包括上述种类的存储器的组合。
负载均衡器所在的物理服务器也可以采用如图6所示的硬件结构。本发明实施例不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
这些计算机程序代码可以存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (23)
- 一种虚拟化环境下的负载均衡系统,其特征在于,所述系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机以及至少一个后端服务器,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所述负载均衡器,用于接收客户端的访问请求,为所述客户端选择目的后端服务器,将所述访问请求的目的地址修改为所述目的后端服务器虚拟网卡的IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;所述目的服务节点上的虚拟交换机,用于接收所述访问请求,将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述目的后端服务器;所述目的后端服务器,用于接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
- 如权利要求1所述的系统,其特征在于,还包括网络控制器,所述网络控制器,用于向所述虚拟交换机下发流表,所述流表用于指示当所述虚拟交换机接收到发送给所述目的后端服务器的访问请求时,将所述访问请求的目的地址修改为负载均衡器的IP地址;所述虚拟交换机,具体用于根据所述流表,修改所述访问请求的目的地址。
- 如权利要求1或2所述的系统,其特征在于,所述负载均衡系统还包括负载均衡节点,所述负载均衡节点上运行所述负载均衡器以及第一虚拟路由器,所述第一虚拟路由器上配置有所述负载均衡器的网关地址以及所述目的后端服务器的网关地址,所述负载均衡器,具体用于将所述访问请求发送到所述第一虚拟路由器的第一端口,所述第一端口的地址为所述负载均衡器的网关地址;所述第一虚拟路由器,用于接收所述访问请求,将所述访问请求从第二端口发出,所述第二端口的地址为所述目的后端服务器的网关地址。
- 如权利要求3任一所述的系统,其特征在于,所述目的服务节点上运行有第二虚拟路由器,所述第二虚拟路由器上配置有所述客户端的网关地址以及所述目的后端服务器的网关地址,所述目的后端服务器,具体用于将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述目的后端服务器的网关地址;所述第二虚拟路由器,用于接收所述访问响应,将所述访问响应从第四端口发出,所述第四端口的地址为所述客户端的网关地址。
- 如权利要求1或2所述的系统,其特征在于,所述目的服务节点上运行有第三虚拟路由器,所述目的后端服务器还具备与所述目的后端服务器虚拟网卡的IP地址关联的局域网IP地址,所述局域网IP地址用于实现不同租户间的网络隔离,所述负载均衡器,具体用于将所述访问请求的目的地址修改为与所述目的后端服务器虚拟网卡的IP地址关联的局域网IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;所述目的服务节点上的所述第三虚拟路由器,还用于接收所述访问请求,将所述访问请求的目的地址修改为所述目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送到所述虚拟交换机。
- 如权利要求5所述的系统,其特征在于,所述负载均衡器的IP地址还关联有公网IP地址,所述虚拟交换机,还用于接收所述访问响应,将所述访问响应的源地址修改为所述负载均衡器的IP地址关联的公网IP地址,将所述访问响应返回给所述客户端。
- 一种负载均衡的方法,其特征在于,所述方法应用于负载均衡系统,所述负载均衡系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机以及至少一个后端服务器,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所述方法包括:所述负载均衡器接收客户端的访问请求,为所述客户端选择目的后端服务器,将所述访问请求的目的地址修改为所述目的后端服务器虚拟网卡的IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;所述目的服务节点上的所述虚拟交换机接收所述访问请求,将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述目的后端服务器;所述目的后端服务器,用于接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
- 如权利要求7所述的方法,其特征在于,所述将所述访问请求的目的地址修改为所述负载均衡器的IP地址包括:所述虚拟交换机接收网络控制器下发的流表,所述流表用于指示当所述虚拟交换机接收到发送给所述目的后端服务器的访问请求时,根据所述流表将所述访问请求的目的地址修改为负载均衡器的IP地址。
- 如权利要求7或8所述的方法,其特征在于,所述负载均衡系统还包括负载均衡节点,所述负载均衡节点上运行所述负载均衡器以及第一虚拟路由器,所述第一虚拟路由器上配置有所述负载均衡器的网关地址以及所述目的后端服务器的网关地址,所述负载均衡器将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点包括:所述负载均衡器将所述访问请求发送到所述第一虚拟路由器的第一端口,所述第一端口的地址为所述负载均衡器的网关地址;所述第一虚拟路由器接收所述访问请求,将所述访问请求从第二端口发出,所述第二端口的地址为所述目的后端服务器的网关地址。
- 如权利要求9所述的方法,其特征在于,所述目的服务节点上运行有第二虚拟路由器,所述第二虚拟路由器上配置有所述客户端的网关地址以及所述目的后端服务器的网关地址,所述目的后端服务器向所述客户端返回访问响应包括:所述目的后端服务器将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述目的后端服务器的网关地址;所述第二虚拟路由器接收所述访问响应,将所述访问响应从第四端口发出,所述第四端口的地址为所述客户端的网关地址。
- 如权利要求7或8所述的方法,其特征在于,所述目的服务节点上运行有第三虚拟路由器,所述目的后端服务器还具备与所述目的后端服务器虚拟网卡的IP地址关联的局域网IP地址,所述局域网IP地址用于实现不同租户间的网络隔离,所述负载均衡器将所述访问请求的目的地址修改为所述目的后端服务器虚拟网卡的IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点包括:所述负载均衡器将所述访问请求的目的地址修改为与所述目的后端服务器虚拟网卡的IP地址关联的局域网IP地址,将所述访问请求发送给所述目的后端服务器所在的所述目的服务节点;所述目的服务节点上的所述虚拟交换机接收所述访问请求之前,所述方法还包括:所述目的服务节点上的所述第三虚拟路由器接收所述访问请求,将所述访问请求的目的地址修改为所述目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送到所述虚拟交换机。
- 如权利要求11所述的方法,其特征在于,所述负载均衡器的IP地址还关联有公网IP地址,所述目的后端服务器向所述客户端返回访问响应之后,所述方法还包括:所述虚拟交换机接收所述访问响应,将所述访问响应的源地址修改为所述负载均衡器的IP地址关联的公网IP地址,将所述访问响应返回给所述客户端。
- 一种服务节点,其特征在于,所述服务节点运行有虚拟交换机以及至少一个后端服务器,所述至少一个后端服务器由负载均衡器分配给客户端提供服务,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所述服务节点上的所述虚拟交换机,用于接收所述负载均衡器发送的所述客户端的访问请求,所述访问请求的目的地址为所述后端服务器虚拟网卡的IP地址;所述虚拟交换机,还用于将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述后端服务器;所述后端服务器,用于接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
- 如权利要求13所述的服务节点,其特征在于,所述虚拟交换机,具体用于接收网络控制器下发的流表,所述流表用于指示当所述虚拟交换机接收到发送给所述后端服务器的访问请求时,根据所述流表将所述访问请求的目的地址修改为负载均衡器的IP地址。
- 如权利要求13或14所述的服务节点,其特征在于,所述服务节点上运行有第二虚拟路由器,所述第二虚拟路由器上配置有所述客户端的网关地址以及所述后端服务器的网关地址,所述后端服务器,具体用于将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述后端服务器的网关地址;所述第二虚拟路由器,用于接收所述访问响应,将所述访问响应从第四端口发出,所述第四端口的地址为所述客户端的网关地址。
- 如权利要求13或14所述的服务节点,其特征在于,所述服务节点上运行有第三虚拟路由器,所述后端服务器还具备与所述后端服务器虚拟网卡的IP地址关联的局域网IP地址,所述局域网IP地址用于实现不同租户间的网络隔离,所述目的服务节点上的所述第三虚拟路由器,还用于接收所述访问请求,将所述访问请求的目的地址修改为所述目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送到所述虚拟交换机。
- 如权利要求16所述的服务节点,其特征在于,所述负载均衡器的IP地址还关联有公网IP地址,所述虚拟交换机,还用于接收所述访问响应,将所述访问响应的源地址修改为所述负载均衡器的IP地址关联的公网IP地址,将所述访问响应返回给所述客户端。
- 一种负载均衡的方法,其特征在于,所述方法由服务节点执行,所述服务节点运行有虚拟交换机以及至少一个后端服务器,所述至少一个后端服务器由负载均衡器分配给客户端提供服务,所述后端服务器逻辑接口的IP地址为所述负载均衡器的IP地址,所述方法包括:所述服务节点上的所述虚拟交换机接收所述负载均衡器发送的所述客户端的访问请求,所述访问请求的目的地址为所述后端服务器虚拟网卡的IP地址;所述虚拟交换机将所述访问请求的目的地址修改为所述负载均衡器的IP地址,将所述访问请求发送给所述后端服务器;所述后端服务器接收并处理所述访问请求,向所述客户端返回访问响应,所述访问响应的源地址为所述负载均衡器的IP地址。
- 如权利要求18所述的方法,其特征在于,所述虚拟交换机将所述访问请求的目的地址修改为所述负载均衡器的IP地址包括:所述虚拟交换机,具体用于接收网络控制器下发的流表,所述流表用于指示当所述虚拟交换机接收到发送给所述后端服务器的访问请求时,根据所述流表将所述访问请求的目的地址修改为负载均衡器的IP地址。
- 如权利要求18或19所述的方法,其特征在于,所述服务节点上运行有第二虚拟路由器,所述第二虚拟路由器上配置有所述客户端的网关地址以及所述后端服务器的网关地址,所述后端服务器向所述客户端返回访问响应包括:所述后端服务器将所述访问响应发送到所述第二虚拟路由器的第三端口,所述第三端口的地址为所述后端服务器的网关地址;所述第二虚拟路由器接收所述访问响应,将所述访问响应从第四端口发出,所述第四端口的地址为所述客户端的网关地址。
- 如权利要求18或19所述的方法,其特征在于,所述服务节点上运行有第三虚拟路由器,所述后端服务器还具备与所述后端服务器虚拟网卡的IP地址关联的局域网IP地址,所述局域网IP地址用于实现不同租户间的网络隔离,所述服务节点上的所述虚拟交换机接收所述负载均衡器发送的所述客户端的访问请求之前,所述方法还包括:所述服务节点上的所述第三虚拟路由器接收所述访问请求,将所述访问请求的目的地址修改为所述目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送到所述虚拟交换机。
- 如权利要求21所述的方法,其特征在于,所述后端服务器向所述客户端返回访问响应之后,所述方法还包括:所述虚拟交换机接收所述访问响应,将所述访问响应的源地址修改为所述负载均衡器的IP地址关联的公网IP地址,将所述访问响应返回给所述客户端。
- 一种虚拟化环境下的负载均衡系统,其特征在于,所述系统包括负载均衡器以及至少一个服务节点,所述服务器节点上运行有虚拟交换机、虚拟路由器以及至少一个后端服务器,所述负载均衡器与所述后端服务器位于同一租户网络,所述后端服务器逻辑接口的IP地址为所述负载均衡器的虚拟IP地址,所述负载均衡器,用于接收客户端的访问请求,为所述客户端选择目的后端服务器,将所述访问请求的目的地址修改为后端服务器的局域网IP地址,将所述访问请求发送到所述目的后端服务器所在的目的服务节点;所述目的服务节点的虚拟路由器,用于接收所述访问请求,根据第一流表,将所述访问请求的目的地址由目的后端服务器的局域网IP地址修改为目的后端服务器的虚拟网卡的IP地址,将所述访问请求发送给所述目的服务节点的虚拟交换机;所述虚拟交换机,用于根据第二流表,将所述访问请求的目的地址修改为目的后端服务器逻辑接口的IP地址,将所述访问请求发送给所述目的后端服务器;所述目的后端服务器,用于接收并处理所述访问请求,返回访问响应,所述访问响应的源地址修改为所述负载均衡器的虚拟IP地址;所述虚拟路由器,还用于根据第三流表,将所述访问响应的源地址修改为所述负载均衡器的公网IP地址。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP17829578.8A EP3367638B1 (en) | 2016-12-29 | 2017-07-24 | Load balancing method, device and system |
| US16/030,457 US11265368B2 (en) | 2016-12-29 | 2018-07-09 | Load balancing method, apparatus, and system |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611251659.X | 2016-12-29 | ||
| CN201611251659.XA CN106686085B (zh) | 2016-12-29 | 2016-12-29 | 一种负载均衡的方法、装置和系统 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US16/030,457 Continuation US11265368B2 (en) | 2016-12-29 | 2018-07-09 | Load balancing method, apparatus, and system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018120800A1 true WO2018120800A1 (zh) | 2018-07-05 |
Family
ID=58872735
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2017/094167 Ceased WO2018120800A1 (zh) | 2016-12-29 | 2017-07-24 | 一种负载均衡的方法、装置和系统 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US11265368B2 (zh) |
| EP (1) | EP3367638B1 (zh) |
| CN (2) | CN111866064B (zh) |
| WO (1) | WO2018120800A1 (zh) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020232890A1 (zh) * | 2019-05-17 | 2020-11-26 | 平安科技(深圳)有限公司 | 负载均衡应用创建方法、装置、计算机设备及存储介质 |
| CN112261095A (zh) * | 2020-10-12 | 2021-01-22 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
| CN112449012A (zh) * | 2020-11-17 | 2021-03-05 | 中国平安财产保险股份有限公司 | 数据资源调度方法、系统、服务器及读存储介质 |
| CN112929264A (zh) * | 2019-12-06 | 2021-06-08 | 厦门网宿有限公司 | 业务流量传输方法、系统及网络设备 |
| CN113905013A (zh) * | 2021-10-29 | 2022-01-07 | 格尔软件股份有限公司 | 一种面向集群网络实现ip地址透传的方法 |
| CN114079636A (zh) * | 2021-10-25 | 2022-02-22 | 深信服科技股份有限公司 | 一种流量处理方法及交换机、软负载设备、存储介质 |
| CN114268922A (zh) * | 2021-10-12 | 2022-04-01 | 浙江零跑科技股份有限公司 | 一种基于车联网的网络互通的系统及方法 |
| CN115277628A (zh) * | 2022-05-30 | 2022-11-01 | 紫光建筑云科技(重庆)有限公司 | 一种FULL NAT local IP的实现方法 |
| CN115842825A (zh) * | 2021-09-18 | 2023-03-24 | 北京金山云网络技术有限公司 | 云服务平台、云服务部署方法及装置 |
Families Citing this family (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111866064B (zh) | 2016-12-29 | 2021-12-28 | 华为技术有限公司 | 一种负载均衡的方法、装置和系统 |
| US10776798B2 (en) * | 2017-04-25 | 2020-09-15 | Comscore, Inc. | Device identification systems and methods |
| CN107222544B (zh) * | 2017-06-14 | 2020-09-18 | 千寻位置网络有限公司 | 基于多层服务架构的高可用方法及系统 |
| CN107454155B (zh) * | 2017-07-25 | 2021-01-22 | 北京三快在线科技有限公司 | 一种基于负载均衡集群的故障处理方法、装置以及系统 |
| CN107786669B (zh) * | 2017-11-10 | 2021-06-22 | 华为技术有限公司 | 一种负载均衡处理的方法、服务器、装置及存储介质 |
| CN109831468A (zh) * | 2017-11-23 | 2019-05-31 | 北京金山云网络技术有限公司 | 负载均衡方法、装置、电子设备及存储介质 |
| CN107809342A (zh) * | 2017-12-13 | 2018-03-16 | 深圳市智物联网络有限公司 | 一种负载均衡方法及负载均衡装置 |
| CN110247848B (zh) * | 2018-03-09 | 2021-08-20 | 华为技术有限公司 | 发送报文的方法、网络设备及计算机可读存储介质 |
| WO2019237288A1 (zh) * | 2018-06-13 | 2019-12-19 | 深圳前海达闼云端智能科技有限公司 | 域名解析方法、装置及计算机可读存储介质 |
| CN110620802B (zh) * | 2018-06-20 | 2021-04-09 | 华为技术有限公司 | 一种负载均衡方法和装置 |
| CN109040237A (zh) * | 2018-08-01 | 2018-12-18 | 平安科技(深圳)有限公司 | 一种数据访问方法及系统 |
| CN110928637A (zh) * | 2018-09-19 | 2020-03-27 | 阿里巴巴集团控股有限公司 | 负载均衡方法和系统 |
| CN109547580B (zh) * | 2019-01-22 | 2021-05-25 | 网宿科技股份有限公司 | 一种处理数据报文的方法和装置 |
| US10841226B2 (en) * | 2019-03-29 | 2020-11-17 | Juniper Networks, Inc. | Configuring service load balancers with specified backend virtual networks |
| CN110099115B (zh) * | 2019-04-30 | 2022-02-22 | 湖南麒麟信安科技股份有限公司 | 一种透明调度转发的负载均衡方法及系统 |
| CN110347509B (zh) * | 2019-07-08 | 2021-12-10 | 北京字节跳动网络技术有限公司 | 业务框架接入系统、服务请求处理方法、设备及介质 |
| CN112243045A (zh) * | 2019-07-16 | 2021-01-19 | 北京东土科技股份有限公司 | 服务数据处理方法、装置、节点结构及电子设备 |
| CN112333108B (zh) * | 2019-08-05 | 2024-10-15 | 中兴通讯股份有限公司 | 业务调度的方法及装置 |
| CN110708393B (zh) * | 2019-10-21 | 2023-11-21 | 北京百度网讯科技有限公司 | 用于传输数据的方法、装置和系统 |
| CN112751898B (zh) * | 2019-10-31 | 2024-05-14 | 贵州白山云科技股份有限公司 | 负载均衡方法、装置、介质及设备 |
| CN111008075B (zh) * | 2019-12-05 | 2023-06-20 | 安超云软件有限公司 | 一种负载均衡系统、方法、装置、设备及介质 |
| CN110913010B (zh) * | 2019-12-05 | 2021-12-31 | 杭州东信北邮信息技术有限公司 | 一种sip业务集群系统及实现方法 |
| CN111147550B (zh) * | 2019-12-10 | 2022-06-21 | 华能集团技术创新中心有限公司 | 一种基于大数据电商平台的数据访问方法及装置 |
| CN111262784B (zh) * | 2020-01-13 | 2022-05-17 | 杭州朗和科技有限公司 | 报文转发方法、报文转发装置、存储介质及电子设备 |
| CN111371685B (zh) * | 2020-02-28 | 2022-06-17 | 北京百度网讯科技有限公司 | 数据处理、IPv6挂载方法和装置 |
| US11588749B2 (en) * | 2020-05-15 | 2023-02-21 | Cisco Technology, Inc. | Load balancing communication sessions in a networked computing environment |
| CN111641724B (zh) * | 2020-06-04 | 2023-02-21 | 山东汇贸电子口岸有限公司 | 一种lvs负载均衡器在云下的应用方法 |
| CN111800340B (zh) * | 2020-06-05 | 2022-08-12 | 北京京东尚科信息技术有限公司 | 数据包转发方法和装置 |
| CN111756830A (zh) * | 2020-06-22 | 2020-10-09 | 浪潮云信息技术股份公司 | 公有云网络的内网负载均衡实现方法 |
| CN113973086B (zh) * | 2020-07-07 | 2024-01-26 | 中移(苏州)软件技术有限公司 | 一种数据传输方法、装置及存储介质 |
| CN112073503A (zh) * | 2020-09-03 | 2020-12-11 | 浪潮云信息技术股份公司 | 一种基于流控机制的高性能负载均衡方法 |
| CN112565357B (zh) * | 2020-11-25 | 2023-03-24 | 中国银联股份有限公司 | 连接业务虚拟机和对象存储系统的方法、装置及存储介质 |
| CN114697338A (zh) * | 2020-12-28 | 2022-07-01 | 北京金山云网络技术有限公司 | 云计算的数据传输方法、装置以及服务端设备 |
| CN112751786B (zh) * | 2020-12-28 | 2023-06-16 | 长沙星融元数据技术有限公司 | 基于可编程交换机的slb加速系统、方法、装置、设备及介质 |
| CN113010314B (zh) * | 2021-03-17 | 2023-12-22 | 北京金山云网络技术有限公司 | 负载均衡方法、装置和电子设备 |
| CN113067824B (zh) * | 2021-03-22 | 2023-04-07 | 平安科技(深圳)有限公司 | 数据调度方法、系统、虚拟主机及计算机可读存储介质 |
| CN113141400B (zh) * | 2021-04-14 | 2023-04-07 | 网宿科技股份有限公司 | 一种网络服务的访问方法及装置 |
| CN113448729B (zh) * | 2021-06-25 | 2023-01-31 | 平安科技(深圳)有限公司 | 负载均衡方法、装置、设备及存储介质 |
| CN113691460B (zh) * | 2021-08-26 | 2023-10-03 | 平安科技(深圳)有限公司 | 基于负载均衡的数据传输方法、装置、设备及存储介质 |
| CN113806091A (zh) * | 2021-09-17 | 2021-12-17 | 中国联合网络通信集团有限公司 | 一种数据处理方法、装置及设备 |
| CN113918326B (zh) * | 2021-09-29 | 2024-07-16 | 聚好看科技股份有限公司 | 一种处理请求的方法及装置 |
| CN116112300B (zh) * | 2021-11-10 | 2026-04-17 | 华为终端有限公司 | 用于加速传输报文的方法、设备及系统 |
| CN114205360B (zh) * | 2021-12-08 | 2024-04-16 | 京东科技信息技术有限公司 | 数据传输方法、装置及系统 |
| CN114039949B (zh) * | 2021-12-24 | 2024-03-26 | 上海观安信息技术股份有限公司 | 云服务浮动ip绑定方法及系统 |
| CN116633934A (zh) * | 2022-02-10 | 2023-08-22 | 华为云计算技术有限公司 | 负载均衡方法、装置、节点及存储介质 |
| CN114979262B (zh) * | 2022-04-25 | 2024-04-19 | 阿里云计算有限公司 | 访问方法以及系统 |
| CN115065730B (zh) * | 2022-05-24 | 2024-07-09 | 深信服科技股份有限公司 | 一种数据处理方法、第一容器、电子设备及存储介质 |
| CN115174390A (zh) * | 2022-07-19 | 2022-10-11 | 杭州视洞科技有限公司 | 一种基于openelb、openresty和负载均衡器的业务负载方法 |
| CN115604272B (zh) * | 2022-11-30 | 2023-03-14 | 苏州浪潮智能科技有限公司 | 负载均衡方法、装置、系统及系统创建方法及设备和介质 |
| CN116095178B (zh) * | 2022-12-27 | 2025-04-25 | 箭牌家居集团股份有限公司 | 服务平台的运行方法、服务平台以及存储介质 |
| CN116886775A (zh) * | 2023-07-12 | 2023-10-13 | 京东科技信息技术有限公司 | 一种对外暴露方法、装置、集群部署系统及存储介质 |
| CN117240681B (zh) * | 2023-08-04 | 2025-03-07 | 安徽助行软件科技有限公司 | Lvs负载均衡中的数据包处理方法 |
| CN117376358B (zh) * | 2023-10-12 | 2024-07-23 | 曙光云计算集团股份有限公司 | 访问请求处理方法、装置及计算机设备 |
| CN117544424B (zh) * | 2024-01-09 | 2024-03-15 | 万洲嘉智信息科技有限公司 | 基于泛在联接的多协议智慧园区管控平台 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20010049741A1 (en) * | 1999-06-18 | 2001-12-06 | Bryan D. Skene | Method and system for balancing load distribution on a wide area network |
| CN102523302A (zh) * | 2011-12-26 | 2012-06-27 | 成都市华为赛门铁克科技有限公司 | 虚拟机集群的负载均衡方法、服务器及系统 |
| CN103384255A (zh) * | 2011-12-31 | 2013-11-06 | 华为数字技术(成都)有限公司 | 虚拟机集群的负载均衡方法、服务器及系统 |
| CN106686085A (zh) * | 2016-12-29 | 2017-05-17 | 华为技术有限公司 | 一种负载均衡的方法、装置和系统 |
Family Cites Families (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2003105006A1 (en) * | 2001-04-30 | 2003-12-18 | America Online, Inc. | Load balancing with direct terminal response |
| TW544601B (en) * | 2001-11-20 | 2003-08-01 | Ind Tech Res Inst | Method and structure for forming web server cluster by conversion and dispatching of web page documents |
| US7401355B2 (en) * | 2004-04-30 | 2008-07-15 | Sun Microsystems | Firewall load balancing using a single physical device |
| US8688817B2 (en) * | 2011-03-14 | 2014-04-01 | Edgecast Networks, Inc. | Network connection hand-off using state transformations |
| CN102752188A (zh) * | 2011-04-21 | 2012-10-24 | 北京邮电大学 | 一种传输控制协议连接迁移方法及系统 |
| JP6080313B2 (ja) * | 2011-08-04 | 2017-02-15 | ミドクラ エスエーアールエル | 仮想ネットワークを実装及び管理するシステム及び方法 |
| US9124538B2 (en) * | 2011-08-17 | 2015-09-01 | Nicira, Inc. | Dynamic generation of flow entries for last-hop processing |
| CN103023942B (zh) * | 2011-09-27 | 2016-08-03 | 北京奇虎科技有限公司 | 一种服务器负载均衡方法、装置及系统 |
| CN102404229B (zh) * | 2011-12-14 | 2013-03-13 | 华为技术有限公司 | 负载均衡系统、装置及方法 |
| US9094309B2 (en) * | 2012-03-13 | 2015-07-28 | International Business Machines Corporation | Detecting transparent network communication interception appliances |
| CN103491053A (zh) * | 2012-06-08 | 2014-01-01 | 北京百度网讯科技有限公司 | Udp负载均衡方法、系统及装置 |
| EP2741460B1 (en) * | 2012-12-05 | 2015-08-26 | Alcatel Lucent | A method and a user agent for load balancing within several proxies in a SIP network comprising a router applying network address translation |
| US9515965B2 (en) * | 2013-09-18 | 2016-12-06 | International Business Machines Corporation | Managing data paths in an operator graph |
| CN104780115B (zh) * | 2014-01-14 | 2019-06-18 | 上海盛大网络发展有限公司 | 云计算环境中负载均衡方法及系统 |
| US20150271075A1 (en) * | 2014-03-20 | 2015-09-24 | Microsoft Corporation | Switch-based Load Balancer |
| US10516608B2 (en) * | 2014-09-11 | 2019-12-24 | Oath Inc. | Systems and methods for directly responding to distributed network traffic |
| US10038628B2 (en) * | 2015-04-04 | 2018-07-31 | Nicira, Inc. | Route server mode for dynamic routing between logical and physical networks |
| CN106131204A (zh) * | 2016-07-22 | 2016-11-16 | 无锡华云数据技术服务有限公司 | 应用于负载均衡系统的报文快速分发方法及其系统 |
| US10742746B2 (en) * | 2016-12-21 | 2020-08-11 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
| US10305973B2 (en) * | 2017-01-09 | 2019-05-28 | International Business Machines Corporation | Distributed load-balancing for software defined networks |
-
2016
- 2016-12-29 CN CN202010494889.9A patent/CN111866064B/zh active Active
- 2016-12-29 CN CN201611251659.XA patent/CN106686085B/zh active Active
-
2017
- 2017-07-24 EP EP17829578.8A patent/EP3367638B1/en active Active
- 2017-07-24 WO PCT/CN2017/094167 patent/WO2018120800A1/zh not_active Ceased
-
2018
- 2018-07-09 US US16/030,457 patent/US11265368B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20010049741A1 (en) * | 1999-06-18 | 2001-12-06 | Bryan D. Skene | Method and system for balancing load distribution on a wide area network |
| CN102523302A (zh) * | 2011-12-26 | 2012-06-27 | 成都市华为赛门铁克科技有限公司 | 虚拟机集群的负载均衡方法、服务器及系统 |
| CN103384255A (zh) * | 2011-12-31 | 2013-11-06 | 华为数字技术(成都)有限公司 | 虚拟机集群的负载均衡方法、服务器及系统 |
| CN106686085A (zh) * | 2016-12-29 | 2017-05-17 | 华为技术有限公司 | 一种负载均衡的方法、装置和系统 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP3367638A4 * |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020232890A1 (zh) * | 2019-05-17 | 2020-11-26 | 平安科技(深圳)有限公司 | 负载均衡应用创建方法、装置、计算机设备及存储介质 |
| CN112929264A (zh) * | 2019-12-06 | 2021-06-08 | 厦门网宿有限公司 | 业务流量传输方法、系统及网络设备 |
| CN112261095B (zh) * | 2020-10-12 | 2023-11-24 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
| CN112261095A (zh) * | 2020-10-12 | 2021-01-22 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
| CN112449012A (zh) * | 2020-11-17 | 2021-03-05 | 中国平安财产保险股份有限公司 | 数据资源调度方法、系统、服务器及读存储介质 |
| CN112449012B (zh) * | 2020-11-17 | 2024-04-05 | 中国平安财产保险股份有限公司 | 数据资源调度方法、系统、服务器及读存储介质 |
| CN115842825A (zh) * | 2021-09-18 | 2023-03-24 | 北京金山云网络技术有限公司 | 云服务平台、云服务部署方法及装置 |
| CN115842825B (zh) * | 2021-09-18 | 2025-10-03 | 北京金山云网络技术有限公司 | 云服务平台、云服务部署方法及装置 |
| CN114268922A (zh) * | 2021-10-12 | 2022-04-01 | 浙江零跑科技股份有限公司 | 一种基于车联网的网络互通的系统及方法 |
| CN114079636A (zh) * | 2021-10-25 | 2022-02-22 | 深信服科技股份有限公司 | 一种流量处理方法及交换机、软负载设备、存储介质 |
| CN113905013A (zh) * | 2021-10-29 | 2022-01-07 | 格尔软件股份有限公司 | 一种面向集群网络实现ip地址透传的方法 |
| CN113905013B (zh) * | 2021-10-29 | 2024-05-28 | 格尔软件股份有限公司 | 一种面向集群网络实现ip地址透传的方法 |
| CN115277628A (zh) * | 2022-05-30 | 2022-11-01 | 紫光建筑云科技(重庆)有限公司 | 一种FULL NAT local IP的实现方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11265368B2 (en) | 2022-03-01 |
| CN106686085B (zh) | 2020-06-16 |
| US20180324245A1 (en) | 2018-11-08 |
| EP3367638B1 (en) | 2023-05-03 |
| EP3367638A4 (en) | 2019-09-18 |
| CN106686085A (zh) | 2017-05-17 |
| CN111866064A (zh) | 2020-10-30 |
| EP3367638A1 (en) | 2018-08-29 |
| CN111866064B (zh) | 2021-12-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106686085B (zh) | 一种负载均衡的方法、装置和系统 | |
| US11671401B2 (en) | Providing persistent external internet protocol address for extra-cluster services | |
| CN109451084B (zh) | 一种服务访问方法及装置 | |
| CN114070723B (zh) | 裸金属服务器的虚拟网络配置方法、系统及智能网卡 | |
| CN107078969B (zh) | 实现负载均衡的计算机设备、系统和方法 | |
| CN108347493B (zh) | 混合云管理方法、装置和计算设备 | |
| JP5711754B2 (ja) | スマートクライアントルーティング | |
| US12028314B2 (en) | Providing persistent external internet protocol address for extra-cluster services | |
| US10237235B1 (en) | System for network address translation | |
| CN105657081A (zh) | 提供dhcp服务的方法、装置及系统 | |
| CN111756830A (zh) | 公有云网络的内网负载均衡实现方法 | |
| CN116982306A (zh) | 扩展覆盖网络中的ip地址 | |
| CN116132542B (zh) | 容器网络管理方法、容器网络插件以及相关设备 | |
| CN105208053A (zh) | 一种实现负载均衡的方法、装置及负载均衡服务系统 | |
| US20260081968A1 (en) | Cloud system based on public cloud service, packet processing method, and related apparatus | |
| US10827042B2 (en) | Traffic optimization for multi-node applications | |
| CN113302884A (zh) | 公共云环境中的服务插入 | |
| CN120153360A (zh) | 图形处理单元的超级集群网络 | |
| US11005745B2 (en) | Network configuration failure diagnosis in software-defined networking (SDN) environments | |
| CN109450768B (zh) | 容器互联的方法及用于容器互联的系统 | |
| US20200213184A1 (en) | Query failure diagnosis in software-defined networking (sdn) environments | |
| CN115842825B (zh) | 云服务平台、云服务部署方法及装置 | |
| CN118541674A (zh) | 发布用于图形处理单元工作负载的物理拓扑网络局部性信息 | |
| US12273257B2 (en) | Routing network traffic for hosts and containers with redundant network interfaces | |
| US9853885B1 (en) | Using packet duplication in a packet-switched network to increase reliability |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 2017829578 Country of ref document: EP |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17829578 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |