Load balancing system, method, device and storage medium based on network computing
Through the load balancing system of on-network computing, the switching equipment and computing network brains are used for link load monitoring and global regulation, the problems of slow response speed and inability to global optimization in the existing technology are solved, and the fast response and personalized load balancing effect is achieved.
Patent Information
- Application Number
- CN202310197695.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-03
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2043-03-03
AI Technical Summary
The prior art has problems in link load balancing that slow response speed and inability to achieve global optimization, especially when multi-egress link load sharing, packet-by-packet computing forwarding leads to performance degradation.
The load balancing system based on on-network computing is adopted, and the switching chips and link load monitoring modules of the switching equipment are used to detect traffic information in real time, and the computing network brain is used for global regulation. It can realize fast link selection and global balance by configuring application identifiers and link load monitoring modules, and supports smooth switching to achieve customized load balancing.
It realizes fast-responsive link selection and global load balancing, can personalize control according to customer needs, and improves link bandwidth utilization and system performance.
Smart Images

Figure CN116319565B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computing power network technology, and in particular to a load balancing system, method, device and storage medium based on online computing. Background Art
[0002] With the development of computing networks, programmable network technology has gained attention and been piloted in data centers and edge computing. In-network computing, or computing in the network, has gradually become a new breakthrough in network research. The development of programmable network technology has given packet transmission links a certain degree of programmability. Traditional link load balancing uses hardware load balancing devices or is based on load balancing strategies such as hashing algorithms or cells. Egress link load balancing works by distributing traffic from the ISP to different egress links, such as dedicated links, cable, or ADSL (Asymmetric Digital Subscriber Line). Furthermore, if an egress link experiences an abnormality, the traffic destined for that egress link is automatically distributed to other functioning links. With the application of load balancing across multiple egress links, egress link selection for service flows must be based on specific algorithms. Currently, many egress link selection methods use packet-level granularity. This approach relies on packet-by-packet forwarding, where the corresponding egress link is calculated before forwarding each packet. The advantage of this egress link selection method is that it can maximize traffic load balancing between egress links, thereby maximizing egress link bandwidth utilization. However, since this egress link selection method requires packet-by-packet forwarding, it can severely degrade system performance. Summary of the Invention
[0003] The main purpose of this application is to provide a load balancing system, method, device and storage medium based on network computing, aiming to provide a system that can quickly respond to link selection, perform link load balancing globally and perform real-time optimization.
[0004] To achieve the above-mentioned purpose, in the first aspect, a load balancing system based on on-line computing is provided, which is applicable to a computing power network built based on SRv6. The system includes multiple application server terminals, a switching device cluster and a computing network brain. The switching device cluster includes multiple switching device groups. The switching device group includes several switching devices. The switching devices in the switching device cluster receive data streams from the server terminal. The data streams include several types of application traffic. The application server terminal is connected to the switching devices in the switching device cluster. The switching device cluster is connected to the computing network brain. The application server terminal configures corresponding application identifiers for various types of application traffic in the issued data stream based on SRv6 technology; the switching device is configured with a switching chip, and each export link of the switching device is configured with several adapted application identifiers. The switching device obtains the traffic information of the received data stream in real time through flow detection. The switching device also includes a switching control module and a link load monitoring module. The link load monitoring module is used to monitor the load status of each link of the switching device. The switching control module filters the adapted export link according to the application identifier of the received application traffic, and the screening range is the switching device group where the switching device receiving the application traffic is located;
[0005] The computing network brain is configured with a link load adjustment module. The link load monitoring module of the switching device will obtain the link load status and update it to the link load adjustment module in real time. The link load adjustment module obtains application traffic information based on flow detection. The link load adjustment module is used to adjust the traffic transmission path according to the application traffic data and the link load status and send it to the corresponding switching device.
[0006] Preferably, the plurality of adaptation application identifiers corresponding to the egress links of the switching device are set with priorities.
[0007] In a second aspect, a link load balancing method based on online computing is provided, the method comprising the following steps:
[0008] S1. A first switching device in a first switching device group in a switching device cluster receives a data stream from a server.
[0009] S2. The first switching device obtains flow information corresponding to the application flow in the data flow in real time through flow detection; the flow information includes the flow size and application identifier; the application identifier is configured by the server;
[0010] S3. The first switching device obtains the corresponding load status and adaptation application identifier of each link in the first switching device group through a link load monitoring module configured on a switching device in the first switching device group. The switching control module of the first switching device selects an egress link in the group based on the obtained load status and adaptation application identifier of each link in the group and the traffic information obtained through flow detection, and determines the corresponding egress link in the group for each type of application traffic in the data flow.
[0011] S4. The link load adjustment module of the computing network brain obtains flow information of various application flows in the data flow based on flow detection, screens adapted egress links in the switching device cluster according to the application identifier in the flow information, determines alternative links that can carry the load according to the load of the egress links obtained through screening and the size of the application flow, and then selects the preferred egress links for various application flows in the data flow from the alternative links. The computing network brain determines whether each preferred egress link is consistent with the corresponding egress link in the group. If they are inconsistent, the preferred egress link and its corresponding forwarding path are sent to the first switching device.
[0012] S5. The first switching device receives the preferred egress link and forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic based on the preferred egress link and forwarding path.
[0013] S6. If the load of the first egress link of the first switching device exceeds a preset threshold, the first switching device obtains flow information of application traffic on the first egress link based on in-stream detection. The computing network brain performs link adjustment based on the obtained flow information to determine an optimized egress link and a corresponding forwarding path, and sends the optimized egress link and the corresponding forwarding path to the first switching device.
[0014] S7. The first switching device receives the optimized egress link and the corresponding forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic in the first egress link.
[0015] Preferably, each egress link on the first switching device is configured with a plurality of adaptation application identifiers, and a priority is set between each of the adaptation application identifiers.
[0016] Preferably, determining the corresponding intra-group egress link for each type of application traffic in the data flow in step S3 specifically includes: the first switching device determining a matching egress link based on the application identifier of the received application traffic and the adapted application identifier of the egress link thereon, determining an egress link capable of carrying the load based on the load condition of the determined egress link and the flow size of the corresponding application traffic, and if there are multiple egress links capable of carrying the load for the same application traffic type, determining the intra-group egress link based on the application identifier of the application traffic and the priority of the adapted application identifier of the egress link, as well as the load usage condition;
[0017] If the load of the first switching device's egress link cannot meet the requirements of the received application traffic, then the link index S is calculated within the first switching device group. n Determine the exit link in the group, the link index S n The calculation formula is as follows: n =N1*A%*W1*x1*(1-(1 / (N2*B%*W2*x2)))
[0018] Wherein, the export link weight W1, the transmission link weight W2, x1 is the priority coefficient of the application identifier corresponding to the application traffic to be calculated on the current export link, x2 is the priority coefficient of the application traffic to be calculated on the current transmission link, A% is the residual load of the export link, and B% is the residual load of the transmission link. The transmission link is an east-west link used for data transmission between switching devices. The export link weight W1 and the transmission link weight W2 are both preset values. The priority coefficient is determined based on the corresponding priority and the preset priority-priority coefficient conversion rule. N1 is the export link calculation constant, and N2 is the transmission link calculation constant.
[0019] Preferably, determining the preferred egress link in step S4 specifically includes:
[0020] Determine the matching egress link based on the application identifier, and then determine the egress link set that can handle the load based on the link load and the application traffic data flow size. Then determine the transmission link corresponding to each egress link in the egress link set and the switching device; calculate the optimal link index S y Determine the preferred export link, where the preferred link index S y The formula is as follows S y =N1*A%*W1*x1*(1-((1 / N2*B%*W2*x2)+(1 / N3*C%*W3*x3)+......(1 / Nn*N%*Wn*xn)))where Wn is the link weight, xn is the priority coefficient of the application identifier in the corresponding link, Nn is the calculation constant of the corresponding link, and N% is the residual load of the link.
[0021] Preferably, the specific strategy for smoothly switching the egress link for application traffic includes:
[0022] After the computing network brain sends down the optimized export link and path, the switching device determines the link to be switched and the optimized export link path, obtains the switching preparation time, and proportionally transmits the application traffic of the path to be switched according to the switching curve within the switching preparation time until the link path to be switched is completely switched to the optimized link path. When switching the path, the switching priority configuration table is read. The switching priority configuration table is used to set the switching priority corresponding to the application identifier. The switching device switches the traffic in sequence according to the switching priority corresponding to the application identifier of the application traffic.
[0023] In a third aspect, an embodiment of the present application further provides a computer device, comprising one or more processors;
[0024] a memory for storing one or more programs,
[0025] When the one or more programs are executed by the one or more processors, the one or more processors are caused to execute the method as described in the second aspect above.
[0026] In a fourth aspect, an embodiment of the present application further provides a storage medium storing a computer program, which, when executed by a processor, implements the method described in the second aspect above.
[0027] The beneficial effects of the present invention are:
[0028] In-network computing is achieved through the switching chip combined with link matching strategies and flow monitoring. This allows for rapid selection of local links at the switching device, and global control is then performed by the computing network brain, balancing the load on egress links. This enables rapid response and better global optimization.
[0029] Application identification configures priorities and classifies and manages egress links, enabling personalized regulation based on customer needs. Customized load balancing can be achieved through smooth switching based on priority. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 is a schematic diagram of a load balancing system based on network computing provided by an embodiment of the present invention;
[0031] Figure 2 A flow chart of a load balancing method for network computing provided by an embodiment of the present invention;
[0032] Figure 3 A schematic structural diagram of a device provided in one embodiment of the present invention. DETAILED DESCRIPTION
[0033] The realization of the objectives, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings.
[0034] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0035] like Figure 1 As shown, Figure 1 It is a structural diagram of a load balancing system based on network computing involved in an embodiment of the present invention. As an embodiment of the present application, a load balancing system based on online computing is provided. The system is applicable to a computing network built based on SRv6. The system includes multiple application server terminals, a switching device cluster, and a computing network brain. The switching device cluster includes multiple switching device groups. The switching device group includes several switching devices. The switching devices in the switching device cluster receive data streams from the server terminal. The data streams include several types of application traffic. The application server is connected to the switching devices in the switching device cluster. The switching device cluster is connected to the computing network brain. The application server configures corresponding application identifiers for various types of application traffic in the sent data streams based on SRv6 technology. The switching device is configured with a switching chip. Each egress link of the switching device is configured with several adapted application identifiers. The switching device obtains traffic information of the received data stream in real time through flow detection. The switching device also includes a switching control module and a link load monitoring module. The link load monitoring module is used to monitor the load status of each link of the switching device. The switching control module filters adapted egress links according to the application identifier of the received application traffic. The screening range is the switching device group where the switching device receiving the application traffic is located.
[0036] The computing network brain is configured with a link load adjustment module. The link load monitoring module of the switching device will obtain the link load status and update it to the link load adjustment module in real time. The link load adjustment module obtains application traffic information based on flow detection. The link load adjustment module is used to adjust the traffic transmission path according to the application traffic data and the link load status and send it to the corresponding switching device.
[0037] Furthermore, a plurality of adaptation application identifiers corresponding to each egress link of the switching device are set with a priority.
[0038] In the above solution, the server configures the application traffic identifier in the Arguments field of the SRH extension header based on SRv6 technology, marks the traffic from different applications with specific codes, and builds a flow detection architecture based on SRv6. The specific IFIT architecture supported by SRv6 in this application is as follows:
[0039] Using EAM instruction format: 0 7 15 23 31
[0041] FlowMonID LD Resevred
[0042] The meaning of each field in EAM is:
[0043] FlowMonID: 20 bits in length, monitoring flow ID, used to mark a specified flow in the IFIT domain.
[0044] L: 1 bit in length, packet loss flag described in RFC8321.
[0045] D: 1 bit in length, delay flag described in RFC8321.
[0046] Resevred: 10 bits long, reserved field.
[0047] The L bit is periodically alternating between 0 and 1 (alternating coloring) and sends the FlowMonID, cycle number, and count value within the cycle to the analyzer hop by hop in Postcard mode, obtaining information such as packet loss information and packet loss location. The D bit is set to 1 for packets to be detected and timestamped to calculate the one-way delay of the marked packets.
[0048] The SRv6 IFIT is encapsulated in the Optional TLV of the SRH. 0 7 15 23 31
[0050] SRH TLV Type Length Requested
[0051] IOAM Type IOAMHeaderLength Resevred
[0052] like Figure 2 As shown, Figure 2 This is a flow chart of a load balancing method based on network calculation according to an embodiment of the present invention, which provides a link load balancing method based on network calculation, and the method includes the following steps:
[0053] S1. A first switching device in a first switching device group in a switching device cluster receives a data stream from a server.
[0054] S2. The first switching device obtains flow information corresponding to the application flow in the data flow in real time through flow detection; the flow information includes the flow size and application identifier; the application identifier is configured by the server;
[0055] S3. The first switching device obtains the corresponding load status and adaptation application identifier of each link in the first switching device group through a link load monitoring module configured on a switching device in the first switching device group. The switching control module of the first switching device selects an egress link in the group based on the obtained load status and adaptation application identifier of each link in the group and the traffic information obtained through flow detection, and determines the corresponding egress link in the group for each type of application traffic in the data flow.
[0056] S4. The link load adjustment module of the computing network brain obtains flow information of various application flows in the data flow based on flow detection, screens adapted egress links in the switching device cluster according to the application identifier in the flow information, determines alternative links that can carry the load according to the load of the egress links obtained through screening and the size of the application flow, and then selects the preferred egress links for various application flows in the data flow from the alternative links. The computing network brain determines whether each preferred egress link is consistent with the corresponding egress link in the group. If they are inconsistent, the preferred egress link and its corresponding forwarding path are sent to the first switching device.
[0057] S5. The first switching device receives the preferred egress link and forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic based on the preferred egress link and forwarding path.
[0058] S6. If the load of the first egress link of the first switching device exceeds a preset threshold, the first switching device obtains flow information of application traffic on the first egress link based on in-stream detection. The computing network brain performs link adjustment based on the obtained flow information to determine an optimized egress link and a corresponding forwarding path, and sends the optimized egress link and the corresponding forwarding path to the first switching device.
[0059] S7. The first switching device receives the optimized egress link and the corresponding forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic in the first egress link.
[0060] Preferably, each egress link on the first switching device is configured with a plurality of adaptation application identifiers, and a priority is set between each of the adaptation application identifiers.
[0061] Preferably, determining the corresponding intra-group egress link for each type of application traffic in the data flow in step S3 specifically includes: the first switching device determining a matching egress link based on the application identifier of the received application traffic and the adapted application identifier of the egress link thereon, determining an egress link capable of carrying the load based on the load condition of the determined egress link and the flow size of the corresponding application traffic, and if there are multiple egress links capable of carrying the load for the same application traffic type, determining the intra-group egress link based on the application identifier of the application traffic and the priority of the adapted application identifier of the egress link, as well as the load usage condition;
[0062] If the load of the first switching device's egress link cannot meet the requirements of the received application traffic, then the link index S is calculated within the first switching device group. n Determine the exit link in the group, the link index S n The calculation formula is as follows: n =N1*A%*W1*x1*(1-(1 / (N2*B%*W2*x2)))
[0063] Wherein, the export link weight W1, the transmission link weight W2, x1 is the priority coefficient of the application identifier corresponding to the application traffic to be calculated on the current export link, x2 is the priority coefficient of the application traffic to be calculated on the current transmission link, A% is the residual load of the export link, and B% is the residual load of the transmission link. The transmission link is an east-west link used for data transmission between switching devices. The export link weight W1 and the transmission link weight W2 are both preset values. The priority coefficient is determined based on the corresponding priority and the preset priority-priority coefficient conversion rule. N1 is the export link calculation constant, and N2 is the transmission link calculation constant.
[0064] Preferably, determining the preferred egress link in step S4 specifically includes:
[0065] Determine the matching egress link based on the application identifier, and then determine the egress link set that can handle the load based on the link load and the application traffic data flow size. Then determine the transmission link corresponding to each egress link in the egress link set and the switching device; calculate the optimal link index S y Determine the preferred export link, where the preferred link index S y The formula is as follows S y =N1*A%*W1*x1*(1-((1 / N2*B%*W2*x2)+(1 / N3*C%*W3*x3)+......(1 / Nn*N%*Wn*xn)))where Wn is the link weight, xn is the priority coefficient of the application identifier in the corresponding link, Nn is the calculation constant of the corresponding link, and N% is the residual load of the link.
[0066] Preferably, the specific strategy for smoothly switching the egress link for application traffic includes:
[0067] After the computing network brain sends down the optimized export link and path, the switching device determines the link to be switched and the optimized export link path, obtains the switching preparation time, and proportionally transmits the application traffic of the path to be switched according to the switching curve within the switching preparation time until the link path to be switched is completely switched to the optimized link path. When switching the path, the switching priority configuration table is read. The switching priority configuration table is used to set the switching priority corresponding to the application identifier. The switching device switches the traffic in sequence according to the switching priority corresponding to the application identifier of the application traffic.
[0068] In the above solution, the egress link selection based on link load conditions specifically includes:
[0069] A first switching device receives a first application traffic data stream from a server, obtains an application identifier and an application traffic size of the first application traffic, obtains a load condition of each link of the first switching device according to a link load monitoring module of the first switching device, and determines whether there are multiple egress links whose adaptation application identifiers match the application identifier of the first application traffic and whose link loads can support the application traffic size of the first application traffic based on the load condition of each link of the first switching device and the adaptation application identifier of each link. If so, a first egress link is determined based on the application identifier priority and link load size of the egress links that meet the requirements. If only one egress link meets the determination requirements, the egress link is determined to be the first egress link. If no egress link meets the determination requirements, a determination is made whether there is a second egress link, the second egress link being an egress link of a second switching device in the switching device group to which the first switching device belongs, the adaptation application identifier of the second egress link matching the application identifier of the first application traffic and the link load supporting the application traffic size of the first application traffic. At the same time, a third link exists between the second switching device and the first switching device, such that the adaptation application identifier of the third link matches the application identifier of the first application traffic and the link load can support the application traffic size of the first application traffic.
[0070] The advantage of this solution is that it realizes on-line computing through the switching chip combined with link matching strategy and flow monitoring. It realizes the rapid selection of local links at the switching equipment through on-line computing, and then performs global regulation through the computing network brain to globally balance the load of the export links, achieving rapid response and better global optimization. On the other hand, the application identifier configures the priority and classifies the export links for management and control, which can be personalized according to customer needs, and then combined with priority-based smooth switching to achieve customized load balancing.
[0071] Figure 3 This is a schematic diagram of the structure of a device provided by one embodiment of the present invention. Figure 3As shown, as another aspect, the present application also provides a computer device 100, including one or more central processing units (CPUs) 101, which can perform various appropriate actions and processes according to programs stored in a read-only memory (ROM) 102 or programs loaded from a storage portion 108 into a random access memory (RAM) 103. Various programs and data required for the operation of the device 100 are also stored in the RAM 103. The CPU 101, ROM 102, and RAM 103 are connected to each other via a bus 104. An input / output (I / O) interface 105 is also connected to the bus 104.
[0072] The following components are connected to the I / O interface 105: an input section 106 including a keyboard, a mouse, and the like; an output section 107 including components such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage section 108 including components such as a hard disk; and a communication section 109 including a network interface card such as a LAN card or a modem. The communication section 109 performs communication processing via a network such as the Internet. A driver 110 is also connected to the I / O interface 105 as needed. A removable medium 111, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is mounted on the driver 110 as needed, so that a computer program read therefrom can be installed into the storage section 108 as needed.
[0073] In particular, according to the embodiments disclosed herein, the method described in Embodiment 1 above can be implemented as a computer software program. For example, the embodiments disclosed herein include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program comprising program code for executing the method described in any of the embodiments above. In such embodiments, the computer program can be downloaded and installed from a network via communication section 109 and / or installed from removable media 111.
[0074] As another aspect, the present application further provides a computer-readable storage medium, which may be the computer-readable storage medium included in the apparatus of the above-described embodiment, or a standalone computer-readable storage medium not incorporated into the apparatus. The computer-readable storage medium stores one or more programs, which are used by one or more processors to execute the method described in the present application.
[0075] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, program segment or a part of code, and the module, program segment or a part of code contains one or more executable instructions for realizing the prescribed logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented by a dedicated hardware-based system that performs the prescribed function or operation, or can be implemented by a combination of dedicated hardware and computer instructions.
[0076] The units or modules involved in the embodiments described in this application may be implemented in software or hardware. The units or modules described may also be provided in a processor. For example, each of the units may be a software program provided in a computer or mobile smart device, or a separately configured hardware device. The names of these units or modules do not, in certain circumstances, constitute limitations on the units or modules themselves.
[0077] The above description is merely a preferred embodiment of the present application and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in this application is not limited to the technical solutions formed by the specific combination of the above-mentioned technical features, but also encompasses other technical solutions formed by any combination of the above-mentioned technical features or their equivalents without departing from the concept of this application. For example, a technical solution formed by replacing the above-mentioned features with (but not limited to) technical features with similar functions disclosed in this application.
Claims
1. A load balancing system based on network computing, characterized in that: The system is suitable for a computing network built based on SRv6. The system includes multiple application servers, a switching device cluster and a computing network brain. The switching device cluster includes multiple switching device groups. The switching device group includes several switching devices. The switching devices in the switching device cluster receive data streams from the server. The data streams include several types of application traffic. The application server is connected to the switching devices in the switching device cluster. The switching device cluster is connected to the computing network brain. The application server configures corresponding application identifiers for various types of application traffic in the sent data streams based on SRv6 technology; the switching device is configured with a switching chip, and each export link of the switching device is configured with several adapted application identifiers. The switching device obtains traffic information of the received data stream in real time through flow detection. The switching device also includes a switching control module and a link load monitoring module. The link load monitoring module is used to monitor the load status of each link of the switching device. The switching control module filters the adapted export link according to the application identifier of the received application traffic, and the screening range is the switching device group where the switching device receiving the application traffic is located. The computing network brain is configured with a link load adjustment module. The link load monitoring module of the switching device updates the acquired link load status to the link load adjustment module in real time. The link load adjustment module obtains application traffic information based on flow detection. The link load adjustment module is used to adjust the traffic transmission path according to the application traffic data and the link load status and send it to the corresponding switching device. The specific steps of the computing network brain determining the egress link and its corresponding transmission path are as follows: S4. The link load adjustment module of the computing network brain obtains the flow information of various application flows in the data flow based on the flow detection, and screens the adapted export links in the switching device cluster according to the application identifier in the flow information, and determines the alternative links that can load the load according to the load of the export link obtained by screening and the size of the application flow, and then selects the preferred export link for various application flows in the data flow from the alternative links. The computing network brain determines whether each of the preferred export links is consistent with the corresponding export link in the group. If they are inconsistent, the preferred export link and its corresponding forwarding path are sent to the first switching device; S5. The first switching device receives the preferred export link and forwarding path sent by the computing network brain, and smoothly switches the path and export link for the application flow based on the preferred export link and forwarding path; S6. If the load of the first egress link of the first switching device exceeds a preset threshold, the first switching device obtains flow information of application traffic on the first egress link based on in-stream detection. The computing network brain performs link adjustment based on the obtained flow information to determine an optimized egress link and a corresponding forwarding path, and sends the optimized egress link and the corresponding forwarding path to the first switching device. S7. The first switching device receives the optimized egress link and the corresponding forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic in the first egress link.
2. A load balancing system based on network computing according to claim 1, characterized in that: Several adaptation application identifiers corresponding to each egress link of the switching device are set with priorities.
3. A link load balancing method based on on-line computing, characterized in that: The method comprises the following steps: S1. A first switching device in a first switching device group in a switching device cluster receives a data stream from a server. S2. The first switching device obtains flow information corresponding to the application flow in the data flow in real time through flow detection; the flow information includes the flow size and application identifier; the application identifier is configured by the server; S3. The first switching device obtains the corresponding load status and adaptation application identifier of each link in the first switching device group through a link load monitoring module configured on a switching device in the first switching device group. The switching control module of the first switching device selects an egress link in the group based on the obtained load status and adaptation application identifier of each link in the group and the traffic information obtained through flow detection, and determines the corresponding egress link in the group for each type of application traffic in the data flow. S4. The link load adjustment module of the computing network brain obtains flow information of various application flows in the data flow based on flow detection, screens adapted egress links in the switching device cluster according to the application identifier in the flow information, determines alternative links that can carry the load according to the load of the egress links obtained through screening and the size of the application flow, and then selects the preferred egress links for various application flows in the data flow from the alternative links. The computing network brain determines whether each preferred egress link is consistent with the corresponding egress link in the group. If they are inconsistent, the preferred egress link and its corresponding forwarding path are sent to the first switching device. S5. The first switching device receives the preferred egress link and forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic based on the preferred egress link and forwarding path. S6. If the load of the first egress link of the first switching device exceeds a preset threshold, the first switching device obtains flow information of application traffic on the first egress link based on in-stream detection. The computing network brain performs link adjustment based on the obtained flow information to determine an optimized egress link and a corresponding forwarding path, and sends the optimized egress link and the corresponding forwarding path to the first switching device. S7. The first switching device receives the optimized egress link and the corresponding forwarding path sent by the computing network brain, and smoothly switches the path and egress link for the application traffic in the first egress link.
4. The link load balancing method based on on-line computing according to claim 3, characterized in that: Each egress link on the first switching device is configured with a plurality of adaptation application identifiers, and a priority is set between each of the adaptation application identifiers.
5. The link load balancing method based on on-line computing according to claim 4, characterized in that: Determining the corresponding intra-group egress link for each type of application traffic in the data flow in step S3 specifically includes: The first switching device determines a matching egress link based on the application identifier of the received application traffic and the adapted application identifier of the egress link, and determines an egress link capable of carrying the load based on the load of the determined egress link and the volume of the corresponding application traffic. If there are multiple egress links capable of carrying the same application traffic type, the egress link within the group is determined based on the application identifier of the application traffic and the priority of the adapted application identifier of the egress link, as well as the load usage. If the load of the first switching device's egress link cannot meet the requirements of the received application traffic, then the link index S is calculated within the first switching device group. n Determine the exit link in the group, the link index S n The calculation formula is as follows: S n =N1*A%*W1*x1*(1-(1 / (N2*B%*W2*x2))) Wherein, the export link weight W1, the transmission link weight W2, x1 is the priority coefficient of the application identifier corresponding to the application traffic to be calculated on the current export link, x2 is the priority coefficient of the application traffic to be calculated on the current transmission link, A% is the residual load of the export link, and B% is the residual load of the transmission link. The transmission link is an east-west link used for data transmission between switching devices. The export link weight W1 and the transmission link weight W2 are both preset values. The priority coefficient is determined based on the corresponding priority and the preset priority-priority coefficient conversion rule. N1 is the export link calculation constant, and N2 is the transmission link calculation constant.
6. The link load balancing method based on on-line computing according to claim 3, characterized in that: Specific strategies for smoothly switching application traffic on the egress link include: After the computing network brain sends down the optimized export link and path, the switching device determines the link to be switched and the optimized export link path, obtains the switching preparation time, and proportionally transmits the application traffic of the path to be switched according to the switching curve within the switching preparation time until the link path to be switched is completely switched to the optimized link path. When switching the path, the switching priority configuration table is read. The switching priority configuration table is used to set the switching priority corresponding to the application identifier. The switching device switches the traffic in sequence according to the switching priority corresponding to the application identifier of the application traffic.
7. A computer device, characterized in that: one or more processors; a memory for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors are caused to perform the method according to any one of claims 3 to 6.
8. A storage medium storing a computer program, characterized in that: When the program is executed by a processor, the method according to any one of claims 3 to 6 is implemented.
Citation Information
Patent Citations
Load balancing method and device based on CDN
CN109274599A
Data center network route switching system and method based on flow characteristics
CN110290064A