This invention relates to nodes for telecommunications networks, and to methods of operating such nodes, and to computer programs for carrying out such methods.
In a typical circuit based (rather than purely packet based) telecommunications network, such as an Automatic Switched Optical Network (ASON), one or more circuits can be rerouted following a fault that causes a traffic disruption. The rerouting is aimed at recovering traffic in the shortest time possible, to limit the amount of lost or disrupted traffic.
Routing and signalling protocols are involved in the rerouting process in such networks and the way these modules interact contribute to the speed of the rerouting process. Other factors are important for the rerouting duration like the hardware capabilities of the equipment but these characteristics cannot be affected by how the ASON protocols interwork.
In an ASON network made of Dense Wavelength Division Multiplex (DWDM) capable Network Elements (NE) a Path Computation Engine is typically be provided centrally. This PCE, interacting with a planning tool, is asked to compute one or more alternate explicit paths for the circuits that must be set up in the network. So the network is built with the appropriate hardware based on a given traffic matrix and the results of the work of the PCE. This PCE works offline as it must interact with the network construction since DWDM network elements do not have the flexibility or the computational power typical of other kind of technologies like SDH or IP; basically each network element is assembled based on the traffic it will have to process.
In an ASON DWDM network each node will be given the list of circuits it has to manage; each circuit will be characterized by a protection mechanism and a set of paths. Every circuit will have one or more main paths to be set up by signalling between nodes, and zero or more alternate paths (also called reserved paths) that the node might try to setup in case of need if the main path fails.
For example a node might have a circuit with one path to be signalled and 20 reserved paths ready to be used in case the first path breaks. The resources of these 20 reserved paths are not used exclusively by this circuit but instead they are shared between multiple circuits, even those originating from other nodes. Thus when a node tries to reroute a circuit by setting up one of these pre-calculated alternate paths, it may be blocked. Even if there is no sharing, in a distributed routing environment, however, the resource information used to pre calculate a constraint-based path may be out of date. This can also result in a setup request for an alternate path being blocked, for example because a link or node along the selected path has insufficient resources. This may delay the rerouting significantly, thus causing more loss of data.
The alternative of dynamically calculating the alternate path at the time it is needed, rather than using a pre-calculated path, is too time consuming for all but the smallest of networks. Currently, the standard way of dealing with the problem is to start setting up the precalculated alternate path and when it fails, have feedback from the network using the signaling procedure, about the location of the failure. The originating node can then react to it accordingly, to set up another alternate path which avoids the location of the failure [called crankback, and described in RFC4920]. This is still unsatisfactory in cases where there are multiple blocked locations or cascading failures if many circuits are being rerouted simultaneously. Only some of these will be flagged to the originating node by such error signalling, which can mean that many alternate paths are tried before one is successful.
An object of the invention is to provide improved apparatus or methods. According to a first aspect, the invention provides a node for a telecommunications network, the node having a switch and a controller, the controller being arranged to carry out a set up procedure for setting up a circuit along a main path through nodes of the network. The circuit has associated with it one or more precalculated alternate paths for the circuit, stored so that the controller can set them up in the event of failure of the main path, and the controller is arranged to respond to an indication of failure of the main path for the circuit by causing a check to be made of whether one or more of the precalculated alternate paths is currently valid, based on whether the network resources needed by the one or more alternate paths are currently available, according to a local dynamically updated routing database. The controller is arranged to set up the switch and to communicate with other nodes to set up one of the alternate paths for that circuit based on the outcome of the check.
This can reduce the chance of rerouting delay caused by the setting up of the alternate path failing owing to its resources not being available. Checking the precalculated path is still quicker than calculating an alternate path dynamically when needed, so there can be reduced delay or data loss during re-routing, by avoiding the path calculation. The delays involved in doing a validity check are likely to scale approximately proportionally with the number of nodes. Whereas the delays involved in doing path computation are likely to scale exponentially with the number of nodes.
Another aspect of the invention can involve a corresponding method of operating a node for a telecommunications network, involving setting up a circuit along a main path through nodes of the network, the circuit having one or more precalculated alternate paths for the circuit, stored locally, for use in the event of failure of the main path. The method also involves responding to an indication of failure of the main path for the circuit by causing a check to be made of whether one or more of the precalculated alternate paths is currently valid, based on whether the network resources needed by the one or more alternate paths are currently available, according to a local dynamically updated routing database. Then there is a step of setting up the switch and communicating with other nodes to set up one of the alternate paths for that circuit based on the outcome of the check.
Another aspect of the invention provides a computer program for carrying out the methods. Any additional features can be added to these aspects, or disclaimed from them, and some are described in more detail below. Any of the additional features can be combined together and combined with any of the aspects. Other effects and consequences will be apparent to those skilled in the art, especially over compared to other prior art. Numerous variations and modifications can be made without departing from the claims of the present invention. Therefore, it should be clearly understood that the form of the present invention is illustrative only and is not intended to limit the scope of the present invention.
How the present invention may be put into effect will now be described by way of example with reference to the appended drawings, in which:
The present invention will be described with respect to particular embodiments and with reference to certain drawings but the invention is not limited thereto but only by the claims. The drawings described are only schematic and are non-limiting. In the drawings, the size of some of the elements may be exaggerated and not drawn on scale for illustrative purposes.
Definitions
Where the term “comprising” is used in the present description and claims, it does not exclude other elements or steps. Where an indefinite or definite article is used when referring to a singular noun e.g. “a” or “an”, “the”, this includes a plural of that noun unless something else is specifically stated.
The term “comprising”, used in the claims, should not be interpreted as being restricted to the means listed thereafter; it does not exclude other elements or steps.
Elements or parts of the described nodes or networks may comprise logic encoded in media for performing any kind of information processing. Logic may comprise software encoded in a disk or other computer-readable medium and/or instructions encoded in an application specific integrated circuit (ASIC), field programmable gate array (FPGA), or other processor or hardware.
References to nodes can encompass any kind of switching node, not limited to the types described, not limited to any level of integration, or size or bandwidth or bit rate and so on.
References to a computer program or software can encompass any type of programs in any language executable directly or indirectly on processing hardware.
References to hardware, processing hardware or circuitry can encompass any kind of logic or analog circuitry, integrated to any degree, and not limited to general purpose processors, digital signal processors, ASICs, FPGAs, discrete components or logic and so on.
References to controllers can encompass any kind of controller implemented in hardware or software, in any technology, producing control signals or other outputs, of any format.
References to circuits are intended to encompass connections of any type, defined by an ingress node and an egress node, for carrying a defined subset of the overall data traffic from a given source, such as a particular client. They can be intangible in the sense that they do not need to be tied to a particular physical path or particular physical components.
Abbreviations
ASON Automatic Switched Optical Network
ASTN Automatic Switched Transport Network
DWDM Dense Wavelength Division Multiplexing
GMPLS Generalized MultiProtocol Label Switching
IP Internet Protocol
NE Network Element
OSPF Open Shortest Path First
PC Path Computation
PCE Path Computation Engine
RFC Request For Comments
TE Traffic Engineering
Introduction to Embodiments
By way of introduction to the embodiments, some issues with conventional designs will be explained with reference to network features which can be incorporated into embodiments of the present invention.
In some known networks, there is a control plane made up of controllers at each of the nodes. As is explained in RFC 4920, RSVP-TE (RSVP Extensions for LSP Tunnels) [RFC3209] can be used for establishing paths in the form of explicitly routed LSPs in an MPLS network. Using RSVP-TE, resources can also be reserved along a path to guarantee and/or control QoS for traffic carried on the LSP. To designate an explicit path that satisfies Quality of Service (QoS) guarantees, it is necessary to discern the resources available to each link or node in the network. For the collection of such resource information, routing protocols, such as OSPF and Intermediate System to Intermediate System (IS-IS), can be extended to distribute additional state information [RFC2702].
Explicit paths can be computed based on the distributed information at the LSR (ingress) initiating an LSP and signaled as Explicit Routes during LSP establishment. Explicit Routes may contain ‘loose hops’ and ‘abstract nodes’ that convey routing through a collection of nodes. This mechanism may be used to devolve parts of the path computation to intermediate nodes such as area border LSRs.
A setup request signaling procedure may be blocked, for example because a link or node along the selected path has insufficient resources. In RSVP-TE, a blocked LSP setup may result in a PathErr message sent to the ingress, or a ResvErr sent to the egress (terminator). These messages may result in the LSP setup being abandoned. In Generalized MPLS [RFC3473] the Notify message may additionally be used to expedite notification of failures of existing LSPs to ingress and egress LSRs, responsible for performing protection or restoration. These existing mechanisms provide a certain amount of information about the path of the failed LSP.
Generalized MPLS [RFC3471] and [RFC3473] extends MPLS into networks that manage Layer 2, TDM and lambda resources as well as packet resources. Thus, crankback routing is also useful in GMPLS networks. In a network without wavelength converters, setup requests are likely to be blocked more often than in a conventional MPLS environment because the same wavelength must be allocated at each Optical Cross-Connect on an end-to-end explicit path.
In this network environment each node will have a database populated by a routing protocol with information about usable resources. This information is updated with a certain delay when any allocation of resources on the network changes. Using this set of information it is possible to understand if a path can be created or it is useless to try to create it because the resources it should use are busy or unavailable. In some embodiments of the invention it is possible to use a path validation mechanism to understand if a path is viable before starting to process it with the signalling protocol in the network. Working in this way it is possible to reduce the amount of failures during signalling, consequently reducing the restoration time and thus reduce traffic disruption. In other words, some embodiments use the information contained in the topology database of an ASON node to predict if the signalling of a pre-computed path can be attempted or is potentially useless or even harmful. The method uses as an input parameter the path that was selected in order to be setup in the network and the network topology, contained in a topology database populated and updated by a routing protocol. It is possible to use the same mechanism even in an ASON network made of TDM cross-connects. In such network it is very important to reroute a certain number of circuits in a time as short as possible. In case of multiple failures the time needed to perform the distributed path computation might be relevant in case of big networks and a high number of circuits impacted by a fault.
In such a scenario it is possible to pre-calculate and store alternate paths before a failure occurs using a low priority process. These candidate paths can be stored and refreshed periodically. When a failure occurs for each circuit the path computation is performed only if the pre-calculated path is not validated correctly.
At least some of the embodiments involve reducing and possibly avoiding signaling failures and thus can be seen as an alternative or as a complementary approach to existing methods. Merely relying on signaling error feedback alone as in RFC 4920 can be unsatisfactory because it is likely to be computationally inefficient and network consuming.
This database can be implemented in various ways. It is typically a database where the routing protocol stores the data received about the network topology and its characteristics. It can in some cases be used to perform path computations and, in this case, path validations. It does not need to differ from a database used by a PCE, it can be the same thing. For the particular technologies used by the network (such as SDH or DWDM) the database would need to be populated with different information. The database can store a representation of the network as a pool of nodes interconnected by links Each node and each link typically has many associated data fields. Part of this information is not related to the technology (for example the source and destination node of each link, the administrative information about each entity) the equipment is based on and another part of the information is related to the technology (free data resources, like SDH timeslots or DWDM lambdas).
The database can be dynamically updated in any way. One example involves discovering the resources available to each link or node in the network using routing protocols, such as OSPF and Intermediate System to Intermediate System (IS-IS), which can be extended to distribute additional state information [RFC2702].
If the validity check is successful, the controller can then carry out the rerouting of the circuit by setting up the alternate path with more confidence that the alternate path is less likely to fail and cause more delay.
Additional Features of Embodiments:
Some possible additional features and their effects are now set out before describing further embodiments incorporating such features with reference to
The node can have a path calculation element, for generating the precalculated alternate paths. This is shown in
The node can have the local dynamically updated routing database within the node for indicating current availability of resources of the network, as shown in
The node can also have the validity checking part within the node, and arranged to access the routing database to carry out the check of the validity as shown again in
The node can have a protocol controller to carry out the set up procedure using a distributed signalling procedure with neighbouring nodes, as shown in
The distributed signalling can comprise an RSVP protocol and the circuits can comprise label switched paths. Again this is widely used and can involve long delays if rerouting fails, so it is particularly beneficial to be able to reduce such delays
The node can be a node for an automatically switched optical network, the paths comprising one or more optical paths, and the controller be arranged to carry out the rerouting on an end to end basis. It is intrinsically difficult to do path computation dynamically in distributed fashion at the nodes in such networks, so it is particularly useful to speed up the rerouting without such path computation.
The node can be a node for a synchronous network, and the switch can comprise an electrical domain switch. Such networks are typically more flexible and are widely used. Since they can have many nodes, the path computation can take much time and rerouting delays can be significant, so it is particularly beneficial to be able to reduce such delays.
The path computation element can be arranged to recalculate the precalculated alternate paths periodically as shown in
The path computation element can be arranged to generate a further alternate path if the check indicates that the alternate paths are not currently valid, as shown in
It is notable that there is some benefit in using crankback even when the path validity check is carried out, because there is no certainty that if a path validation is correct then the path will be setup in 100% of cases because the routing database is always a little bit out of date and more then one node can try to use the same resources at the same time. So crankback and path validation will work together, in which case the crankback is likely to be used a lot less often then in a system without path validation.
In operation, a request for a new circuit arrives via the client interface 280 with an explicit routing for a main path and an alternate path. The connection controller tries to set up the main path using the protocol controllers and stores the alternate path in the store 50. If a failure indication is received for the main path from other nodes along the path, via the protocol controllers, then the connection controller requests an alternate path from the routing and re-routing controller. A validity check is carried out by the part 30, within the routing and re-routing controller.
If valid, then the next step 160 is to set up the alternate path by passing messages to the specified nodes for example, and then reroute the circuit onto the alternate path. After this the process awaits another indication of a failure or awaits a new request for a circuit. Periodically the alternate paths can be recalculated, to update them to take account of any changes in the network, shown by step 275. If not valid, then at step 165 another alternate path is selected and the process repeats step 155 of checking the validity. If there are no more precalculated alternate paths, then at step 168, a path calculation step is carried out to calculate another alternate path, based on the information about availability of links and nodes in the routing database.
A general example of a path validation mechanism is as follows:
In
for each Hop in position X (HopX) in the path verify that:
As shown in step 360, these steps are repeated until all the hops have been checked.
Concluding Remarks
These embodiments described, after a failure in the network, can allow a faster rerouting of circuits. This is possible because a simple evaluation performed at the ingress of a circuit can avoid delays caused by starting a distributed signalling procedure whose failure is very probable. In the case of circuits with many alternate paths a path with high probability of success can be chosen instead of choosing randomly or using a static priority that cannot keep count of the available resources on the network.
This can therefore increase the performance of signalling procedures avoiding risky paths. Behaving in this way it is possible to have a shorter traffic disruption in case of network failure. This can satisfy more easily the Service Level Agreement negotiated by an operator with the final customer.
Other variations and embodiments can be envisaged within the claims.
Number | Date | Country | Kind |
---|---|---|---|
11167991.6 | May 2011 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2011/061194 | 7/4/2011 | WO | 00 | 1/9/2014 |