An SDN-based heterogeneous device traffic scheduling system and method
By combining the dynamic traffic scheduling mechanism of ant colony algorithm and differential evolution algorithm on the SDN platform, the network congestion and load imbalance caused by traditional algorithms when processing elephant flows are solved, and more efficient network resource management and traffic scheduling are achieved.
Patent Information
- Application Number
- CN202410818694.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-24
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2044-06-24
AI Technical Summary
Traditional equivalent multipath routing algorithms cannot dynamically monitor network communication status when processing elephant streams with high bandwidth requirements, resulting in path overload and link load imbalance, reducing network resource utilization.
A heterogeneous equipment traffic scheduling system based on SDN is adopted, combined with ant colony algorithm and differential evolution algorithm, a dynamic traffic scheduling mechanism is formed, the transmission path of the elephant stream is optimized, and the traffic distribution of the mouse stream is evenly distributed through a hash function.
It significantly improves network resource management and traffic scheduling efficiency, alleviates network congestion and link load imbalance, and improves overall network performance and bandwidth utilization efficiency.
Smart Images

Figure CN118869612B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network communication technologies, and particularly to a heterogeneous device traffic scheduling system and method based on SDN. Background Art
[0002] With the rapid development of network technologies, heterogeneous network environments have become the norm, which include devices with various performance characteristics and communication protocols. The coexistence of these devices significantly increases the complexity of network management and optimization, especially in terms of traffic scheduling. Software Defined Network (SDN) provides an effective means for dynamically adjusting traffic routing by separating the control layer and data forwarding layer of the network to adapt to the immediate changes in network status.
[0003] Furthermore, the continuous growth of network traffic has promoted the transfer of traffic processing requirements to the network edge. The development of the Internet of Things (IoT) has led to a large amount of data being generated at the edge by heterogeneous terminal devices, posing challenges to traditional cloud computing infrastructures and backbone networks. The high latency problem brought by cloud computing centers far from the data source is particularly prominent in applications that require quick responses, such as virtual reality (VR), augmented reality (AR), and autonomous driving. Thus, Mobile Edge Computing (MEC) has emerged. According to the definition of the European Telecommunications Standards Institute (ETSI), it can provide fast Internet services and cloud computing functions near users, effectively alleviating the high latency and network load problems.
[0004] In the edge data center network, the massive data generated by heterogeneous devices and the high demand for network resources pose great challenges to traditional traffic scheduling strategies. The coexistence of elephant flows and mouse flows in the network further increases the complexity of the scheduling strategy. Although the number of elephant flows is small, they occupy most of the network data volume and have high requirements for network throughput and bandwidth; while the number of mouse flows is large, but the data volume of each flow is small, and they are more sensitive to transmission delay and packet loss rate.
[0005] However, although the traditional Equal-Cost Multi-Path routing (ECMP) algorithm is effective in dealing with mouse flows, when facing elephant flows with high bandwidth requirements, due to its inability to dynamically monitor the network communication status, it often leads to path overload and unbalanced link load, reducing network resource utilization.
[0006] Therefore, how to efficiently manage network resources and traffic scheduling in the edge data center network has become an urgent problem to be solved by those skilled in the art. Summary of the Invention
[0007] In view of the deficiencies of the above-mentioned existing technologies, the present invention provides a heterogeneous device traffic scheduling system and method based on SDN. By combining the ant colony algorithm and the differential evolution algorithm, a new dynamic traffic scheduling mechanism is formed, thereby solving the problems of network congestion, unbalanced link load, and insufficient handling of elephant flows existing in the prior art.
[0008] To solve the above technical problems, the present invention adopts the following technical solutions:
[0009] On the one hand, the present invention provides a heterogeneous device traffic scheduling system based on SDN, including: a topology discovery module, an information acquisition module, an elephant flow detection module, a traffic scheduling module, and a flow table update module;
[0010] The topology discovery module is used to automatically obtain and update the global topology information in the data center network;
[0011] The information acquisition module is used to collect the data center network traffic information and link status information in real time;
[0012] The elephant flow detection module is used to detect the traffic information in the network based on the traffic information data collected by the information acquisition module, identify the traffic types, and mark the elephant flows and mouse flows in the network;
[0013] The traffic scheduling module is used to adopt different traffic scheduling methods for elephant flows and mouse flows respectively according to the traffic types identified by the elephant flow detection module for traffic scheduling;
[0014] The flow table update module is used to generate and issue flow table entries to the OpenFlow switch according to the traffic scheduling module to execute traffic scheduling decisions.
[0015] In the above heterogeneous device traffic scheduling system based on SDN, as a preferred solution, the system further includes a database and a traffic monitoring application module;
[0016] The database is used to store the information obtained by the topology discovery module and the information obtained by the information acquisition module;
[0017] The traffic monitoring application module is used to monitor the scheduling effect and network status in real time, and automatically issue an alarm when the network status is abnormal or reaches a preset performance threshold.
[0018] On the other hand, the present invention also provides a heterogeneous device traffic scheduling method based on SDN, including the following steps:
[0019] S1. Obtain the global topology information in the data center network;
[0020] S2. Real-time collect the network traffic information and link status information of the data center;
[0021] S3. Measure the transmission bandwidth of the traffic information, and determine whether the measured transmission bandwidth exceeds the preset threshold of the link bandwidth. If it is satisfied, it is determined as an elephant flow, marked, and step S4 is executed; if not, it is determined as a mouse flow, and step S5 is executed;
[0022] S4. Use the traffic scheduling method based on the ACO-DE algorithm, calculate the globally optimal transmission path according to the currently collected real-time network state, and execute step S6;
[0023] S5. Use the traffic scheduling method based on the ECMP algorithm, evaluate the cost of each path according to the global topology information, select one or more equal-cost paths as the available paths for the mouse flow, and evenly distribute the traffic to the available paths through the calculation result of the hash function, and execute step S6;
[0024] S6. Generate and issue the flow table entry to the OpenFlow switch for the calculated new path, and execute the traffic scheduling decision.
[0025] In the above SDN-based heterogeneous device traffic scheduling method, as a preferred solution, in step S1, the processing flow of obtaining the global topology information in the data center network includes:
[0026] S101. The SDN controller and the OpenFlow switch are connected through TCP / IP and exchange configuration information, where the configuration information includes port quantity information and flow table capacity information;
[0027] S102. Use the SDN controller to periodically send the Packet_out message in the LLDP packet to all OpenFlow switches;
[0028] S103. Forward the LLDP packet received by the switch, and generate a Packet_in message for the unmatched LLDP packet and send it back to the SDN controller;
[0029] S104. Perform network topology parsing based on the Packet_in message received by the SDN controller and update the network topology information.
[0030] In the above SDN-based heterogeneous device traffic scheduling method, as a preferred solution, in step S4, the specific processing flow of using the traffic scheduling method based on the ACO-DE algorithm to calculate the globally optimal transmission path according to the currently collected real-time network state includes:
[0031] S401. ACO initialization;
[0032] S402. The ACO constructs a path;
[0033] S403. The ACO updates pheromone;
[0034] S404. The ACO obtains alternative paths;
[0035] S405. Determine whether the iteration condition is satisfied. If it is satisfied, exit the loop and execute step S406; otherwise, repeat steps S401 - 404;
[0036] S406. Initialize the DE population;
[0037] S407. DE mutation;
[0038] S408. DE crossover;
[0039] S409. DE selection;
[0040] S4010. Determine whether the iteration condition is satisfied. If it is satisfied, exit the loop; otherwise, repeat steps S406 - 4010.
[0041] In the above - mentioned SDN - based heterogeneous device traffic scheduling method, as an optimal solution, step S401 specifically includes:
[0042] S4011. Set the loop variable t to 1, the maximum number of iterations to T Max and the number of ants to N;
[0043] S4012. Initialize the taboo list TA of each ant to be empty and record the visited nodes;
[0044] S4013. Use the Yen algorithm to generate the k - shortest paths of the nodes in the target network that have the same source and destination as the elephant flow, and set them as the initial pheromone.
[0045] In the above - mentioned SDN - based heterogeneous device traffic scheduling method, as an optimal solution, step S402 specifically includes:
[0046] S4021. Set the source node of the data stream as the ant nest and the destination node as the food location;
[0047] S4022. Each ant calculates the movement probability based on the pheromone and heuristic information of the current node. The movement probability is calculated by the following formula:
[0048]
[0049] In the formula, represents the probability that ant A moves from node i to j in the t - th iteration; τ ijτ(t) represents the amount of pheromone on the link from node i to node j in the t-th iteration; η ij η(t) represents the heuristic information from node i to node j in the t-th iteration; represents the normalization factor; α represents the pheromone influence factor; β represents the importance weight of the heuristic factor;
[0050] S4023. Select the next node to move based on the roulette wheel method and add the current node to the taboo list TA;
[0051] Step S403 specifically includes: When all ants reach the destination node or the taboo list TA reaches the upper limit, the t-th iteration ends, and the link pheromone for the (t + 1)-th time is updated, that is
[0052] In the formula, τ ij (t + 1) represents the link pheromone, ρ represents the evaporation factor, represents the pheromone increment in the t-th iteration.
[0053] In the above SDN-based heterogeneous device traffic scheduling method, as an optimal solution, step S406 specifically includes:
[0054] S4061. Set the loop variable t to 1, the maximum number of iterations T Max2 ;
[0055] S4062. Store the output alternative paths based on ACO into the solution space R;
[0056] S4063. Select M paths from the solution space R to form the initial population Pop, and each path consists of n links l, X i is a complete path, that is X i ={l 1 ,l 2 ,...,l n} X i ∈R, 1 ≤ i ≤ M;
[0057] S4064. Define the fitness function F(X i ) of X i as:
[0058] In the formula, H(X i ) represents the length of path X i , MaxU(X i ) is the maximum utilization rate of all links in the path, and a and b are weight factors that adjust the influence degrees of the length and utilization rate.
[0059] In the above SDN-based heterogeneous device traffic scheduling method, as a preferred solution, step S407 specifically includes: randomly selecting three individuals X r1 , X r2 , X r3 from the population for mutation operation to form mutant individuals V i , where V i is calculated by the following formula:
[0060] V i = X r1 + F·(X r2 - X r3 )
[0061] In the formula, F is the scaling factor.
[0062] In the above SDN-based heterogeneous device traffic scheduling method, as a preferred solution, step S408 specifically includes: performing crossover operation on each target vector X i and mutant vector V i to generate trial individual U i,j , that is
[0063]
[0064] In the formula, U i,j is the j-th dimension feature of trial individual U i ; V i,j is the j-th dimension feature of mutant vector V i ; X i,j is the j-th dimension feature of target vector X i ; rand(j) represents a random number in the range of [0,1] generated for each dimension j; CR is the crossover rate; j rand refers to a randomly selected index in the crossover operation;
[0065] Step S409 specifically includes:
[0066] S4091. Calculate the fitness of crossover individual U i and original individual X i respectively according to the fitness function;
[0067] S4092. If the fitness value of crossover individual U i is better than that of original individual X i , then the crossover individual U i in the t-th iteration replaces the original individual X i and is retained in the next-generation population, otherwise individual X i is still retained, that is
[0068]
[0069] Compared with the prior art, the present invention has the following technical effects:
[0070] In view of the problems of network congestion and unbalanced link load, the present invention performs traffic scheduling on mouse flows through an equal-cost multi-path routing algorithm, and evenly distributes the traffic based on a hash function. At the same time, the combined application of an ant colony algorithm and a differential evolution algorithm is proposed to optimize the elephant flows in the data center network, calculate the optimal transmission paths for the elephant flows on congested links, significantly improve the network resource management and traffic scheduling efficiency, thus effectively alleviating network congestion and unbalanced link load, being applicable to a dynamic network environment, and improving the overall network performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] In order to make the objectives, technical solutions, and advantages of the invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings, where:
[0072] Figure 1 is a schematic structural diagram of the SDN-based heterogeneous device traffic scheduling system of the present invention;
[0073] Figure 2 is a flowchart of the SDN-based heterogeneous device traffic scheduling method of the present invention;
[0074] Figure 3 is a schematic diagram of topology discovery of the present invention;
[0075] Figure 4 is a flowchart of the ACO-DE algorithm of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0076] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. Usually, the components of the embodiments of the present invention described and illustrated herein can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the claimed invention, but merely represents selected embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts fall within the scope of protection of the present invention.
[0077] The present invention will be further described in detail below with reference to the accompanying drawings.
[0078] Although traditional equivalent multi-path routing algorithms are effective in handling mouse flows, when faced with elephant flows with high bandwidth requirements, due to their inability to dynamically monitor network communication status, they often lead to path overload and unbalanced link loads, reducing network resource utilization. To solve the above-mentioned traffic scheduling problem in the edge data center network, the present invention proposes a traffic scheduling system and method for heterogeneous devices based on SDN, which combines the Ant Colony Optimization (ACO) and Differential Evolution (DE) algorithms to form a new dynamic traffic scheduling mechanism (ACO-DE), thereby optimizing the scheduling of elephant flows in the edge data center network and achieving more efficient network resource management and traffic scheduling. This method significantly improves the overall performance of the network and the bandwidth utilization efficiency through dynamic path selection and optimization.
[0079] As Figure 1 shown, this embodiment discloses a traffic scheduling system for heterogeneous devices based on SDN, which is characterized by including: a topology discovery module, an information acquisition module, an elephant flow detection module, a traffic scheduling module, and a flow table update module;
[0080] The topology discovery module is used to automatically acquire and update the global topology information within the data center network;
[0081] The information acquisition module is used to collect traffic information and link status information of the data center network in real time;
[0082] The elephant flow detection module is used to detect the traffic information in the network based on the traffic information data collected by the information acquisition module, perform traffic type identification, and mark the elephant flows and mouse flows in the network;
[0083] The traffic scheduling module is used to adopt different traffic scheduling methods for elephant flows and mouse flows respectively according to the traffic types identified by the elephant flow detection module for traffic scheduling;
[0084] The flow table update module is used to generate and issue flow table entries to the OpenFlow switch according to the traffic scheduling module to execute traffic scheduling decisions.
[0085] In this embodiment, the system further includes a database and a traffic monitoring application module; the database is used to store the information obtained by the topology discovery module and the information obtained by the information acquisition module; the traffic monitoring application module is used to monitor the scheduling effect and network status in real time, and automatically issue an alarm when the network status is abnormal or reaches a preset performance threshold.
[0086] In specific implementation and application, the topology discovery module monitors and updates the connection status between the data center network, roadside units (RSUs), and other network devices in real time. By automatically detecting the joining or offline of devices and monitoring the health of the links, it maintains continuous updates of the global network topology.
[0087] In specific implementation and application, the traffic monitoring application module is used to provide a user interface that displays network status and traffic information and allows administrators to interactively monitor and adjust traffic scheduling policies. Specifically, in the traffic monitoring application module, the system is equipped with a graphical user interface (GUI) that enables administrators to view the current network status, traffic distribution map, and historical data statistics in real time. This interface shows key performance indicators (KPIs) such as link utilization, traffic peaks, and latency statistics, thus allowing administrators to make interactive adjustments to traffic scheduling policies based on this data. In addition, this module also integrates an alarm system that automatically issues an alarm when the network status is abnormal or reaches a preset performance threshold, thereby reminding administrators to make necessary interventions. This integrated monitoring and response mechanism not only enhances the manageability of the network but also improves the efficiency and response speed of network operation and maintenance.
[0088] As Figure 2 shown, the present invention also correspondingly provides a traffic scheduling method for heterogeneous devices based on SDN, which is characterized by including the following steps:
[0089] S1. Obtain the global topology information within the data center network;
[0090] S2. Real-time collect the traffic information and link status information of the data center network;
[0091] S3. Measure the transmission bandwidth of the traffic information and determine whether the measured transmission bandwidth exceeds the preset threshold of the link bandwidth. If it is satisfied, it is determined as an elephant flow and marked, and step S4 is executed; if it is not satisfied, it is determined as a mouse flow, and step S5 is executed;
[0092] S4. Use the traffic scheduling method based on the ACO-DE algorithm to calculate the globally optimal transmission path according to the currently collected network status in real time, and execute step S6;
[0093] S5. Use the traffic scheduling method based on the ECMP algorithm to evaluate the cost of each path according to the global topology information, select one or more equal-cost paths as the available paths for the mouse flow, and evenly distribute the traffic to the available paths through the calculation result of the hash function, and execute step S6;
[0094] S6. Generate and issue a flow table entry to the OpenFlow switch for the calculated new path to execute the traffic scheduling decision.
[0095] As Figure 3 shown in this embodiment, in step S1, the processing flow of obtaining the global topology information in the data center network includes:
[0096] S101. The SDN controller and the OpenFlow switch are connected through TCP / IP and exchange configuration information, where the configuration information includes port quantity information and flow table capacity information;
[0097] Specifically, when the system starts, the controller establishes connections with edge computing devices and switches through the TCP protocol. The edge computing device integrates the switch function and, at the same time, allows the RSU to access the SDN network as an agent or adapter. The controller sends a Hello message to confirm the existence of the device and queries the configuration information of the device, such as the number of ports and the flow table capacity, through a Feature Request message;
[0098] S102. Use the SDN controller to periodically send Packet_out messages in LLDP data packets to all OpenFlow switches;
[0099] Specifically, the controller periodically sends LLDP data packets (through Packet_out messages) to edge computing devices and switches, prompting mutual sending of LLDP responses between edge computing devices and switches, so as to update the network topology in the vehicle networking environment in real time;
[0100] S103. Forward the LLDP data packets received by the switch and generate a Packet_in message for the unmatched LLDP data packets and send them back to the SDN controller;
[0101] Specifically, after receiving the LLDP data packets from the controller, edge computing devices and switches not only forward them between their internal ports but also forward these data packets to directly connected vehicle networking devices, such as adjacent in-vehicle Wi-Fi access points or switches. At the same time, edge computing devices and switches wrap the LLDP responses received from these devices in Packet_in messages and report them to the controller;
[0102] S104. Perform network topology parsing based on the Packet_in messages received by the SDN controller and update the network topology information;
[0103] Specifically, after receiving the Packet_in message from the device, the controller parses the LLDP information therein to accurately understand the connection status and port configuration between devices. The controller uses this information to update the network topology diagram so that network management and traffic scheduling decisions can be based on the latest network structure data.
[0104] In specific implementation, in step S101, the connection and exchange configuration information between the controller and the switch specifically includes: TCP connection establishment: Each switch actively establishes a standard TCP connection to the IP address and port specified by the controller, which is the basis for all subsequent OpenFlow communications. In a specific application example, in the vehicle network edge data center, the edge computing device (as part of the switch) will first establish a connection with the controller to receive management and data scheduling instructions from the controller;
[0105] OpenFlow protocol handshake: The switch and the controller confirm each other's existence by exchanging Hello messages and start negotiating the supported OpenFlow versions. This step ensures compatibility between the two parties for effective communication. Once the mutually supported version is confirmed, the two parties continue to exchange Feature Request and Feature Reply messages, which are used to confirm the functions of the switch, such as the number of supported tables, port information, and other key parameters;
[0106] Configuration and confirmation: The controller sends corresponding configuration commands according to the capabilities of the switch to set up flow tables and management policies to ensure that the switch can correctly process the traffic scheduling instructions from the controller.
[0107] In specific implementation, in step S2, the processing flow of the real-time acquisition of the data center network traffic information and link status information includes the following steps:
[0108] Periodic data acquisition: Regularly send status requests, including port status and flow status information requests. In a specific application example, the controller can monitor the video surveillance data traffic at major traffic intersections, as well as the traffic of sensor data such as vehicle speed and traffic flow density information, which is crucial for the real-time management of the high-density data flow from vehicles to the edge data center;
[0109] Status request method: Use the OFPPortStatsRequest() method to obtain port status information and the OFPFlowStatsRequest() method to obtain flow status information. These detailed statistics enable the controller to identify bottleneck areas in the network and perform necessary traffic scheduling;
[0110] Data processing and storage: The received data is transmitted back to the controller and stored in the system database for subsequent data analysis and traffic scheduling decisions. In a specific application example, these data provide the controller with a real-time picture of network operation, including the monitoring of key information flows such as in-vehicle video streams and sensor data streams. The information in the database enables traffic scheduling to more precisely target and adjust high-load links or reconfigure network resources, thereby optimizing the network performance and response speed of the entire vehicle network edge data center.
[0111] In specific implementation, in step S3, the process of measuring the transmission bandwidth of the traffic information and determining whether the measured transmission bandwidth exceeds the preset threshold of the link bandwidth. If it is satisfied, it is determined as an elephant flow and marked includes the following steps:
[0112] Data flow analysis: The elephant flow detection module measures the bandwidth of the data flow using the flow table statistical information collected from the information acquisition module. In a specific application example, in the vehicle networking application, special attention is paid to those data flows with high bandwidth utilization, such as high-resolution video streams transmitted from in-vehicle cameras. These flows, due to their large amount of data, are likely to have a significant impact on network performance and thus need to be closely monitored;
[0113] Elephant flow calibration: When the transmission bandwidth of a certain data flow exceeds the preset threshold of the link bandwidth (for example, exceeds 10%), then this data flow is marked as an elephant flow. In the vehicle networking environment, it is crucial to identify and process these large flows in a timely manner because they may cause network congestion and a decline in service quality, affecting the reliability of key vehicle networking services;
[0114] Traffic distribution: The controller calculates and saves the distribution of elephant flows in each link in the network. These information are crucial because they help the controller implement effective traffic scheduling strategies and optimize the use of network resources. By knowing which links carry excessive elephant flows, the controller can adjust the routing or increase the bandwidth to ensure that the data center in the vehicle networking environment can effectively process a large amount of data from various in-vehicle devices and maintain the efficient operation of the network.
[0115] As Figure 4 shown, in this embodiment, in step S4, the traffic scheduling method based on the ACO-DE algorithm is used to calculate the globally optimal transmission path according to the currently collected real-time network state. Step S4 is for the scheduling process of elephant flows. For bandwidth-sensitive elephant flows, such as high-definition video streams, the ant colony fusion differential evolution algorithm (ACO-DE algorithm) is used to calculate the path selection. The ACO-DE algorithm combines the path discovery ability of the ant colony algorithm (Ant Colony Optimization, ACO) and the optimization ability of the differential evolution algorithm (Differential Evolution, DE), allowing the system to accurately select the best transmission path to meet the requirements of large data volume transmission. This method not only optimizes the utilization of bandwidth but also significantly improves the overall network performance, ensuring that the data center can efficiently process and forward large-scale data.
[0116] The specific processing flow of step S4 includes:
[0117] S401. ACO initialization;
[0118] Specifically, in S4011, set the loop variable t to 1, the maximum number of iterations to T Max and the number of ants to N;
[0119] In S4012, initialize the taboo list TA of each ant to be empty and record the visited nodes;
[0120] In S4013, use the Yen algorithm to generate the k - shortest paths of the nodes in the target network that have the same source and destination as the elephant flow, and set them as the initial pheromones;
[0121] In S402, the ACO ants construct paths;
[0122] Specifically, in S4021, set the source node of the data flow to the ant nest and the destination node to the food location;
[0123] In S4022, each ant calculates the moving probability based on the pheromone and heuristic information of the current node, and the moving probability is calculated by the following formula:
[0124]
[0125] In the formula, represents the probability that ant A moves from node i to j in the t - th iteration; τ ij (t) represents the amount of pheromone on the link from node i to node j in the t - th iteration; η ij (t) represents the heuristic information from node i to node j in the t - th iteration; represents the normalization factor to ensure that the sum of the probabilities of all alternative paths is 1; α represents the pheromone influence factor; β represents the importance weight of the heuristic factor;
[0126] In S4023, select the next node to move based on the roulette wheel method and add the current node to the taboo list TA;
[0127] In S403, the ACO updates the pheromone;
[0128] Specifically, when all ants reach the destination node or the taboo list TA reaches the upper limit, the t - th iteration ends, and the link pheromone for the (t + 1)-th iteration is updated, that is
[0129] In the formula, τ ij (t + 1) represents the link pheromone, ρ represents the evaporation factor, represents the pheromone increment in the t - th iteration;
[0130] In S404, the ACO obtains alternative paths;
[0131] S405. Determine whether the iteration condition is satisfied. If it is satisfied, exit the loop and execute step S406; otherwise, repeat steps S401 - 404;
[0132] S406. Initialize the DE population;
[0133] Specifically, in S4061, set the loop variable t to 1, the maximum number of iterations T Max2 ;
[0134] S4062. Store the output alternative paths based on ACO into the solution space R;
[0135] S4063. Select M paths from the solution space R to form the initial population Pop. Each path consists of n links l, and X i is a complete path, that is, X i ={l 1 ,l 2 ,...,l n}X i ∈R, 1 ≤ i ≤ M;
[0136] S4064. Define the fitness function F(X i ) of X i as:
[0137] In the formula, H(X i ) represents the length of path X i , MaxU(X i ) is the maximum utilization rate of all links in the path, and a and b are weight factors to adjust the influence degrees of length and utilization rate;
[0138] S407. DE mutation;
[0139] Specifically, randomly select three individuals X r1 , X r2 , X r3 from the population for mutation operation to form the mutant individual V i , where V i is calculated by the following formula:
[0140] V i =X r1 +F·(X r2 -X r3 )
[0141] In the formula, F is the scaling factor;
[0142] S408. DE crossover;
[0143] Specifically, for each target vector X i and the mutant vector Vi Perform a crossover operation to generate the trial individual U i,j , that is
[0144]
[0145] where U i,j is the j-th dimension feature of the trial individual U i ; V i,j is the j-th dimension feature of the mutation vector V i ; X i,j is the j-th dimension feature of the target vector X i ; rand(j) represents a random number in the range of [0, 1] generated for each dimension j; CR is the crossover rate, which controls the occurrence frequency of the crossover operation. A common choice is to set CR between 0.1 and 0.9, and the specific value depends on the nature and requirements of the problem; j rand refers to a randomly selected index in the crossover operation to ensure that at least one dimension is from the mutation vector V i to ensure that the trial individual has certain new features;
[0146] S409, DE selection;
[0147] Specifically, S4091, calculate the fitness of the crossover individual U i and the original individual X i respectively according to the fitness function;
[0148] S4092, if the fitness value of the crossover individual U i is better than the fitness value of the original individual X i , then the crossover individual U i in the t-th iteration replaces the original individual X i and is retained in the next-generation population, otherwise the individual X i is still retained, that is
[0149]
[0150] S4010, determine whether the iteration condition is satisfied. If satisfied, exit the loop; otherwise, repeat steps S406 - 4010.
[0151] In specific implementation, step S5 is to execute the scheduling of mouse flows. For mouse flows sensitive to latency, such as emergency vehicle status information, which are usually small data volume but high-priority traffic, the Equal-Cost Multi-Path routing (ECMP algorithm) is adopted for cost evaluation and allocation scheduling of available paths. The ECMP algorithm is a method for mouse flow scheduling in the prior art. It distributes traffic among multiple paths, reducing the dependence on a single path, thereby reducing the possibility of latency and congestion. This scheduling strategy not only helps reduce the computational workload and avoid unnecessary overhead, but also ensures that critical information can be quickly and accurately conveyed to the destination. The ECMP algorithm determines the path that the flow should take by applying a hash function to the header information of the flow, such as source and destination IP addresses, port numbers, and other protocol-specific fields; the result of the hash function is used to evenly distribute traffic among all equal-cost paths. Such processing not only improves the utilization efficiency of the path, but also ensures the balanced distribution of traffic and reduces congestion and latency that may be caused by overloading of a single path. After the ECMP strategy is implemented, the traffic is evenly distributed among all available paths. The advantage of this allocation mechanism is that it can effectively reduce the risk of overloading any single link, improve the overall efficiency and response speed of the network. In a high-traffic vehicle networking environment, this is particularly important because it ensures the continuity of data transmission and the stability of network services. The even traffic distribution also helps network administrators better monitor and manage the network status, quickly respond to possible changes or anomalies, and ensure that network resources are optimally utilized.
[0152] In specific implementation, in step S6, the calculated new path is generated and the flow table entry is sent to the OpenFlow switch. The execution of the traffic scheduling decision includes the following processing procedures: After the initialization of the flow table update module is completed, first, the step includes registering a listener to monitor the switch system. Secondly, this module distributes a flow table entry with a priority of zero to the newly connected switch. The core function of this flow table entry is to achieve automatic matching when a new data flow enters the network, thereby triggering the process of sending a Packet_In message to the controller. The main purpose of this message is to notify the controller to use the traffic scheduling module to calculate the forwarding path of the data. After the traffic scheduling module completes the calculation of the forwarding path, it encapsulates the forwarding rule into the flow table and sends it to the corresponding switch through the flow table update module.
[0153] In summary, the present invention solves the problems of network congestion, unbalanced link load, and insufficient handling of elephant flows existing in the prior art. By combining the Ant Colony Optimization (ACO) and Differential Evolution (DE) algorithms, a new dynamic traffic scheduling mechanism (ACO-DE) is formed to optimize the scheduling of elephant flows in the edge data center network, thereby achieving more efficient network resource management and traffic scheduling. This method significantly improves the overall performance of the network and the bandwidth utilization efficiency through dynamic path selection and optimization.
[0154] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described by referring to the preferred embodiments of the present invention, those of ordinary skill in the art should understand that various changes can be made in form and details without departing from the spirit and scope of the present invention defined by the appended claims.
Claims
1. A heterogeneous device traffic scheduling method based on SDN, characterized in that: The steps include: S1. Obtain global topology information within the data center network; S2, real-time collection of data center network traffic information and link status information; S3, measuring the transmission bandwidth of the traffic information, determining whether the measured transmission bandwidth exceeds a preset threshold of the link bandwidth, if so, determining it as an elephant flow, marking it, and executing step S4; if not, determining it as a mouse flow, and executing step S5; S4, using the traffic scheduling method based on the ACO-DE algorithm, according to the current network status collected in real time, calculate the global optimal transmission path, and execute step S6; In step S4, the specific processing flow of calculating the global optimal transmission path using the traffic scheduling method based on the ACO-DE algorithm according to the current network status collected in real time includes: S401, ACO initialization; S402, ACO ant construction path; S403, ACO update pheromone; S404, ACO obtains an alternative path; S405, determine whether the iteration condition is met, if so, exit the loop and execute step S406; otherwise, repeat steps S401 to S404; S406, DE population initialization; S407, DE mutation; Step S407 specifically includes: randomly selecting three individuals X from the population r1 ,X r2 ,X r3 Perform mutation operation to form mutant individual V i , where V i Calculated by the following formula: V i =X r1 +F·(X r2 -X r3 ) Where F is the scaling factor; S408, DE crossover; Step S408 specifically includes: for each target vector X i and mutation vector V i Perform crossover operation to generate test individual U i,j , that is Where U i,j The experimental individual U i The j-th dimension feature of V i,j is the mutation vector V i The j-th dimension feature of X i,j is the target vector X i The j-th dimension feature of ; rand(j) represents a random number in the range [0,1] generated for each dimension j; CR is the crossover rate; j rand Refers to an index randomly selected in a crossover operation; S409, DE selection; Step S409 specifically includes: S4091, calculate the crossover individual U according to the fitness function i and the original individual X i Adaptability; S4092, if the crossover individual U i The fitness value is better than the original individual X i The fitness value of the crossover individual U in the tth iteration i Replace the original individual X i Keep it to the next generation, otherwise keep individual X i , that is S4010, determine whether the iteration condition is met, if so, exit the loop; otherwise, repeat steps S406 to S4010; S5, using the traffic scheduling method based on the ECMP algorithm, evaluating the cost of each path according to the global topology information, selecting one or more equal-cost paths as available paths for rat flow, and evenly distributing the traffic on the available paths according to the calculation results of the hash function, and executing step S6; S6. Generate the calculated new path and send the flow table entry to the OpenFlow switch to execute the traffic scheduling decision.
2. The SDN-based heterogeneous device traffic scheduling method according to claim 1 is characterized in that: In step S1, the process of obtaining global topology information in the data center network includes: S101, the SDN controller is connected to the OpenFlow switch via TCP / IP and exchanges configuration information, wherein the configuration information includes port quantity information and flow table capacity information; S102, using the SDN controller to periodically send a Packet_out message in the LLDP data packet to all OpenFlow switches; S103, forwarding the LLDP data packet received by the switch, and generating a Packet_in message for the unmatched LLDP data packet and transmitting it back to the SDN controller; S104: Perform network topology analysis based on the Packet_in message received by the SDN controller, and update the network topology information.
3. The SDN-based heterogeneous device traffic scheduling method according to claim 1, characterized in that: Step S401 specifically includes: S4011, set the loop variable t to 1, and the maximum number of iterations to T Max and the number of ants is N; S4012, each ant's taboo table TA is initialized to be empty and records the visited nodes; S4013. Use the Yen algorithm to generate the k-shortest paths of the nodes with the same source and destination as the elephant flow in the target network, and set them as the initialization pheromone.
4. The SDN-based heterogeneous device traffic scheduling method according to claim 1, characterized in that: Step S402 specifically includes: S4021, setting the source node of the data stream to the ant hole and the destination node to the food location; S4022. Calculate the movement probability of each ant based on the pheromone and heuristic information of the current node. The movement probability is calculated by the following formula: In the formula, represents the probability of ant A moving from node i to node j in the tth iteration; τ ij (t) is the pheromone amount of the link from node i to node j in the tth iteration; η ij (t) represents the heuristic information from node i to node j in the tth iteration; represents the normalization factor; α represents the pheromone influence factor; β represents the importance weight of the heuristic factor; S4023, selecting the next node to move based on the roulette method, and adding the current node to the taboo table TA; Step S403 specifically includes: when all ants reach the destination node or the taboo table TA reaches the upper limit, the tth iteration ends, and the link pheromone of the t+1th iteration is updated, that is, In the formula, τ ij (t+1) represents the link pheromone, ρ represents the effect factor, represents the pheromone increment of the tth iteration.
5. The SDN-based heterogeneous device traffic scheduling method according to claim 1, characterized in that: Step S406 specifically includes: S4061, set the loop variable t to 1, the maximum number of iterations T Max2 ; S4062, storing the output alternative paths based on ACO in the solution space R; S4063. Select M paths from the solution space R to form the initial population Pop. Each path consists of n links l. i is a complete path, that is, X i ={l1,l2,…,l n }X i ∈R,1≤i≤M; S4064, X i The fitness function F(X i ) is defined as: In the formula, H(X i ) represents the path X i The length of MaxU(X i ) is the maximum utilization of all links in the path, a and b are weight factors that adjust the influence of length and utilization.
6. A heterogeneous device traffic scheduling system based on SDN, characterized in that: Used to implement the SDN-based heterogeneous device traffic scheduling method as described in any one of claims 1 to 5, comprising: a topology discovery module, an information acquisition module, an elephant flow detection module, a traffic scheduling module and a flow table update module; The topology discovery module is used to automatically obtain and update the global topology information in the data center network; The information acquisition module is used to collect data center network traffic information and link status information in real time; The elephant flow detection module is used to detect the flow information in the network based on the flow information data collected by the information acquisition module, identify the flow type, and mark the elephant flow and mouse flow in the network; The traffic scheduling module is used to perform traffic scheduling on the elephant flow and the mouse flow by using different traffic scheduling methods according to the traffic type identified by the elephant flow detection module; The flow table update module is used to generate and send flow table items to the OpenFlow switch according to the traffic scheduling module to execute traffic scheduling decisions.
7. The SDN-based heterogeneous device traffic scheduling system according to claim 6, characterized in that: The system also includes a database and a flow monitoring application module; The database is used to store information acquired by the topology discovery module and information acquired by the information acquisition module; The traffic monitoring application module is used to monitor the scheduling effect and network status in real time, and automatically issue an alarm when the network status is abnormal or reaches a preset performance threshold.
Citation Information
Patent Citations
Optimal path planning method and system based on improved equivalent multiple routes
CN114567915A
Elephant flow identification and scheduling method in data center network
CN115412506A
5G power public network communication task routing distribution method based on improved dandelion algorithm
CN117336744A