CN115022334A - Flow distribution method and device, electronic equipment and storage medium - Google Patents

Flow distribution method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115022334A
CN115022334A CN202210524708.1A CN202210524708A CN115022334A CN 115022334 A CN115022334 A CN 115022334A CN 202210524708 A CN202210524708 A CN 202210524708A CN 115022334 A CN115022334 A CN 115022334A
Authority
CN
China
Prior art keywords
data center
data
electronic device
electronic equipment
determining
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.)
Pending
Application number
CN202210524708.1A
Other languages
Chinese (zh)
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202210524708.1A priority Critical patent/CN115022334A/en
Publication of CN115022334A publication Critical patent/CN115022334A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Abstract

The application discloses a flow distribution method, a flow distribution device, electronic equipment and a storage medium, wherein the method comprises the following steps: a first electronic device in a first data center receives a first data packet sent by an ISP (internet service provider), determines a second data center with better service quality than the first data center under the condition that no connection exists between the first data center and a second electronic device, and forwards the first data packet to the second data center; and the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet. Compared with the scheme of the data center which is determined to provide service by the ISP, the scheme is that the data center combines the service quality of each data center to determine the data center which provides service, in other words, the data center reschedules the data packet, forwards the data packet to the data center with better service quality, and the data center with better service quality provides service, so that the service quality is improved.

Description

Flow distribution method and device, electronic equipment and storage medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for allocating traffic, an electronic device, and a storage medium.
Background
A network Service Provider (ISP) may identify a serving data center from among a plurality of data centers using a dynamic routing protocol. In the related art, there is a problem of poor service quality.
Disclosure of Invention
In view of this, embodiments of the present application provide a traffic distribution method, a traffic distribution apparatus, an electronic device, and a storage medium, so as to at least improve quality of service.
The technical scheme of the embodiment of the application is realized as follows:
the embodiment of the application provides a traffic distribution method, which is applied to a first electronic device in a first data center, and the method comprises the following steps:
receiving a first data packet sent by an ISP;
under the condition that connection does not exist between the first data center and second electronic equipment, determining a second data center, and forwarding the first data packet to the second data center; wherein the content of the first and second substances,
the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
In the foregoing solution, the determining the second data center includes:
determining a second data center based on the connection tracking record of the data center; wherein the content of the first and second substances,
the connection tracking record of the second data center contains the second electronic device.
In the foregoing solution, the determining the second data center includes:
determining a second data center according to a load balancing strategy based on the load and/or the first distance corresponding to the data center; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
In the above scheme, the method further comprises:
a configured load balancing policy is received.
In the above scheme, the method further comprises:
performing data interaction with a data center in a first system; the data interaction is used for synchronizing the network information of the first system; the first system characterizes a system in which the first data center is located.
In the above solution, the network information of the first system includes at least one of:
a network topology of the first system;
a connection tracking record for a data center within the first system;
connection statistics of data centers within the first system;
load information for a data center within the first system;
heartbeat data packets of a data center within the first system.
In the foregoing solution, the determining the second data center includes:
judging whether a connection tracking record containing a data center of the second electronic equipment exists or not to obtain a judgment result;
determining the data center with the connection tracking record containing the second electronic equipment as the second data center under the condition that the judgment result represents that the connection tracking record contains the data center of the second electronic equipment;
determining a second data center according to a load balancing strategy based on a load and/or a first distance corresponding to the data center under the condition that the judgment result indicates that no connection tracking record contains the data center of the second electronic device; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
An embodiment of the present application further provides a flow distribution device, which is applied to a first electronic device in a first data center, and includes:
a first receiving unit, configured to receive a first data packet sent by an ISP;
the processing unit is used for determining a second data center and forwarding the first data packet to the second data center under the condition that the first data center is not connected with the second electronic equipment; wherein the content of the first and second substances,
the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
An embodiment of the present application further provides an electronic device, including: a processor and a memory for storing a computer program capable of running on the processor,
wherein the processor is configured to execute the steps of the flow allocation method when running the computer program.
The embodiment of the present application further provides a storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the steps of the above-mentioned traffic distribution method.
According to the scheme provided by the embodiment of the application, first electronic equipment in a first data center receives a first data packet sent by an ISP (internet service provider), determines a second data center with better service quality than the first data center under the condition that no connection exists between the first data center and second electronic equipment, and forwards the first data packet to the second data center; and the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet. Compared with the scheme of the data center which determines to provide service by the ISP, the scheme is that the data center determines to provide the service by combining the service quality of each data center, in other words, the data center reschedules the data packet, forwards the data packet to the data center with better service quality, and the data center with better service quality provides service, so that the service quality is improved.
Drawings
Fig. 1 is a schematic flow chart of an implementation of a traffic distribution method according to an embodiment of the present application;
fig. 2 is a schematic flow chart of an implementation of a traffic distribution method according to an embodiment of the present application;
FIG. 3 is a block diagram of an embodiment of the present invention;
fig. 4 is a schematic diagram of a Global Load balancing (GSLB) implementation scheme provided in an embodiment of the present application;
FIG. 5 is a block diagram of an embodiment of the present application;
fig. 6 is a schematic diagram of GSLB component relationship provided in an embodiment of the present application;
fig. 7 is a schematic flowchart of a rescheduling algorithm provided in an embodiment of the present application;
fig. 8 is a schematic diagram of packet forwarding provided in an application embodiment of the present application;
fig. 9 is a schematic structural diagram of a flow distribution device according to an embodiment of the present disclosure;
fig. 10 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Global Load balancing (GSLB) is used for traffic allocation between servers in different regions in a wide area network to ensure access quality. In various implementation schemes of the GSLB, the scheme based on anycast can be suitable for all scenes, and the problems of stream switching and single-point performance bottleneck are avoided. Anycast, also known as Anycast, is a network addressing and routing strategy that can determine the destination of a packet according to the routing topology. In a practical application scenario, the ISP may determine a data center providing a service from a plurality of data centers by using a dynamic routing Protocol, such as Open Shortest Path First (OSPF) or Border Gateway Protocol (BGP). In the related art, there is a problem of poor service quality.
Based on this, in various embodiments of the present application, a first electronic device in a first data center receives a first data packet sent by an ISP, determines a second data center with better service quality than the first data center if there is no connection between the first data center and a second electronic device, and forwards the first data packet to the second data center; and the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet. Compared with the scheme of the data center which determines to provide service by the ISP, the scheme is that the data center determines to provide the service by combining the service quality of each data center, in other words, the data center reschedules the data packet, forwards the data packet to the data center with better service quality, and the data center with better service quality provides service, so that the service quality is improved.
In order to make the objects, technical solutions and advantages of the present application more clearly understood, the present application is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
Fig. 1 is a schematic implementation flowchart of a traffic distribution method according to an embodiment of the present application, which is applied to a first electronic device in a first data center, where the first electronic device includes, but is not limited to, an electronic device such as a server and a terminal. The method comprises the following steps:
step 101: and receiving a first data packet transmitted by the ISP.
Step 102: and under the condition that the first data center is not connected with the second electronic equipment, determining a second data center, and forwarding the first data packet to the second data center.
The second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
In consideration of disaster recovery guarantee, service expansion or single-machine room capacity, a multi-active architecture can be adopted to provide business services, at least two data centers are deployed in the architecture, and a plurality of electronic devices are arranged in each data center. In order to access the business service, the user terminal sends a data packet to the ISP; and the ISP receives the data packet sent by the user terminal, calculates a first data center based on the routing protocol, and sends the data packet to the first data center.
In step 101, the first data center receives a first data packet sent by an ISP, and determines whether a connection exists between an electronic device of the first data center and a second electronic device, so as to obtain a determination result. The second electronic device represents an electronic device corresponding to the source address of the first packet, that is, a source electronic device of the first packet, which is usually a user terminal. The first electronic device may be an interface device in the first data center, and the flow allocation method according to the embodiment of the present application is implemented by configuring the setting component.
Here, the first electronic device may determine whether a connection exists between the electronic device of the first data center and the second electronic device according to the connection tracking record of the first data center. Specifically, if the connection tracking record of the first data center includes the second electronic device, it is determined that a connection exists between the first data center and the second electronic device; and if the connection tracking record of the first data center does not contain the second electronic equipment, determining that no connection exists between the first data center and the second electronic equipment.
In step 102, when the determination result indicates that there is no connection between the electronic device of the first data center and the second electronic device, based on the set policy, the first electronic device determines a data center in the first system where the first electronic device is located, and the data center provides a service for the second electronic device. Here, whether or not there is a connection with the second electronic device may be determined from the connection trace record of the first data center.
The setting policy includes at least one of: whether it is in a viable state; whether a connection exists with the user terminal; the load is high and low; the link distance is far and near. Generally, data centers that are alive, have connections to user terminals, are under lower load and/or have links closer to them, provide higher quality of service.
And when the determined data center is not the first data center, namely, a second data center superior to the first data center is determined, forwarding the first data packet to the second data center. In this way, compared with the scheme of the data center which determines to provide service by the ISP, the scheme is that the data center determines to provide the service by combining the service quality of each data center, in other words, the data center reschedules the data packet, forwards the data packet to the data center with better service quality, and the data center with better service quality provides service, thereby improving the service quality. In addition, the embodiment of the application can realize the flow distribution without changing the setting of the ISP, and can improve the service quality at low cost.
And when the determined data center is the first data center, the first electronic equipment receives the first data packet, and the first data center provides service for the user terminal.
As shown in fig. 2, a flow chart of an implementation of the traffic distribution method is shown, and as an embodiment of the present application, the method further includes:
step 201: and performing data interaction with a data center in the first system.
Wherein the data interaction is used to synchronize network information of the first system; the first system characterizes a system in which the first data center is located.
Through configuration of the setting component, the first electronic device of the first data center interacts data with other data centers in the first system to synchronize network information of the first system. In this way, the first data center can learn the real-time status of the data centers in the first system, thereby determining a second data center that is superior to the first data center.
As an embodiment of the present application, the network information of the first system includes at least one of:
a network topology of the first system;
a connection tracking record for a data center within the first system;
connection statistics of data centers within the first system;
load information for a data center within the first system;
heartbeat data packets of a data center within the first system.
The network topology of the first system may be used for link calculation, the connection tracking record and the connection statistical data of the data center may be used for determining whether a connection exists, the load information of the data center may be used for allocating the data center, and the heartbeat data packet may be used for determining whether the data center is in a survival state.
In practical applications, as shown in the schematic architecture diagram of fig. 3, a user sends a data packet to an ISP; the ISP calculates a first data center according to the routing topology and forwards a data packet to the first data center; the first data center receives the data packet, and the electronic equipment configured with the GSLB component judges to receive, discard or reschedule the data packet. When the reschedule data packet is determined, the electronic device of the first data center forwards the data packet to the electronic device of the second data center. Here, data interaction such as data synchronization and heartbeat detection exists between the data centers.
As an embodiment of the present application, the determining the second data center in step 102 includes:
determining a second data center based on the connection tracking record of the data center; wherein the content of the first and second substances,
the connection tracking record of the second data center contains the second electronic device.
Due to the change of the network state, the calculation result of the ISP route is possibly changed, and a subsequent data packet of one connection or session is sent to another data center which does not establish the connection.
The first electronic device judges whether a data center containing the second electronic device exists or not based on the connection trace record of the data center in the first system, and determines the data center containing the second electronic device as the second data center. The connection tracking record is used for tracking and recording the connection state, and can judge whether a connection/session relation exists between the data center and the second electronic equipment which sends the first data packet. In this way, the data center connected with the second electronic device is determined as the second data center, and the second data center provides service for the second electronic device, so that connection resetting caused by the fact that the data center does not have session information is avoided; the data center can also normally provide services under the conditions of network change and the like, so that the system can be generally suitable for various network environments, and the robustness of the system is improved.
As an embodiment of the present application, the determining the second data center in step 102 includes:
determining a second data center according to a load balancing strategy based on the load and/or the first distance corresponding to the data center; wherein, the first and the second end of the pipe are connected with each other,
the first distance characterizes a link distance of a data center to the second electronic device.
According to the load balancing strategy, the first electronic device determines a second data center providing service for the second electronic device based on the load of the data center in the first system and/or the link distance with the second electronic device. Here, the data center is determined according to the load balancing strategy, and the data center closest to the link distance can be determined as the second data center based on the link distance; determining the data center with the minimum load as a second data center according to the load; it is also possible to rely on both load and link distance. Generally, the lower the load and/or the closer the link is to the data center, the higher the quality of service provided.
As an embodiment of the present application, the method further comprises:
a configured load balancing policy is received.
The first electronic device receives a load balancing strategy configured by an operation and maintenance person through an interface, and determines a second data center according to the load balancing strategy configured by the operation and maintenance person. And the operation and maintenance personnel configure the load balancing strategy, so that the flexibility of service provision is improved.
As an embodiment of the present application, the determining the second data center in step 102 includes:
judging whether a connection tracking record containing a data center of the second electronic equipment exists or not to obtain a judgment result;
determining the data center with the connection tracking record containing the second electronic equipment as the second data center under the condition that the judgment result represents that the connection tracking record contains the data center of the second electronic equipment;
determining the second data center according to a load balancing strategy based on a load and/or a first distance corresponding to the data center under the condition that the judgment result represents that the connection tracking record does not exist in the data center containing the second electronic device; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
The first electronic device judges whether the connection tracking record in the first system contains the data center of the second electronic device based on the connection tracking record of the data center in the first system.
If the connection tracking record in the first system includes the data center of the second electronic device, the first electronic device determines the data center as the second data center.
If the connection tracking record does not exist in the first system and the data center containing the second electronic device is not present in the first system, the first electronic device determines the second data center providing service for the second electronic device according to the load balancing strategy based on the load of the data center in the first system and/or the link distance between the first electronic device and the second electronic device.
In this embodiment of the present application, the first electronic device first determines a connection relationship between a data center in the first system and the second electronic device, determines a data center connected to the second electronic device as the second data center, and forwards a data packet to the second data center, so that connection reset caused by a change in an ISP routing calculation result can be avoided. Under the condition that a data center connected with the second electronic equipment does not exist in the first system, the first data packet is a data packet which is requested to be sent by the second electronic equipment for the first time; and the first electronic equipment determines a second data center with high service quality for the second electronic equipment based on the load of the data center in the first system and/or the link distance with the second electronic equipment, so that the service quality is improved.
The present application will be described in further detail with reference to the following application examples.
The currently popular GSLB implementations suffer from the following problems, respectively:
1) an intelligent DNS based scheme.
For example, in a multi-activity scenario, when a certain data center fails, even if the authoritative server is updated at the first time, the IP of the failed data center is not returned; but because of the client's DNS cache (e.g., browser, operating system), ISP DNS, or public DNS service, the request is still sent to the failed data center for a period of time (ranging from minutes to hours), resulting in a request failure.
2) An Anycast-based protocol.
The load strategy is inflexible and the load is less balanced. Because the dynamic routing protocol adopted by ISP allocation only considers the shortest link distance from the user to the data center; under a multi-activity scene, due to the fact that users in different regions are distributed unevenly, the data centers near the regions with excessive users are overloaded, while the data centers in other regions are idle, and the problem of unbalanced load exists.
The data packet may be sent to the wrong server. Since the BGP of the ISP uses a dynamic routing protocol (e.g., OSPF or BGP), the route may be recalculated in the process of one connection, resulting in a change in the route, and a subsequent packet on the same TCP connection is sent to a different server, and since the connection or session does not exist on the new server, the established TCP connection is erroneously reset, the message cannot be normally sent, and a normal session cannot be performed.
OSPF is a routing protocol based on IP protocol, and is an IGP protocol widely used in large and medium-sized networks. OSPF is an implementation of a link-state routing protocol, operating within an autonomous system.
BGP, is a decentralized autonomous routing protocol at the core of the internet. It achieves reachability between Autonomous Systems (AS) by maintaining an IP routing table or "prefix" table, belonging to a vector routing protocol.
3) A scheme based on reverse proxy and triangle transmission mode Direct Routing.
There is a single point performance bottleneck problem.
4) Based on HTTP redirection and a scheme of uniformly scheduling service layers.
The usage scenario is limited. For example, HTTP redirection only applies to the HTTP protocol; the unified scheduling service layer needs the participation of the client, and basically excludes the browser.
Based on this, the application embodiment improves the defects of the existing scheme, optimizes on the basis of Anycast, realizes Stabilized Anycast, and proposes a brand-new GSLB implementation scheme, as shown in FIG. 4. The data packets are rescheduled based on factors such as the survival condition of each data center, connection tracking, actual load, distance from the user terminal, scheduling strategy configured by the user and the like, so that the relative balance of the load of each data center can be ensured, the data packets can be effectively prevented from being sent to wrong service terminals, and finally the access quality of the user is ensured.
The following describes the key processes and algorithms involved in the present solution with reference to fig. 5:
1) data synchronization and heartbeat detection.
As shown in the overall architecture, the GSLB implementation scheme is distributed, and each data center is provided with a GSLB component. As shown in fig. 6, the GSLB components are peer-to-peer, and perform data synchronization and heartbeat detection with each other:
and data synchronization is realized, so that each GSLB component has a global view in the system, and more balanced load scheduling is realized. The synchronized data includes connection trace records connection tracking, connection statistics, virtual service load, etc. Some delay is allowed in the synchronization process, and the influence is small.
Heartbeat detection can be used to detect whether GSLB components or data centers fail, so that these failed data centers can be skipped when rescheduling.
2) And (5) rescheduling.
When a GSLB component receives a client side packet, if the packet does not establish a connection or session with itself, or has other data center with better quality of service, the GSLB component reschedules the packet and forwards the packet to other data center.
Here, fig. 7 shows a rescheduling algorithm flow.
3) And (6) forwarding the data.
Each GSLB component is preferably additionally configured with an internal communication port on the basis of configuring the VIP network port, and the internal communication port is used for data forwarding, so that the throughput of the whole system can be improved.
As shown in fig. 8, currently, packet forwarding may be implemented based on a tunneling technique, for example, using GRE (Generic Routing Encapsulation), VXLAN (Virtual eXtensible Local Area Network), or other protocols.
The application embodiment provides a GSLB implementation scheme based on Anycast, and effectively solves the problems of the current mainstream scheme, such as inflexible load strategy, unbalanced load, connection reset caused by mistaken sending of data packets and the like, of the Anycast scheme.
Here, the architecture of the present application embodiment is tested, and GSLB components are deployed in 2 data centers. Respectively carrying out continuous pressure tests on 2 data centers, wherein the concurrent request number of a first data center is 200, and the concurrent request number of a second data center is 100; it can be observed that the load of the backend services of 2 data centers is substantially even. Establishing a TCP connection for a back-end service of a first data center, and continuously sending a message; and constructing a scene of BGP route change, so that the message is sent to the second data center, and the situation that the message can still be successfully sent and the connection cannot be reset by the server can be observed.
To implement the method in the embodiment of the present application, an embodiment of the present application further provides a traffic distribution apparatus, which is applied to a first electronic device in a first data center, and as shown in fig. 9, the apparatus includes:
a first receiving unit 901, configured to receive a first data packet sent by an ISP;
a processing unit 902, configured to determine a second data center and forward the first data packet to the second data center when there is no connection between the first data center and the second electronic device; wherein the content of the first and second substances,
the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
Wherein, in one embodiment, the processing unit 902 is configured to:
determining a second data center based on the connection tracking record of the data center; wherein the content of the first and second substances,
the connection tracking record of the second data center contains the second electronic device.
In one embodiment, the processing unit 902 is configured to:
determining a second data center according to a load balancing strategy based on the load and/or the first distance corresponding to the data center; wherein the content of the first and second substances,
the first distance characterizes a link distance of the data center and the second electronic device.
In one embodiment, the apparatus further comprises:
and the second receiving unit is used for receiving the configured load balancing strategy.
In one embodiment, the apparatus further comprises:
the receiving and sending unit is used for carrying out data interaction with a data center in a first system; the data interaction is used for synchronizing the network information of the first system; the first system characterizes a system in which the first data center is located.
In one embodiment, the network information of the first system includes at least one of:
a network topology of the first system;
a connection tracking record for a data center within the first system;
connection statistics of data centers within the first system;
load information for a data center within the first system;
heartbeat data packets of a data center within the first system.
In one embodiment, the processing unit 902 is configured to:
judging whether a connection tracking record containing a data center of the second electronic equipment exists or not to obtain a judgment result;
determining the data center with the connection tracking record containing the second electronic equipment as the second data center under the condition that the judgment result indicates that the connection tracking record containing the data center of the second electronic equipment exists;
determining the second data center according to a load balancing strategy based on a load and/or a first distance corresponding to the data center under the condition that the judgment result represents that the connection tracking record does not exist in the data center containing the second electronic device; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
In practical applications, the processing unit 902 and the second receiving unit may be implemented by a processor in a traffic-based distribution device in combination with a communication interface, and the first receiving unit 901 and the transceiving unit may be implemented by a communication interface in a traffic-based distribution device.
It should be noted that: in the flow rate distribution device provided in the above embodiment, only the division of each program module is taken as an example for flow rate distribution, and in practical applications, the processing distribution may be completed by different program modules as needed, that is, the internal structure of the device is divided into different program modules to complete all or part of the processing described above. In addition, the flow distribution device and the flow distribution method provided by the above embodiments belong to the same concept, and specific implementation processes thereof are described in the method embodiments for details, which are not described herein again.
Based on the hardware implementation of the program module, and in order to implement the traffic distribution method in the embodiment of the present application, an embodiment of the present application further provides an electronic device. Fig. 10 is a schematic diagram of a hardware structure of an electronic device according to an embodiment of the present application, where as shown in fig. 10, the electronic device includes:
a communication interface 1 capable of information interaction with other devices such as network devices and the like;
and the processor 2 is connected with the communication interface 1 to realize information interaction with other equipment, and is used for executing the method provided by one or more technical schemes when running a computer program. And the computer program is stored on the memory 3.
In practice, of course, the various components in the electronic device are coupled together by the bus system 4. It will be appreciated that the bus system 4 is used to enable connection communication between these components. The bus system 4 comprises, in addition to a data bus, a power bus, a control bus and a status signal bus. For clarity of illustration, however, the various buses are labeled as bus system 4 in fig. 10.
The memory 3 in the embodiment of the present application is used to store various types of data to support the operation of the electronic device. Examples of such data include: any computer program for operating on an electronic device.
It will be appreciated that the memory 3 may be either volatile memory or nonvolatile memory, and may include both volatile and nonvolatile memory. Among them, the nonvolatile Memory may be a Read Only Memory (ROM), a Programmable Read Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a magnetic random access Memory (FRAM), a Flash Memory (Flash Memory), a magnetic surface Memory, an optical disk, or a Compact Disc Read-Only Memory (CD-ROM); the magnetic surface storage may be disk storage or tape storage. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of illustration and not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), Enhanced Synchronous Dynamic Random Access Memory (Enhanced DRAM), Synchronous Dynamic Random Access Memory (SLDRAM), Direct Memory (DRmb Access), and Random Access Memory (DRAM). The memory 2 described in the embodiments of the present application is intended to comprise, without being limited to, these and any other suitable types of memory.
The method disclosed in the above embodiment of the present application may be applied to the processor 2, or implemented by the processor 2. The processor 2 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 2. The processor 2 described above may be a general purpose processor, DSP, or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, or the like. The processor 2 may implement or perform the methods, steps and logic blocks disclosed in the embodiments of the present application. A general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium located in the memory 3, and the processor 2 reads the program in the memory 3 and performs the steps of the foregoing method in combination with its hardware.
When the processor 2 executes the program, the corresponding processes in the methods according to the embodiments of the present application are realized, and for brevity, are not described herein again.
In an exemplary embodiment, the present application further provides a storage medium, i.e. a computer storage medium, specifically a computer readable storage medium, for example, including a memory 3 storing a computer program, which can be executed by a processor 2 to implement the steps of the foregoing method. The computer readable storage medium may be Memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus, electronic device and method may be implemented in other ways. The above-described device embodiments are merely illustrative, for example, the division of the unit is only a logical functional division, and there may be other division ways in actual implementation, such as: multiple units or components may be combined, or may be integrated into another system, or some features may be omitted, or not implemented. In addition, the coupling, direct coupling or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between the devices or units may be electrical, mechanical or other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on multiple network units; some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, all functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may be separately regarded as one unit, or two or more units may be integrated into one unit; the integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
Those of ordinary skill in the art will understand that: all or part of the steps for implementing the method embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, and when executed, the program performs the steps including the method embodiments; and the aforementioned storage medium includes: a removable storage device, a ROM, a RAM, a magnetic or optical disk, or various other media that can store program code.
Alternatively, the integrated units described above in the present application may be stored in a computer-readable storage medium if they are implemented in the form of software functional modules and sold or used as independent products. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially implemented or portions thereof contributing to the prior art may be embodied in the form of a software product stored in a storage medium, and including several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a removable storage device, a ROM, a RAM, a magnetic or optical disk, or various other media that can store program code.
It is understood that if the embodiments of the present application relate to user information, when the embodiments of the present application are applied to specific products or technologies, user permission or consent needs to be obtained, and the collection, use and processing of relevant data need to comply with relevant laws and regulations and standards of relevant countries and regions.
The technical means described in the embodiments of the present application may be arbitrarily combined without conflict. Unless otherwise specified and limited, the term "coupled" is to be construed broadly, e.g., as meaning electrical connections, or as meaning communications between two elements, either directly or indirectly through intervening media, as well as the specific meanings of such terms as understood by those skilled in the art.
In addition, in the examples of the present application, "first", "second", and the like are used for distinguishing similar objects, and are not necessarily used for describing a specific order or a sequential order. It should be understood that "first \ second \ third" distinct objects may be interchanged under appropriate circumstances such that the embodiments of the application described herein may be implemented in an order other than those illustrated or described herein.
The term "and/or" herein is merely an association describing an associated object, meaning that three relationships may exist, e.g., a and/or B, may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the term "at least one" herein means any combination of at least two of any one or more of a plurality, for example, including at least one of A, B, C, and may mean including any one or more elements selected from the group consisting of A, B and C.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Various combinations of the specific features in the embodiments described in the detailed description may be made without contradiction, for example, different embodiments may be formed by different combinations of the specific features, and in order to avoid unnecessary repetition, various possible combinations of the specific features in the present application will not be described separately.

Claims (10)

1. A traffic distribution method applied to a first electronic device in a first data center, the method comprising:
receiving a first data packet sent by an ISP (internet service provider);
determining a second data center and forwarding the first data packet to the second data center under the condition that the first data center is not connected with the second electronic equipment; wherein the content of the first and second substances,
the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
2. The method of claim 1, wherein determining the second data center comprises:
determining a second data center based on the connection tracking record of the data center; wherein the content of the first and second substances,
the connection tracking record of the second data center contains the second electronic device.
3. The method of claim 1, wherein determining the second data center comprises:
determining a second data center according to a load balancing strategy based on the load and/or the first distance corresponding to the data center; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
4. The method of claim 3, further comprising:
a configured load balancing policy is received.
5. The method of claim 1, further comprising:
performing data interaction with a data center in a first system; the data interaction is used for synchronizing network information of the first system; the first system characterizes a system in which the first data center is located.
6. The method of claim 5, wherein the network information of the first system comprises at least one of:
a network topology of the first system;
a connection tracking record for a data center within the first system;
connection statistics of data centers within the first system;
load information for a data center within the first system;
heartbeat data packets of a data center within the first system.
7. The method of claim 1, wherein determining the second data center comprises:
judging whether a connection tracking record containing a data center of the second electronic equipment exists or not to obtain a judgment result;
determining the data center with the connection tracking record containing the second electronic equipment as the second data center under the condition that the judgment result represents that the connection tracking record contains the data center of the second electronic equipment;
determining a second data center according to a load balancing strategy based on a load and/or a first distance corresponding to the data center under the condition that the judgment result indicates that no connection tracking record contains the data center of the second electronic device; wherein the content of the first and second substances,
the first distance characterizes a link distance of a data center to the second electronic device.
8. A flow distribution apparatus applied to a first electronic device in a first data center, comprising:
a first receiving unit, configured to receive a first data packet sent by an ISP;
the processing unit is used for determining a second data center and forwarding the first data packet to the second data center under the condition that the first data center is not connected with the second electronic equipment; wherein the content of the first and second substances,
the second electronic equipment represents the electronic equipment corresponding to the source address of the first data packet; the second data center characterizes a data center having a quality of service that is better than the first data center.
9. An electronic device, comprising: a processor and a memory for storing a computer program capable of running on the processor,
wherein the processor is adapted to perform the steps of the method of any one of claims 1 to 7 when running the computer program.
10. A storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method according to any one of claims 1 to 7.
CN202210524708.1A 2022-05-13 2022-05-13 Flow distribution method and device, electronic equipment and storage medium Pending CN115022334A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210524708.1A CN115022334A (en) 2022-05-13 2022-05-13 Flow distribution method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210524708.1A CN115022334A (en) 2022-05-13 2022-05-13 Flow distribution method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115022334A true CN115022334A (en) 2022-09-06

Family

ID=83068404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210524708.1A Pending CN115022334A (en) 2022-05-13 2022-05-13 Flow distribution method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115022334A (en)

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404378A (en) * 2010-09-07 2012-04-04 成都索贝数码科技股份有限公司 Streaming media distribution and transmission network system
CN102710780A (en) * 2012-06-08 2012-10-03 深信服网络科技(深圳)有限公司 Global load balancing method, load balancing equipment and client
KR20130039652A (en) * 2011-10-12 2013-04-22 한국전자통신연구원 Method and apparatus for load balancing of content centric network
CN103179192A (en) * 2013-02-07 2013-06-26 杭州华三通信技术有限公司 Method, system and NAT (network address translation) for forwarding message about virtual server migration
CN103414657A (en) * 2013-08-22 2013-11-27 浪潮(北京)电子信息产业有限公司 Cross-data-center resource scheduling method, super scheduling center and system
CN103441944A (en) * 2013-08-20 2013-12-11 深信服网络科技(深圳)有限公司 Data processing method based on load balancing equipment and load balancing equipment
US20150319063A1 (en) * 2014-04-30 2015-11-05 Jive Communications, Inc. Dynamically associating a datacenter with a network device
CN107077340A (en) * 2014-09-30 2017-08-18 Nicira股份有限公司 Load balancing
US20170318099A1 (en) * 2016-04-29 2017-11-02 Yandex Europe Ag Method and system for processing tasks in a cloud service
CN107508730A (en) * 2017-09-29 2017-12-22 刘昱 A kind of data center's interconnected method and device based on SDN
US20190028538A1 (en) * 2016-03-25 2019-01-24 Alibaba Group Holding Limited Method, apparatus, and system for controlling service traffic between data centers
US20190253561A1 (en) * 2016-11-02 2019-08-15 Microsoft Technology Licensing, Llc Data center selection based on effective distances
CN110535976A (en) * 2019-09-27 2019-12-03 杭州迪普科技股份有限公司 A kind of session keeping method and device
CN111158962A (en) * 2018-11-07 2020-05-15 中移信息技术有限公司 Remote disaster recovery method, device, system, electronic equipment and storage medium
CN112615784A (en) * 2020-12-17 2021-04-06 北京天融信网络安全技术有限公司 Method, device, storage medium and electronic equipment for forwarding message
WO2021072574A1 (en) * 2019-10-14 2021-04-22 Alibaba Group Holding Limited Load balancing
WO2021259032A1 (en) * 2020-06-22 2021-12-30 华为技术有限公司 Ipv6 network communication method, apparatus and system
US20220023755A1 (en) * 2020-07-21 2022-01-27 Nvidia Corporation Content adaptive data center routing and forwarding in cloud computing environments
CN114053690A (en) * 2020-08-05 2022-02-18 厦门雅基软件有限公司 Cloud game processing method, client, server and system

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404378A (en) * 2010-09-07 2012-04-04 成都索贝数码科技股份有限公司 Streaming media distribution and transmission network system
KR20130039652A (en) * 2011-10-12 2013-04-22 한국전자통신연구원 Method and apparatus for load balancing of content centric network
CN102710780A (en) * 2012-06-08 2012-10-03 深信服网络科技(深圳)有限公司 Global load balancing method, load balancing equipment and client
CN103179192A (en) * 2013-02-07 2013-06-26 杭州华三通信技术有限公司 Method, system and NAT (network address translation) for forwarding message about virtual server migration
CN103441944A (en) * 2013-08-20 2013-12-11 深信服网络科技(深圳)有限公司 Data processing method based on load balancing equipment and load balancing equipment
CN103414657A (en) * 2013-08-22 2013-11-27 浪潮(北京)电子信息产业有限公司 Cross-data-center resource scheduling method, super scheduling center and system
US20150319063A1 (en) * 2014-04-30 2015-11-05 Jive Communications, Inc. Dynamically associating a datacenter with a network device
CN107077340A (en) * 2014-09-30 2017-08-18 Nicira股份有限公司 Load balancing
US20190028538A1 (en) * 2016-03-25 2019-01-24 Alibaba Group Holding Limited Method, apparatus, and system for controlling service traffic between data centers
US20170318099A1 (en) * 2016-04-29 2017-11-02 Yandex Europe Ag Method and system for processing tasks in a cloud service
US20190253561A1 (en) * 2016-11-02 2019-08-15 Microsoft Technology Licensing, Llc Data center selection based on effective distances
CN107508730A (en) * 2017-09-29 2017-12-22 刘昱 A kind of data center's interconnected method and device based on SDN
CN111158962A (en) * 2018-11-07 2020-05-15 中移信息技术有限公司 Remote disaster recovery method, device, system, electronic equipment and storage medium
CN110535976A (en) * 2019-09-27 2019-12-03 杭州迪普科技股份有限公司 A kind of session keeping method and device
WO2021072574A1 (en) * 2019-10-14 2021-04-22 Alibaba Group Holding Limited Load balancing
WO2021259032A1 (en) * 2020-06-22 2021-12-30 华为技术有限公司 Ipv6 network communication method, apparatus and system
US20220023755A1 (en) * 2020-07-21 2022-01-27 Nvidia Corporation Content adaptive data center routing and forwarding in cloud computing environments
CN114053690A (en) * 2020-08-05 2022-02-18 厦门雅基软件有限公司 Cloud game processing method, client, server and system
CN112615784A (en) * 2020-12-17 2021-04-06 北京天融信网络安全技术有限公司 Method, device, storage medium and electronic equipment for forwarding message

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
齐星;李光磊;周华春;陈佳;: "多数据中心基于流量感知的DDoS攻击消除策略", 计算机工程与应用, no. 24, pages 92 - 101 *

Similar Documents

Publication Publication Date Title
CN107547366B (en) Message forwarding method and device
CN107637037B (en) System and method for virtual interfaces and advanced intelligent routing in a global virtual network
US8825867B2 (en) Two level packet distribution with stateless first level packet distribution to a group of servers and stateful second level packet distribution to a server within the group
EP1494421B1 (en) Network load balancing with host status information
US7567504B2 (en) Network load balancing with traffic routing
US7606929B2 (en) Network load balancing with connection manipulation
US6275470B1 (en) On-demand overlay routing for computer-based communication networks
US7020707B2 (en) Scalable, reliable session initiation protocol (SIP) signaling routing node
US20060168084A1 (en) Method and apparatus for rendering load balancing and failover
WO2007033363A2 (en) System and method for providing packet connectivity between heterogeneous networks
CN113472646B (en) Data transmission method, node, network manager and system
US10374828B2 (en) Service-specific, performance-based routing
CN113727464B (en) Method and device for establishing high concurrent call of SIP streaming media server
WO2021008591A1 (en) Data transmission method, device, and system
US9917768B2 (en) System and method for reflecting FEC route information
JP2013520857A (en) Fast LSP alert mechanism
CN113489640B (en) Message forwarding method, device and gateway system
CN113328931B (en) Route issuing method and device
CN112838983B (en) Data transmission method, system, device, proxy server and storage medium
CN106909322B (en) Routing method and device for supporting storage disaster recovery in virtualization system
CN115022334A (en) Flow distribution method and device, electronic equipment and storage medium
WO2014164073A1 (en) System and method for reflecting forwarding equivalence class route information
CN117176546A (en) Fault processing method, related equipment and system
US20020129163A1 (en) Network availability
US11968113B1 (en) Computing power routing methods, apparatus, electronic devices and storage media

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