The present invention relates to methods and devices for configuring a communication path, and in particular but not limited to methods and devices for configuring a communication path which extends through different network domains.
In provisioning a communication path between two nodes on a network, a primary path is set up through the network to carry traffic between the two nodes under normal conditions. In addition, it is often desirable to establish a second path between the two nodes to carry traffic, for example, if the primary path fails or additional bandwidth is required. For this reason, the secondary path should try to avoid using the same resources (e.g. links and nodes) of the primary path so that the two paths are as diverse as possible. Although a network may provide a number of different resources that can be used to establish the secondary path, some resources may be exposed to the same or similar risk of failure as resources on the primary path, due, for example, to their geographical proximity. For example, different optical fibres connected to two different nodes may be bundled into the same pipe over part of their length and are therefore exposed to the same risk of failure if the pipe is severed. Links that share a common risk may be identified and assigned a group identity. For example, the RSVP-TE (Resource Reservation Protocol-Traffic Engineering) specification provides a “Shared Risk Link Group” (SRLG) identifier for use when setting up a protection path to avoid using resources exposed to the same risk (and therefore having the same SRLG identifiers) as the primary path.
Establishing a communication path between two nodes may require the path to traverse different network domains (or regions), e.g. networks that are managed under different administrations, (and which may also be referred to as Automated Systems (AS)) and where the SRLG IDs are not used consistently between the domains so that a group identifier in one domain has a different or no meaning in another domain. This may cause problems when setting up an interdomain communication path in that the use of SRLGs applicable to one domain in the set-up signalling cannot be correctly interpreted for the purpose of protection path set-up in another domain.
Another problem that may arise in set-up signalling is the amount of information that needs to be included in the signal specifying which resources to include or exclude when setting up the path. Furthermore, where the path traverses a number of different network domains, the set-up signalling includes details of resources in the different domains to include or exclude and it may be undesirable to pass information about the resources in one domain to another domain.
According to one aspect of the present invention there is provided a method of forming a signal for configuring a communication path comprising: selecting at least one identifier used to identify one or more network resources in a predetermined network domain; and forming a signal for causing one or more network elements to configure a communication path including specifying in said signal the at least one identifier and a network domain identifier which indicates that the at least one identifier is associated with the network domain.
Advantageously, in this arrangement, the set-up signalling includes, in addition to an identifier for identifying one or more network resources, an area or domain identifier identifying the area with which the identifier is associated. This allows nodes in different areas to determine whether or not the identifier is applicable to that node.
The identifier may comprise an identifier used to identify a single resource on a network, for example a node (network element), communication path section, port, link or other resource. In another embodiment, the identifier may comprise a group identifier used to identify one or more resources in a predetermined network domain. For example, the group identifier may be used to identify a group of resources in a predetermined network domain in which the resources all have a common property. In one embodiment, the group identifier may comprise a shared risk link (SRLG) identifier.
In embodiments of the present invention, the set- up signal may include one or more group identifiers that pertain to different areas, together with an indication of the area with which each group identifier is associated.
In one embodiment, the method further comprises specifying in the signal, an indication that network resources in the domain having a group identifier should be either included or excluded in configuring the communication path.
According to another aspect of the present invention, there is provided a method of determining a communication path comprising the steps of: receiving a communication signal containing at least one identifier used to identify one or more network resources and an indication that said at least one group identifier is associated with a predetermined network domain; detecting the indication of said network domain in said signal; based on the detected network domain, determining whether to include said at least one identifier in a decision on determining said communication path; and determining said communication path.
In one embodiment, the identifier may comprise a group identifier used to identify one or more network resources, and the resources of the group may or may not all have a common property.
According to another aspect of the present invention, there is provided a method of determining a communication path section comprising: receiving at a network element a signal containing at least one identifier used to identify one or more network resources and an indication that the at least one identifier is associated with a predetermined network domain; and determining at the network element a communication path section based on whether or not the network element resides in the network domain indicated in the signal.
According to the present invention, there is provided a network element comprising signal forming means for forming, for transmission on a network, a signal for configuring a communication path, wherein said signal forming means is adapted to included in said signal at least one identifier used to identify one or more network resources in a predetermined network domain, and a network domain identifier indicating that said at least one identifier is associated with said network domain.
In one embodiment, the identifier may comprise an identifier for identifying any one or more resources in the predetermined network domain. The identifier may comprise a group identifier, and the resources in the group may or may not have a common property.
According to another aspect of the present invention, there is provided a network element comprising receiving means for receiving a communication signal containing at least one group identifier used to identify one or more network resources and an indication that the at least one identifier is associated with a predetermined network domain, detecting means for detecting the indication of the network domain in the signal, first determining means for determining, based on the detected network domain, whether to include the at least one identifier in a decision on configuring a communication path; and second determining means for determining said communication path.
In one embodiment, the second determining means is adapted to exclude from consideration in determining the communication path, network resources having any group identifiers associated with a detected network domain in the signal if the detected network domain is different from that in which the network element resides.
According to another aspect of the present invention, there is provided a network element comprising: receiving means for receiving a signal containing at least one identifier used to identify one or more network resources in a predetermined network domain, and an indication that said at least one identifier is associated with the predetermined network domain, and determining means for determining a communication path section based on whether or not the network element resides in the network domain indicated in said signal.
According to another aspect of the present invention, there is provided a method of forming a signal for transmission on a network, comprising receiving a resource group identifier used to identify a group of resources on a pre-configured network path, and forming a signal containing the resource group identifier.
Advantageously, the use of a resource group identifier to identify a group of resources on a pre- configured network path obviates the need to explicitly identify each individual resource in the signal, and therefore can take the place of individual identifiers for each resource and reduce the amount of space required in the signal to identify the resources of the group. Furthermore, the resource group identifier may constitute a pseudonym, alias or label to effectively mask or hide the identity of the resources in the group from third parties, where it is required or desirable to do so. For example, the resource group identifier can be used to prevent information about specific resources in one domain (or automated system) being revealed to another domain, and this may be particularly useful in path set-up signals used to set-up communication paths which cross from one domain to another.
The resource group identifier may be used to identify any number of resources on a pre-configured network path and the resources may be limited to those belonging to a predetermined network domain and may comprise all of the resources of that network domain on the pre-configured network path or a subgroup of resources within that network domain.
In one embodiment, the resource group identifier may be used to identify those resources of a label switched path (LSP) in which the resources may or may not be limited to a predetermined network domain.
In one embodiment, the method further comprises the step of including in the signal, an instruction associated with the resource group identifier for causing a network element to process the resource group identifier based on the instruction. For example, the instruction may comprise an instruction to either include or exclude a resource group indicated by the group identifier in configuring a communication path, and the signal may comprise a set-up signal for configuring a communication path through a network.
According to another aspect of the present invention, there is provided a method of forming a signal for transmission on a network, comprising the steps of: receiving a resource group identifier used to identify one or more resources on the network, identifying from a record a resource identifier of one or more resources associated with the group identifier, and forming a signal containing a resource identifier of at least one resource identified from the record.
According to another aspect of the present invention, there is provided a network element comprising: receiving means for receiving a signal containing a resource group identifier used to identify a group of resources on a pre-configured network path, and signal forming means arranged to form a signal for transmission on the network, the signal containing the resource group identifier.
According to another aspect of the present invention, there is provided a network element comprising: receiving means for receiving a signal containing a resource group identifier used to identify one or more resources on a network, storage means containing a record of the resource group identifier and associated with the resource group identifier a respective resource identifier identifying each of the one or more resources in the group, comparing means for comparing the resource group identifier in the signal to the resource group identifier in the record, and signal forming means responsive to a result of the comparison for forming a signal for configuring a communication path.
In one embodiment, the signal forming means is adapted to include in the signal, an instruction associated with an identifier for causing another network element to make a decision based on the instruction. The instruction may comprise an instruction to include or an instruction to exclude a resource when configuring the communication path.
The network element may reside in a predetermined network domain, and the receiving means may be adapted to receive the signal containing the resource identifier from another network domain.
In one embodiment, the network element resides in a predetermined network domain and is adapted to transmit the signal for configuring the communication path to another network element in the same predetermined network domain.
The network element may be adapted to transmit to at least one other network element another signal comprising the resource group identifier and a resource group identifier identifying at least one resource associated with the group identifier. The network element and the other network element may both be in the same network domain.
According to another aspect of the present invention, there is provided a network element in a predetermined network domain comprising: storage means for storing a resource group identifier and a resource identifier identifying at least one resource in the network domain associated with the resource group identifier, the number of resources associated with the resource group identifier being fewer than the resources in the network domain, and signal forming means for forming a signal for transmission on a network, the signal containing the resource group identifier and resource identifier identifying at least one resource associated with the resource group identifier, and transmitting means for transmitting the signal to at least one other network element.
The network element may further comprise selection means for selecting at least one other network element based on which other network elements are located in the same network domain as the network element.
In one embodiment, the group identified by the resource group identifier includes fewer than all of the nodes in the network domain. The group identified by the resource group identifier may consist essentially of resources in a predetermined path in the network domain.
In one embodiment, the one or more resources associated with the resource group identifier each comprises a resource to be one of included in and excluded from a communication path.
The resource group identifier may be associated with one or more identifiers for identifying a common property of resources on the network.
According to the present invention, there is further provided a data structure comprising: a resource group identifier identifying a group of resources on a network, and associated with said resource group identifier at least one resource identifier for identifying a resource in said group.
Examples of embodiments of the present invention will now be described with reference to the drawings, in which:
Referring to
Referring to
The network element also includes a link state database 205 which includes a list of network elements that are immediately adjacent node A, together with the SRLG identifiers of the associated links.
To set up a secondary path, network element A includes a signal generator (e.g. processor) adapted to generate a set-up signal which includes certain conditions or constraints to be used by network elements in determining the secondary path. The conditions may include a specification of network resources that should be included in and/or excluded from the secondary path. The set-up signal may comprise a data packet (or message) and the specification of each set-up condition may comprise an object in the data packet. Each object may comprise an instruction (e.g. to include or exclude), and one or more sub-objects, e.g. group identifiers to which the instruction relates.
In the example shown in
In the embodiment of
In setting up a diverse path, node A is instructed to determine a path which excludes all of the Shared Risk Link Group identifiers of the primary path in domain 1, consults the link state database 205 for a link that meets this condition and transmits the signal to node E over link b1 whose SRLG ID is 40 (i.e. different from any SRLG IDs on the primary path in domain 1). On receiving the signal, node E detects the domain identifier for domain 1 in the signal and the SRLG IDs listed for that domain and makes a path set-up decision based on the conditions prescribed in the signal for domain 1. In this embodiment, the signal indicates that resources having SRLG IDs of 10, 20 and 30 should be excluded, and therefore of possible links b2 and c2, node E selects link B2, whose SRLG ID is 50, as the next path section and which meets the required condition. By specifying in the signal the domain to which specific conditions relate, node E can select from the signal which conditions apply to it and which do not. For example, node E may be adapted to extract from the signal only those conditions that apply to its domain and to ignore conditions that apply to other domains. This may be implemented by conditioning a network element to make a comparison of its record of the domain in which it resides with the domain identifier(s) in the signal. Thus, in the present example, although the primary path includes a link whose SRLG ID is 50, the signal indicates that this SRLG ID is associated with domain 2 and not domain 1 and therefore node E can choose a link having an SRLG ID of 50 to form the secondary path in domain 1.
An embodiment of a network element which may implement the functions described above in connection with node E is shown in
Other nodes in the first domain, e.g. nodes F and G use the information in a similar manner to that described above to set up respective sections of the secondary path. In this example, the secondary path includes links b3 and b4 which meet the required conditions, and excludes links c1 to c5, which do not as they have the same SRLG Ids as the primary path.
In this example, nodes D and G are border network elements as they lie on the edge of the first domain and nodes P and R are border network elements of the second domain. The link A4 between nodes D and P in the primary path may have an associated SRLG ID, and to exclude this link from the secondary path, the set-up signal may contain the SRLG ID for this link together with an indication that the link is an interdomain link between domains 1 and 2. As node G is a border NE in domain 1, node G may be adapted to detect the indication of an interdomain condition in the signal and apply the condition to the path set-up process. Accordingly, if the signal indicates that SRLGs having an ID of 90 should be excluded, node G can try to determine a link having a different SRLG ID, e.g. link b4 to node R having an SRLG ID of 80.
On receiving the set-up signal from node G, node R in the second domain is adapted to detect the conditions for setting up the secondary path in domain 2 by detecting the domain ID for domain 2 in the set-up signal. In this way, node R can identify which conditions in the signal apply to it when setting up the next path section. In this example, the signal contains a condition that resources having SRLG IDs of 40 and 50 are to be excluded from the secondary path, and therefore node R selects link b5 to node S having an SRLG ID of 30 as the next section for the secondary path. Other nodes, e.g., S, and T in the second domain respond to the set-up signal in a similar manner to exclude from the secondary path links a5 and a6 of the primary path having SRLG IDs of 40 and 50, respectively, and also links c6 and c7 which both have an SRLG ID of 40.
As can be appreciated from the example described above in conjunction with
In other embodiments, the set-up signal may include a specification of resources that are to be specifically included in a particular communication path and the signal may indicate for each domain, the particular set of conditions to be implemented, together with an identification of the particular domain to which the conditions relate. Thus, in another embodiment, the set-up signal for configuring a secondary path may include particular SRLG IDs that are to be included in the secondary path, and may or may not also include certain SRLGs that are to be excluded. Returning to the example of
The set-up packet(s) may have any suitable configuration, depending on the system protocol. For example, the set-up signal may be constructed so that the domain identifier associated with the condition is detected by the network element processor before the condition, so that the processor can determine first if the condition is applicable to its path set-up decision. The examples shown in
Another aspect of the present invention allows the information content of communication path set-up signals to be reduced. An embodiment of this aspect of the present invention is described below with reference to
The resource group identifier is transmitted to the node from which the path is to be set-up, in this case node A and used by node A to generate signalling to determine a secondary path between nodes A and Z. Referring to
In a first embodiment, the set-up signal specifies that the secondary path must include border network element P, and this may be implemented in the signal by specifying node P as an object in an Include list (not shown).
In setting up the first leg or hop of the secondary path, node A is instructed to select a node other than node B and/or a link other than link al and a resource having an SRLG ID other than 10. In this example, node A selects node D and transmits the set-up signal to node D over link bl having an SRLG ID of 40. An area or domain identifier identifying domain 1 may optionally be included in the set-up signal to indicate that domain 1 objects in the exclude list are associated with domain 1.
On receiving the set-up signal from node A, node D determines from the exclude list resources to be excluded from the secondary path and selects node E over link b2 as the next path section. Node D is also adapted to ignore the resource group identifier LSP100, since, for example, it has no record of the identifier and cannot attribute any meaning to it.
On receiving the set-up signal from node D, node E determines from the set-up signal (which in this embodiment includes a specification that the secondary path must include node P) that the next section of the secondary path is to node P over link d2. Again, node E is adapted to ignore the path resource label LSP100.
In one embodiment, one or more nodes in the first domain may be adapted to remove objects from the exclude list when a determination is made that they are no longer required. This has the advantage of reducing signal overhead and only passing information in the set-up signal that is required for downstream nodes or interfaces. For example, in one embodiment, a node in one domain that determines the next path section to a node (e.g. border PE) in another domain may be adapted to remove at least one or more objects from the exclude and/or include lists to prevent resource information about one domain passing to another domain. Thus, for example, node E may be adapted to strip resource information pertaining to domain 1 from the exclude list 503. In this case, the set-up signal transmitted from node E to node P may include as an exclude object only the resource group identifier LSP100 (and possibly other resource group identifiers for other domains, for example, if the path is to extend beyond node Z to a node in another domain). Other nodes, upstream of the border PE may also implement a stripping function to reduce the information contained in the set-up signal. For example, node D may be adapted to remove certain information from the exclude list for domain 1 which is no longer required, such as information relating to the first section of the primary path (e.g. node B, link a1 and SRLG ID's 10).
On receiving the set-up signal from node E, node P detects the resource group identifier LSP100 and determines from its record 501 the resources in domain 2 that are associated with this identifier. This may be carried out by performing a lookup function in a lookup table stored in a memory at node P. In one embodiment, node P generates a set-up signal which specifies the particular resources that are to be excluded when forming a secondary path through domain 2 (to avoid resources of the primary path) and which may be included in an exclude list.
In this example, the set-up signal generated by node P includes an exclude list 505, shown in
On receiving the set-up signal from node P, node R detects the resources in the excludes list to be excluded from the secondary path and selects node S over link b4 as the next path section. Similarly, on receiving the set-up signal from node R, node S reads the resource identifiers in the exclude list and determines node Z over link b5 as the next, and in this case last, secondary path section.
In the example described above, the secondary path includes a resource of the primary path, i.e. node P, and this potentially constitutes a weakness in the secondary path as alternative routing between nodes A and Z. Another embodiment of the present invention enables resource group identifiers to be used without needing to route the secondary path through a primary path node. This may be achieved by advertising the resource group identifier and the resources associated therewith to one or more other nodes within the same domain, for example one or more other border PE's. Returning to the example shown in
Returning to the example described above, the set-up signal generated at node A may be adapted to specify that node P should be excluded from the secondary path (rather than specifically included, as in the first example). On receiving the set-up signal from node D, node E determines that node P should be excluded from the secondary path and selects an alternative border PE in domain 2, and in this case selects node R over link b3 as the next path section. Node E transmits a set-up signal, which includes the resource group identifier LSP100, to node R, and which may omit information about resources in domain 1, as described above. On receiving the set-up signal from node E, node R detects the resource group identifier in the signal, compares the detected resource group identifier to a record of resource group identifier(s) stored at node R, and on finding a match, determines the domain 2 resources that are to be excluded when forming the secondary path. Node R then generates a set-up signal which may specify the specific resources to be excluded from the secondary path, as, for example, described above for node P. In this case the set-up signal may include the resource identifiers for nodes P and Q, links a3 and a4 and SRLG IDs 40, 50.
Alternatively, if node P is adapted to advertise the resource group identifier and resources associated therewith to a number of nodes or all nodes in the second domain, so that a number of nodes or all nodes in domain 2 have a record of both the resource group identifier and resources associated therewith, the set-up signal for determining a path in the second domain need only include the resource group identifier, thereby reducing set-up signal overhead.
In another embodiment, the primary path border PE in the second domain may be adapted to advertise the resource group identifier to a restricted number of nodes, e.g. border PE's within its domain. In setting up the secondary path, the set-up signal from one domain may initially be passed to the same border PE of the primary path in another domain. This border PE may signal back to a node in the first domain (e.g. egress node) the identity of another border PE in the second domain to be used for the secondary path. To illustrate this, reference may be had to the example in
Advantageously, this arrangement in which only selected border PE's receive the resource group identifier and an identification of the resources associated therewith reduces the amount of information that needs to be stored by nodes in the second domain thereby improving the scalability of the system.
Embodiments of the invention have been described by way of non-limiting examples only to illustrate the principles of various aspects of the invention, and it will be appreciated that the principles of the invention can be applied to any suitable network and to configuring any communication path whether it traverses a single domain or any number of different domains.
For example, in one embodiment, a resource group identifier may be used to identify a group of resources in the first domain which contains the source node from which the path is to be set-up. This resource group identifier may be used in the set-up signalling to obviate the need to explicitly identify the particular resources in the first domain that should be included or excluded when forming a path. However, this embodiment assumes that nodes in the first domain have the capability of interpreting the resource group identifier, and therefore assumes some prior signalling to each node such as an advertisement from the source node to provide this capability.
In other embodiments set-up signalling from the source node may include resource group identifiers for a plurality of different domains and which can only be correctly interpreted by one or more nodes in the relevant domains. Once it is determined that information about resources in a particular domain in the set-up signal is no longer required the information may be stripped from the set-up signal before being passed to the next domain, if any, to simplify the set-up signal and to ensure resource information about one domain is not revealed to another.
Other embodiments of the present invention may include any feature disclosed herein in combination with any one or more other feature disclosed herein.
Modifications to the embodiments described herein will be apparent to those skilled in the art.