Resource scheduling method and system based on SDN
By detecting the network topology structure and real-time monitoring of link status in the SDN controller, predicting the congestion path and selecting the best path, the problem that the prior art cannot select the best path based on the predicted traffic situation is solved, and effective centralized management and scheduling of network resources is achieved.
Patent Information
- Application Number
- CN202510183177.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-19
- Publication Date
- 2025-05-23
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing SDN-based container network resource scheduling methods cannot select the best path based on the predicted traffic situation, resulting in the inability to effectively centrally manage and schedule network resources.
The network topology is detected by the SDN controller, and the available bandwidth and delay of the link are monitored in real time, the congestion path is predicted, and the best path is selected based on the topology, available bandwidth, delay and congestion prediction, so as to realize dynamic scheduling of traffic.
According to the current network traffic situation, the traffic is scheduled from the path that is about to be congested to the smooth path, which improves the transmission efficiency of network traffic and realizes centralized management and scheduling of network resources.
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of network resource scheduling, and in particular to a resource scheduling method and system based on SDN. Background Art
[0002] With the rapid development of big data, cloud computing and social networks, data computing and storage have migrated to data centers on a large scale. The communication volume within data centers has increased exponentially, and the bandwidth demand for data center networks has continued to increase. Therefore, network resource scheduling has become an important topic. In traditional data center networks, the allocation of network resources is independently implemented by network operators. However, with the rapid increase in the number of network users, the traditional allocation method can no longer meet user needs well.
[0003] A Chinese patent discloses a container network resource scheduling method based on SDN (authorization announcement number CN109743261B). This patented technology centrally perceives the network situation, reasonably divides and recycles container network resources based on task requirements, and constructs a network resource scheduling method that integrates "networking, routing, and monitoring", thereby achieving optimal scheduling of container network resources. However, it cannot select the best path based on the predicted traffic conditions, and thus cannot centrally manage and schedule network resources. Summary of the invention
[0004] The purpose of the present invention is to provide a resource scheduling method and system based on SDN to solve the problems raised in the above background technology.
[0005] To achieve the above object, the present invention provides the following technical solutions:
[0006] The resource scheduling method based on SDN includes the following steps:
[0007] S1. Network topology detection: The SDN controller combines the network initialization processing requirements and uses the link layer discovery protocol to detect the network topology.
[0008] S2. Network status monitoring: detect the available bandwidth and latency corresponding to each link, collect statistics on the available bandwidth and latency information of links in the network, and monitor the network status in real time;
[0009] S3, Congestion path prediction: predict whether the path is congested based on the available bandwidth and delay information of the links in the network. If congestion is judged to occur, the large flows on the path are scheduled and the traffic entering the switch is initialized for routing;
[0010] S4, optimal path selection: select the optimal path based on the current network topology, the available bandwidth and latency of each link, and the prediction of congested paths;
[0011] S5, flow table scheduling management: After the network initialization process is completed, the terminal host sends the data packet to the switch. The switch issues the flow table entry according to the best path and forwards the data packet based on the matching situation of the flow table.
[0012] As a further solution of the present invention: in the step S1, the specific method of network topology detection is as follows:
[0013] S11, during the network initialization process, the SDN controller is connected to the switch to obtain the switch physical port information; at the same time, the data packet information is sent to the switch through the SDN controller;
[0014] S12. The switch forwards the received data packet to the designated port. When the adjacent switch receives the data packet at the same time, it automatically matches the required flow table entry.
[0015] As a further solution of the present invention: in the step S2, the method for detecting the available bandwidth is as follows:
[0016] The SDN controller periodically sends information query requests to each switch and detects the available bandwidth of each link in combination with the port statistics provided by the switch.
[0017] The delay detection method is as follows:
[0018] The SDN controller periodically sends data packets with timestamps to each switch to detect the delay of each link.
[0019] As a further solution of the present invention: in the step S3, the methods for predicting congested paths include: time series analysis method, machine learning method and deep learning method.
[0020] As a further solution of the present invention: in the step S4, the specific method of selecting the best path is as follows:
[0021] S41, shortest path set calculation: multiple shortest paths are calculated in the data center network, and the multiple shortest paths are aggregated into a shortest path set;
[0022] S42, calculation of the path with the minimum link criticality value: calculate the average expected load of the link, and then calculate the link criticality value according to the average expected load of the link; and then calculate several paths with the minimum link criticality value from the shortest path set;
[0023] S43. Calculation of the path with the lowest link cost weight value: According to the traffic characteristics of the data center, obtain the cost weight value of the link composed of the sum of available bandwidth and latency, and calculate a path with the lowest cost weight value from several paths with the lowest criticality values as the final data flow path for sending the flow table.
[0024] As a further solution of the present invention: in the step S41, the specific method of shortest path calculation is as follows:
[0025] S411, calculating the first shortest path from the source end to the destination end;
[0026] S412, taking the point that the path passes through as the deviation point, and calculating the shortest path from the deviation point to the destination;
[0027] S413: Connect the shortest path in step S412 with the source end to obtain the shortest deviation path.
[0028] As a further solution of the present invention: in the step S5, the specific steps of sending the flow table entry and forwarding the data packet are as follows:
[0029] S51, checking whether there is a matching flow table entry through the switch, and if so, directly forwarding the data packet according to the corresponding instruction;
[0030] S52, if not, encapsulate the data packet and request the controller to process it; calculate the probability jump value through the controller; and determine whether the probability jump value is greater than the set threshold; if greater than, find the largest flow on the path and the jump probability value between the path and other paths, and schedule the largest flow on the path with the largest probability value through the controller;
[0031] S53: If it is not greater than, find out the maximum probability value between the paths, and send a flow table for the data flow entering the switch through the controller.
[0032] As a further solution of the present invention: in the step S51, the flow table entry matching method is as follows:
[0033] S511, matching the data packets according to the priority in a pipeline matching manner, and determining whether the match is successful;
[0034] S512, if the match is successful, the counter is updated and the instruction set is executed, and then it is determined whether it is necessary to match with the next flow table. If so, continue with the previous step, otherwise execute the action set;
[0035] S513. If no match is successful, determine whether there is a Table-miss flow entry. If so, execute the instruction set. The usual processing method is to forward the message to the control machine, discard it, or forward it to other flow tables. If not, directly discard the message.
[0036] A system of a resource scheduling method based on SDN includes a network topology detection module, a network status monitoring module, a congestion path prediction module, an optimal path selection module, a flow table scheduling management module, an SDN controller, a switch and a terminal host.
[0037] Compared with the prior art, the present invention has the following beneficial effects:
[0038] The present invention sequentially performs network topology detection, network status monitoring, congestion path prediction, optimal path selection and flow table scheduling management, and can schedule traffic from a path that is about to be congested to an unobstructed path according to the current traffic conditions in the network, thereby facilitating the transmission of network traffic and achieving centralized management and scheduling of network resources. DETAILED DESCRIPTION
[0039] In an embodiment of the present invention, a resource scheduling method based on SDN includes the following steps:
[0040] S1. Network topology detection: The SDN controller combines the network initialization processing requirements and uses the link layer discovery protocol to detect the network topology.
[0041] S2. Network status monitoring: detect the available bandwidth and latency corresponding to each link, collect statistics on the available bandwidth and latency information of links in the network, and monitor the network status in real time;
[0042] S3, Congestion path prediction: predict whether the path is congested based on the available bandwidth and delay information of the links in the network. If congestion is judged to occur, the large flows on the path are scheduled and the traffic entering the switch is initialized for routing;
[0043] S4, optimal path selection: According to the current network topology, the available bandwidth and latency of each link, and the prediction of congested paths, the optimal path is selected to facilitate the transmission of network traffic;
[0044] S5, flow table scheduling management: After the network initialization processing is completed, the terminal host sends the data packet to the switch. The switch issues the flow table entry according to the optimal path and forwards the data packet based on the matching situation of the flow table to achieve centralized management of the network and resource scheduling.
[0045] Preferably, in step S1, the specific method of network topology detection is as follows:
[0046] S11. During network initialization processing, connect the SDN controller to the switch to obtain switch physical port information; meanwhile, send packet information to the switch through the SDN controller;
[0047] S12. The switch forwards the received packet to the specified port. When adjacent switches receive the packet simultaneously, they automatically match the required flow table entries to detect the network topology.
[0048] Preferably, in step S2, the method for detecting available bandwidth is as follows:
[0049] Periodically send information query requests to each switch through the SDN controller, and combine the port statistical information provided by the switch to detect the available bandwidth of each link;
[0050] The method for detecting delay is as follows:
[0051] Periodically send packets with timestamps to each switch through the SDN controller to detect the delay of each link.
[0052] Preferably, in step S3, the method for predicting congested paths: time series analysis method, machine learning method, and deep learning method.
[0053] Preferably, in step S4, the specific method for selecting the best path is as follows:
[0054] S41. Shortest path set calculation: Calculate multiple shortest paths in the data center network and combine them into a shortest path set;
[0055] S42. Calculation of the path with the minimum link criticality value: Calculate the average expected load of the link, where the average expected load is the ratio of the total traffic bandwidth on one of the links from the source end to the destination end to the number of large flows included in this link; then calculate the link criticality value based on the average expected load of the link; where the criticality of the link is the ratio of the average expected load of the link to the total link bandwidth; then calculate several paths with the minimum link criticality value from the shortest path set;
[0056] S43. Calculation of the path with the lowest link cost weight value: According to the traffic characteristics of the data center, obtain the sum of available bandwidth and delay to form the link cost weight value, and calculate a path with the lowest cost weight value from several paths with the lowest criticality value as the final data flow forwarding flow table path; thus, schedule the traffic from the path about to experience congestion to a better path.
[0057] Preferably, in step S41, the specific method for calculating the shortest path is as follows:
[0058] S411, calculating the first shortest path from the source end to the destination end;
[0059] S412, taking the point that the path passes through as the deviation point, and calculating the shortest path from the deviation point to the destination;
[0060] S413: Connect the shortest path in step S412 with the source end to obtain the shortest deviation path.
[0061] Preferably, in step S5, the specific steps of sending the flow table entry and forwarding the data packet are as follows:
[0062] S51, checking whether there is a matching flow table entry through the switch, and if so, directly forwarding the data packet according to the corresponding instruction;
[0063] S52, if not, encapsulate the data packet and request the controller to process it; calculate the probability jump value through the controller; and determine whether the probability jump value is greater than the set threshold; if greater than, find the largest flow on the path and the jump probability value between the path and other paths, and schedule the largest flow on the path with the largest probability value through the controller;
[0064] S53, if it is not greater than, find out the maximum probability value between the paths, and send the flow table to the data flow entering the switch through the controller, so as to realize the scheduling of large flow and the initialization traffic scheduling.
[0065] Preferably, in step S51, the flow table entry matching method is as follows:
[0066] S511, matching the data packets according to the priority in a pipeline matching manner, and determining whether the matching is successful;
[0067] S512, if the match is successful, the counter is updated and the instruction set is executed, wherein the instruction set includes an action set, a datagram and metadata, and then it is determined whether it is necessary to match with the next flow table. If so, continue according to the previous step, otherwise execute the action set;
[0068] S513. If no match is successful, determine whether there is a Table-miss flow entry. If so, execute the instruction set. The usual processing method is to forward the message to the control machine, discard it, or forward it to other flow tables. If not, directly discard the message.
[0069] A system of a resource scheduling method based on SDN includes a network topology detection module, a network status monitoring module, a congestion path prediction module, an optimal path selection module, a flow table scheduling management module, an SDN controller, a switch and a terminal host.
[0070] What is described above is only a preferred specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can make equivalent replacements or changes according to the technical scheme and inventive concept of the present invention within the technical scope disclosed by the present invention, which should be covered by the protection scope of the present invention.
Claims
1. A resource scheduling method based on SDN, characterized in that: The following steps are involved: S1. Network topology detection: The SDN controller combines the network initialization processing requirements and uses the link layer discovery protocol to detect the network topology. S2. Network status monitoring: detect the available bandwidth and latency corresponding to each link, collect statistics on the available bandwidth and latency information of links in the network, and monitor the network status in real time; S3, Congestion path prediction: predict whether the path is congested based on the available bandwidth and delay information of the links in the network. If congestion is judged to occur, the large flows on the path are scheduled and the traffic entering the switch is initialized for routing; S4, optimal path selection: select the optimal path based on the current network topology, the available bandwidth and latency of each link, and the prediction of congested paths; S5, flow table scheduling management: After the network initialization process is completed, the terminal host sends the data packet to the switch. The switch issues the flow table entry according to the best path and forwards the data packet based on the matching situation of the flow table.
2. The SDN-based resource scheduling method according to claim 1, characterized in that: In the step S1, the specific method of network topology detection is as follows: S11, during the network initialization process, the SDN controller is connected to the switch to obtain the switch physical port information; at the same time, the data packet information is sent to the switch through the SDN controller; S12. The switch forwards the received data packet to the designated port. When the adjacent switch receives the data packet at the same time, it automatically matches the required flow table entry.
3. The SDN-based resource scheduling method according to claim 1, characterized in that: In step S2, the available bandwidth is detected as follows: The SDN controller periodically sends information query requests to each switch and detects the available bandwidth of each link in combination with the port statistics provided by the switch. The delay detection method is as follows: The SDN controller periodically sends data packets with timestamps to each switch to detect the delay of each link.
4. The SDN-based resource scheduling method according to claim 1, characterized in that: In the step S3, the methods for predicting congested paths include: time series analysis method, machine learning method and deep learning method.
5. The SDN-based resource scheduling method according to claim 1, characterized in that: In step S4, the specific method of selecting the best path is as follows: S41, shortest path set calculation: multiple shortest paths are calculated in the data center network, and the multiple shortest paths are aggregated into a shortest path set; S42, link criticality value minimum path calculation: calculate the average expected load of the link, and then calculate the link criticality value according to the average expected load of the link; Then calculate several paths with the smallest link criticality value from the shortest path set; S43. Calculation of the path with the lowest link cost weight value: According to the traffic characteristics of the data center, obtain the cost weight value of the link composed of the sum of available bandwidth and latency, and calculate a path with the lowest cost weight value from several paths with the lowest criticality values as the final data flow path for sending the flow table.
6. The SDN-based resource scheduling method according to claim 5, characterized in that: In the step S41, the specific method of shortest path calculation is as follows: S411, calculating the first shortest path from the source end to the destination end; S412, taking the point that the path passes through as the deviation point, and calculating the shortest path from the deviation point to the destination; S413: Connect the shortest path in step S412 with the source end to obtain the shortest deviation path.
7. The SDN-based resource scheduling method according to claim 1, characterized in that: In the step S5, the specific steps of sending flow table entries and forwarding data packets are as follows: S51, checking whether there is a matching flow table entry through the switch, and if so, directly forwarding the data packet according to the corresponding instruction; S52, if not, encapsulate the data packet and request the controller to process it; calculate the probability jump value through the controller; and determine whether the probability jump value is greater than the set threshold; if greater than, find the largest flow on the path and the jump probability value between the path and other paths, and schedule the largest flow on the path with the largest probability value through the controller; S53: If it is not greater than, find out the maximum probability value between the paths, and send a flow table for the data flow entering the switch through the controller.
8. The SDN-based resource scheduling method according to claim 7, characterized in that: In the step S51, the flow table entry matching method is as follows: S511, matching the data packets according to the priority in a pipeline matching manner, and determining whether the matching is successful; S512, if the match is successful, the counter is updated and the instruction set is executed, and then it is determined whether it is necessary to match with the next flow table. If so, continue with the previous step, otherwise execute the action set; S513. If no match is successful, determine whether there is a Table-miss flow entry. If so, execute the instruction set. The usual processing method is to forward the message to the control machine, discard it, or forward it to other flow tables. If not, directly discard the message.
9. A system for implementing the SDN-based resource scheduling method according to any one of claims 1 to 8, characterized in that: It includes a network topology detection module, a network status monitoring module, a congestion path prediction module, an optimal path selection module, a flow table scheduling management module, an SDN controller, a switch and a terminal host.
Citation Information
Patent Citations
A container network resource scheduling method based on SDN
CN109743261B