In a wavelength division multiplexed (WDM) network, optical signals may be switched from one optical communication link to another. In order to achieve such switching, the optical signals are often received from a first optical link at a node and converted to electrical signals. The electrical signals are then used to generate further optical signals, which are supplied to a second optical link connected to the node.
An alternative approach involves all-optical switching, whereby optical signals are received from one or more links at a node, and directed to corresponding output links at the node without optical-to-electrical conversion. Because there is no optical-to-electrical conversion at the node, it may be difficult to convert a signal on a circuit to a different wavelength at the node. Accordingly, a circuit must have the same wavelength assigned along each link in its path. In addition, any circuits traversing a particular link in the network must each be assigned a different wavelength. Moreover, wavelength availability may depend on factors other than the above-noted constraints. For example, certain transmitters may be less expensive than others.
Accordingly, there is a need for an optimal wavelength assignment method that takes into account multiple parameters.
In accordance with the present disclosure, a method of configuring a wavelength division multiplexed (WDM) network is presented. The WDM network includes circuits that carry optical signals, with each signal corresponding to a wavelength. The WDM network includes nodes, with links connecting the nodes to one another. Each circuit includes at least one link and at least one node. The method comprises assigning each of the circuits to an optical signal, based on first and second criteria, and configuring the nodes based on the assignment.
In accordance with the present disclosure, another method of configuring a WDM network is presented. The WDM network includes circuits that carry optical signals, with each signal corresponding to a wavelength. The WDM network includes nodes, with links connecting the nodes to one another. Each circuit includes at least one link and at least one node. The method comprises generating a conflict graph that includes vertices, with edges connecting the vertices; associating each circuit with a vertex; assigning a subgroup of optical signals to a vertex; prioritizing each optical signal within the subgroup; assigning each circuit to an optical signal based on the two previous steps; and configuring the nodes based on the assignment.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure.
Reference will now be made in detail to the present embodiments of the invention, an example of which is illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
Consistent with the present disclosure, a method is provided for configuring a WDM network by assigning optical signals to circuits in the network based on first and second criteria and then configuring the nodes based on that assignment. In an initial step, the WDM network may be modeled with a diagram displaying the nodes, circuits, links, and available wavelengths for each link in the WDM network. Then, in a subsequent step, a conflict graph is created based on the WDM network that includes vertices corresponding to circuits in the WDM network, edges corresponding to shared links in the WDM network, and wavelength lists corresponding to each vertex. The wavelength lists in the conflict graph should be sorted based on the priority of the wavelengths in the network. In a later step, an algorithm, such as a greedy heuristic algorithm, may be applied to the conflict graph in order to assign wavelengths to each circuit in the network. The nodes are then configured within the network based on the assignment of wavelengths from the third step.
Typically, there are a limited number of wavelengths on each link that can be allocated to a given optical signal transmitted on a circuit. Although networking equipment can be designed to operate with a wide range of wavelengths, the wavelengths actually available in a link within a network may be constrained to a subset of the set of wavelengths supported by the equipment due to such things as the type and quality of the deployed optical fibers, available amplification sites, and the types of amplifiers used. In addition, when wavelengths need to be allocated to a set of circuits, the network may be already deployed and some wavelengths may already be allocated to circuits that were previously provisioned.
In WDM network 100, the wavelengths available for allocation on link 120 include wavelengths λ3, λ6, λ7, and λ9, and the wavelengths available for allocation on link 121 include wavelengths λ3, λ4, λ6, λ8, and λ9. In addition, the wavelengths available for allocation on link 122 include wavelengths λ3, λ4, λ6, λ8, and λ9, and the wavelengths available for allocation on link 123 include wavelengths λ3, λ4, λ5, λ6, and λ8. Further, the wavelengths available for allocation on link 124 include wavelengths λ4, λ5, λ8, λ9, and λ11.
Within WDM network 100, several circuits C1-C7 are illustrated, with each circuit including one or more links 120-124: circuit C1 includes links 120 and 121; circuit C2 includes links 121 and 122; circuit C3 includes links 121, 122, and 124; circuit C4 includes links 122 and 123; circuit C5 includes links 123 and 124; circuit C6 includes links 122 and 124; and circuit C7 includes links 120 and 121.
The wavelength lists 221-227 are each sorted based on the priority associated with each wavelength in the network. A network designer may prioritize certain wavelengths if, for example, the designer has spare line system equipment operating in those wavelengths that could be used in an upcoming network buildout or if there is a lower expense for equipment supporting certain wavelengths. Similarly, an equipment manufacturer designing a network for a customer may have a preference for equipment supporting certain wavelengths that it already has in stock, rather than for equipment supporting other wavelengths that it does not have in stock or that has yet to be manufactured. In the example shown in
In the conflict graph 200, edges 230-1 through 230-14 are shown connecting vertices 211-217 when the corresponding circuits C1-C7 share at least one link. For example, circuit C1 shares at least one link with circuits C2, C3, and C7, so edges 230-1, 230-2, and 230-3 are drawn connecting vertex 211 with vertices 212, 213, and 217 (corresponding to circuits C1, C2, C3, and C7). In assigning a wavelength to a vertex (and its corresponding circuit), the wavelength is chosen from its corresponding list of available wavelengths, provided that the same wavelength is not assigned to vertices connected by an edge.
After a conflict graph has been created, different known algorithms, such as exhaustive enumeration and greedy heuristics can be used to determine the assignment of wavelengths. One advantage of using an exhaustive enumeration algorithm is that if there are multiple solutions to the assignment of wavelengths for a conflict graph, then this algorithm will determine all such solutions. One disadvantage of using the exhaustive enumeration algorithm is that this algorithm potentially requires more computation than the greedy heuristics algorithm. An example of a greedy heuristic algorithm is a “Largest First, First Fit (LF+FF)” algorithm in which the vertices of the conflict graph are first sorted in a “Largest First” list in descending order according to the number of edges connected to each vertex. To the extent that some of the vertices have the same number of edges, the vertices can be further sorted in descending order in the “Largest First” list according to the length of their corresponding wavelength lists (with shorter wavelength lists receiving higher priority), or they can be further sorted according to the “rarity” of the wavelengths in the wavelength lists (with the set of “rarer” wavelengths receiving higher priority). After the ordering is defined in the “Largest Fit” list, a wavelength is assigned to each vertex by using “First Fit.” “First Fit” means that, for a given vertex, a “fit” is attempted for each wavelength in its wavelength list in the order that it appears in the list until a “fitting” wavelength is found (i.e., a wavelength that is not used by any of the vertices that are connected by an edge to the given vertex). Once a “fitting” wavelength is found, it is assigned to the vertex.
By way of example, to create the “Largest First” list for the conflict graph 200 in
Vertex 213: λ9, λ8, λ4
Vertex 212: λ9, λ8, λ6, λ4, λ3
Vertex 216: λ9, λ8, λ4
Vertex 214: λ8, λ6, λ4, λ3
Vertex 215: λ8, λ5, λ4
Vertex 211: λ9, λ6, λ3
Vertex 217: λ9, λ6, λ3
Once the “Largest Fit” list is created, the “First Fit” algorithm can be applied to the list. Beginning with vertex 213, the first wavelength in the list (λ9) can be assigned, because no other wavelengths have yet been assigned (so nothing can conflict with this assignment). For vertex 212, the first wavelength in the list (λ9) cannot be assigned, because vertex 212 shares an edge 230-4 with vertex 213, and vertex 213 is already using wavelength λ9; however, the second wavelength in the list (λ8) can be assigned. For vertex 216, neither the first nor second wavelength in the list (λ9, λ8) can be assigned, because they are already assigned to vertices 213 and 212, which both share an edge with vertex 216; however, the last wavelength in the list (λ4) can be assigned. For vertex 214, the first wavelength in the list (λ8) can not be assigned, because vertex 214 shares an edge 230-5 with vertex 212, and vertex 212 is already using wavelength λ8; however, the second wavelength in the list (λ6) can be assigned. For vertex 215, the first wavelength in the list (λ8) can be assigned, because even though vertex 212 was already assigned wavelength λ8, vertex 215 does not share an edge with vertex 212. For vertex 211, the first wavelength in the list (λ9) cannot be assigned, because vertex 211 shares an edge 230-2 with vertex 213, and vertex 213 is already using wavelength λ9; however, the second wavelength in the list (λ6) can be assigned. For vertex 217, the first wavelength in the list (λ9) can not be assigned, because vertex 217 shares an edge 230-8 with vertex 213, and vertex 213 is already using wavelength λ g; the second wavelength in the list (λ6) can not be assigned, because vertex 217 shares an edge 230-3 with vertex 211, and vertex 211 is already using wavelength 6; however, the third wavelength in the list (λ3) can be assigned. Thus, of the following wavelength assignments can be obtained in the example shown in
Vertex 213: λ9
Vertex 212: λ8
Vertex 216: λ4
Vertex 214: λ6
Vertex 215: λ8
Vertex 211: λ6
Vertex 217: λ3
After determining the wavelength assignment for each circuit in the network as described above, the nodes within the network are then configured based on that assignment.
Flowchart 300 in
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.