CN106878193B - Load sharing method and device - Google Patents

Load sharing method and device Download PDF

Info

Publication number
CN106878193B
CN106878193B CN201710073115.7A CN201710073115A CN106878193B CN 106878193 B CN106878193 B CN 106878193B CN 201710073115 A CN201710073115 A CN 201710073115A CN 106878193 B CN106878193 B CN 106878193B
Authority
CN
China
Prior art keywords
address
domain name
access
flow table
server
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.)
Active
Application number
CN201710073115.7A
Other languages
Chinese (zh)
Other versions
CN106878193A (en
Inventor
王海
樊超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201710073115.7A priority Critical patent/CN106878193B/en
Publication of CN106878193A publication Critical patent/CN106878193A/en
Application granted granted Critical
Publication of CN106878193B publication Critical patent/CN106878193B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Abstract

The embodiment of the invention provides a load sharing method and a load sharing device, which are applied to an SDN controller, and the method comprises the following steps: receiving a domain name request message sent by a virtual machine and sent by access equipment, wherein the domain name request message comprises a target domain name; determining addresses of servers, which correspond to the destination domain name and have resource utilization rate smaller than a preset threshold value, as destination addresses according to corresponding relations between the prestored domain name and the addresses of the servers; calculating a first flow table of a first access message sent to a server corresponding to a destination address by aiming at a virtual machine, wherein the first flow table is used for indicating an access device to forward the first access message to the server corresponding to the destination address; and sending the destination address to the virtual machine through the access equipment, and issuing the first flow table to the access equipment, so that the access equipment forwards the first access message to a server corresponding to the destination address according to the first flow table. By applying the embodiment of the invention, the centralized control flow forwarding of the SDN controller is realized, and the network construction cost is reduced.

Description

Load sharing method and device
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a load sharing method and apparatus.
Background
The networking, as shown in fig. 1, may include: an SDN (Software Defined Network) controller 100, a DNS (Domain Name System) server 200, an LB (Load Balance) device 300, a cloud platform 400, an access device 500, and a virtual machine 600; the SDN controller 100 is responsible for issuing a load sharing rule to the LB device 300, and instructing the LB device to distribute traffic, and the cloud platform 400 is configured to record resource utilization (for example, memory utilization, CPU utilization, network card utilization, and the like) and state information (for example, an online state and an offline state) of each virtual machine and/or server in the networking.
In order to reduce the pressure of a single device, when load sharing is performed, the virtual machine 600 sends a domain name request message to the DNS server 200 through the access device 500; the DNS server 200 parses the domain name request packet, determines an IP (Internet Protocol) address of a server set (i.e., an IP address of the LB device 300) that the virtual machine 600 needs to access, and feeds back the IP address to the virtual machine 600; the virtual machine 600 then sends an access message with the destination IP address being the IP address to the LB device 300 through the access device 500; the LB device 300 performs load sharing, determines a server of the received access packet, and transmits the access packet to the server.
As can be seen from the above, the LB device and the DNS server complete load sharing, and forwarding of the SDN controller centralized control traffic cannot be realized, which increases network construction cost.
Disclosure of Invention
The embodiment of the invention aims to provide a load sharing method and a load sharing device, which are used for realizing the centralized control of flow forwarding of an SDN controller and reducing the network construction cost. The specific technical scheme is as follows:
on one hand, the embodiment of the invention discloses a load sharing method which is applied to an SDN controller and comprises the following steps:
receiving a domain name request message sent by a virtual machine sent by access equipment, wherein the domain name request message comprises a destination domain name;
determining the address of the server which corresponds to the destination domain name and has the resource utilization rate smaller than a preset threshold value as a destination address according to the corresponding relation between the prestored domain name and the addresses of the plurality of servers;
calculating a first flow table of a first access message sent to a server corresponding to the destination address by aiming at the virtual machine, wherein the first flow table is used for indicating the access equipment to forward the first access message to the server corresponding to the destination address;
and sending the destination address to the virtual machine through the access device, and sending the first flow table to the access device, so that the access device forwards the first access message to a server corresponding to the destination address according to the first flow table.
In another aspect, an embodiment of the present invention discloses a load sharing device, which is applied to an SDN controller, and the device includes:
the device comprises a receiving unit, a sending unit and a receiving unit, wherein the receiving unit is used for receiving a domain name request message sent by a virtual machine sent by access equipment, and the domain name request message comprises a destination domain name;
the determining unit is used for determining the address of the server which corresponds to the destination domain name and has the resource utilization rate smaller than a preset threshold value as the destination address according to the corresponding relation between the domain name and the addresses of the servers which are stored in advance;
a calculating unit, configured to calculate a first flow table of a first access packet sent to a server corresponding to the destination address by using the virtual machine, where the first flow table is used to instruct the access device to forward the first access packet to the server corresponding to the destination address;
and the sending unit is used for sending the destination address to the virtual machine through the access device and sending the first flow table to the access device, so that the access device forwards the first access message to a server corresponding to the destination address according to the first flow table.
In the embodiment of the invention, the SDN controller determines the destination address for load sharing and sends the flow table to the access equipment to finish load sharing, and LB equipment and DNS (domain name server) servers are not required to be erected in networking to finish load sharing, so that the centralized control flow forwarding of the SDN controller is realized, and the network construction cost is reduced. Of course, it is not necessary for any product or method of practicing the invention to achieve all of the above-described advantages at the same time.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of a networking;
fig. 2 is a schematic flowchart of a load sharing method according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a networking used in embodiments of the invention;
fig. 4 is a schematic structural diagram of a load sharing device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The present invention will be described in detail below with reference to specific examples.
Referring to fig. 2, fig. 2 is a schematic flowchart of a load sharing method according to an embodiment of the present invention, fig. 3 is a schematic diagram of a networking used in the embodiment of the present invention, and the method is applied to the SDN controller 100 in the networking shown in fig. 3. Specifically, the method comprises the following steps:
s201: receiving a domain name request message sent by a virtual machine and uploaded by access equipment;
the domain name request message includes a destination domain name.
The access device includes a hardware switch, an OVS (Open vSwitch, Open switching device), and the like. Generally, the access device does not actively send the domain name request message to the SDN controller, and in order to ensure that the access device can send the domain name request message to the SDN controller, in an embodiment of the present invention, before receiving the domain name request message sent by the virtual machine on the access device, the SDN controller may send a second flow table to the access device, where the second flow table is used to instruct the access device to send the domain name request message to the SDN controller. In this case, after receiving the domain name request packet sent by the virtual machine, the access device may send the domain name request packet sent by the virtual machine to the SDN controller according to the second flow table.
For example, the domain name request packet is a UDP (User Datagram Protocol), a source port of the domain name request packet is 54388, and a destination port of the domain name request packet is 53, then the second flow table sent by the SDN controller to the access device may be: a UDP message with a source port of 54388 and a destination port of 53 is uploaded to the SDN controller.
In this case, when the access device receives a packet, the packet is a UDP packet, the source port is 54388, and the destination port is 53, it may be determined that the packet matches the second flow table, the packet is a domain name request packet, and the packet is sent to the SDN controller.
S202: determining addresses of servers, which correspond to the destination domain names and have resource utilization rates smaller than a preset threshold value, in the domain name request message as destination addresses according to the corresponding relation between the domain names and the addresses of the servers, which are stored in advance;
here, the addresses of the plurality of servers corresponding to one domain name stored in advance are: addresses of a plurality of servers included in the same server set. For example: table 1 shows correspondence between domain names and addresses of a plurality of servers stored in the SDN controller in advance;
TABLE 1
Domain name Address of server
http://bpm1.com 192.168.212.100
http://bpm1.com 192.168.212.101
http://bpm1.com 192.168.212.102
http://bpm2.com 100.0.0.1
Wherein, the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102 corresponding to the domain name http:// bpm1.com are the addresses of the servers of the same server set;
when the SDN controller receives a domain name request message carrying http:// bpm1.com (destination domain name), one of the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102 is selected as a destination address corresponding to the http:// bpm1.com, and the destination address can be understood as the destination address of the domain name request message.
In an embodiment of the present invention, considering that if one server processes too many services, the efficiency of processing the services by the server may be reduced, and the reliability of the SDN is reduced, the SDN controller may periodically obtain the resource utilization rate of each server from the cloud platform, and determine the destination address corresponding to the destination domain name in combination with the obtained resource utilization rate, so as to improve the reliability of the SDN.
Specifically, a threshold may be preset in the SDN controller, and when determining the destination address, the SDN controller may select, from the correspondence between the domain name stored in advance and the addresses of the plurality of servers, an address of a server corresponding to the destination domain name and having a resource utilization rate smaller than the preset threshold, and further determine the selected address as the destination address.
Still referring to table 1, if the preset threshold is 80%, when the SDN controller receives the virtual machine X1After the sent domain name request message carrying http:// bpm1.com, one of the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102 is selected as a destination address corresponding to the http:// bpm1. com; in the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102, if the SDN controller acquires 192.168.212.100 corresponding server Y from the cloud platform1Resource utilization ratio ofIs 81 percent and 81 percent>80%, 192.168.212.101 corresponding to server Y2The resource utilization rate is 31 percent and 31 percent<80%, 192.168.212.102 corresponding to server Y3The resource utilization rate is 54 percent and 54 percent<80%, therefore, one of the two addresses 192.168.212.101, 192.168.212.102 is selected as the destination address corresponding to http:// bpm1. com.
In an embodiment of the present invention, in order to increase an access speed of a user, an SDN controller may determine, from a correspondence between a domain name stored in advance and addresses of multiple servers, addresses of the multiple servers, which correspond to a destination domain name and have resource utilization rates smaller than a preset threshold, select an address of a server closest to a virtual machine from the addresses of the multiple servers, which correspond to the destination domain name and have resource utilization rates smaller than the preset threshold, and determine the selected address as a destination address corresponding to the destination domain name.
In another embodiment of the present invention, the server closest to the virtual machine may be: and a server with the least equipment on the link between the virtual machine and the server. In this case, the process of the SDN controller in determining the destination address is: and selecting the address of the server with the least passing equipment on the link between the server and the virtual machine, which corresponds to the target domain name and has the resource utilization rate smaller than a preset threshold value, from the corresponding relationship between the domain name and the addresses of the servers, which are stored in advance.
Still referring to table 1, when the SDN controller receives the virtual machine X1After the sent domain name request message carrying http:// bpm1.com, one of the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102 is selected as a destination address corresponding to the http:// bpm1. com; the resource utilization rates of the servers corresponding to the three addresses 192.168.212.100, 192.168.212.101 and 192.168.212.102 are all smaller than a preset threshold, and in the other three addresses, the server Y corresponding to 192.168.212.100 is1And virtual machine X1There are 3 passing devices on the link between, 192.168.212.101 corresponding to the server Y2And virtual machine X1There are 5 passing devices on the link between, 192.168.212.102 corresponding to the server Y3And virtual machine X1The number of the passing devices on the link between the two devices is 7 and 3<5<7, therefore, select Server Y1192.168.212.100, 192.168.212.100 is determined as the destination address.
In another embodiment of the present invention, in order to increase the access speed of the user, the server closest to the virtual machine may be: the server with the link having the best link quality with the virtual machine is not limited in this embodiment of the present invention.
It should be noted that, when determining the destination address, the SDN controller comprehensively considers two factors, namely, the distance between the server and the virtual machine and the resource utilization rate of the server, so that the access speed of the user is increased, and the reliability of the SDN is improved.
In an embodiment of the present invention, in order to further increase the access speed of the user, if the address selected this time is the same as the address selected last time, the SDN controller reselects an address from the addresses of the plurality of servers, except the selected address, corresponding to the previously stored destination domain name, where the reselected address is different from the address selected last time, and determines the reselected address as the destination address, thereby ensuring that the addresses selected by two adjacent accesses are different, ensuring that the server can quickly process the access packet of the user, and increasing the access speed of the user.
Still referring to the above example, upon determining 192.168.212.100 as the destination address, SDN controller receives virtual machine X2After sending the domain name request message carrying http:// bpm1.com, if 192.168.212.100 is still selected as the destination address, reselecting the address from 192.168.212.101 and 192.168.212.102, for example, the reselected address is server Y2192.168.212.101, 192.168.212.101 is determined as the destination address.
In order to ensure the access speed of a user and the reliability of the SDN, when an address is reselected, an address of a server with the least number of devices passing through on a link between the server and a virtual machine, the server being corresponding to a destination domain name and having a resource utilization rate smaller than a preset threshold value, may be selected.
It should be noted that, when the SDN controller reselects an address, the SDN controller may select the address by using a polling method, or may select the address by using another method, which is not limited in the embodiment of the present invention.
S203: calculating a first flow table of a first access message sent to a server corresponding to a destination address by aiming at a virtual machine;
here, the first flow table is used to instruct the access device to forward the first access packet to the server corresponding to the destination address.
S204: and sending the destination address to the virtual machine through the access equipment, and issuing the first flow list to the access equipment.
Therefore, the virtual machine can send the first access message carrying the destination address to access; in addition, the access device may forward the first access packet to the server corresponding to the destination address according to the first flow table.
It should be noted that, in the process that the access device forwards the first access packet to the server corresponding to the destination address, when the first access packet passes through the passing device, if there is no fourth flow table for the first access packet on the passing device, the passing device may send the first access packet to the SDN controller, and the SDN controller calculates the fourth flow table according to the first access packet and issues the fourth flow table to the passing device; therefore, the passing-through device can send the first access message to the server corresponding to the destination address according to the fourth flow table.
It should be noted that, the step of sending the destination address to the virtual machine through the access device may be executed after S202 or after S203, which is not limited in the embodiment of the present invention.
In other embodiments of the present invention, in order to improve the reliability of the SDN, after the SDN controller issues the first flow table to the access device, the SDN controller may further periodically obtain information, such as state information of a server corresponding to the destination address, from the cloud platform.
Specifically, if the state information of the server corresponding to the obtained destination address is in an online state (for example, an UP state), the virtual machine currently accessing the server corresponding to the destination address is unchanged; if the state information of the server corresponding to the destination address is in an offline state (for example, in a DOWN state), in order to ensure normal access of the virtual machine, the SDN controller may reselect an address from addresses of the servers corresponding to the destination domain name and excluding the destination address, and recalculate a third flow table for a second access packet sent by the virtual machine to the server corresponding to the reselected address, where the third flow table is used to instruct the access device to forward the second access packet to the server corresponding to the reselected address.
In this case, the SDN controller sends the reselected address to the virtual machine through the access device, and issues the third flow table to the access device; at this time, the access device may forward the second access packet to the server corresponding to the reselected address according to the third flow table.
By applying the embodiment, the SDN controller determines the destination address for load sharing and issues the flow table to the access device, so as to complete load sharing, without erecting LB (Luma server) and DNS (Domain name Server) in networking to complete load sharing, thereby realizing centralized control flow forwarding of the SDN controller and reducing network construction cost.
Referring to fig. 4, fig. 4 is a schematic structural diagram of a load sharing device according to an embodiment of the present invention, applied to an SDN controller, where the device includes:
a receiving unit 401, configured to receive a domain name request packet sent by a virtual machine and sent by an access device, where the domain name request packet includes a destination domain name;
a determining unit 402, configured to determine, according to a correspondence between a domain name stored in advance and addresses of multiple servers, an address of a server that corresponds to a destination domain name and has a resource utilization rate smaller than a preset threshold as a destination address;
a calculating unit 403, configured to calculate a first flow table of a first access packet sent to a server corresponding to a destination address by using a virtual machine, where the first flow table is used to instruct an access device to forward the first access packet to the server corresponding to the destination address;
a sending unit 404, configured to send the destination address to the virtual machine through the access device, and send the first flow table to the access device, so that the access device forwards the first access packet to the server corresponding to the destination address according to the first flow table.
In another embodiment of the present invention, the load sharing apparatus may further include:
and an issuing unit (not shown in fig. 4) configured to issue, before receiving a domain name request packet sent by a virtual machine on an access device, a second flow table to the access device, where the second flow table is used to instruct the access device to send the domain name request packet to the SDN controller.
In other embodiments of the present invention, the determining unit 402 may be specifically configured to:
selecting an address of a server which is closest to the virtual machine in the servers with the resource utilization rate smaller than a preset threshold value and corresponding to the target domain name from the corresponding relation between the domain name stored in advance and the addresses of the servers;
the selected address is determined as the destination address.
In other embodiments of the present invention, the determining unit 402 may be specifically configured to:
and selecting the address of the server with the least passing equipment on the link between the server and the virtual machine, which corresponds to the target domain name and has the resource utilization rate smaller than a preset threshold value, from the corresponding relationship between the domain name and the addresses of the servers, which are stored in advance.
In other embodiments of the present invention, the determining unit 402 may be specifically configured to:
if the selected address is the same as the last selected address, reselecting the address from the addresses of the plurality of servers corresponding to the destination domain name except the selected address;
the reselected address is determined as the destination address.
In another embodiment of the present invention, the load sharing apparatus may further include:
an obtaining unit (not shown in fig. 4) configured to obtain, after the first flow table is issued to the access device, state information of a server corresponding to the destination address from the cloud platform;
a processing unit (not shown in fig. 4), configured to, when the status information is in an offline status, reselect an address from addresses of multiple servers, except for the destination address, that correspond to the destination domain name, and recalculate a third flow table of a second access packet sent to the server corresponding to the reselected address by using the virtual machine, where the third flow table is used to instruct the access device to forward the second access packet to the server corresponding to the reselected address; and sending the reselected address to the virtual machine through the access equipment, and issuing the third flow table to the access equipment, so that the access equipment forwards the second access message to the server corresponding to the reselected address according to the third flow table.
By applying the embodiment, the SDN controller determines the destination address for load sharing and issues the flow table to the access device, so as to complete load sharing, without erecting LB (Luma server) and DNS (Domain name Server) in networking to complete load sharing, thereby realizing centralized control flow forwarding of the SDN controller and reducing network construction cost.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (12)

1. A load sharing method is applied to a Software Defined Network (SDN) controller, and comprises the following steps:
receiving a domain name request message sent by a virtual machine sent by access equipment, wherein the domain name request message comprises a destination domain name;
determining the address of the server which corresponds to the destination domain name and has the resource utilization rate smaller than a preset threshold value as a destination address according to the corresponding relation between the prestored domain name and the addresses of the plurality of servers; the addresses of a plurality of servers corresponding to one domain name are as follows: addresses of a plurality of servers included in the same server set;
calculating a first flow table of a first access message sent to a server corresponding to the destination address by aiming at the virtual machine, wherein the first flow table is used for indicating the access equipment to forward the first access message to the server corresponding to the destination address;
sending the destination address to the virtual machine through the access device, and sending the first flow table to the access device, so that the access device forwards the first access packet to a server corresponding to the destination address according to the first flow table; when the first access message passes through the passing-by device, if the fourth flow table of the first access message is not arranged on the passing-by device, the passing-by device sends the first access message to the SDN controller, and the SDN controller calculates the fourth flow table according to the first access message and sends the fourth flow table to the passing-by device, so that the passing-by device sends the first access message to the server corresponding to the destination address according to the fourth flow table.
2. The method of claim 1, wherein before receiving a domain name request packet sent by a virtual machine on the access device, the method further comprises:
issuing a second flow table to the access device, wherein the second flow table is used for instructing the access device to upload the domain name request message to the SDN controller.
3. The method according to claim 1, wherein the step of determining, according to a correspondence between a domain name stored in advance and addresses of a plurality of servers, an address of a server which corresponds to the destination domain name and has a resource utilization rate smaller than a preset threshold as a destination address comprises:
selecting an address of a server which is closest to the virtual machine in the servers which correspond to the target domain name and have the resource utilization rate smaller than a preset threshold value from the corresponding relation between the domain name and the addresses of the plurality of servers which are stored in advance;
the selected address is determined as the destination address.
4. The method according to claim 3, wherein the step of selecting, from the correspondence between the domain names stored in advance and the addresses of the plurality of servers, the address of the server closest to the virtual machine from the servers corresponding to the destination domain name and having resource utilization rates smaller than a preset threshold includes:
and selecting the address of the server with the least passing equipment on the link between the server and the virtual machine, which corresponds to the target domain name and has the resource utilization rate smaller than a preset threshold value, from the corresponding relationship between the domain name and the addresses of the servers, which are stored in advance.
5. The method according to claim 3 or 4, wherein the step of determining the selected address as the destination address comprises:
if the selected address is the same as the last selected address, reselecting the address from the addresses of the plurality of servers corresponding to the destination domain name except the selected address;
the reselected address is determined as the destination address.
6. The method of claim 1, wherein after the step of sending the first flow table to the access device, the method further comprises:
acquiring state information of a server corresponding to the destination address from a cloud platform;
when the state information is in an offline state, reselecting an address from the addresses of the servers corresponding to the destination domain name except the destination address, and recalculating a third flow table for a second access packet sent by the virtual machine to the server corresponding to the reselected address, wherein the third flow table is used for indicating the access device to forward the second access packet to the server corresponding to the reselected address;
and sending the reselected address to the virtual machine through the access device, and sending the third flow table to the access device, so that the access device forwards the second access message to a server corresponding to the reselected address according to the third flow table.
7. A load sharing device applied to a Software Defined Network (SDN) controller, the device comprising:
the device comprises a receiving unit, a sending unit and a receiving unit, wherein the receiving unit is used for receiving a domain name request message sent by a virtual machine sent by access equipment, and the domain name request message comprises a destination domain name;
the determining unit is used for determining the address of the server which corresponds to the destination domain name and has the resource utilization rate smaller than a preset threshold value as the destination address according to the corresponding relation between the domain name and the addresses of the servers which are stored in advance; the addresses of a plurality of servers corresponding to one domain name are as follows: addresses of a plurality of servers included in the same server set;
a calculating unit, configured to calculate a first flow table of a first access packet sent to a server corresponding to the destination address by using the virtual machine, where the first flow table is used to instruct the access device to forward the first access packet to the server corresponding to the destination address;
a sending unit, configured to send the destination address to the virtual machine through the access device, and send the first flow table to the access device, so that the access device forwards the first access packet to a server corresponding to the destination address according to the first flow table; when the first access message passes through the passing-by device, if the fourth flow table of the first access message is not arranged on the passing-by device, the passing-by device sends the first access message to the SDN controller, and the SDN controller calculates the fourth flow table according to the first access message and sends the fourth flow table to the passing-by device, so that the passing-by device sends the first access message to the server corresponding to the destination address according to the fourth flow table.
8. The apparatus of claim 7, further comprising:
the sending unit is configured to send a second flow table to the access device before receiving a domain name request packet sent by a virtual machine on the access device, where the second flow table is used to instruct the access device to send the domain name request packet to the SDN controller.
9. The apparatus according to claim 7, wherein the determining unit is specifically configured to:
selecting an address of a server which is closest to the virtual machine in the servers which correspond to the target domain name and have the resource utilization rate smaller than a preset threshold value from the corresponding relation between the domain name and the addresses of the plurality of servers which are stored in advance;
the selected address is determined as the destination address.
10. The apparatus according to claim 9, wherein the determining unit is specifically configured to:
and selecting the address of the server with the least passing equipment on the link between the server and the virtual machine, which corresponds to the target domain name and has the resource utilization rate smaller than a preset threshold value, from the corresponding relationship between the domain name and the addresses of the servers, which are stored in advance.
11. The apparatus according to claim 9 or 10, wherein the determining unit is specifically configured to:
if the selected address is the same as the last selected address, reselecting the address from the addresses of the plurality of servers corresponding to the destination domain name except the selected address;
the reselected address is determined as the destination address.
12. The apparatus of claim 7, further comprising:
an obtaining unit, configured to obtain, from a cloud platform, state information of a server corresponding to the destination address after the first flow table is issued to the access device;
a processing unit, configured to, when the status information is in an offline state, reselect an address from addresses of multiple servers, except for the destination address, that correspond to the destination domain name, and recalculate a third flow table of a second access packet sent to the server corresponding to the reselected address by using the virtual machine, where the third flow table is used to instruct the access device to forward the second access packet to the server corresponding to the reselected address; and sending the reselected address to the virtual machine through the access device, and sending the third flow table to the access device, so that the access device forwards the second access message to a server corresponding to the reselected address according to the third flow table.
CN201710073115.7A 2017-02-10 2017-02-10 Load sharing method and device Active CN106878193B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710073115.7A CN106878193B (en) 2017-02-10 2017-02-10 Load sharing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710073115.7A CN106878193B (en) 2017-02-10 2017-02-10 Load sharing method and device

Publications (2)

Publication Number Publication Date
CN106878193A CN106878193A (en) 2017-06-20
CN106878193B true CN106878193B (en) 2022-03-22

Family

ID=59166712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710073115.7A Active CN106878193B (en) 2017-02-10 2017-02-10 Load sharing method and device

Country Status (1)

Country Link
CN (1) CN106878193B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107682410A (en) * 2017-09-14 2018-02-09 广州西麦科技股份有限公司 A kind of control method and device of distributed SDN controllers cluster
CN107948273B (en) * 2017-11-21 2021-02-02 浙江宇视科技有限公司 SDN-based load sharing and secure access method and system
CN108173979B (en) * 2017-12-25 2021-03-12 新华三信息安全技术有限公司 Message processing method, device, equipment and storage medium
CN110247848B (en) 2018-03-09 2021-08-20 华为技术有限公司 Method for sending message, network equipment and computer readable storage medium
CN108881509A (en) * 2018-05-31 2018-11-23 网宿科技股份有限公司 A kind of DNS query method and device based on HTTPDNS
CN111225070B (en) * 2018-11-23 2022-05-03 中国电信股份有限公司 Flow control method, device and system and SDN controller
CN111064821A (en) * 2019-12-23 2020-04-24 北京达佳互联信息技术有限公司 Method and device for determining IP address of edge node
CN113839894B (en) * 2021-07-28 2023-10-27 新华三大数据技术有限公司 Message processing method and system
CN113608877B (en) * 2021-08-13 2023-11-10 牙木科技股份有限公司 Load balancing scheduling method for IPV4 and IPV6 resource pools of content providers
CN116232997B (en) * 2023-02-10 2024-04-09 中国联合网络通信集团有限公司 Data forwarding method, device and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104168202A (en) * 2014-08-26 2014-11-26 华为技术有限公司 Method and device for forwarding Open Flow messages
CN105282043A (en) * 2014-06-20 2016-01-27 中国电信股份有限公司 Global network load balancing system, device and method
CN105577723A (en) * 2014-10-16 2016-05-11 杭州华三通信技术有限公司 Method of realizing load sharing in virtualization network and apparatus thereof
CN105763668A (en) * 2016-02-26 2016-07-13 杭州华三通信技术有限公司 Domain name resolution method and apparatus
CN106331206A (en) * 2015-06-30 2017-01-11 杭州华三通信技术有限公司 Domain name management method and device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150350154A1 (en) * 2014-06-03 2015-12-03 John Myla Using Distributed Network Elements to Send Authoritative DNS Responses
CN105592047B (en) * 2015-08-26 2019-01-25 新华三技术有限公司 A kind of transmission method and device of service message

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105282043A (en) * 2014-06-20 2016-01-27 中国电信股份有限公司 Global network load balancing system, device and method
CN104168202A (en) * 2014-08-26 2014-11-26 华为技术有限公司 Method and device for forwarding Open Flow messages
CN105577723A (en) * 2014-10-16 2016-05-11 杭州华三通信技术有限公司 Method of realizing load sharing in virtualization network and apparatus thereof
CN106331206A (en) * 2015-06-30 2017-01-11 杭州华三通信技术有限公司 Domain name management method and device
CN105763668A (en) * 2016-02-26 2016-07-13 杭州华三通信技术有限公司 Domain name resolution method and apparatus

Also Published As

Publication number Publication date
CN106878193A (en) 2017-06-20

Similar Documents

Publication Publication Date Title
CN106878193B (en) Load sharing method and device
US11165879B2 (en) Proxy server failover protection in a content delivery network
US9838472B2 (en) Virtual application delivery chassis system
US10735553B2 (en) Micro-services in a telecommunications network
US20130198341A1 (en) System and method for delivering segmented content
CN110636000B (en) Virtual cloud network control method, system and network device
CN108809847B (en) Method, device and network system for realizing load balance
US11711293B2 (en) Per-provider origin pull
CN109151009B (en) CDN node distribution method and system based on MEC
CN103825975A (en) Cdn node distribution server and system
EP3028438B1 (en) Configuration of forwarding rules using the address resolution protocol
CN102647341B (en) Message processing method, device and system
CN109040243B (en) Message processing method and device
EP2997487A1 (en) Selecting a content providing server in a content delivery network
US11349805B2 (en) Content node selection based on classless prefix
CN103780715A (en) Domain name resolution implementing method, client side and cloud server
CN111803925B (en) Scheduling method and device of forwarding server of cloud game and readable storage medium
CN108989220B (en) Routing method and routing system
CN105721328B (en) VRRP load balancing method, device and router
JP2016171503A (en) Management device and connection processing method
CN103401799A (en) Method and device for realizing load balance
CN109639502B (en) Return source control method and content distribution network
CN108632173B (en) Resource access system and resource access method based on local area network
CN110601989A (en) Network traffic balancing method and device
CN107547295B (en) Aging method and device for domain name cache table entries

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant