Virtual routers for GMPLS networks
Virtual routers that abstract photonic sub-domains are provided for GMPLS networks. A virtual router uses a link viability matrix to keep track of the set of viable connections between inputs and outputs of a photonic sub-domains. A virtual router may receive RSVP-TE signaling messages and either allocate a working input to output link pair or, if explicitly signaled, verify that the requested link is currently viable. A virtual router also advertises, in its link state updates, the current set of possible outputs for any input link. Shortest path computations can be implemented utilizing virtual routers by modifying a topology graph in accordance with the link viability matrix of the virtual router.
Latest NORTEL NETWORKS LIMITED Patents:
This application claims the benefit of the filing date of U.S. Provisional Application; Ser. No. 60/667,411; filed Apr. 1, 2005; entitled “GMPLS path computation constraints to address blocking/abstract GLSR,” the entirety of which provisional application is incorporated herein by reference.
FIELD OF THE INVENTIONThe present invention relates generally to interfacing GMPLS architectures to photonic sub-domains. More particularly, the present invention relates to abstracting a photonic sub-domain as a virtual GLSR.
BACKGROUND AND SUMMARY OF THE INVENTIONDue to the explosive increase in the number of Internet users and various new services, traffic volume is increasing dramatically every year. This trend will likely continue since novel network applications like VoIP and Video on Demand are emerging. These types of services are difficult to realize on the existing best effort type IP network. Accordingly, enterprise users, which employ various network applications, utilize more dedicated network services like IP-VPN and Ethernet as well as the leased-line service. This suggests the need for an adaptive network control mechanism that offers various transmission speeds and levels of communication quality to support user demands and new applications in the next generation networks. MultiProtocol Label Switching (“MPLS”) and Generalized MPLS (“GMPLS”) technologies are the key contenders to achieve this adaptive network control mechanism. MPLS realizes traffic control in the IP network. Using the circuit switching concept seen in the telephone network, it establishes and handles traffic flows that satisfy different service quality demands. At present, MPLS technology is being used to realize traffic management in Internet service providers and to realize IP-VPN services. GMPLS is a new control technology designed for the next-generation photonic networks. GMPLS extends MPLS to encompass time-division (for example, SONET ADMs), wavelength (that is, optical lambdas), and spatial switching (for example, incoming port or fiber to outgoing port or fiber). GMPLS represents a natural extension of MPLS to allow MPLS to be used as the control mechanism for configuring not only packet-based paths, but also paths in non-packet based devices such as optical switches, TDM muxes, and SONET ADMs. GMPLS enables unified control management of the network layers (packet/TDM/wavelength/optical fiber). The use of GMPLS unifies network operations which promises to yield significant network operation cost reductions. The GMPLS architecture is designed to permit a router to act as an edge device, that is, a Generalized Label Edge Router (“GLER”), into a lambda, fiber, or TDM switched core of Generalized Label Switch Routers (“GLSRs”). For a GLER to initiate paths, the GLER must be able to compute a viable path through the core and subsequently signal the path via GMPLS Signaling Resource ReserVation Protocol—Traffic Engineering (“RSVP-TE”) with a high degree of probability that the path will be viable. In other words, the edge routers must have a reasonable view of the topology to request a path in the first place.
The present invention addresses this, and other issues, by providing virtual routers for GMPLS networks that abstract photonic sub-domains. A virtual router uses a link viability matrix to keep track of the set of viable connections between inputs and outputs of a photonic sub-domains. A virtual router may receive RSVP-TE signaling messages and either allocate a working input to output link pair or, if explicitly signaled, verify that the requested link is currently viable. A virtual router also advertises, in its link state updates, the current set of possible outputs for any input link. Shortest path computations can be implemented utilizing virtual routers by modifying a topology graph in accordance with the link viability matrix of the virtual router.
BRIEF DESCRIPTION OF THE DRAWINGSThe above and further advantages of this invention may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like numerals indicate like structural elements and features in the various figures. The drawings are not meant to limit the scope of the invention. For clarity, not every element may be labeled in every figure. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
The normal mechanisms of MPLS traffic engineering also apply to GMPLS where the router uses a Constraint-based Shortest Path First (“CSPF”) algorithm. CSPF is a slightly modified Dijkstra algorithm. Although CSPF algorithms are known in the art, there is no standard CSPF. Generally, CSPF executes on an ingress (or source) router and calculates an Explicit Route (“ER”) to a destination, based on specific Label Switched Path (“LSP”) constraints, using a Traffic Engineering Database (“TED”) (also referred to as a topology database or a topology graph). The resulting ER can then be used by RSVP-TE or Constraint-based Label Distribution Protocol (“CF-LDP”) to set up LSPs. CSPF is similar to a normal Shortest Path First algorithm, except during link examination, it rejects links that do not meet a constraint, such as links without capacity, or links that do not match color constraints or configured policy. In general, CSPF calculates the shortest lowest-cost path that conforms to the constraint criteria.
Such CSPF style algorithms and data are generally sufficient to deal with most path computation problems encountered with statistical multiplexors or and time-division-multiplexed (“TDM”) switching. However, when fiber and wavelength switching are considered, far more data is required to compute viable photonic paths. For example, computing whether a photonic path is viable from some laser to some detector, requires careful consideration of many factors, including most, if not all, of the following: distance and signal-to-noise ratio; wavelength; fiber type; amplifier location, type and gain; laser type; detector type; number of switching points; loss per switching point; and all other LSPs that traverse every segment and their power levels. Each of these types of factors presents difficulties for a CSPF algorithm because the optimum or even a viable solution is likely to require substantially more than the O(nlogn) run-time of a typical CSPF algorithm and would require detailed physics based models of each device and all the LSPs currently placed in the network and advertisements of those parameters. The physics of each device is highly dependent on the given manufacturer and will vary over the lifetime of the component. It is none-the-less possible to run detailed physical models of a photonic domain of many interconnected photonic devices and compute with a high degree of certainty the viability of any given path, it is probably however pre-mature to attempt to standardize all of these attributes and the algorithms required to optimize based on those attributes because they are highly vendor specific and are likely to change quickly as new advances in photonics are made.
A photonic network spanning hundreds or thousands of kilometers, with amplifiers, optical cross connectors (“OXCs”), optical add/drop multiplexers (“OADMs”), and other pure photonic devices can logically be partitioned into regions or sub-domains each of which is represented as an abstract topology with various inputs and outputs. For each photonic sub-domain, there exists an optical controller or set of optical controllers which have the ability to talk directly to all of the devices in its domain and to manipulate any of their controllable parameters. For example, the controller(s) can adjust amplifier gain, can establish input output switching relationships for the OXCs, can control add/drop properties of OADMs, etc. The controllers can further predict, for any input fiber/wavelength, what are the possible output fiber/wavelength possibilities. The controller does this by running the detailed physics models of its sub-domain to predict what will work and what will not work and considers all of the factors listed above (and more) to determine a viable set of solutions.
In accordance with the present invention, photonic sub-domains (that is, optical topologies) are abstracted so as to behave as one virtual GLSR. Substantially all the communication devices in photonic sub-domains abstracted in accordance with the present invention will be photonic devices such as amplifiers, OXCx, OADMs, OEOs, etc. In fact, the photonic sub-domains abstracted in accordance with the present invention typically will be pure photonic sub-domains in that all communication devices in the sub-domain will be photonic devices. The virtual GLSR can interact with a standard GMPLS architecture such that routers, GLERs, GLSRs, or PCEs may compute routes that traverse photonic domains with a high degree of certainty that the computed routes will work, making the virtual GLSR compatible with a GMPLS network.
A virtual GLSR abstracting the photonic sub-domain 100 includes the one or more optical controllers of the photonic sub-domain 100 Thus, a virtual GLSR has the ability to talk directly to all of the devices in the sub-domain 100 and to manipulate any of their controllable parameters. For example, the virtual GLSR, via the controller(s), can adjust amplifier gain, can establish input output switching relationships for the OXCs, can control add/drop properties of OADMs, etc. The controller(s) can further predict, for any input fiber/wavelength, what are the possible output fiber/wavelength possibilities. The controller does this by running the detailed physics models of the sub-domain 100 to predict what will work and what will not work and considers all of the factors listed above (and more) to determine a viable set of solutions (that is, viable paths through the sub-domain 100). That is, the virtual GLSR, via the controller(s), determines a viable set of viable paths through the sub-domain 100.
The viable solutions determined by the virtual GLSR are updated as the controller detects changes. Thus, the virtual GLSR keeps track of which inputs may be connected to which outputs. The virtual GLSR keeps track of the set of viable connections between inputs and outputs in a link viability matrix (“LVM”). For example, the photonic sub-domain 100 in
Table 1 illustrates a LVM for the photonic sub-domain of
A virtual GLSR may receive RSVP-TE signaling messages and will either allocate a working input to output link pair or, if explicitly signaled, will verify that the requested link (that is, the I/O pair) is currently viable. Once the virtual GLSR has determined what I/O links are to be used, and that they are viable, it will communicate with the optical sub-components to create the cross connection. The RSVP-TE path message may either wait for confirmation or continue to the next GLSR while the photonic sub-domain operates in parallel to establish the connectivity. The virtual GLSR may optionally configure its optical sub-domain on the reverse RESV message. For example, as a result of RSVP-TE signaling, a virtual GLSR may determine from the LVM in Table 1 that input 1 and output 9 can be connected. The virtual GLSR then communicates with the optical sub-components to establish the connection between input 1 and output 9, effectively establishing a link between the first router 210 of
GMPLS-TE/CSPF computations assume non-blocking nodes. For example, if a first router can reach an input into one side of a second router, it assumes an output on the other side of the second router also can be reached. That is, the first router assumes the second router is non-blocking. This is not necessarily true with a virtual GLSR. A GLER, router, or PCE, such as the first router 210 or second router 220 in
Two methods for advertising link viabilities are presented herein. The first method involves advertising matrix rows and the second method involves advertising only the viable elements of a row. For each of the two methods, preferred embodiments of the present invention will not only advertise which links are viable, but will also advertise the cost of the viable link as well. The advertised cost of a viable link can be incorporated into path computations. Accordingly, preferred embodiments of the present invention comprise link viability matrix that indicates the cost of each viable connection in the LVM. An example of a LVM with costs is shown in Table 2 for a virtual GLSR having 4 inputs and 4 outputs. A cost of 0 (zero) in Table 2 indicates unreachable, as opposed to zero cost. As indicated in Table 2, input 2 does not have a viable link to (that is, cannot be connected to) output 4, has a viable link to output 1 at a cost of 4, and has a viable link to output 3 at a cost of 9.
A first method of advertising link viability involves advertising an entire row of a link viability matrix. Thus, to advertise the link viability for input 2 of Table 2 in accordance with the first method, the entire row is advertised. That is all the elements in the entire row (4, 0, 9, and 0) are advertised. A second method of advertising link viability involves advertising only the viable elements of the row to be advertised. Thus, to advertise the link viability for input 2 of Table 2 in accordance with the second method, only the reachable list (1@cost4, 3@cost9) is advertised. The second method of advertising link viability may be particularly advantageous when the LVM is sparse.
In the event that a GLER, router, or PCE computes a non-viable I/O link pair, the virtual GLSR may return the viable outputs for the given input via a modified crank-back mechanism. The GLER, router, or PCE can then incorporate this crank-back (feedback) data into a subsequent path computation. In this manner, a continuous series of identical mistakes by the GLER, router, or PCE is avoided.
Shortest path computations can be implemented utilizing virtual GLSRs of the present invention. A preferred method is to modify a topology graph (also frequently referred to as a topology database) in accordance with the LVM of a virtual GLSR. This can be done by adding a new node in a topology graph for each I/O connection of a virtual GLSR having a viable link to another I/O connection in the virtual GLSR. For example,
Embodiments of the present invention comprise operable logic adapted to perform methods of the present invention. These methods include, for example, creating a link viability matrix, updating a link viability matrix, advertising link viabilities, and modifying topologies. That is, the operable logic executes the methods of the present invention. The operable logic of the present invention can be implemented as a set of computer program instructions that are stored in a computer-readable medium and executed by an embedded microprocessor system within devices made in accordance with the present invention. Embodiments of the invention may be implemented, in whole or in part, in any conventional computer programming language. For example, preferred embodiments may be implemented in a procedural programming language (for example, “C”) or an object oriented programming language (for example, “C++”). Alternative embodiments of the invention may be implemented, in whole or in part, utilizing discrete components, integrated circuitry, programmable logic used in conjunction with a programmable logic device such as a Field Programmable Gate Array (FPGA) or microprocessor, or any other means including any combination thereof. Additional embodiments of the invention may be implemented, in whole or in part, as a computer program product for use with a computer system. Such implementation may include a series of computer instructions fixed either on a tangible medium, such as a computer-readable media (for example, a diskette, CD-ROM, ROM, or fixed disk), or fixed in a computer data signal embodied in a carrier wave that is transmittable to a computer system via a modem or other interface device, such as a communications adapter connected to a network over a medium. The medium may be either a tangible medium (e.g., optical or analog communications lines) or a medium implemented with wireless techniques (e.g., microwave, infrared or other transmission techniques). The series of computer instructions embodies all or part of the functionality described herein with respect to the present invention. Those skilled in the art should appreciate that such computer instructions can be written in a number of programming languages for use with many computer architectures or operating systems. Furthermore, such instructions may be stored in any memory device, such as semiconductor, magnetic, optical or other memory devices, and may be transmitted using any communications technology, such as optical, infrared, microwave, or other transmission technologies. It is expected that such a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (for example, shrink wrapped software), preloaded with a computer system (for example, on system ROM or fixed disk), or distributed from a server or electronic bulletin board over a network (for example, the Internet or World Wide Web).
Virtual GLSRs of the present invention comprise one or more controllers that execute the operable logic of the present invention. Thus, the operable logic of the present invention also may be referred to herein as control logic. The control logic may be executed on a single controller or may be executed on multiple controllers. Examples of virtual GLSR controllers include photonic controllers of the prior art modified to execute the control logic of the present invention and prior art GLSRs modified to execute the control logic of the present invention.
The present invention as described herein may refer to matrixes, associations, mappings, or correspondences. For example, virtual GLSRs of the present invention comprise a link viability matrix. As is known in the art of implementing operable logic as described above (including the art of computer programming, for example), these, and other, matrixes, associations, mappings, and correspondences typically manifest themselves, for example, either as programming data structures (either separate from or embedded in the operable logic) to keep track of and manipulate the matrixes, associations, mappings, and correspondences or, alternately, can manifest themselves in the procedural aspects of the operable logic itself.
In accordance with the present invention, novel devices and methods embodying a virtual GLSR have been provided. While the present invention has been shown and described herein with reference to specific embodiments thereof, it should be understood by those skilled in the art that variations, alterations, changes in form and detail, and equivalents may be made or conceived of without departing from the spirit and scope of the invention. Accordingly, the scope of the present invention should be assessed as that of the appended claims and by equivalents thereto.
Claims
1. A virtual router, comprising:
- a photonic sub-domain;
- a link viability matrix for the photonic sub-domain; and
- operable logic adapted to create and update the link viability matrix.
2. A virtual router according to claim 1, wherein the link viability matrix indicates the costs for each viable connection in the link viability matrix.
3. A virtual router according to claim 1, further comprising operable logic adapted to advertise link viabilities to GMPLS networks.
4. A virtual router according to claim 1, wherein the virtual router is compatible with a GMPLS network.
5. A method of abstracting a photonic sub-domain, comprising:
- creating a link viability matrix for the photonic sub-domain.
6. A method according to claim 5, further comprising updating the link viability matrix.
7. A method according to claim 5, further comprising advertising link viabilities to GMPLS networks.
8. A method for computing a shortest path in a GMPLS network, comprising modifying a GMPLS topology graph in accordance with a link viability matrix of a virtual router.
9. A method according to claim 8, wherein modifying the topology graph includes adding a node to the topology graph for each I/O connection in of the virtual router having a viable link to another I/O connection in the virtual router.
Type: Application
Filed: Jan 23, 2006
Publication Date: Oct 5, 2006
Patent Grant number: 7995569
Applicant: NORTEL NETWORKS LIMITED (St. Laurent)
Inventors: Peter Ashwood-Smith (Hull), Darek Skalecki (Kanata), Gerard Swinkels (Ottawa), David Miedema (Ottawa)
Application Number: 11/338,118
International Classification: H04L 12/56 (20060101);