Routing method for dynamic WDM optical networks with wavelength continuity constraints
11750955 · 2023-09-05
Assignee
Inventors
Cpc classification
H04J14/0227
ELECTRICITY
International classification
Abstract
The present invention provides a novel computer-implemented routing method for a dynamic wavelength-division multiplexing (WDM) optical network having wavelength continuity constraints. The method is more efficient than the existing methods, in terms of number of wavelengths, and due to the fixed routing strategy used, its implementation is simple, and its online operation is very fast.
Claims
1. A computer-implemented routing method for a dynamic wavelength-division multiplexing (WDM) optical network having wavelength continuity constraints, comprising the steps of: a) obtaining, by means of a computational device, a topology of the dynamic WDM optical network having wavelength continuity constraints, wherein the dynamic WDM optical network is represented by a graph =(
,
) comprising a plurality
, of nodes interconnected by a plurality
, of links; b) obtaining, by means of said computational device, a plurality of users of the network and a traffic load associated with each user of the plurality of users, wherein each user is defined as a source node and a destination node; c) obtaining, by means of said computational device, a plurality of non-assigned users from the plurality of users, and storing said plurality of non-assigned users in a non-assigned users database, wherein each non-assigned user is defined as a user without a definitive route; d) obtaining, by means of said computational device, a plurality of preliminary routes for the plurality of non-assigned users, wherein each non-assigned user has a preliminary route that uses the minimum number of links interconnecting the source node and the destination node of said non-assigned user; e) sorting, by means of said computational device, the plurality of non-assigned users stored on the non-assigned users database according to the number of links used by the preliminary route of each non-assigned user, and sorting the non-assigned users having preliminary routes using equal number of links according to the traffic load, wherein the non-assigned users having preliminary routes using equal number of links and having equal traffic load are sorted randomly, for obtaining a list of the plurality of non-assigned users sorted; f) storing, by means of said computational device, the non-assigned users having preliminary routes that use a number of links equal to 1 link in a definitive routes users database, and removing said non-assigned users having said preliminary routes that use the number of links equal to 1 link from the non-assigned users database, wherein each non-assigned user stored in the definitive routes users database is defined as a user with a definitive route; g) selecting, by means of said computational device, the first non-assigned user from the list of the plurality of non-assigned users sorted and stored on the non-assigned users database; h) calculating, by means of said computational device, a cost for each link of the network using the traffic load of each link used by the definitive route of each user stored in the definitive routes users database, wherein the links not used by any definitive route are assigned traffic load equal to 0, and an average traffic load of each link of the network, wherein the cost of each link C
of the network is calculated by the formula:
C=e.sup.ρ
.sup.−
is the total traffic load of the link
and
2. The computer-implemented routing method according to claim 1, wherein the plurality of non-assigned users stored on the non-assigned users database are sorted according to the number of links used by the preliminary route of each non-assigned user, from the non-assigned user having the preliminary route that uses less links to the non-assigned user having the preliminary route that uses more links, and wherein the non-assigned users having preliminary routes using equal number of links are sorted according to the traffic load, from the lowest to highest traffic load.
3. The computer-implemented routing method according to claim 1, wherein the plurality of non-assigned users stored on the non-assigned users database are sorted according to the number of links used by the preliminary route of each non-assigned user, from the non-assigned user having the preliminary route that uses less links to the non-assigned user having the preliminary route that uses more links, and wherein the non-assigned users having preliminary routes using equal number of links are sorted according to the traffic load, from the highest to lowest traffic load.
4. The computer-implemented routing method according to claim 1, wherein the plurality of non-assigned users stored on the non-assigned users database are sorted according to the number of links used by the preliminary route of each non-assigned user, from the non-assigned user having the preliminary route that uses more links to the non-assigned user having the preliminary route that uses less links, and wherein the non-assigned users having preliminary routes using equal number of links are sorted according to the traffic load, from the highest to lowest traffic load.
5. The computer-implemented routing method according to claim 1, wherein the plurality of non-assigned users stored on the non-assigned users database are sorted according to the number of links used by the preliminary route of each non-assigned user, from the non-assigned user having the preliminary route that uses more links to the non-assigned user having the preliminary route that uses less links, and wherein the non-assigned users having preliminary routes using equal number of links are sorted according to the traffic load, from the lowest to highest traffic load.
6. The computer-implemented routing method according to claim 1, wherein the traffic load of each link , ρ
, is calculated by the formula:
is the plurality of users whose definitive routes uses the link
and ρ.sub.u is the traffic load of the selected non-assigned user u, and links that are not used by any definitive route are assigned traffic load equal to 0.
7. The computer-implemented routing method according to claim 1, wherein the average traffic load,
8. The computer-implemented routing method according to claim 1, wherein non-operational routes are obtained by means of the Dijkstra algorithm.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
DETAILED DESCRIPTION OF THE INVENTION
(12) The diagrams presented in the attached figures describe the environment of the invention.
(13) The method of the present invention implements a cheapest path by layers algorithm (hereinafter referred to in the text as CPL), which is based on the cheapest route (among all the possible routes) connecting a source node 210 to a destination node 210 in the provider network 110, as seen in
(14) The operation of the CPL method can be performed in environment 100 as shown in
(15) The provider network 110 is a dynamic wavelength-division multiplexing (WDM) optical network, which can be modeled as a graph =(
,
), comprising a plurality
of nodes 210 interconnected by a plurality
of links 220. A network node 210 may be any type of optical network (that is, an optical cross-connect—OXC) without wavelength conversion capabilities.
(16) The network topology information system 120 may be a server or network device inside or outside the provider network 110. As shown in
(17) As shown in
(18) The cheapest path by layers calculator system 150 may be a server or a computer device capable of communicating with other devices, for example, a desktop computer or laptop computer, outside the provider network 110. As shown in
(19) The structure of the non-assigned users table 610, the definitive routes table 620, and the routes table 630 are shown in
(20) The communication system 140 may be any network system that allows to connect two or more devices, such as the cellular network, the public land mobile network (PLMN), a second generation (2G) network, a third generation (3G) network, a fourth generation (4G), a long-term evolution (LTE) network, a fifth generation (5G), a code division multiple access (CDMA) network, a global system for mobile communications (GSM) network, a general packet radio service (GPRS), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an ad hoc network, an Intranet, the Internet, a fiber optic based network, a satellite network, television network, or a mixture of one or more of these systems.
Calculation of the Cost of Links and Routes
(21) Each pair of nodes 210 represents a user u, which communicates via a route .sub.u. It is assumed that the cost C
of the route
.sub.u is equivalent to the cost of the user u—which is calculated when the definitive route of user u is evaluated—and is given by the sum of the cost of each link, C
, assigned to each link
belonging to the user's route. Specifically, C
is calculated by the equation (1) and C
is calculated by the equation (2).
C=e.sup.ρ
.sup.−
(22)
(23) In equation (1), ρ is the traffic load of the link
, which is equal to the sum of the traffic load ρ.sub.u provided by each user u, belonging to the plurality of users U
, using the link
in their route, as described in equation (3):
(24)
(25) The method of the present invention uses an iterative procedure to find the route with the cheapest cost for each network user. This iterative procedure calculates the cost of each link on each iterative stage, considering only the users with a definitive route stored in a definitive routes users database. Therefore, the value ρ sums only the traffic load of the users stored in said definitive routes database.
(26) On the other hand, referring again to equation (1), is the plurality of links 220 in the provider network 110, and L the number of links in
. Again, the users traffic load considered are the ones with a definitive route decided and stored in the definitive routes users database.
(27)
EXAMPLE
(28) The CPL algorithm is executed in the cheapest path by layers calculator system 150 and its operation is described below: 1. The cheapest path by layers calculator system 150 requests the network topology information from the network topology information system 120 and stores it in its own topology database 520. 2. The cheapest path by layers calculator system 150 requests the information about the users and their traffic loads from the users information system 130, and stores them in the non-assigned users database 560. 3. The link cost calculator 540 first assigns a traffic load 0 to each link of the topology and calculates the costs of each link using the equation (1). This means that, initially, each link has a cost equal to 1. 4. The route calculator 550 calculates the preliminary routes for each user of the network using any cheapest route algorithm, for example, Dijkstra algorithm (Dijkstra, E. W. A note on two problems in connexion with graphs. Numer. Math. 1, 269-271 (1959), the disclosure of which is hereby incorporated by reference in its entirety), based on the network topology and the cost of the links previously defined by the link calculator 540. Initially, since the cost of each link is equal to 1, the preliminary route (or cheapest route) for each user is the one using the minimum number of links interconnecting the source node and the destination node of said user. 5. The route calculator 550 stores the preliminary routes of the non-assigned users in the non-assigned users database 560. 6. The routes calculator 550 sorts the non-assigned users stored in the non-assigned users database 560 according to the number of links used by the preliminary routes of its users, from less number of links to more number of links, or vice versa. The routes with the same number of links are sorted by their traffic load, from lowest to highest traffic load, or vice versa. In the case of tie, i.e., same number of links and same traffic load, the order is arbitrarily chosen. In the present example, the non-assigned users are sorted from less to more number of links, and from lowest to highest traffic load. This step generates a list of the sorted non-assigned users which is stored in the non-assigned users database 560, or in a specific list stored in the route calculator. 7. The routes calculator 550 moves all the non-assigned users with a preliminary route having 1 link, from the non-assigned users database 560 to the definitive routes users database 570, removing them from the non-assigned users database 560. As an example, using the topology shown in
(29) A network manager may use this routing table (called R) to transfer it and copy it in a centralized or distributed manner to the nodes 210 of the provider network 110.
Cost Algorithm
(30) The link cost calculator 540 performs the following operations for each link stored in topology database 520.
(31) The traffic load ρ of the link
is calculated using equation (3). The plurality of users U
using the link
considered in this step correspond to the plurality of users stored in the definitive routes users database 570. The links that are not used by any definitive route are assigned traffic load equal to 0.
(32) The cost C of link
is calculated using equation (1).
(33) The link cost calculator 540 calculates the average traffic load of the links by equation (4).
(34) The cheapest routing method can be used in two different ways: a) it can be used to generate a route per user, valid for all wavelengths of the network; or b) alternatively, it can be used to generate a route per user, for each different wavelength (or a set of consecutive wavelengths). In this case, the traffic load offered by each user at each wavelength can be evaluated using the method published in “Blocking Evaluation and Wavelength Dimensioning of Dynamic WDM Networks without Wavelength Conversion” by Jara et. al. in Journal of Optical Communications and Networking, vol. 9, no. 8, pp. 625-634 (2017), the disclosure of which is hereby incorporated by reference in its entirety, or by any other method available in the literature.