3.14. Configuring MPLS and RSVP-TE with CLI

This section provides information to configure MPLS and RSVP-TE using the CLI.

Topics in this section include:

3.15. MPLS Configuration Overview

MPLS enables routers to forward traffic based on a label embedded in the packet header. A router examines the label to determine the next hop for the packet, instead of router address lookups to the next node when forwarding packets.

To implement MPLS on an LSP for outer tunnel and pseudowire assignment, the following entities must be configured:

3.15.1. Router Interface

At least one router interface and one system interface must be defined in the config>router>interface context in order to configure MPLS on an interface.

3.15.1.1. E-LSP for Differentiated Services

An EXP-inferred LSP (E-LSP) is an LSP that can support a variety of VLLs or traffic types. Up to eight types of traffic can be multiplexed over an E-LSP.

The prioritization of mission-critical traffic is handled by the settings of the three EXP bits. The EXP bits designate the importance of a particular packet. The classification and queuing at the Provider (P) or Provider Edge (PE) nodes typically take place based on the value of the EXP bits. Refer to the 7705 SAR Quality of Service Guide for more information on the use of EXP bits and differentiated services on the 7705 SAR.

3.15.2. Paths

To configure signaled LSPs, you must first create one or more named paths on the ingress router using the config>router>mpls>path command. For each path, the transit routers (hops) in the path are specified.

3.15.3. LSPs

The 7705 SAR supports static and dynamic LSPs.

To configure MPLS-signaled (dynamic) LSPs, the LSP must run from an ingress LER to an egress LER. Configure the dynamic LSP only at the ingress router, and either configure the LSP to allow the router software to make the forwarding decisions or configure some or all routers in the LSP path statically. The LSP is set up by RSVP-TE signaling messages. The 7705 SAR automatically manages label values. Labels that are automatically assigned have values ranging from 1024 through 1 048 575 (see Label Values).

A static LSP is a manually configured LSP where the next hop IP address and the outgoing label are explicitly specified.

To establish a static LSP, an LSP must be configured from an ingress LER to an egress LER. Labels must be manually assigned and the label values must be within the range of 32 to 1023 (see Label Values).

3.15.4. Pseudowires

To configure PW/VLL labels, the PW/VLL service must be configured. PW/VLL labels can be configured manually as statically allocated labels using any unused label within the static label range. Pseudowire/VLL labels can also be dynamically assigned by targeted LDP. Statically allocated labels and dynamically allocated labels are designated differently in the label information base.

PW/VLL labels are uniquely identified against a 7705 SAR, not against an interface or module.

As defined in RFC 3036, LDP Specification, and RFC 4447 Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP), label distribution is handled in the Downstream Unsolicited (DU) mode. Generic Label TLV is used for all setup and maintenance operations.

3.15.5. Signaling Protocol

For static LSPs, the path and the label mappings and actions configured at each hop must be specified manually. RSVP-TE or LDP is not required for static LSPs.

For dynamic LSPs, RSVP-TE or LDP must be turned on. See RSVP and RSVP-TE or Label Distribution Protocol.

To implement dynamic pseudowire/VLL labels, entities must be enabled as follows:

  1. MPLS must be enabled on all routers that are part of a static LSP
  2. LDP must be enabled on the ingress and egress LERs

When MPLS is enabled and either RSVP-TE or LDP is also enabled, MPLS uses RSVP-TE or LDP to set up the configured LSPs. For example, when you configure an LSP with both MPLS and RSVP-TE running, RSVP-TE initiates a session to create the LSP. RSVP-TE uses the local router as the RSVP-TE session sender and the LSP destination as the RSVP-TE session receiver. Once the RSVP-TE session is created, the LSP is set up on the path created by the session. If the session is not successfully created, RSVP-TE notifies MPLS; MPLS can then either initiate backup paths or retry the initial path.

3.16. Basic MPLS Configuration

This section provides information to configure MPLS and gives configuration examples of common configuration tasks. To enable MPLS on a 7705 SAR router, you must configure at least one MPLS interface. The MPLS interface is configured in the config>router> mpls context. The other MPLS configuration parameters are optional.

The following example displays an MPLS configuration output. The admin-group is configured in the config>router>if-attribute context and associated with the MPLS interface in the config>router>mpls>interface context.

A:ALU-1>config>router>if-attr# info
------------------------------------------
            admin-group "green" 15
            admin-group "yellow" 20
            admin-group "red" 25
------------------------------------------
A:ALU-1>config>router>mpls# info
------------------------------------------
            interface "system"
            exit
            interface "StaticLabelPop"
                admin-group "green"
                label-map 50
                    pop
                    no shutdown
                exit
            exit
            interface "StaticLabelPop"
                label-map 35
                    swap 36 nexthop 10.10.10.91
                    no shutdown
                exit
            exit
            path "to-NYC"
                hop 1 10.10.10.104 strict
                no shutdown
            exit
            path "secondary-path"
                no shutdown
            exit
            lsp "lsp-to-eastcoast"
                to 10.10.10.104
                from 10.10.10.103
                fast-reroute one-to-one
                exit
                primary "to-NYC"
                exit
                secondary "secondary-path"
                exit
                no shutdown
            exit
            static-lsp "StaticLabelPush"
                to 10.10.11.105
                push 60 nexthop 10.10.11.105
                no shutdown
            exit
            no shutdown
---------------------------------------------
A:ALU-1>config>router>mpls#

3.17. Common Configuration Tasks

This section provides a brief overview of the tasks to configure MPLS and provides the CLI commands.

The following protocols must be enabled on each participating router:

  1. MPLS
  2. RSVP-TE (for RSVP-TE-signaled MPLS only)
  3. LDP

In order for MPLS to run, you must configure at least one MPLS interface in the config>router>mpls context.

  1. An interface must be created in the config>router>interface context before it can be applied to MPLS.
  2. In the config>router>mpls context, configure the path parameters. A path specifies some or all hops from ingress to egress. A path can be used by multiple LSPs.
  3. When an LSP is created, the egress router must be specified in the to command and at least one primary or secondary path must be specified. All other settings under the LSP hierarchy are optional.

3.17.2. Configuring Global MPLS Parameters

Admin groups can signify link colors, such as red, yellow, or green, or some other link quality. Shared risk link groups (SRLGs) are lists of interfaces that share the same risk of failure due to shared resources. MPLS interfaces advertise the admin groups and SRLGs that they support. CSPF uses the information when paths are computed for constraint-based LSPs. CSPF must be enabled in order for admin groups and SRLGs to be relevant.

Admin groups and SRLGs are created in the config>router>if-attribute context. Other global parameters are created in the config>router>mpls context.

To configure global MPLS parameters, enter the following commands:

CLI Syntax:
config>router>if-attribute
admin-group group-name value group-value
srlg-group group-name value group-value
CLI Syntax:
config>router>mpls
dynamic-bypass [enable | disable]
frr-object
hold-timer seconds
resignal-timer minutes
srlg-frr [strict]
Example:
config>router# if-attribute
config>router>if-attr# admin-group “green” value 15
config>router>if-attr# admin-group “red” value 25
config>router>if-attr# admin-group “yellow” value 20
config>router>if-attr# srlg-group “SRLG_fiber_1” value 50
config>router>if-attr# exit
config>router# mpls
config>router>mpls# frr-object
config>router>mpls# hold-timer 3
config>router>mpls# resignal-timer 500
config>router>mpls# srlg-frr strict

The following example displays a global MPLS configuration output.

A:ALU-1>config>router>if-attr# info
----------------------------------------------
            admin-group "green" 15
            admin-group "red" 25
            admin-group "yellow" 20
            srlg-group "SRLG_fiber_1" 50
----------------------------------------------
 
A:ALU-1>config>router>mpls# info
----------------------------------------------
            frr-object
            hold-timer 3
            resignal-timer 500
            srlg-frr strict
----------------------------------------------
A:ALU-1>config>router>mpls# info

3.17.3. Configuring an MPLS Interface

The interface must exist in the system before it can be configured as an MPLS interface; refer to the 7705 SAR Router Configuration Guide for more information.

Once the MPLS protocol instance is created, the no shutdown command is not required since MPLS is administratively enabled upon creation. Configure the label-map parameters if the interface is used in a static LSP.

Use the following CLI syntax to configure an MPLS interface on a router:

CLI Syntax:
config>router>mpls
interface ip-int-name
admin-group group-name [group-name...(up to 5 max)]
label-map in-label
pop
swap out-label next-hop ip-address
no shutdown
srlg-group group-name [group-name...(up to 5 max)]
te-metric value
no shutdown
Example:
config>router# mpls
config>router>mpls# interface to-104
config>router>mpls>if# label-map 35
config>router>mpls>if>label-map# swap 36 next-hop 10.10.10.91
config>router>mpls>if>label-map# no shutdown
config>router>mpls>if>label-map# exit
config>router>mpls>if# srlg-group “SRLG_fiber_1”
config>router>mpls>if# no shutdown
config>router>mpls# exit

The following example displays the interface configuration output.

A:ALU-1>config>router>mpls# info
----------------------------------------------
            interface "to-104"
                admin-group "green"
                admin-group "red"
                admin-group "yellow"
                label-map 35
                    swap 36 nexthop 10.10.10.91
                    no shutdown
                srlg-group "SRLG_fiber_1"
                exit
            exit
            no shutdown

3.17.4. Configuring MPLS Paths

Configure an MPLS path for use by LSPs. When configuring an MPLS path, the IP address of each hop that the LSP should traverse on its way to the egress router must be specified. The intermediate hops must be configured as either strict or loose, meaning that the LSP must take either a direct path from the previous hop router to this router (strict) or can traverse other routers (loose).

Use the following CLI syntax to configure a path:

CLI Syntax:
config>router>mpls
path path-name
hop hop-index ip-address {strict|loose}
no shutdown

The following example displays a path configuration output.

A:ALU-1>config>router>mpls# info
------------------------------------------
            interface "system"
            exit
            path "to-NYC"
                hop 1 10.10.10.103 strict
                hop 2 10.10.0.210 strict
                hop 3 10.10.0.215 loose
            exit
            path "secondary-path"
                hop 1 10.10.0.121 strict
                hop 2 10.10.0.145 strict
                hop 3 10.10.0.1 strict
                no shutdown
            exit
------------------------------------------
A:ALU-1>config>router>mpls#

3.17.5. Configuring an MPLS LSP

Configure an LSP for MPLS. When configuring an LSP, you must specify the IP address of the egress router in the to statement. Specify the primary path to be used. Secondary paths can be explicitly configured or signaled upon the failure of the primary path. All other statements are optional.

The following displays an MPLS LSP configuration.

A:ALU-1>config>router>mplp# info
----------------------------------------------
...
            lsp "lsp-to-eastcoast"
                to 192.168.200.41
                rsvp-resv-style ff
                cspf
                include "red"
                exclude "green"
                adspec
                fast-reroute one-to-one
                exit
                primary "to-NYC"
                    hop-limit 10
                exit
                secondary "secondary-path"
                    bandwidth 50000
                exit
                no shutdown
            exit
            no shutdown
----------------------------------------------
A:ALU-1>config>router>mpls#

3.17.6. Configuring a Static LSP

An LSP can be explicitly (manually) configured. The reserved range of static LSP labels is 32 to 1023. Static LSPs are configured on every node along the LSP path. The label’s forwarding information includes the address of the next hop router.

Use the following CLI syntax to configure a static LSP:

CLI Syntax:
config>router>mpls
static-lsp lsp-name
to ip-address
push label nexthop ip-address
no shutdown
Example:
config>router# mpls
config>router>mpls# static-lsp static-LSP
config>router>mpls>static-lsp$ to 10.10.10.124
config>router>mpls>static-lsp# push 60 nexthop 10.10.42.3
config>router>mpls>static-lsp# no shutdown
config>router>mpls>static-lsp# exit

The following example displays the static LSP configuration output.

ALU-1>config>router>mpls# info
----------------------------------------------
...
            static-lsp "static-LSP"
                to 10.10.10.124
                push 60 nexthop 10.10.42.3
                no shutdown
            exit
----------------------------------------------

3.17.6.1. Configuring a Fast-Retry Timer for Static LSPs

A fast-retry timer can be configured for static LSPs. When a static LSP is trying to come up, MPLS tries to resolve the ARP entry for the next hop of the LSP. This request may fail because the next hop might still be down or unavailable. In that case, MPLS starts a retry timer before making the next request. The fast-retry command allows the user to configure the retry timer so that the LSP comes up shortly after the next hop is available.

Use the following CLI syntax to configure a fast-retry timer for static LSPs:

CLI Syntax:
config>router>mpls
static-lsp-fast-retry seconds
Example:
config>router# mpls
config>router>mpls# static-lsp-fast-retry 15

3.17.7. Configuring Manual Bypass Tunnels

Consider the following network setup in Figure 13. Assume that a manual bypass tunnel must be configured on Node B.

Figure 13:  Manual Bypass Tunnels 
  1. Disable dynamic bypass tunnels on Node B.
    The CLI syntax for this configuration is:
    config>router>mpls>dynamic-bypass [disable | enable]
    By default, dynamic bypass tunnels are enabled.
  2. Configure an LSP on Node B, such as B-E-F-C, which will be used only as a bypass. Specify each hop in the path and assign its strict or loose option; in this case, the bypass LSP will have a strict path. Designate the LSP as a primary LSP.
    The CLI syntax for this configuration is:
    config>router>mpls>path path-name>hop hop-index ip-address [strict | loose]
    config>router>mpls>lsp lsp-name bypass-only
    (see also the configuration example below)
    Including the bypass-only keyword disables some options under the LSP configuration. See Table 6.
    Table 6:  Disabled and Enabled Options for Bypass-Only 

    Disabled Options

    Enabled Options

    1. bandwidth
    2. fast-reroute
    3. secondary
    1. adaptive
    2. adspec
    3. cspf
    4. exclude
    5. hop-limit
    6. include
    7. metric
  3. Configure an LSP from A to D and indicate fast-reroute bypass protection by selecting facility as the FRR method.
    The CLI syntax for this configuration is:
    config>router>mpls>lsp lsp-name>fast-reroute facility
    If the LSP from A to D goes through Node B and bypass is requested, the next hop is Node C, and there is a manually configured bypass-only tunnel from B to C that excludes link BC (that is, path BEFC), then Node B uses the bypass-only tunnel.

The following example displays a bypass tunnel configuration output.

A:ALU-48>config>router>mpls># info
-------------------------------------------
...
            path "BEFC"
                hop 10 10.10.10.11 strict
                hop 20 10.10.10.12 strict
                hop 30 10.10.10.13 strict
                no shutdown
            exit
            lsp "bypass-BC" bypass-only
                to 10.10.10.15
                primary "BEFC"
                exit
                no shutdown
...
-------------------------------------------

3.17.8. Configuring RSVP-TE Parameters and Interfaces

RSVP-TE is used to set up LSPs. RSVP-TE must be enabled on the router interfaces that are participating in signaled LSPs. The default values can be modified in the config>router>rsvp context.

Initially, interfaces are configured in the config>router>mpls>interface context. Only these existing (MPLS) interfaces are available to be modified in the config>router>rsvp context. Interfaces cannot be directly added in the rsvp context.

The following example displays an RSVP-TE configuration output.

A:ALU-1>config>router>rsvp# info
----------------------------------------------
          keep-multiplier 3
          refresh-time 30
          no msg-pacing
          rapid-retransmit-time 5
          rapid-retry-limit 3
          refresh-reduction-over-bypass disable
          no graceful-shutdown
          no entropy-label-capability
          node-id-in-rro exclude
          interface "system"
             no shutdown
          exit
          interface to-104
             hello-interval 4000
             no shutdown
          exit
          no shutdown
----------------------------------------------
A:ALU-1>config>router>rsvp#

3.17.9. Configuring RSVP-TE Message Pacing Parameters

RSVP-TE message pacing maintains a count of the messages that were dropped because the output queue for the egress interface was full.

Use the following CLI syntax to configure RSVP-TE message pacing parameters:

CLI Syntax:
config>router>rsvp
no shutdown
msg-pacing
period milli-seconds
max-burst number

The following example displays an RSVP-TE message pacing configuration output.

A:ALU-1>config>router>rsvp# info
----------------------------------------------
            keep-multiplier 5
            refresh-time 60
            msg-pacing
                period 400
                max-burst 400
            exit
            interface "system"
                no shutdown
            exit
            interface to-104
                hello-interval 4000
                no shutdown
            exit
            no shutdown
----------------------------------------------
A:ALU-1>config>router>rsvp#

3.18. MPLS Configuration Management Tasks

This section discusses the following MPLS configuration management tasks:

3.18.1. Deleting MPLS

The no form of the mpls command typically removes an MPLS instance and all associated information. However, MPLS must be disabled (shut down) and all SDP bindings to LSPs removed before an MPLS instance can be deleted. Once MPLS is shut down, the no mpls command deletes the protocol instance and removes all configuration parameters for the MPLS instance.

If MPLS is not shut down first, when the no mpls command is executed, a warning message on the console indicates that MPLS is still administratively up.

To delete the MPLS instance:

  1. Disable the MPLS instance using the shutdown command.
  2. Remove the MPLS instance from the router using the no mpls command.
CLI Syntax:
config>router# no mpls

3.18.2. Modifying MPLS Parameters

Note:

You must shut down MPLS entities in order to modify parameters. Re-enable (no shutdown) the entity for the change to take effect.

3.18.3. Modifying an MPLS LSP

Some MPLS LSP parameters (such as primary and secondary), must be shut down before they can be edited or deleted from the configuration.

The following example displays an MPLS LSP configuration output. Refer to Configuring an MPLS Interface.

A:ALU-1>>config>router>mpls>lsp# info
----------------------------------------------
                shutdown
                to 10.10.10.104
                from 10.10.10.103
                rsvp-resv-style ff
                include "red"
                exclude "green"
                fast-reroute one-to-one
                exit
                primary "to-NYC"
                    hop-limit 50
                exit
                secondary "secondary-path"
                exit
----------------------------------------------
A:ALU-1>config>router>mpls#

3.18.4. Modifying MPLS Path Parameters

In order to modify path parameters, the config>router>mpls>path context must be shut down first.

The following example displays an MPLS path configuration output. Refer to Configuring MPLS Paths.

A:ALU-1>config>router>mpls# info
#------------------------------------------
echo "MPLS"
#------------------------------------------
...
            path "secondary-path"
                hop 1 10.10.0.111 strict
                hop 2 10.10.0.222 strict
                hop 3 10.10.0.123 strict
                no shutdown
            exit
            path "to-NYC"
                hop 1 10.10.10.104 strict
                hop 2 10.10.0.210 strict
                no shutdown
            exit
----------------------------------------------

3.18.5. Modifying MPLS Static LSP Parameters

Use the show>service>router>static-lsp command to display a list of LSPs.

In order to modify static LSP parameters, the config>router>mpls>static-lsp lsp-name context must be shut down.

To modify an LSP:

  1. Access the specific LSP by specifying the LSP name, and then shut it down.
  2. Enter the parameter to modify and then enter the new information.
Example:
config>router# mpls
config>router>mpls# static-lsp "static-LSP"
config>router>mpls>static-lsp# shutdown
config>router>mpls>static-lsp# to 10.10.0.234
config>router>mpls>static-lsp# push 1023 nexthop 10.10.8.114
config>router>mpls>static-lsp# no shutdown
config>router>mpls>static-lsp# exit

The following example displays the static LSP configuration output.

ALU-1>config>router>mpls# info
----------------------------------------------
...
            static-lsp "static-LSP"
                to 10.10.10.234
                push 1023 nexthop 10.10.8.114
                no shutdown
            exit
            no shutdown
----------------------------------------------
ALU-1>config>router>mpls#

3.18.6. Deleting an MPLS Interface

To delete an interface from the MPLS configuration:

  1. Administratively disable the interface using the shutdown command.
  2. Delete the interface with the no interface command.
CLI Syntax:
mpls
interface ip-int-name
shutdown
exit
no interface ip-int-name
Example:
config>router# mpls
config>router>mpls# interface to-104
config>router>mpls>if# shutdown
config>router>mpls>if# exit
config>router>mpls# no interface to-104

The following example displays the configuration output when interface “to-104” has been deleted.

A:ALU-1>config>router>mpls# info
----------------------------------------------
...
admin-group "green" 15
            admin-group "red" 25
            admin-group "yellow" 20
            interface "system"
            exit
            no shutdown
----------------------------------------------
A:ALU-1>config>router>mpls#

3.19. RSVP-TE Configuration Management Tasks

This section discusses the following RSVP-TE configuration management tasks:

3.19.1. Modifying RSVP-TE Parameters

Only interfaces configured in the MPLS context can be modified in the rsvp context.

The no rsvp command deletes this RSVP-TE protocol instance and removes all configuration parameters for this RSVP-TE instance. The shutdown command suspends the execution and maintains the existing configuration.

The following example displays a modified RSVP-TE configuration output.

A:ALU-1>config>router>rsvp# info
----------------------------------------------
            keep-multiplier 5
            refresh-time 60
            msg-pacing
                period 400
                max-burst 400
            exit
            rapid-retransmit-time 5
            rapid-retry-limit 3
            refresh-reduction-over-bypass disable
            no graceful-shutdown
            no entropy-label-capability
            node-id-in-rro exclude
            interface "system"
            exit
            interface "test1"
                hello-interval 5000
            exit
            no shutdown
----------------------------------------------
A:ALU-1>config>router>rsvp#

3.19.2. Modifying RSVP-TE Message Pacing Parameters

RSVP-TE message pacing maintains a count of the messages that were dropped because the output queue for the egress interface was full.

The following example displays a modified RSVP-TE message pacing configuration output. Refer to Configuring RSVP-TE Message Pacing Parameters.

A:ALU-1>config>router>rsvp# info
----------------------------------------------
            keep-multiplier 5
            refresh-time 60
            msg-pacing
                period 200
                max-burst 200
            exit
            interface "system"
            exit
            interface "to-104"
            exit
            no shutdown
----------------------------------------------
A:ALU-1>config>router>rsvp#

3.19.3. Deleting an Interface from RSVP-TE

Interfaces cannot be deleted directly from the RSVP-TE configuration. Because an interface is created in the mpls context and then configured in the rsvp context, it can only be deleted in the mpls context This removes the association from RSVP-TE.

Refer to Deleting an MPLS Interface.