Disclosure of Invention
Therefore, the technical problem to be solved by the present invention is to overcome the defect in the prior art that it is not possible to manage both part of the sub-domain controller and part of the network elements directly, thereby providing a hierarchical multi-domain based route determining method and controller.
The invention provides a routing determination method based on layered multi-domain, which is characterized by comprising the following steps:
acquiring source node information and sink node information in a service request;
determining the type of the service request according to the source node information and the sink node information;
and determining the optimal route of the route according to the type of the service request.
Further, the types of the request include a same-domain service request and a cross-domain service request.
When the service request is a service request in the same domain, the step of determining the optimal route of the route according to the type of the service request comprises the following steps:
determining a controller that manages the source node and sink node;
the controller calculates at least one candidate path according to the path building requirement, the constraint condition and the current network topology information, and determines a path with the minimum cost as an optimal path from the at least one candidate path.
Further, when both the source node and the sink node are directly managed by the sub-domain controller, controlling the controller to calculate at least one candidate path according to the routing requirement, the constraint condition and the current network topology information, and determining a path with the minimum cost as an optimal path from the at least one candidate path, including:
determining domains where the source node and the sink node are located by an upper layer controller;
the upper layer controller sends a route establishment signaling to a sub-domain controller of a domain where the source node and the sink node are located;
after receiving the route establishing signaling, a sub-domain controller of a domain in which the source node and the sink node are located calculates at least one candidate route according to the route establishing requirement, constraint conditions and current network topology information of an upper layer controller;
the sub-domain controller calculates the cost of the at least one candidate path, determines the path with the minimum cost as an optimal path, and returns the optimal path to the global controller of the top layer from the upper layer controller layer by layer;
and the global controller replies the optimal path to the entrance controller.
Further, when the source node and the sink node are directly managed by an inter-layer controller, the controller calculates at least one candidate path according to a routing requirement, a constraint condition, and current network topology information, and determines a path having a minimum cost as an optimal path from the at least one candidate path, including:
the controller of the layer where the source node and the sink node are located calculates at least one candidate path according to the route establishment requirement, the constraint condition and the current network topology information;
the controllers of the layers where the source node and the sink node are located calculate the cost of the at least one candidate path, determine the path with the minimum cost as an optimal path, and recurse to the global controller at the top layer by layer upwards;
and the global controller replies the optimal path to the entrance controller.
Further, when the service request is a cross-domain service request, the step of determining the optimal path of the route according to the type of the service request includes:
determining a controller that manages the source node and sink node;
and determining the border gateway nodes of the domains where the source node and the sink node are located, wherein the controller calculates at least one candidate path according to the border gateway nodes, the route establishment requirement, the constraint condition and the current network topology information, and determines the path with the minimum cost as the optimal path from the at least one candidate path.
Further, when the source node and the sink node are both directly managed by the sub-domain controller, the controller calculates at least one candidate path according to the routing requirement, the constraint condition and the current network topology information, and determines a path with the minimum cost as an optimal path from the at least one candidate path, including:
selecting a border gateway node GWs and a GWD of a domain in which the source node and the sink node are located by an upper layer controller respectively;
the upper layer controller determines GWs a domain sequence between the Gwd border gateway node;
selecting the border gateway nodes between traversed adjacent domains as peer nodes of the computation path;
a sub-domain controller of a domain where the source node is located sends a routing calculation request to the upper controller;
the upper layer controller calculates at least one candidate path based on the current abstract network topology according to the domain sequence and the selected peer-to-peer node, and sends a route establishment signaling to the traversed sub-domain controller;
after receiving the route establishing signaling, the traversed sub-domain controller respectively performs route establishment in the domain according to the route establishing requirement, the constraint condition and the current network topology information of the upper layer controller;
the sub-domain controllers respectively calculate the cost of the established path and return the cost to the global controller of the upper layer controller from layer to layer recursion to the top layer;
the global controller calculates the cost of the at least one candidate path based on the path cost information replied by the traversed sub-domain controller, and determines the path with the minimum cost as the optimal path;
and the global controller replies the optimal path to the entrance controller.
Further, when both the source node and the sink node are directly managed by an inter-layer controller, the step of controlling the controller to calculate at least one candidate path according to the routing requirement, the constraint condition and the current network topology information, and determining a path with the minimum cost as an optimal path from the at least one candidate path includes:
selecting a border gateway node GWs and a GWD of a domain in which the source node and the sink node are located by an upper layer controller respectively;
the upper layer controller determines GWs a domain sequence between the Gwd border gateway node;
selecting the border gateway nodes between traversed adjacent domains as peer nodes of the computation path;
the upper controller calculates at least one candidate path based on the current part of abstract network topology and the part of actual network topology according to the domain sequence and the selected peer node, and sends a routing signaling to the traversed sub-domain controller;
after receiving the route establishing signaling, the traversed sub-domain controller respectively performs route establishment in the domain according to the route establishing requirement, constraint conditions and current network topology information of the upper layer controller;
the sub-domain controllers respectively calculate the cost of the established path and return the cost to the global controller of the upper layer controller from layer to layer recursion to the top layer;
the global controller calculates the cost of the at least one candidate path based on the path cost information replied by the traversed sub-domain controller and the cost information of the network element directly managed by the upper controller traversed during path calculation, and determines the path with the minimum cost as the optimal path;
and the global controller replies the optimal path to the entrance controller.
Further, when one of the source node and the sink node is directly managed by the sub-domain controller and the other is directly managed by the upper layer controller, the step of controlling the controller to calculate at least one candidate path according to the routing requirement, the constraint condition and the current network topology information, and determine a path with the minimum cost as an optimal path from the at least one candidate path includes:
selecting a border gateway node GWs and a GWD of a domain in which the source node and the sink node are located by an upper layer controller respectively;
the upper layer controller determines GWs a domain sequence between the Gwd border gateway node;
selecting the border gateway nodes between traversed adjacent domains as peer nodes of the computation path;
a sub-domain controller of a domain where the source node is located sends a routing calculation request to the upper controller;
the upper controller calculates at least one candidate path based on the current part of abstract network topology and the part of actual network topology according to the domain sequence and the selected peer node, and sends a routing signaling to the traversed sub-domain controller;
after receiving the route establishing signaling, the traversed sub-domain controller respectively performs route establishment in the domain according to the route establishing requirement, the constraint condition and the current network topology information of the upper layer controller;
the sub-domain controllers respectively calculate the cost of the established path and return the cost to the global controller of the upper layer controller from layer to layer recursion to the top layer;
the global controller calculates the cost of the at least one candidate path based on the path cost information replied by the traversed sub-domain controller and the cost information of the network element directly managed by the upper controller traversed during path calculation, and determines the path with the minimum cost as the optimal path;
and the global controller replies the optimal path to the entrance controller.
Further, the optimal path of the cross-domain request is represented as:
op(ns,nd)=op(ns,nbs)+op(nbs,nbd)+op(nbd,nd),
wherein op (n)s,nd) Representing a source node nsAnd a sink node ndOptimal path between op (n)s,nbs) Representing a source node nsBorder gateway node n between adjacent domainsbsOptimal path between op (n)bs,nbd) Representing border gateway nodes n between adjacent domainsbsBorder gateway node n between adjacent domainsbdOptimal path between op (n)bd,nd) Representing border gateway nodes n between adjacent domainsbdAnd a sink node ndThe optimal path therebetween.
Accordingly, the present invention also provides a controller, comprising: the at least one processor and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to perform the hierarchical multi-domain based route determination method.
The technical scheme of the invention has the following advantages: by acquiring the source node information and the destination node information in the service request, determining the type of the service request according to the source node information and the destination node information, and determining the optimal route of the route according to the type of the service request, the method considers the collaborative routing among the layered controllers, can effectively improve the utilization rate of resources, and reduce the cost of the controllers.
Detailed Description
The technical solutions of the present invention will be described clearly and completely with reference to the accompanying drawings, and it should be understood that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the description of the present invention, it is to be noted that, unless otherwise explicitly specified or limited, the terms "connected" and "connected" are to be interpreted broadly, e.g., as being fixed or detachable or integrally connected; can be mechanically or electrically connected; the two elements may be directly connected or indirectly connected through an intermediate medium, or may be communicated with each other inside the two elements, or may be wirelessly connected or wired connected. The specific meanings of the above terms in the present invention can be understood in specific cases to those skilled in the art.
In addition, the technical features involved in the different embodiments of the present invention described below may be combined with each other as long as they do not conflict with each other.
Fig. 1 shows a routing system based on a hierarchical multi-domain SDON architecture, where a top layer is a global controller, a network view of global abstraction is grasped, a lower control includes N layers of sub-domain controllers, the N layers of sub-domain controllers respectively manage respective domain topologies, the sub-domain controllers only grasp topology information of a local domain, and information interaction with other sub-domain controllers is realized by interacting with the global controller, or information interaction with other sub-domain controllers is realized by an interface. The network element nodes therein may be managed by the sub-domain controller, or may be directly managed by the upper layer manager thereof. The present embodiment provides a routing determination method based on hierarchical multiple domains, which is cooperatively executed by the above controllers, as shown in fig. 2, and includes the following steps:
s1: acquiring source node information and sink node information in a service request;
when the service comes to carry out routing calculation, the global controller firstly obtains the information of the source node s and the destination node d.
S2: determining the type of the service request according to the source node information and the sink node information;
the controller in the multi-domain SDON network manages part of sub-domain controllers and part of network elements directly, determines whether the nodes s and d belong to the same controller to be managed directly according to the information of the source node s and the sink node d, and judges whether the service belongs to the same-domain service or the cross-domain service, wherein the same-domain service is divided into two cases according to whether the nodes s and d are managed directly by an interlayer controller, ① s and d are managed directly by the sub-domain controllers, ② s and d are managed directly by the same-domain controller and an Nth (N is more than or equal to 2) layer controller, the cross-domain service is divided into three cases according to whether the nodes s and d are managed directly by the interlayer controller, ① s and d are spanned and are managed directly by the sub-domain controllers, ② s and d are spanned and are managed directly by the interlayer controllers, ③ s and d are spanned, s (or d) are managed directly by the sub-domain controllers, and d (or s) are managed directly by the.
S3: and determining the optimal path of the route according to the type of the service request.
And determining whether the source and destination nodes are directly managed by an upper controller or a sub-domain controller according to the information of the source and destination nodes, and finally determining k candidate paths, wherein the global controller selects the path with the minimum cost as the optimal path by calculating the cost of the k candidate paths.
According to the routing determination method based on the hierarchical multi-domain provided by the embodiment of the invention, the source node information and the destination node information in the service request are obtained, the type of the service request is determined according to the source node information and the destination node information, and the optimal route of the routing is determined according to the type of the service request.
In the first case, that is, when the service request is a service request in the same domain, the step S3 specifically includes:
s31, determining a controller for managing the source node and the sink node;
and S32, the controller calculates at least one candidate path according to the path building requirement, the constraint condition and the current network topology information, and determines the path with the minimum cost as the optimal path from the at least one candidate path.
Further, when the source node and the sink node in the request for the same-domain service are both directly managed by the sub-domain controller, as shown in fig. 3, the step S32 specifically includes:
s321a, determining the domains of the source node and the sink node by the upper controller;
s321b, the upper controller sends the route-establishing signaling to the sub-domain controller of the domain where the source node and the sink node are located;
s321c, after receiving the route establishing signaling, the sub-domain controller of the domain where the source node and the host node are located calculates at least one candidate route according to the route establishing requirement, the constraint condition and the current network topology information of the upper layer controller;
s321d, the sub-domain controller calculates the cost of at least one candidate path, determines the path with the minimum cost as the optimal path, and returns the optimal path to the upper layer controller to recur to the global controller at the top layer;
the global controller replies 321e to the ingress controller with the optimal path.
In this embodiment, the upper layer controller is a manager on a domain where the source node and the sink node are located, for example, the domain where the source node and the sink node are located is an N-1 layer controller, and then the upper layer controller is an nth layer controller, i.e., the nth layer controller issues a route establishment signaling to an N-1 layer controller of a sub-domain controller where the s node and the d node are located, and after receiving the route establishment signaling, the N-1 layer controller calculates k candidate paths by using a controller route calculation module according to a route establishment requirement, a constraint condition and current network topology information of the upper layer controller; and the sub-domain controller calculates the cost of the k candidate paths while establishing the path, and finally determines the path with the minimum cost as the optimal path after comparison. And the entrance controller comprises a controller in the domain where the s is located, the controller directly manages the s node, and after the optimal path is determined, the global controller replies the optimal path to the entrance controller.
When the source node and the sink node in the request of the same domain are directly managed by the inter-layer controller, as shown in fig. 4, the step S32 specifically includes:
s322a, the controller of the layer where the source node and the host node are located calculates at least one candidate path according to the path building requirement, the constraint condition and the current network topology information;
s322b, calculating the cost of at least one candidate path by the controllers of the layer where the source node and the sink node are located, determining the path with the minimum cost as the optimal path, and recursing to the global controller at the top layer from the upper layer to the lower layer;
s322, the global controller replies the optimal path to the ingress controller 322 c.
In the embodiment, the s node and the d node are in the same domain and are directly managed by the Nth (N is larger than or equal to 2) layer controller, the Nth (N is larger than or equal to 2) layer controller directly executes the controller route calculation module according to the route construction requirement, the constraint condition and the current network topology information, calculates k candidate routes, calculates the cost of the k candidate routes while constructing the route, and finally determines the route with the minimum cost as the optimal route.
In the second case, that is, when the service request is a cross-domain service request, the step S3 specifically includes:
s31', determining a controller for managing the source node and the sink node;
and S32', determining the border gateway nodes of the domain where the source node and the sink node are located, calculating at least one candidate path by the controller according to the border gateway nodes, the route establishment requirement, the constraint condition and the current network topology information, and determining the path with the minimum cost from the at least one candidate path as the optimal path.
Further, in the cross-domain request, when both the source node and the sink node are directly managed by the sub-domain controller, as shown in fig. 5, the step S32' specifically includes:
s32' 1a, selecting a boundary gateway node GWs and a Gwd of a domain where a source node and a sink node are located by an upper layer controller respectively;
s32' 1b, determining a domain sequence between GWs and the Gwd border gateway node by an upper layer controller;
s32' 1c, selecting the border gateway node between traversed adjacent domains as the peer node of the computation path;
s32' 1d, the sub-domain controller of the domain where the source node is located sends a route calculation request to an upper layer controller;
s32' 1e, the upper controller calculates at least one candidate path based on the current abstract network topology according to the domain sequence and the selected peer node, and sends a route establishing signaling to the traversed sub-domain controller;
s32' 1f, after the traversed sub-domain controller receives the route establishing signaling, respectively performing intra-domain route establishment according to the route establishing requirement, constraint condition and current network topology information of the upper layer controller;
s32' 1g, the sub-domain controllers respectively calculate the cost of the established path and return the cost to the upper layer controller and the global controller which recurs to the top layer by layer;
s32' 1h, the global controller calculates the cost of at least one candidate path based on the path cost information replied by the traversed sub-domain controller, and determines the path with the minimum cost as the optimal path;
s32' 1i the global controller replies to the ingress controller with the optimal path.
In this embodiment, the s-node and d-node upper controllers randomly calculate k candidate paths based on the current abstract network topology according to the domain sequence and the selected peer node, calculate the cost of the k candidate paths according to the path cost information replied by the sub-domain controller, and select the path with the minimum cost as the optimal path. When the cross-domain request is used for finding the optimal path, the peer nodes are utilized to improve the probability that the selected path is the optimal path, and the peer nodes are called as the peer nodes, namely the border gateway nodes of the adjacent domains. Global optimal results can be achieved as long as a suitable peer can be found.
In the cross-domain request, when both the source node and the sink node are directly managed by the inter-layer controller, as shown in fig. 6, the step S32' specifically includes:
s32' 2a, selecting a boundary gateway node GWs and a Gwd of a domain where a source node and a sink node are located by an upper layer controller respectively;
s32' 2b, the upper layer controller determines a domain sequence between GWs and the Gwd border gateway node;
s32' 2c, selecting the border gateway node between traversed adjacent domains as the peer node of the computation path;
s32' 2d, the upper controller calculates at least one candidate path based on the current part of abstract network topology and the part of actual network topology according to the domain sequence and the selected peer node, and sends a route establishing signaling to the traversed sub-domain controller;
s32' 2e, after the traversed subzone controller receives the route establishing signaling, respectively performing intra-zone route establishment according to the route establishing requirement, constraint condition and current network topology information of the upper layer controller;
s32' 2f, the sub-domain controllers respectively calculate the cost of the established path and return the cost to the upper layer controller and the global controller which recurs to the top layer by layer;
s32' 2g, the global controller calculates the cost of at least one candidate path based on the path cost information replied by the traversed sub-domain controller and the cost information of the network element directly managed by the upper controller traversed during path calculation, and determines the path with the minimum cost as the optimal path;
s32' 2h, the global controller replies the optimal path to the ingress controller.
In this embodiment, since the source node and the sink node are directly managed by the managers in different layers, the manager in the upper layer common to the source node and the sink node randomly calculates k candidate paths based on a part of the abstract network topology inside the current domain and a part of the actual network topology between network elements, and issues a route establishment signaling to the traversed sub-domain controller, where the path cost information returned by the traversed sub-domain controller and the cost information of the network elements directly managed by the upper layer controller during route calculation calculate the cost of the k candidate paths, and select the path with the smallest cost as the optimal path.
In the cross-domain request, when one of the source node and the sink node is directly managed by the sub-domain controller, and the other is directly managed by the upper controller, as shown in fig. 7, the step S32' specifically includes:
s32' 3a, selecting a border gateway node GWs and a Gwd of a domain where the source node and the sink node are respectively positioned by an upper layer controller;
s32' 3b, the upper layer controller determines a domain sequence between GWs and the Gwd border gateway node;
s32' 3c, selecting the border gateway node between traversed adjacent domains as the peer node of the computation path;
s32' 3d, the sub-domain controller of the domain where the source node is located sends a route calculation request to the upper controller;
s32' 3e, the upper controller calculates at least one candidate path based on the current part of abstract network topology and the part of actual network topology according to the domain sequence and the selected peer node, and sends a route establishing signaling to the traversed sub-domain controller;
s32' 3f, after the traversed subzone controller receives the route establishing signaling, respectively performing intra-zone route establishment according to the route establishing requirement, constraint condition and current network topology information of the upper layer controller;
s32' 3g, the sub-domain controllers respectively calculate the cost of the established path and return the cost to the upper layer controller and the global controller which recurs to the top layer by layer;
s32' 3h, the global controller calculates the cost of at least one candidate path based on the path cost information replied by the traversed sub-domain controller and the cost information of the network element directly managed by the upper controller traversed during path calculation, and determines the path with the minimum cost as the optimal path;
s32' 3i the global controller replies to the ingress controller with the optimal path.
In this embodiment, an s node (or d) is directly managed by a sub-domain controller, when the d node (or s) is directly managed by an interlayer controller, the sub-domain controller of the domain where the s node is located sends the d node (or s) to an upper controller, the common upper controller randomly calculates k candidate paths based on the current part of abstract network topology and the part of actual network topology, calculates the cost of the k candidate paths based on the path cost information replied by the traversed sub-domain controller and the cost information of the network element directly managed by the upper controller traversed during routing calculation, and finally selects the path with the minimum cost as the optimal path.
As a preferred implementation, the optimal path of the cross-domain request in this embodiment can be expressed as:
op(ns,nd)=op(ns,nbs)+op(nbs,nbd)+op(nbd,nd),
wherein op (n)s,nd) Representing a source node nsAnd a sink node ndOptimal path between op (n)s,nbs) Representing a source node nsBorder gateway node n between adjacent domainsbsOptimal path between op (n)bs,nbd) Representing border gateway nodes n between adjacent domainsbsBorder gateway node n between adjacent domainsbdOptimal path between op (n)bd,nd) Representing border gateway nodes n between adjacent domainsbdAnd a sink node ndThe optimal path therebetween.
If the ingress domain contains m border gateway nodes and the egress domain contains n border gateway nodes, then there are at most m x n peer nodes. When calculating the route, the probability that each pair of peer nodes can realize the global optimal path is 1/m n, if k pairs of peer nodes are selected, k candidate paths are established, then the optimal path is selected according to the cost function of each path, and the global optimal probability is improved to 1- (1-1/m n)kTherefore, as k increases, the probability that the result is the global optimum is higher, and the specific calculation in the domain is based on the controller calculation module.
Accordingly, the present embodiment further includes a controller, as shown in fig. 8, including: at least one processor 210 and a memory 220 communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to perform a hierarchical multi-domain based route determination method. The system may further comprise: an input unit 230.
The processor 210, the memory 220, and the input unit 230 may be connected by a bus 200 or in other ways, and fig. 3 illustrates an example of a connection by the bus 200.
The memory 220, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the method for determining the shortest path between the electrical devices in the embodiment.
The processor 210 executes various functional applications of the server and data processing, i.e., the method in the present embodiment, by executing non-transitory software programs, instructions, and modules stored in the memory 220.
The input unit 230 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the processing device operated by the list items.
The one or more modules are stored in the memory 220 and, when executed by the one or more processors 210, perform the method shown in fig. 2.
The product can execute the method provided by the embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. For details of the technique not described in detail in the embodiment, reference may be made to the related description in the embodiment shown in fig. 2.
It should be understood that the above examples are only for clarity of illustration and are not intended to limit the embodiments. Other variations and modifications will be apparent to persons skilled in the art in light of the above description. And are neither required nor exhaustive of all embodiments. And obvious variations or modifications therefrom are within the scope of the invention.