The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
The Generalized Multiprotocol Label Switching (GMPLS) User Network Interface (UNI) creates a circuit connection between two clients (UNI-C) of an optical network. This connection is achieved by signaling exchanges between UNI Client (UNI-C) and UNI Network (UNI-N) nodes, where UNI-C nodes are router nodes and UNI-N nodes are optical nodes.
Release |
Modification |
---|---|
Release 4.3.0 |
This feature was introduced. |
The following prerequisites are required to implement GMPLS UNI:
You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Router that runs Cisco IOS XR software.
Installation of the Cisco IOS XR software mini-image on the router.
Installation of the Cisco IOS XR MPLS software package on the router.
The total number of configured GMPLS UNI controllers should not exceed the platform scale limit of 500 GMPLS interfaces.
Each UNI-N (ingress or egress) should be routable from its adjacent UNI-C. The UNI-C nodes need to be routable from the UNI-N nodes too.
GMPLS UNI is supported only over DWDM controllers and so, over POS and GigabitEthernet interfaces.
GMPLS UNI is supported only with these Cisco CRS Line Cards:
To implement GMPLS UNI, you should understand these concepts:
In case of GMPLS NNI, the optical network topology is known and path calculations are performed at the NNI head. In case of GMPLS UNI, the optical network topology is unknown to the UNI-C nodes and path calculations are performed by the UNI-N nodes.
The GMPLS overlay model architecture is used for LSP signaling for GMPLS connections. In GMPLS UNI, UNI-C nodes send a request for a connection to UNI-N node. The connection request does not contain an end-to-end path. This is because, as mentioned previously, UNI-C nodes do not have knowledge of the topology of the optical network and therefore cannot determine the end-to-end path. The UNI-C node signals a connection request without an ERO.
The LSP diversity is signalled on a GMPLS UNI tunnel with a path-option. A path-option is permitted on a GMPLS UNI tunnel with a "no ERO" and an optional "XRO" attribute sets to specify LSP diversity requirements. If multiple LSP exclusions are configured in the attribute-set, they can be added to the path message along with an appropriate LSP connection diversity sub-object.
In GMPLS UNI, UNI-C nodes send a request for a connection to UNI-N node. The connection request does not contain an end-to-end path, because, UNI-C nodes do not have knowledge of the topology of the optical network and therefore cannot determine the end-to-end path. The UNI-C node signals a connection request without an ERO.
When no ERO is present in a received path message, the UNI-N node calculates a route to the destination and includes that route in an ERO, before forwarding the path message. If no route is found, the UNI-N returns a path error message with an error code and subcode of 24,5 - "No route available toward destination".
The destination address of a GMPLS LSP can be either the optical router-id of the tail UNI-C node, or the optical address of the ingress interface to the tail UNI-C node. Supplying the router-id allows the UNI-N to route the tunnel to the tail UNI-C node via any attached UNI-N node; supplying the UNI-C's ingress interface address forces the tunnel's path to traverse the UNI-N node attached to that interface.
Note | The optical router-ids and interface addresses may or may not be the same as the packet ones. |
An optional XRO attribute-set can be specified as part of the path-option to specify LSP diversity requirements. An empty XRO attribute set results in the GMPLS tunnel being signaled with no exclusions, and therefore no XRO.
Note | A non-existent XRO attribute-set can be configured in the GMPLS UNI tunnel path-option; in this case no attempt will be made to bring up the GMPLS tunnel until the configuration is complete. |
Connection diversity is required to ensure that GMPLS tunnels can be established without sharing resources, thus, greatly reducing the probability of simultaneous connection failures. For example, an edge-node wishes to establish multiple LSPs towards the same destination edge-node, and these LSPs need to have few or no resources in common.
Connection diversity supports the establishment of a GMPLS LSP which is diverse from the path taken by an existing LSP. An XRO is added to the tunnel's path message with appropriate LSP diversity sub-objects or exclusions. A maximum of 20 connection diversity exclusions per XRO is supported.
A GMPLS UNI based solution preserves all the advantages of the integration of the DWDM transponder into the router blade. These advantages include:
A new submode is introduced under the main TE submode to enable GMPLS UNI and to contain GMPLS UNI configuration.
To implement GMPLS UNI, follow these procedures:
TE configuration specific to packet tunnels does not affect GMPLS UNI tunnels.
To implement TE configuration for GMPLS UNI, follow these procedures:
Perform this task to enable GMPLS UNI configuration submode and to configure GMPLS UNI tunnels.
Note | Removal of the GMPLS UNI submode results in the removal of all configuration within it, including any other parser submode, and the immediate destruction of all GMPLS UNI tunnels. |
1.
configure
2.
mpls traffic-eng
3.
gmpls optical-uni
4.
commit
Perform this task to setup a GMPLS tail in MPLS-TE configuration. This task enables GMPLS UNI controller submode to configure controllers for establishing GMPLS UNI tunnels. This is the minimal configuration required at the tunnel tail.
Note | Removal of the GMPLS UNI controller submode results in the immediate destruction of any GMPLS tunnel established over the controller referenced. |
1.
configure
2.
mpls traffic-eng
3.
gmpls optical-uni
4.
controller dwdm interface
5.
commit
Perform this task to configure the tunnel properties for a GMPLS UNI controller.
This configuration designates the controller as a tunnel-head, rather than a tunnel tail. After the tunnel properties are configured, the incoming path messages are rejected and any existing tail-end tunnel is torn down.
1.
configure
2.
mpls traffic-eng
3.
gmpls optical-uni
4.
controller dwdm interface
5.
tunnel-properties
6.
tunnel-id number
7.
destination ipv4 unicast address
8.
path-option 10 no-ero lockdown
9.
commit
Perform this task to configure the optional tunnel properties for a GMPLS UNI tunnel. This configuration is optional, and if omitted, the GMPLS tunnel is established with the default property values.
1.
configure
2.
mpls traffic-eng
3.
gmpls optical-uni
4.
controller dwdm interface
5.
tunnel-properties
6.
priority setup-priority hold-priority
7.
record-route
8.
signalled-name name
9.
logging events lsp-status state
10.
commit
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
configure
| |||
Step 2 |
mpls traffic-eng Example:
RP/0/RP0/CPU0:router(config)# mpls traffic-eng
|
Enters MPLS-TE configuration mode. | ||
Step 3 |
gmpls optical-uni Example:
RP/0/RP0/CPU0:router(config-mpls-te)# gmpls optical-uni
|
Enters GMPLS UNI configuration submode. | ||
Step 4 |
controller dwdm interface Example:
RP/0/RP0/CPU0:router(config-te-gmpls)# controller dwdm 0/1/0/1
| Enters GMPLS UNI controller submode. | ||
Step 5 |
tunnel-properties Example:
RP/0/RP0/CPU0:router(config-te-gmpls-cntl)# tunnel-properties
| Enters the submode to configure tunnel-specific information for a GMPLS UNI controller. | ||
Step 6 |
priority setup-priority hold-priority Example:
RP/0/RP0/CPU0:router(config-te-gmpls-tun)# priority 3 2
| Specifies the priority for a GMPLS tunnel. The default priority value is 7 for both setup and hold priorities.
| ||
Step 7 |
record-route Example:
RP/0/RP0/CPU0:router(config-te-gmpls-tun)# record-route
| Enables record-route functionality for a GMPLS tunnel. | ||
Step 8 |
signalled-name name Example:
RP/0/RP0/CPU0:router(config-te-gmpls-tun)# signalled-name sign1
| Configures signalled-name for a GMPLS tunnel.
| ||
Step 9 |
logging events lsp-status state Example:
RP/0/RP0/CPU0:router(config-te-gmpls-tun)# logging events lsp-status state
| Configure events to generate system log messages when state changes occur on the GMPLS tunnel. If omitted, no events will result in the generation of system log messages. | ||
Step 10 |
commit
|
To configure an XRO attribute-set as part of the path-option for MPLS-TE, and to specify exclusions for an attribute set for LSP diversity, follow these procedures:
Perform this task to configure XRO attribute set in the GMPLS UNI tunnel path-option, under MPLS-TE submode.
1.
configure
2.
mpls traffic-eng
3.
gmpls optical-uni
4.
controller dwdm interface
5.
tunnel-properties
6.
path-option 10 no-ero [xro-attribute-set name ] lockdown
7.
commit
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure
| |
Step 2 |
mpls traffic-eng Example:
RP/0/RP0/CPU0:router(config)# mpls traffic-eng
|
Enters MPLS-TE configuration mode. |
Step 3 |
gmpls optical-uni Example:
RP/0/RP0/CPU0:router(config-mpls-te)# gmpls optical-uni
|
Enters GMPLS UNI configuration submode. |
Step 4 |
controller dwdm interface Example:
RP/0/RP0/CPU0:router(config-te-gmpls)# controller dwdm 0/1/0/1
| Enters GMPLS UNI controller submode. |
Step 5 |
tunnel-properties Example:
RP/0/RP0/CPU0:router(config-te-gmpls-cntl)# tunnel-properties
| Enters the submode to configure tunnel-specific information for a GMPLS UNI controller. |
Step 6 |
path-option 10 no-ero [xro-attribute-set name ] lockdown Example:
RP/0/RP0/CPU0:router(config-te-gmpls-tun)# path-option 10 no-ero xro-attribute-set A01 lockdown
| Specifies the path-option for a headend router of a GMPLS tunnel. |
Step 7 |
commit
|
Perform this task to specify exclusions for an attribute set for LSP diversity, under MPLS-TE attribute-set configuration mode.
1.
configure
2.
mpls traffic-eng
3.
attribute-set xro name
4. exclude {best-effort | strict} lsp source source-address destination destination-address tunnel-id tunnel-id extended-tunnel-id extended-tunnel-id [lsp-id lsp-id]
5.
commit
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
configure
| |||
Step 2 |
mpls traffic-eng Example:
RP/0/RP0/CPU0:router(config)# mpls traffic-eng
|
Enters MPLS-TE configuration mode. | ||
Step 3 |
attribute-set xro name Example:
RP/0/RP0/CPU0:router(config-mpls-te)# attribute-set xro attrset01
| Configures an XRO attribute-set for a GMPLS tunnel. | ||
Step 4 |
exclude {best-effort | strict} lsp source source-address destination destination-address tunnel-id tunnel-id extended-tunnel-id extended-tunnel-id [lsp-id lsp-id] Example: RP/0/RP0/CPU0:router(config-te-attribute-set)# exclude best-effort lsp source 10.10.1.2 destination 10.20.4.4 tunnel-id 17 extended-tunnel-id 10.20.3.3 lsp-id 17 RP/0/RP0/CPU0:router(config-te-attribute-set)# | Specifies exclusions for an attribute set for LSP diversity.
| ||
Step 5 |
commit
|
To implement LMP configuration for GMPLS UNI, follow these procedures:
Perform this task to enable GMPLS UNI LMP functionality and to configure LMP unicast router ID.
1.
configure
2.
lmp
3.
gmpls optical-uni
4.
router-id ipv4 unicast address
5.
commit
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure
| |
Step 2 |
lmp Example:
RP/0/RP0/CPU0:router(config)# lmp
|
Enters LMP configuration mode. |
Step 3 |
gmpls optical-uni Example:
RP/0/RP0/CPU0:router(config-lmp)# gmpls optical-uni
| Enters GMPLS UNI configuration submode. |
Step 4 |
router-id ipv4 unicast address Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni)# router-id ipv4 unicast 10.10.4.4
| Configures the LMP unicast router ID for GMPLS. |
Step 5 |
commit
|
Perform this task to configure an LMP neighbor for a GMPLS UNI tunnel.
1.
configure
2.
lmp
3.
gmpls optical-uni
4.
neighbor name
5.
ipcc routed
6.
router-id ipv4 unicast address
7.
commit
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure
| |
Step 2 |
lmp Example:
RP/0/RP0/CPU0:router(config)# lmp
|
Enters LMP configuration mode. |
Step 3 |
gmpls optical-uni Example:
RP/0/RP0/CPU0:router(config-lmp)# gmpls optical-uni
| Enters GMPLS UNI configuration submode. |
Step 4 |
neighbor name Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni)# neighbor nbr1
| Specifies an LMP neighbor for GMPLS and enters LMP GMPLS UNI neighbor configuration submode. |
Step 5 |
ipcc routed Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-nbr-nbr1)# ipcc routed
| Specifies the LMP neighbor IPCC configuration for GMPLS UNI. |
Step 6 |
router-id ipv4 unicast address Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-nbr-nbr1)# router-id ipv4 unicast 10.10.4.4
| Configures the LMP unicast router ID for GMPLS. |
Step 7 |
commit
|
Perform this task to configure an LMP link for a GMPLS UNI controller.
1.
configure
2.
lmp
3.
gmpls optical-uni
4.
controller dwdm controller
5.
neighbor name
6.
link-id ipv4 unicast address
7.
neighbor link-id ipv4 unicast address
8.
neighbor interface-id unnumbered interface-id
9.
commit
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure
| |
Step 2 |
lmp Example:
RP/0/RP0/CPU0:router(config)# lmp
|
Enters LMP configuration mode. |
Step 3 |
gmpls optical-uni Example:
RP/0/RP0/CPU0:router(config-lmp)# gmpls optical-uni
| Enters GMPLS UNI configuration submode. |
Step 4 |
controller dwdm controller Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni)# controller dwdm 0/4/0/0
| Specifies a controller for GMPLS UNI. |
Step 5 |
neighbor name Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-cntl)# neighbor nbr1
| Specifies an LMP neighbor for GMPLS and enters LMP GMPLS UNI neighbor configuration submode. |
Step 6 |
link-id ipv4 unicast address Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-cntl)# link-id ipv4 unicast 10.2.2.4
| Specifies the optical interface address for an LMP link for a GMPLS UNI controller. |
Step 7 |
neighbor link-id ipv4 unicast address Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-cntl)# neighbor link-id ipv4 unicast 10.10.4.4
| Specifies the neighbor's optical address of an LMP link for a GMPLS UNI controller. |
Step 8 |
neighbor interface-id unnumbered interface-id Example:
RP/0/RP0/CPU0:router(config-lmp-gmpls-uni-cntl)# neighbor interface-id unnumbered 17
| Specifies the neighbor's optical interface ID of an LMP link for a GMPLS UNI controller. |
Step 9 |
commit
|
Perform this task to configure optical refresh interval under the RSVP controller submode and to configure the number of missed refresh messages allowed before optical tunnel states are deleted.
1.
configure
2.
rsvp
3.
controller dwdm interface
4.
signalling refresh out-of-band interval interval
5.
signalling refresh out-of-band missed miss-count
6.
commit
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure
| |
Step 2 |
rsvp Example:
RP/0/RP0/CPU0:router(config)# rsvp
|
Enters RSVP configuration mode. |
Step 3 |
controller dwdm interface Example:
RP/0/RP0/CPU0:router(config-rsvp)# controller dwdm 0/1/0/1
| Configures a controller for establishing a GMPLS UNI tunnel. |
Step 4 |
signalling refresh out-of-band interval interval Example:
RP/0/RP0/CPU0:router(config-rsvp-cntl)# signalling refresh out-of-band interval 200
| Configures optical refresh interval. The interval argument is the interval (in seconds) at which refresh messages are sent and expected to be received. The range is 180 to 86400 (a refresh-interval of 1 day). |
Step 5 |
signalling refresh out-of-band missed miss-count Example:
RP/0/RP0/CPU0:router(config-rsvp-cntl)# signalling refresh out-of-band missed 30
| Configures number of missed refresh messages allowed before optical tunnel states are deleted. The miss-count argument is the number of refresh messages, expected at the configured refresh-interval, which can be missed before optical tunnel states time out. The accepted range is 1 to 48. The default value is 12. |
Step 6 |
commit
|
These configuration examples are provided for GMPLS UNI:
This example shows the minimal head UNI-C configuration require to establish a GMPLS tunnel:
rsvp controller dwdm 0/1/0/1 signalling refresh out-of-band interval 3600 signalling refresh out-of-band missed 24 ! ! mpls traffic-eng gmpls optical-uni controller dwdm 0/1/0/1 tunnel-properties tunnel-id 100 destination 100.20.20.20 path-option 10 no-ero ! ! ! ! lmp gmpls optical-uni router-id 100.11.11.11 neighbor nbr_A ipcc routed neighbor router-id ipv4 unicast 100.12.12.12 ! controller dwdm 0/1/0/1 neighbor nbr_A link-id ipv4 unicast 192.168.100.1 neighbor link-id ipv4 unicast 192.168.100.2 neighbor interface-id unnumbered 13 ! ! !
This example shows the minimal tail UNI-C configuration require to establish a GMPLS tunnel:
Note | The controller must be specified under the GMPLS UNI submode to inform TE that incoming GMPLS path messages are to be accepted and processed. |
rsvp controller dwdm 0/1/0/1 signalling refresh out-of-band interval 3600 signalling refresh out-of-band missed 24 ! ! mpls traffic-eng gmpls optical-uni controller dwdm 0/1/0/1 ! ! ! lmp gmpls optical-uni router-id 100.20.20.20 neighbor nbr_B ipcc routed neighbor router-id ipv4 unicast 100.19.19.19 ! controller dwdm 0/1/0/1 neighbor nbr_B link-id ipv4 unicast 192.168.103.2 neighbor link-id ipv4 unicast 192.168.103.1 neighbor interface-id unnumbered 22 ! ! !
This example shows the configuration for two diverse LSPs:
mpls traffic-eng attribute-set xro exclude-tun1 exclude best-effort lsp source 88.0.0.8 destination 10.0.0.2 tunnel-id 1 extended-tunnel-id 88.0.0.8 ! attribute-set xro exclude-tun2 exclude strict lsp source 88.0.0.8 destination 10.0.1.2 tunnel-id 2 extended-tunnel-id 88.0.0.8 lsp-id 2 ! gmpls optical-uni controller dwdm 0/1/0/0 tunnel-properties logging events lsp-status state tunnel-id 1 destination ipv4 unicast 10.0.0.2 path-option 10 no-ero xro-attribute-set exclude-tun2 ! ! controller dwdm 0/1/0/1 tunnel-properties logging events lsp-status state tunnel-id 2 destination ipv4 unicast 10.0.1.2 path-option 10 no-ero xro-attribute-set exclude-tun1 ! ! ! !
For additional information related to implementing GMPLS UNI, refer to the following references:
Related Topic | Document Title |
---|---|
GMPLS UNI commands |
GMPLS UNI Commands module in Cisco IOS XR MPLS Command Reference for the Cisco CRS Router |
MPLS Traffic Engineering commands |
MPLS Traffic Engineering commands module in Cisco IOS XR MPLS Command Reference for the Cisco CRS Router |
RSVP commands |
RSVP commands module in Cisco IOS XR MPLS Command Reference for the Cisco CRS Router |
Getting started material |
Cisco IOS XR Getting Started Guide for the Cisco CRS Router |
Information about user groups and task IDs |
Configuring AAA Services module in Cisco IOS XR System Security Configuration Guide for the Cisco CRS Router |
Standard | Title |
---|---|
OIF UNI 1.0 |
User Network Interface (UNI) 1.0 Signaling Specification |
MIBs | MIBs Link |
---|---|
— |
To locate and download MIBs using Cisco IOS XR software, use the Cisco MIB Locator found at the following URL and choose a platform under the Cisco Access Products menu: http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml |
RFCs | Title |
---|---|
RFC 3471 |
Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description |
RFC 3473 |
Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions |
RFC 4208 |
Generalized Multiprotocol Label Switching (GMPLS) User-Network Interface (UNI): Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Support for the Overlay Model |
RFC 4872 |
RSVP-TE Extensions in Support of End-to-End Generalized Multi-Protocol Label Switching (GMPLS) Recovery |
RFC 4874 |
Exclude Routes - Extension to Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) |
RFC 6205 |
Generalized Labels for Lambda-Switch-Capable (LSC) Label Switching Routers |
Description | Link |
---|---|
The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content. |