Multi-controller hybrid deployment method based on SDN
By calculating the propagation delay and queuing model between controllers and switches in the satellite Internet, the static deployment of SDN controllers and the optimized migration of switches are realized, which solves the problem of frequent switch migration and improves network adaptability and load balancing.
Patent Information
- Application Number
- CN202510454934.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-11
- Publication Date
- 2025-07-08
AI Technical Summary
In the existing SDN controller deployment method of satellite Internet, switches are frequently migrated and have large migration overhead, so they cannot effectively adapt to the dynamic changes in network topology and traffic.
By calculating the propagation delay between the controller and the switch, the static deployment objective function with the smallest weighted allocation result is used for initial controller deployment, and the queuing model is used to model and control the delay, so as to realize the optimized migration of the switch to balance the load.
Reduces the overhead of switch migration, improves the ability to adapt to traffic changes, balances the load of SDN, and reduces the cost of frequent migration of controllers.
Smart Images

Figure CN120281699A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of satellite Internet, and more specifically, to a multi-controller hybrid deployment method based on SDN. Background Art
[0002] Satellite Internet is a new network service mode that realizes global Internet access based on satellite communication technology. Its core is to deploy satellites in the air to replace or supplement ground base stations, providing high-bandwidth, flexible and convenient Internet services for areas where traditional communication infrastructure is difficult to cover, such as ground, ocean, and remote areas. Satellite Internet is in a period of rapid development. Among them, low-earth orbit satellites attract more attention than other medium and high-latitude satellites due to their shorter communication delay and smaller transmission loss. Software Defined Network (SDN) technology, as a key technology for future satellite Internet, can achieve unified and flexible management and control of satellite Internet by decoupling the control plane and the data plane.
[0003] A satellite Internet system consists of low-earth orbit satellites, gateway stations, and ground central controllers. The low-earth orbit satellites operate in several orbital planes, and each satellite can directly communicate with 4 adjacent satellites in the same orbit and different orbits through inter-satellite links. As Figure 1 shown, in a satellite Internet system based on SDN, all satellites are SDN switches. Among them, some satellites can act as SDN controllers. The control and switching functions of these satellites coexist in the same physical device but are logically separated. Each SDN controller is responsible for the flow tables of a part of the SDN switches and is uniformly managed by the ground central controller. After the SDN switch requests and receives the flow table instructions from the SDN controller, it forwards data packets according to the flow table.
[0004] However, the satellite Internet system is large in scale and has characteristics such as highly dynamic topology, uneven traffic distribution, and limited on-board resources, which pose great challenges to the deployment of SDN controllers.
[0005] For the deployment of SDN controllers in satellite Internet, there are currently mainly two categories of methods: static deployment and dynamic deployment. Static deployment keeps the positions of the SDN controllers and their allocation relationships with the SDN switches fixed; dynamic deployment is to dynamically migrate the SDN switches according to the current network topology and load status, and allows the allocation relationship between the controller and the switch to be updated in real time according to the current network state. The advantage of static deployment is low implementation difficulty, and the disadvantage is that it cannot adapt to the dynamically changing network topology and traffic; dynamic deployment has stronger network dynamic adaptability, but the frequent migration of the controller will increase the cost.
[0006] National University of Defense Technology proposed a multi-SDN controller deployment scheme for low-earth orbit satellite networks, which combines the basic ideas of static deployment and dynamic deployment. First, aiming at minimizing the weighted propagation delay, calculate the fixed deployment location of the SDN controller. Further, when the topology changes, aiming at minimizing the path between the switch and the controller, assign switches to the controller; when the load of the controller exceeds the threshold, perform controller reassignment based on the delay-load product to achieve the balance between the controller load and the control delay. This technical solution combines the advantages of static deployment and dynamic deployment, can adapt to the dynamic changes of the topology and traffic, and prevent controller overload.
[0007] The basic idea of the prior art is to regard the propagation delay between the switch and the controller as the control delay, and sacrifice the control delay to achieve load balancing between controllers. In fact, in addition to the network topology, the change of the control delay is also closely related to the load of the controller. Due to the limited on-board resources, the increase in the controller load caused by the increase in traffic will also increase the control delay. The prior art lacks the analysis of the impact of the combined topology and traffic changes on the control delay, but performs controller reassignment after detecting topology changes or controller overload, which will inevitably lead to frequent migrations of switches and generate unnecessary migration overhead. Summary of the Invention
[0008] To solve the problem of frequent switch migrations and large migration overhead in the current SDN multi-controller deployment method for satellite Internet, the present invention proposes a hybrid deployment method of multi-controllers based on SDN, which avoids frequent switch migrations and reduces the migration overhead of switches.
[0009] In order to achieve the above technical effects, the technical solution of the present invention is as follows:
[0010] A hybrid deployment method of multi-controllers based on SDN includes the following steps:
[0011] S1. Based on the propagation delay between the controller and any switch it manages, calculate the average propagation delay and the maximum propagation delay of the controller within one cycle;
[0012] S2. Weightedly allocate the average propagation delay and the maximum propagation delay, and use the minimum of the weighted allocation results as the static deployment objective function of the SDN controller and solve it to complete the initial static deployment of the controller;
[0013] S3. Use the queuing model to model the control indicators running on each on-board controller. The on-board controller is the SDN controller running on the satellite, and obtain the control delay of the controller for any switch it manages;
[0014] S4. Determine whether the control delay exceeds the threshold. If so, trigger the controller reallocation mechanism and execute step S5; otherwise, use the initial controller static deployment as the final controller deployment.
[0015] S5. Determine the maximum control delay, migrate the switch corresponding to the maximum control delay, and allocate it to the controller corresponding to the minimum control delay.
[0016] In this technical solution, first, by utilizing the periodicity and predictability of satellite operation, based on the propagation delay between a controller and any switch it controls, and taking the topology of each time slice as the basis, calculate the average propagation delay and the maximum propagation delay of the controller within one cycle, and weightedly allocate the average propagation delay and the maximum propagation delay. Use the minimum of the weighted allocation results as the SDN controller static deployment objective function and solve it to complete the initial controller static deployment and the initial allocation of switches, avoiding large-scale switch migrations; use the queuing model to model the control indicators running on each on-board controller to obtain the control delay of the controller for any switch it controls, and migrate and allocate the switch corresponding to the maximum control delay exceeding the control delay threshold to the controller corresponding to the minimum control delay, balancing the load of the SDN and improving the adaptability of the SDN to traffic changes.
[0017] Preferably, the average propagation delay avgδ i of the controller c i in step S1 is expressed as:
[0018]
[0019] where c i represents the i-th controller, avgδ i represents the average propagation delay, |S| is the size of the switch set, that is, the total number of switches in the network; T is the set of time slices in one cycle, one cycle is divided into several time slices, the time slice is a short time window, and the propagation delay between the controller and the switch remains unchanged within one time slice, |T| is the cycle length, and δ ij (t) is the propagation delay between the controller and any switch it controls.
[0020] Preferably, the maximum propagation delay maxδ i of the controller c i in step S1 is expressed as:
[0021]
[0022] Preferably, the expression of the SDN controller static deployment objective function in step S2 is:
[0023]
[0024] Among them, w1 and w2 are the weights of the average propagation delay and the maximum propagation delay respectively, and avgδ i is the average propagation delay, and maxδ i is the maximum propagation delay.
[0025] Preferably, the objective function is a linear programming function. The objective function is solved using a linear programming function solving algorithm, and the solution result is used as the optimal satellite node for static deployment of the SDN controller. The initial controller is allocated to the switch according to the shortest distance between the switch and the controller, and the initial controller static deployment is completed.
[0026] Preferably, the control indicator in step S3 is the control indicator running on each on-board controller, which characterizes the change of the management and control delay;
[0027] When the switch receives a data packet and queries that there is no matching flow rule locally, the data packet is encapsulated into a control message and reported to the controller, and the control message will be queued in the controller; when the controller processes each control message, a flow rule is formed and sent to the corresponding switch; the management and control delay is the time interval from the switch outputting the control message to receiving the flow rule table sent from the controller, including the propagation delay from the switch to the controller, the queuing delay of the controller, and the propagation delay from the controller to the switch.
[0028] Preferably, in step S3, the queuing model is used to model the control indicator running on each on-board controller to obtain the management and control delay of the controller for any switch it manages. The process is as follows:
[0029] The queuing model is used to model the control indicator in the controller to obtain the maximum number of control messages λ i arriving at the controller c i (t), and the expression is:
[0030]
[0031] Among them, S i is the set of switches managed by the controller c i , and F j (t) is the number of data streams generated by the switch s j ∈S i ;
[0032] Calculate the queuing delay W i generated by the controller c i (t), and the expression is:
[0033]
[0034] Among them, μ i is the processing capacity of the controller c i ;
[0035] Calculate the control delay D ij (t) required to process the data packet. The expression is:
[0036] D ij (t) = δ ij (t) + W i (t) + δ ij (t)
[0037] Among them, δ ij (t) is the propagation delay between the controller and the switch.
[0038] Preferably, the queuing model is an M / M / 1 queuing model.
[0039] Preferably, the expression of the maximum control delay in step S5 is:
[0040]
[0041] Preferably, the process of migrating the switch corresponding to the maximum control delay and allocating it to the controller corresponding to the minimum control delay in step S5 is as follows:
[0042] Mark the switch S i with the maximum control delay D i (t) between it and the controller c j ;
[0043] Traverse the controllers except C i and calculate the control delay D kj (T). The expression is:
[0044]
[0045] d kj (T) = δ kj (T) + W k (t) + δ kj (t)
[0046] Select the controller with the minimum control delay for allocation.
[0047] Compared with the prior art, the beneficial effects of the technical solution of the present invention are:
[0048] The present invention proposes a method for hybrid deployment of multiple controllers based on SDN. First, taking advantage of the periodicity and predictability of satellite operation, based on the propagation delay between a controller and any switch it manages, and using the topology of each time slice as a basis, the average propagation delay and the maximum propagation delay of the controller within one cycle are calculated, and the average propagation delay and the maximum propagation delay are weighted and allocated. Taking the minimum result of the weighted allocation as the static deployment objective function of the SDN controller and solving it, the initial static deployment of the controller and the initial allocation of the switch are completed, avoiding large-scale switch migration. A queuing model is used to model the control indicators running on each on-board controller to obtain the control delay of the controller for any switch it manages. The switch corresponding to the maximum control delay exceeding the control delay threshold is migrated and allocated to the controller corresponding to the minimum control delay, balancing the load of SDN and improving the adaptability of SDN to traffic changes. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] Figure 1 FIG. is a schematic diagram of a satellite Internet based on SDN proposed in the background art of the present invention;
[0050] Figure 2 FIG. is a schematic flow chart of a method for hybrid deployment of multiple controllers based on SDN proposed in Embodiment 1 of the present invention;
[0051] Figure 3 FIG. is a schematic diagram of a control indicator based on a queuing model in Embodiment 2 of the present invention;
[0052] Figure 4 FIG. is a schematic diagram of the process of executing the reallocation mechanism in Embodiment 2 of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0053] The drawings are only for illustrative purposes and should not be construed as a limitation of this patent;
[0054] For better illustration of this embodiment, some parts of the drawings are omitted, enlarged or reduced, and do not represent the actual size;
[0055] For those skilled in the art, it is understandable that some well-known content descriptions in the drawings may be omitted.
[0056] The technical solutions of the present invention will be further described below with reference to the drawings and embodiments.
[0057] The description of the positional relationship in the drawings is only for illustrative purposes and should not be construed as a limitation of this patent;
[0058] Embodiment 1
[0059] This embodiment proposes a method for hybrid deployment of multiple controllers based on SDN. The schematic flow chart of this method is shown inFigure 2 , including the following steps:
[0060] S1. Based on the propagation delay between the controller and any switch it manages, calculate the average propagation delay and the maximum propagation delay of the controller within one cycle;
[0061] S2. Weightedly allocate the average propagation delay and the maximum propagation delay, and use the minimum result of the weighted allocation as the static deployment objective function of the SDN controller to solve and complete the initial static deployment of the controller;
[0062] S3. Use the queuing model to model the control indicators running on each on-board controller. The on-board controller is the SDN controller running on the satellite, and obtain the control delay of the controller for any switch it manages;
[0063] S4. Determine whether the control delay exceeds the threshold. If so, trigger the controller reallocation mechanism and execute step S5; otherwise, use the initial static deployment of the controller as the final controller deployment;
[0064] S5. Determine the maximum control delay, migrate the switch corresponding to the maximum control delay, and allocate it to the controller corresponding to the minimum control delay.
[0065] In this embodiment, first, based on the propagation delay between the controller and any switch it manages, calculate the average propagation delay and the maximum propagation delay of the controller within one cycle, and weightedly allocate the average propagation delay and the maximum propagation delay. Use the minimum result of the weighted allocation as the static deployment objective function of the SDN controller to solve and complete the initial static deployment of the controller, avoiding large-scale switch migrations; use the queuing model to model the control indicators running on each on-board controller, obtain the control delay of the controller for any switch it manages, and migrate and allocate the switch corresponding to the maximum control delay exceeding the control delay threshold to the controller corresponding to the minimum control delay, balancing the load of the SDN and improving the adaptability of the SDN to traffic changes.
[0066] Embodiment 2
[0067] In this embodiment, for the average propagation delay avgδ of the controller c within one cycle described in step S1 i The expression is: i The expression is:
[0068]
[0069] where c i represents the i-th controller, avgδ idenotes the average propagation delay, |S| is the size of the switch set, that is, the total number of switches in the network; T is the set of time slices in a period, a period is divided into several time slices, the time slice is a short time window, and the propagation delay between the controller and the switch remains unchanged within a time slice, |T| is the period length, and δ ij (t) is the propagation delay between the controller and any switch it manages.
[0070] In this embodiment, within one period in step S1, c i The maximum propagation delay maxδ i The expression is:
[0071]
[0072] In this embodiment, the expression of the SDN controller static deployment objective function in step S2 is:
[0073]
[0074] where w1 and w2 are the weights of the average propagation delay and the maximum propagation delay respectively, avgδ i is the average propagation delay, and maxδ i is the maximum propagation delay.
[0075] Specifically, the weights w1 and w2 are used to balance the optimization priorities of the average propagation delay and the maximum propagation delay; by adjusting the weights, the optimization tendency for different delay metrics in network design can be flexibly controlled.
[0076] In this embodiment, the objective function is a linear programming function. The objective function is solved using a linear programming function solving algorithm, and the solution result is used as the optimal satellite node for SDN controller static deployment. The initial controller is allocated to the switch according to the shortest distance between the switch and the controller, and the initial controller static deployment is completed.
[0077] In this embodiment, the control indicator in step S3 is that the control indicator running on each on-board controller characterizes the change of the management and control delay;
[0078] When the switch receives a data packet and queries that there is no matching flow rule locally, the data packet is encapsulated into a control message and reported to the controller, and the control message will be queued at the controller; when the controller processes each control message, a flow rule is formed and sent to the corresponding switch; the management and control delay is the time interval from the switch outputting the control message to receiving the flow rule table sent from the controller, including the propagation delay from the switch to the controller, the queuing delay of the controller, and the propagation delay from the controller to the switch.
[0079] In this embodiment, the process of using the queuing model to model the control indicators running on each on-board controller to obtain the control delay of the controller for any switch it manages in step S3 is as follows:
[0080] Use the queuing model to model the control indicators in the controller to obtain the maximum number of control messages λ i (t) arriving at the controller c i (t), and the expression is:
[0081]
[0082] where S i is the set of switches managed by the controller c i , F j (t) is the number of data streams generated by the switch s j ∈S i ;
[0083] Calculate the queuing delay W i (t) generated by the controller c i (t), and the expression is:
[0084]
[0085] where μ i is the processing capacity of the controller c i ;
[0086] Calculate the control delay D ij (t) required to process the data packet, and the expression is:
[0087] D ij (t) = δ ij (t) + W i (t) + δ ij (t)
[0088] where δ ij (t) is the propagation delay between the controller and the switch.
[0089] In this embodiment, the queuing model is an M / M / 1 queuing model.
[0090] Specifically, the schematic diagram of the control indicator based on the M / M / 1 queuing model is as shown in Figure 3 . In the figure, C represents the controller, S1 to S3 are switches, F1 to F3 are the numbers of data streams generated by the controller and the switches, λ represents the number of messages entering the controller per unit time, and after the task queue of the control indicator is modeled by the queuing model, it is output according to the processing efficiency μ of the controller.
[0091] In this embodiment, the expression of the maximum control delay in step S5 is:
[0092]
[0093] In this embodiment, the process of migrating the switch corresponding to the maximum control delay and allocating it to the controller corresponding to the minimum control delay in step S5 is as follows:
[0094] Mark the switch s i with the maximum control delay D i (t) between the controller c j ;
[0095] Traverse the controllers except c i and calculate the control delay D kj (t), and the expression is:
[0096]
[0097] D kj (t) = δ kj (t) + W k (t) + δ kj (t)
[0098] Select the controller with the minimum control delay for allocation.
[0099] Specifically, the schematic diagram of the process of executing the controller reallocation mechanism is as Figure 4 shown. In time slice t1, switch s0 is controlled by controller c1. In time slice t2 after executing the controller reallocation mechanism, switch s0 is controlled by controller c w . The controllers are always deployed on the same set of satellite nodes, and there is only the allocation relationship between the controllers and the switches.
[0100] Obviously, the above embodiments of the present invention are only examples for clearly explaining the present invention, and are not limitations on the implementation manners of the present invention. For those of ordinary skill in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to enumerate all the implementation manners here. Any modifications, equivalent replacements, and improvements made within the spirit and principle of the present invention shall be included in the protection scope of the claims of the present invention.
Claims
1. A multi - controller hybrid deployment method based on SDN, characterized in that, It includes the following steps: S1. Calculate the average propagation delay and the maximum propagation delay of the controller within one period based on the propagation delay between the controller and any switch it manages; S2. Weightedly allocate the average propagation delay and the maximum propagation delay, and take the minimum of the weighted allocation results as the static deployment objective function of the SDN controller and solve it to complete the initial static deployment of the controller; S3. Use the queuing model to model the control indicator running on each on-board controller. The on-board controller is the SDN controller running on the satellite, and obtain the control delay of the controller for any switch it manages; S4. Determine whether the control delay exceeds the threshold. If so, trigger the controller reallocation mechanism and execute step S5; otherwise, take the initial static deployment of the controller as the final controller deployment; S5. Determine the maximum control delay, migrate the switch corresponding to the maximum control delay, and allocate it to the controller corresponding to the minimum control delay.
2. The multi - controller hybrid deployment method based on SDN according to claim 1, characterized in that, The average propagation delay avgδ of the controller c within one period described in step S1 i is i expressed as: where c i represents the i-th controller, avgδ i represents the average propagation delay, |S| is the size of the switch set, i.e., the total number of switches in the network; T is the set of time slices in a period, a period is divided into several time slices, the time slice is a short time window, and the propagation delay between the controller and the switch remains unchanged within a time slice, |T| is the period length, and δ ij (t) is the propagation delay between the controller and any switch it manages.
3. A method for hybrid deployment of multiple controllers based on SDN according to claim 2, characterized in that The maximum propagation delay maxδ of c within one period described in step S1 i is expressed as follows: i 4. The multi - controller hybrid deployment method based on SDN according to claim 3, characterized in that, The expression of the static deployment objective function of the SDN controller described in step S2 is: Among them, w1 and w2 are the weights of the average propagation delay and the maximum propagation delay respectively, avgδ i is the average propagation delay, and maxδ i is the maximum propagation delay.
5. A method for hybrid deployment of multiple controllers based on SDN according to claim 4, characterized in that The objective function is a linear programming function. Use the linear programming function solving algorithm to solve the objective function, and take the solution result as the optimal satellite node for the static deployment of the SDN controller. Allocate the initial controller to the switch according to the shortest distance between the switch and the controller to complete the initial static deployment of the controller.
6. A multi-controller hybrid deployment method based on SDN according to claim 5, characterized in that The control indicator described in step S3 is that the control indicator running on each on-board controller characterizes the change of the control delay; When the switch receives a data packet and queries that there is no matching flow rule locally, it encapsulates the data packet into a control message and reports it to the controller. The control message will be queued in the controller; when the controller processes each control message, it forms a flow rule and issues it to the corresponding switch; the control delay is the time interval from the switch outputting the control message to receiving the flow rule table issued by the controller, including the propagation delay from the switch to the controller, the queuing delay of the controller, and the propagation delay from the controller to the switch.
7. A multi - controller hybrid deployment method based on SDN according to claim 6, characterized in that, The process of using the queuing model to model the control indicator running on each on-board controller and obtaining the control delay of the controller for any switch it manages described in step S3 is: Model the control indicator in the controller using a queuing model to obtain the maximum number of control messages λ i arriving at the controller c i (t), with the expression: Among them, S i is the set of switches controlled by the controller c i , F j (t) is the number of data flows generated by the switch s j ∈S i ; Computing controller c i Queuing delay W i (t), expressed as: where μ i is the processing capacity of the controller c i ; Calculate the control delay D required to process the data packet ij (t), and the expression is: D ij d(t) = δ ij (t) + W i (t) + δ ij (t) Among them, δ ij (t) is the propagation delay between the controller and the switch.
8. A multi - controller hybrid deployment method based on SDN according to claim 7, characterized in that, The queuing model is an M / M / 1 queuing model.
9. A method for hybrid deployment of multiple controllers based on SDN according to claim 8, characterized in that The expression of the maximum control delay described in step S5 is:
10. A multi - controller hybrid deployment method based on SDN according to claim 9, characterized in that, The process of migrating the switch corresponding to the maximum control delay and allocating it to the controller corresponding to the minimum control delay described in step S5 is: The maximum control delay D between the tag and the controller c i i The switch s of (t) j ; Traverse the controllers except c i and calculate the control delay D kj (t), with the expression as follows: D kj (t) = δ kj (t) + W k (t) + δ kj (t) Select the controller with the minimum control delay for allocation.