Cisco IOS Multiprotocol Label Switching Command Reference
MPLS Commands: mpls ldp address-message through mpls ldp tcp pak-priority

Table Of Contents

mpls ldp address-message

mpls ldp advertise-labels

mpls ldp advertise-labels old-style

mpls ldp atm control-mode

mpls ldp atm vc-merge

mpls ldp autoconfig

mpls ldp backoff

mpls ldp discovery

mpls ldp discovery transport-address

mpls ldp explicit-null

mpls ldp graceful-restart

mpls ldp graceful-restart timers max-recovery

mpls ldp graceful-restart timers neighbor-liveness

mpls ldp holdtime

mpls ldp igp autoconfig

mpls ldp igp sync

mpls ldp igp sync holddown

mpls ldp logging neighbor-changes

mpls ldp loop-detection

mpls ldp maxhops

mpls ldp neighbor implicit-withdraw

mpls ldp neighbor labels accept

mpls ldp neighbor password

mpls ldp neighbor targeted

mpls ldp router-id

mpls ldp session protection

mpls ldp sync

mpls ldp tcp pak-priority


mpls ldp address-message

To specify advertisement of platform addresses to a label-controlled ATM (LC-ATM) Label Distribution Protocol (LDP) peer, use the mpls ldp address-message command in interface configuration mode. To disable advertisement of platform addresses, use the no form of this command.

mpls ldp address-message

no mpls ldp address-message

Syntax Description

This command has no arguments or keywords.

Defaults

LDP Address and Address Withdraw messages are not sent to LC-ATM LDP peers.

Command Modes

Interface configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

The LDP specification includes Address and Address Withdraw messages used by a label switch router (LSR) to advertise its addresses to its peers.

An LSR uses the addresses it learns from peers when operating in Downstream Unsolicited label advertisement mode to convert between route next hop addresses (found in the LSR routing table) and peer LDP identifiers.

The ability to map between the IP address and the peer LDP identifier is required so that

When the MPLS forwarding engine (LFIB) asks for labels for a given destination prefix or next hop address, the LSR can find the label learned (if any) from the next hop. The LSR maintains learned labels in its label information base (LIB) tagged by the LDP ID of the advertising LSR.

When the LSR learns a label for destination prefix P from an LDP peer, it can determine if that peer (known to the LSR by its LDP identifier) is currently the next hop for P.

In principle, an LSR operating in Downstream On Demand (DoD) mode for an LC-ATM interface does not need this information for two reasons:

The LSR should know from the routing table the next hop interface.

There is only one DoD peer per LC-ATM interface.

Consequently, Cisco platforms do no normally send Address or Address Withdraw messages to LC-ATM peers.

Some LDP implementations might require the information learned in Address or Address Withdraw messages for LC-ATM. The mpls ldp address-message command is provided to enable interoperability with implementation vendors that require Address messages for LC-ATM.


Note Cisco platforms always advertise their addresses in Address and Address Withdraw messages for LDP sessions operating in Downstream Unsolicited label advertisement mode.


Examples

The following example shows how to specify advertisement of platform addresses to an LC-ATM peer:

Router(config-if)# mpls ldp address-message

Related Commands

Command
Description

show mpls interfaces

Displays MPLS information about interfaces, including the configured label distribution protocol.


mpls ldp advertise-labels

To control the distribution of locally assigned (incoming) labels by means of label distribution protocol (LDP), use the mpls ldp advertise-labels command in global configuration mode. This command is used to control which labels are advertised to which LDP neighbors. To disable this feature, use the no form of this command.

mpls ldp advertise-labels [vrf vpn-name] [interface interface | for prefix-access-list [to peer-access-list]]

no mpls ldp advertise-labels [vrf vpn-name] [interface interface | for prefix-access-list [to peer-access-list]]

Syntax Description

vrf vpn-name

(Optional) Specifies the VPN routing/forwarding instance (vpn-name) for label advertisement.

interface interface

(Optional) Specifies an interface (interface) for label advertisement of an interface address.

for prefix-access-list

(Optional) Specifies which destinations should have their labels advertised.

to peer-access-list

(Optional) Specifies which LDP neighbors should receive label advertisements. An LSR is identified by its router ID, which consists of the first 4 bytes of its 6-byte LDP identifier.


Defaults

The labels of all destinations are advertised to all LDP neighbors.

If the vrf keyword is not specified, this command applies to the default routing domain.

If the interface keyword is not specified, no label is advertised for the interface address.

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect MPLS IETF command syntax and terminology.

12.0(14)ST

This command was modified to reflect MPLS VPN support for LDP and to make the command consistent with the way Cisco IOS software interprets the prefix-access-list argument.

12.1(2)T

This command was integrated into Cisco IOS Release 12.1(2)T.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.

12.2(4)T

This command was integrated into Cisco IOS Release 12.2(4)T.

12.2(8)T

This command was integrated into Cisco IOS Release 12.2(8)T.

12.0(21)ST

This command was integrated into Cisco IOS Release 12.0(21)ST.

12.0(22)S

This command was integrated into Cisco IOS Release 12.(22)S. The interface interface keyword and argument was added to this command.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.


Usage Guidelines

To prevent the distribution of any locally assigned labels, use the no mpls ldp advertise-labels command with no optional parameters. To reenable the distribution of all locally assigned labels to all LDP neighbors, use the mpls ldp advertise-labels command with no optional parameters.

You can execute multiple mpls ldp advertise-labels commands. In the aggregate, such commands determine how the LSR advertises local labels. The following rules describe the effects of multiple commands:

1. Every mpls ldp advertise-labels command has a (prefix acl, peer acl) pair associated with it. The access list pair associated with the mpls ldp advertise-labels command (in the absence of both the for and to keywords) is (none, none); the access list pair associated with the mpls ldp advertise-labels for prefix acl command (in the absence of the to keyword) is (prefix-acl, none).

2. A given prefix can have, at most, one (prefix acl, peer acl) pair that "applies" to it, as described below:

a. A given (prefix acl, peer acl) pair "applies" to a prefix only if the prefix acl "matches" the prefix. A match occurs if the prefix acl permits the prefix.

b. If more than one (prefix acl, peer acl) pair from multiple mpls ldp advertise-labels commands matches a prefix, the (prefix acl, peer acl) pair in the first such command (as determined by the show running command) "applies" to the prefix.

3. When an LSR is ready to advertise a label for a prefix, the LSR:

a. Determines whether a (prefix acl, peer acl) pair applies to the prefix.

b. If none applies, and if the no mpls ldp advertise-labels command has been configured, the label for the prefix is not advertised to any peer; otherwise, the label is advertised to all peers.

c. If a (prefix acl, peer acl) pair applies to the prefix, and if the prefix acl "denies" the prefix, the label is not advertised to any peer.

d. If the prefix acl "permits" the prefix and the peer acl is none (that is, the command that "applies" to the prefix is an mpls ldp advertise-labels for prefix acl command without the to keyword), then the label is advertised to all peers.

e. If the prefix acl "permits" the prefix and there is a peer acl, then the label is advertised to all peers permitted by the peer acl.


Note The mpls ldp advertise-labels command has no effect on an LC-ATM interface. Such an interface behaves as though this command had not been executed.


Normally, LDP advertises labels only for IP prefixes that are in the routing table. You can use the mpls ldp advertise-labels interface command to force LDP to advertise a label for a prefix constructed from an interface address and a 32-bit mask. Such a prefix is not usually in the routing table.

Examples

In the following example, the router is configured to advertise no locally assigned labels to any LDP neighbors.

Router(config)# no mpls ldp advertise-labels

In the following example, the router is configured to advertise to all LDP neighbors only the labels for networks 10.101.0.0 and 10.221.0.0.

Router(config)# ip access-list standard pfx-filter
Router(config-std-nacl)# permit 10.101.0.0 0.0.255.255
Router(config-std-nacl)# permit 10.221.0.0 0.0.255.255
Router(config-std-nacl)# exit

Router(config)# mpls ldp advertise-labels for pfx-filter

Router(config)# no mpls ldp advertise-labels

In the following example, the router is configured to advertise the label for network 59.0.0.0 only to LSR 155.0.0.55, the label for network 35.0.0.0 only to LSR 133.0.0.33, and the labels for all other prefixes to all LSRs.

Router(config)# ip access-list standard pfx-filter1
Router(config-std-nacl)# permit 59.0.0.0
Router(config-std-nacl)# exit

Router(config)# ip access-list standard lsr-filter1
Router(config-std-nacl)# permit 155.0.0.55
Router(config-std-nacl)# exit

Router(config)# ip access-list standard pfx-filter2
Router(config-std-nacl)# permit 35.0.0.0
Router(config-std-nacl)# exit

Router(config)# ip access-list standard lsr-filter2
Router(config-std-nacl)# permit 133.0.0.33
Router(config-std-nacl)# exit

Router(config)# mpls ldp advertise-labels for pfx-filter1 to lsr-filter1
Router(config)# mpls ldp advertise-labels for pfx-filter2 to lsr-filter2

The output of the show mpls ip binding detail command includes the (prefix acl, peer acl) pairs that apply to each prefix. For this example, the applicable pairs are as shown below:

Router# show mpls ip binding detail
Advertisement spec:
	Prefix acl = pfx-filter1; Peer acl = lsr-filter1
	Prefix acl = pfx-filter2; Peer acl = lsr-filter2

  35.0.0.0/8, rev 109
	in label:     16
		Advertised to:
		133.0.0.33:0
	out label:    imp-null  lsr: 155.0.0.55:0     inuse
	out label:    imp-null  lsr: 133.0.0.33:0
	Advert acl(s): Prefix acl pfx-filter2, Peer acl lsr-filter2
  59.0.0.0/8, rev 108
	in label:     imp-null
		Advertised to:
		155.0.0.55:0
	out label:    16        lsr: 155.0.0.55:0
	out label:    19        lsr: 133.0.0.33:0
	Advert acl(s): Prefix acl pfx-filter1, Peer acl lsr-filter1
  113.0.0.33/32, rev 98
	out label:    imp-null  lsr: 133.0.0.33:0
  114.0.0.44/32, rev 99
	in label:     imp-null
		Advertised to:
		155.0.0.55:0           133.0.0.33:0
  133.0.0.33/32, rev 101
	in label:     20        
		Advertised to:
		155.0.0.55:0           133.0.0.33:0
	out label:    19        lsr: 155.0.0.55:0
	out label:    imp-null  lsr: 133.0.0.33:0     inuse
  144.0.0.44/32, rev 103
	in label:     imp-null
		Advertised to:
		155.0.0.55:0           133.0.0.33:0
	out label:    20        lsr: 155.0.0.55:0
	out label:    18        lsr: 133.0.0.33:0
  155.0.0.55/32, rev 104
	in label:     17
		Advertised to:
		155.0.0.55:0           133.0.0.33:0
	out label:    imp-null  lsr: 155.0.0.55:0     inuse
	out label:    17        lsr: 133.0.0.33:0
Router#

In the following example, the vrf keyword is specified to configure label advertisement in the VPN routing/forwarding instance named vpn1.

Router(config)# mpls ldp advertise-labels vrf vpn1 for pfx-filter1 to lsr-filter1

Router(config)# mpls ldp advertise-labels vrf vpn1 for pfx-filter2 to lsr-filter2

The following example uses the interface keyword to configure label advertisement for a /32 prefix constructed from the IP address of interface ethernet1/1:

Router(config)# mpls ldp advertise-labels interface ethernet1/1

Related Commands

Command
Description

mpls ldp advertise-labels old-style

Uses method of earlier software releases to interpret the for prefix-access-list parameter for the mpls ldp advertise-labels command.

show mpls ip binding detail

Shows detailed information about label bindings, including the access lists, if any, controlling which local labels are advertised to which LDP neighbors.


mpls ldp advertise-labels old-style

To cause the interpretation of the for prefix-access-list keyword argument pair for the mpls ldp advertise-labels commands to be interpreted according to the method used in earlier Cisco IOS software versions, use the mpls ldp advertise-labels old-style command in global configuration mode. To disable the interpretation, use the no form of this command.

mpls ldp advertise-labels old-style

no mpls ldp advertise-labels old-style

Syntax Description

This command has no arguments or keywords.

Defaults

If this command is not specified, the for prefix-access-list keyword argument pair in any mpls ldp advertise-labels commands is interpreted according to the rules specified under the "Usage Guidelines" section for the mpls ldp advertise-labels command.

Command Modes

Global configuration

Command History

Release
Modification

12.0(14)ST

This command was introduced to cause the for prefix-access-list keyword argument pair in this command to be interpreted in the same way as in earlier Cisco IOS releases.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

The method for interpreting the for prefix-access-list keyword argument pair in the mpls ldp advertise-labels commands is defined by Rule 2.a under the "Usage Guidelines" section for the mpls ldp advertise-labels command. This Rule 2.a follows normal access list conventions.

However, earlier Cisco IOS software releases used a different method for interpreting the for prefix-access-list keyword argument pair in mpls ldp advertise-labels commands. For those earlier software versions, Rule 2.a reads as follows:

2. A given prefix can have, at most, one prefix access-list, peer access-list argument pair that applies to it.

a. A given prefix access-list, peer-access-list argument pair applies to a prefix only if the prefix-access-list matches the prefix. A match occurs if the prefix-access-list argument explicitly permits or denies the prefix by means of a permit or deny command. A prefix-access-list argument that contains a permit any or deny any command matches any prefix.

This earlier Rule 2.a departed from normal access list conventions in that:

An explicit deny (including a deny any) that matches the prefix causes the prefix-access-list, peer-access-list argument pair to apply to the prefix.

Explicit deny any and implicit deny any (which all access lists have) have different effects, in that the explicit deny any causes the access list pair to apply to all prefixes, but the implicit deny any has no effect.

If a configuration developed for use with earlier Cisco IOS software releases depends on this previous method for interpreting the for prefix-access-list keyword argument pair in mpls ldp advertise-labels commands, and if it is inconvenient to update the configuration to work with Rule 2.a as it now appears under the "Usage Guidelines" section for the mpls ldp advertise-labels command, use the mpls ldp advertise-labels old-style command to force the use of the old-style method of interpreting the for prefix-access-list keyword argument pair used by earlier software releases.

Examples

The following example shows how to cause the old-style method of interpreting the for prefix-access-list keyword argument pair to be used in executing mpls ldp advertise-labels commands:

Router# mpls ldp advertise-labels old-style

Related Commands

Command
Description

mpls ldp advertise-labels

Controls the distribution of locally assigned labels by means of LDP.


mpls ldp atm control-mode

To control the mode used for handling label binding requests on label-controlled ATM (LC-ATM) interfaces, use the mpls ldp atm control-mode command in global configuration mode. To remove the control mode, use the no form of this command.

mpls ldp atm control-mode {ordered | independent}

no mpls ldp atm control-mode {ordered | independent}

Syntax Description

ordered

Delays a label binding in response to a Label Request message from a Label Distribution Protocol (LDP) neighbor until a label binding has been received from the next hop LDP neighbor for the destination in question.

independent

Returns a label binding immediately in response to a Label Request message from an LDP neighbor. Any packets for the destination in question are discarded by the label switch router (LSR) until a label binding from the next hop LSR has been received.


Defaults

The default is ordered control mode.

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect Multiprotocol Label Switching (MPLS) Internet Engineering Task Force (IETF) command syntax and terminology.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

Use of ordered control mode by an ATM device acting as a transit LSR in an ATM cloud ensures that the device will receive labeled packets to forward only after it has learned the outgoing labels required by MPLS to forward the packets. Ordered control mode relieves the device of the burden of reassembling cells into packets that must be forwarded by means of the normal (non-MPLS) packet forwarding or discard mechanisms.

Use of independent control mode on ATM transit LSRs might slightly reduce the time an ATM edge router must wait to use an ATM label switched path (LSP) it has initiated. Independent control mode eliminates the need for the edge router to wait for the Label Request/Label Mapping signaling to traverse the ATM cloud from edge router ingress to egress and back before it can send packets into the LSP. However, there is a risk that an ATM transit device might receive labeled packets before it has learned the outgoing labels required for MPLS forwarding, thus forcing the transit device to reassemble the cells into a packet that it is likely to discard.

Examples

The following example shows how to set the mode for handling LDP Label Request messages to "independent" for the platform:

Router# mpls ldp atm control-mode independent

mpls ldp atm vc-merge

To control whether the ATM-virtual circuit merge (multipoint-to-point) capability is supported for unicast label virtual circuits, use the mpls ldp atm vc-merge command in global configuration mode. To disable the ATM-virtual circuit merge capability, use the no form of this command.

mpls ldp atm vc-merge

no mpls ldp atm vc-merge

Syntax Description

This command has no arguments or keywords.

Defaults

The ATM-virtual circuit merge capability is enabled by default if the hardware supports this feature; otherwise, the feature is disabled.

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect Multiprotocol Label Switching (MPLS) Internet Engineering Task Force (IETF) command syntax and terminology.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

Use of virtual circuit merge helps conserve ATM labels by allowing incoming label switched paths (LSPs) from different sources for the same destination to be merged onto a single outgoing virtual circuit.

Examples

The following example shows how to disable the ATM-virtual circuit merge capability:

Router# no mpls ldp atm vc-merge

Related Commands

Command
Description

show mpls atm-ldp capability

Displays the ATM MPLS capabilities negotiated with LDP neighbors for LC-ATM interfaces.


mpls ldp autoconfig

To enable Label Distribution Protocol (LDP) on interfaces for which an Open Shortest Path First (OSPF) instance has been defined, use the mpls ldp autoconfig command in router configuration mode. To disable this feature, use the no form of this command.

mpls ldp autoconfig [area area-id]

no mpls ldp autoconfig [area area-id]

Syntax Description

area area-id

(Optional) Enables LDP on the interfaces belonging to the specified OSPF area.


Defaults

LDP is not enabled on interfaces. If an OSPF area is not specified, LDP is enabled on all interfaces belonging to the OSPF process.

Command Modes

Router configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

You can specify this command multiple times to enable LDP on different routing areas.

If LDP is disabled globally, the mpls ldp autoconfig command fails. LDP must be enabled globally by means of the global mpls ip command first.

If the mpls ldp autoconfig command is configured, you cannot issue the global no mpls ip command. If you want to disable LDP, you must issue the no mpls ldp autoconfig command first.

The mpls ldp autoconfig command is supported only with OSPF. Other IGPs are not supported.

If LDP is enabled on an interface by the mpls ldp autoconfig command, you cannot use the interface-level no mpls ip command to disable LDP on the interface. LDP can be disabled on the interface by using the no mpls ldp igp autoconfig command.

Examples

In the following example, MPLS LDP Autoconfiguration is enabled for OSPF area 5:

Router(config-router)# mpls ldp autoconfig area 5

Related Commands

Command
Description

mpls ldp igp autoconfig

Enables or disables LDP on an interface.

show mpls interfaces

Displays information about interfaces configured for LDP.

show mpls ldp discovery

Displays the status of the LDP discovery process.


mpls ldp backoff

To configure parameters for the Label Distribution Protocol (LDP) backoff mechanism, use the mpls ldp backoff command in global configuration mode. To disable the LDP backoff mechanism, use the no form of this command.

mpls ldp backoff initial-backoff maximum-backoff

no mpls ldp backoff initial-backoff maximum-backoff

Syntax Description

initial-backoff

Number from 5 to 2147483 that defines the initial backoff value in seconds. The default is 15 seconds.

maximum-backoff

Number from 5 to 2147483 that defines the maximum backoff value in seconds. The default is 120 seconds.


Defaults

The initial backoff value is 15 seconds and grows to a maximum value of 120 seconds.

Command Modes

Global configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

The LDP backoff mechanism prevents two incompatibly configured label switch routers (LSRs) from engaging in an unthrottled sequence of session setup failures. For example, an incompatibility arises when two neighboring routers attempt to perform LC-ATM (label-controlled ATM) but the two are using different ranges of virtual path identifier (VPI)/virtual channel identifier (VCI) values for labels.

If a session setup attempt fails due to an incompatibility, each LSR delays its next attempt (that is, backs off), increasing the delay exponentially with each successive failure until the maximum backoff delay is reached.

The default settings correspond to the lowest settings for initial and maximum backoff values defined by the LDP protocol specification. You should change the settings from the default values only if such settings result in undesirable behavior.

Examples

The following example shows how to set the initial backoff delay to 30 seconds and the maximum backoff delay to 240 seconds:

Router(config)# mpls ldp backoff 30 240

Related Commands

Command
Description

show mpls ldp backoff

Displays information about the configured session setup backoff parameters and any potential LDP peers with which session setup attempts are being throttled.

show mpls ldp parameters

Displays the session setup backoff parameters currently in effect for the LDP backoff mechanism.


mpls ldp discovery

To configure the interval between transmission of consecutive Label Distribution Protocol (LDP) Discovery Hello messages, or the hold time for a discovered LDP neighbor, or the neighbors from which requests for targeted Hello messages may be honored, use the mpls ldp discovery command in global configuration mode. To disable transmission times, or hold times, or neighbor requests, use the no form of this command.

mpls ldp discovery {hello {holdtime | interval} seconds | targeted-hello {holdtime | interval} seconds | accept [from acl]}

no mpls ldp discovery {hello {holdtime | interval} | targeted-hello {holdtime | interval} | accept}

Syntax Description

hello

Configures the intervals and hold times for directly connected neighbors.

holdtime

Defines the period of time a discovered LDP neighbor is remembered without receipt of an LDP Hello message from the neighbor.

interval

Defines the period of time between the sending of consecutive Hello messages.

seconds

Defines the hold time or interval in seconds.

The default hold time is 15 seconds for link Hello messages and 90 seconds for targeted Hello messages.

The default interval is 5 seconds for link Hello messages and 10 seconds for targeted Hello messages.

targeted-hello

Configures the intervals and hold times for neighbors that are not directly connected (for example, LDP sessions that run between the endpoints of a label switched path (LSP) tunnel).

accept

Configures the router to respond to requests for targeted Hello messages from all neighbors or from neighbors specified by the optional acl argument.

from acl

(Optional) IP access list that specifies the neighbor from which requests for targeted Hello messages may be honored.


Defaults

The default value for the holdtime keyword is 15 seconds for link Hello messages and 90 seconds for targeted Hello messages.

The default value for the interval keyword is 5 seconds for link Hello messages and 10 seconds for targeted Hello messages.

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect Multiprotocol Label Switching (MPLS) Internet Engineering Task Force (IETF) command syntax and terminology.

12.0(14)ST

This command was integrated into Cisco IOS Release 12.0(14)ST.

12.1(2)T

This command was integrated into Cisco IOS Release 12.1(2)T.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S. Default values for the holdtime and interval keywords were changed.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T. Default values for the holdtime and interval keywords were changed.


Usage Guidelines

When the discovery hold time elapses for a neighbor discovered on an interface or for a neighbor discovered by means of a targeted Hello message, the record associating the neighbor with that interface or that targeted Hello message source is discarded. If an LDP session exists with a neighbor, but a discovery record no longer exists for that neighbor, the LDP session is terminated.

Setting the hold time too high causes LDP to be slow in detecting link outages; setting the hold time too low might cause LDP to terminate sessions when a Hello message is dropped during traffic bursts on a link.

The exchange of targeted Hello messages between two nondirectly connected neighbors (N1 and N2) may occur in the following ways:

N1 may initiate the transmission of targeted Hello messages to N2, and N2 may send targeted Hello messages in response. In this situation, N1 is considered to be active and N2 is considered to be passive.

N1's targeted Hello messages carry a request that N2 send targeted Hello messages in response. To respond, N2's configuration must permit it to respond to N1. The mpls ldp discovery targeted-hello accept command is used to configure whether N1 may respond to requests for targeted Hello messages.

N1 and N2 may both be configured to initiate the transmission of targeted Hello messages to each other. In this situation, both are active.

Both, one, or neither of N1 and N2 may be passive, depending on whether they have been configured to respond to requests for targeted Hello messages from the other.


Note Normally, active transmission of targeted Hello messages by a router is triggered by some configuration action, such as an mpls ip command on a traffic engineering tunnel interface.


Examples

The following example shows how to set the period of time for which a neighbor discovered on an interface is remembered to 30 seconds if no Hello messages are received:

Router# configure terminal
Router(config)# mpls ldp discovery hello holdtime 30

The following example shows how to configure the router to respond to requests for targeted Hello messages from neighbors 172.16.0.23 and 192.168.73.18:

Router(config)# ip access standard TRGT_ACCEPT
Router(config-nacl)# permit 172.16.0.23
Router(config-nacl)# permit 192.168.73.18
Router(config-nacl)# exit
Router(config)# mpls ldp discovery targeted-hello accept from TRGT_ACCEPT

Related Commands

Command
Description

mpls ldp holdtime

Changes the time for which an LDP session is maintained in the absence of LDP messages from the session peer.

show mpls ldp discovery

Displays the status of the LDP discovery process.

show mpls ldp neighbor

Displays the status of LDP sessions.

show mpls ldp parameters

Displays current LDP parameters.


mpls ldp discovery transport-address

To specify the transport address advertised in Label Distribution Protocol (LDP) Discovery Hello messages sent on an interface, use the mpls ldp discovery transport-address command in interface configuration mode. To remove the transport address advertised, use the no form of this command.

mpls ldp discovery transport-address {interface | ip-address}

no mpls ldp discovery transport-address

Syntax Description

interface

Specifies that the interface IP address should be advertised as the transport address.

ip-address

Specifies that the IP address should be advertised as the transport address.


Defaults

The default behavior when this command has not been issued for an interface depends on the interface type.

Unless the interface is a label-controlled ATM (LC-ATM) interface, LDP advertises its LDP router ID as the transport address in LDP Discovery Hello messages sent from the interface.

If the interface is an LC-ATM interface, no transport address is explicitly advertised in LDP Discovery Hello messages sent from the interface.

Command Modes

Interface configuration

Command History

Release
Modification

12.0(14)ST

This command was introduced.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

Establishing an LDP session between two routers requires a session TCP connection by which label advertisements can be exchanged between the routers. To establish the session TCP connection, each router must know the transport address (IP address) of the other router.

The LDP discovery mechanism provides the means for a router to advertise the transport address for its end of a session TCP connection. The transport address advertisement itself may be explicit, in which case it appears as part of the contents of Discovery Hello messages sent to the peer, or implicit, in which case it does not, and the peer uses the source IP address of received Hello messages for the peer's transport address.

The mpls ldp discovery transport-address command provides the means to modify the default behavior described above. When the interface keyword is specified, LDP advertises the IP address of the interface in LDP Discovery Hello messages sent from the interface. When the ip-address argument value is specified, LDP advertises the specified IP address in LDP Discovery Hello messages sent from the interface.


Note When a router has multiple links connecting it to its peer device, the router must advertise the same transport address in the LDP Discovery Hello messages it sends on all such interfaces.


Examples

The following example specifies that LDP should advertise the IP address of interface POS2/0 in LDP Hello messages sent from that interface.

Router(config#) interface pos2/0
Router(config-if)# mpls ldp discovery transport-address interface

The following example specifies that the LDP should advertise IP address 145.22.0.56 in the LDP Hellow messages sent from interface POS3/1.

Router(config#) interface pos3/1
Router(config-if)# mpls ldp discovery transport-address 145.22.0.56

Related Commands

Command
Description

show mpls ldp discovery

Displays the status of the LDP discovery process.


mpls ldp explicit-null

To cause a router to advertise an Explicit Null label in situations where it would normally advertise an Implicit Null label, use the mpls ldp explicit-null command in global configuration mode. To disable the advertisement of an Explicit Null label, use the no form of this command.

mpls ldp explicit-null [for prefix-acl | to peer-acl | for prefix-acl to peer-acl]

no mpls ldp explicit-null

Syntax Description

for prefix-acl

(Optional) Specifies prefixes for which Explicit Null should be advertised in place of Implicit Null.

to peer-acl

(Optional) Specifies LDP peers to which Explicit Null should be advertised in place of Implicit Null.


Defaults

The default behavior is to advertise Implicit Null for directly connected routes unless the mpls ldp explicit-null command has been executed.

Command Modes

Global configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

Normally, LDP advertises an Implicit Null label for directly connected routes. The Implicit Null label causes the previous hop (penultimate) router to do penultimate hop popping. Situations exist where it might be desirable to prevent the penultimate router from performing penultimate hop popping and to force it to replace the incoming label with the Explicit Null label.

When you issue the mpls ldp explicit-null command, Explicit Null is advertised in place of Implicit Null for directly connected prefixes permitted by prefix-access-list to peers permitted by peer-access-list.

If you do not specify the prefix-access-list argument in the command, Explicit Null is advertised in place of Implicit Null for all directly connected prefixes.

If you do not specify the peer-access-list argument in the command, Explicit Null is advertised in place of Implicit Null to all peers.

Examples

The following command shows how to cause Explicit Null to be advertised for all directly connected routes to all LDP peers:

Router(config)# mpls ldp explicit-null

The following example shows how to cause Explicit Null to be advertised for directly connected route 172.17.5.0 to all LDP peers and Implicit Null to be advertised for all other directly connected routes:

Router(config)# mpls ldp explicit-null
Router(config)# ip access-list standard adv-exp-null
Router(config-std-nacl)# permit 172.17.5.0
Router(config-std-nacl)# deny any

Related Commands

Command
Description

show mpls ip binding

Displays known label bindings.


mpls ldp graceful-restart

To enable Multiprotocol Label Switching (MPLS) Label Distribution Protocol (LDP) Graceful Restart, use the mpls ldp graceful-restart command in global configuration mode. To disable LDP Graceful Restart, use the no form of this command.

mpls ldp graceful-restart

no mpls ldp graceful-restart

Syntax Description

This command has no arguments or keywords.

Defaults

LDP Graceful Restart is not enabled.

Command Modes

Global configuration

Command History

Release
Modification

12.0(29)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

LDP Graceful Restart must be enabled before an LDP session is established.

Using the no form of the command disables the Graceful Restart functionality on all LDP sessions.

Examples

The command in the following example enables LDP Graceful Restart on a router:

Router(config)# mpls ldp graceful-restart

Related Commands

Command
Description

mpls ldp graceful-restart timers max-recovery

Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished.

mpls ldp graceful-restart timers neighbor-liveness

Specifies the amount of time a router should wait for an LDP session to be reestablished.


mpls ldp graceful-restart timers max-recovery

To specify the amount of time a router should hold stale label-Forwarding Equivalence Class (FEC) bindings after a Label Distribution Protocol (LDP) session has been reestablished, use the mpls ldp graceful-restart timers max-recovery command in global configuration mode. To revert to the default timer value, use the no form of this command.

mpls ldp graceful-restart timers max-recovery secs

no mpls ldp graceful-restart timers max-recovery

Syntax Description

secs

The amount of time (in seconds) that the router should hold stale label-FEC bindings after an LDP session has been reestablished. The default is 120 seconds. The acceptable range of values is 15 to 600 seconds.


Defaults

Stale label-FEC bindings are held for 120 seconds after an LDP session has been reestablished.

Command Modes

Global configuration

Command History

Release
Modification

12.0(29)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

After the timer expires, all stale label-FEC bindings learned from the associated LDP session are removed, which results in the removal of any forwarding table entries that are based on those bindings.

Examples

In the following example, the router should hold stale label-FEC bindings after an LDP session has been reestablished for 180 seconds:

Router(config)# mpls ldp graceful-restart timers max-recovery 180

Related Commands

Command
Description

mpls ldp graceful-restart timers neighbor-liveness

Specifies the amount of time a router should wait for an LDP session to be reestablished.


mpls ldp graceful-restart timers neighbor-liveness

To specify the upper bound on the amount of time a router should wait for a Label Distribution Protocol (LDP) session to be reestablished, use the mpls ldp graceful-restart timers neighbor-liveness command in global configuration mode. To revert to the default timer value, use the no form of this command.

mpls ldp graceful-restart timers neighbor-liveness secs

no mpls ldp graceful-restart timers neighbor-liveness

Syntax Description

secs

The amount of time (in seconds) that the router should wait for an LDP session to be reestablished. The default is 120 seconds. The range is 5 to 300 seconds.


Defaults

The default is a maximum of 120 seconds.

Command Modes

Global configuration

Command History

Release
Modification

12.0(29)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

The amount of time a router waits for an LDP session to be reestablished is the lesser of the following values:

The value of the peers Fault Tolerant (FT) Type Length Value (TLV) Reconnect Timeout

The value of the neighbor liveness timer

If the router cannot reestablish an LDP session with the neighbor in the time allotted, the router deletes the stale label-FEC bindings received from that neighbor.

Examples

The command in the following example sets the amount of time that the router should wait for an LDP session to be reestablished to 30 seconds:

Router(config)# mpls ldp graceful-restart timers neighbor-liveness 30

Related Commands

Command
Description

mpls ldp graceful-restart timers max-recovery

Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished.


mpls ldp holdtime

To change the time for which a Label Distribution Protocol (LDP) session is maintained in the absence of LDP messages from the session peer, use the mpls ldp holdtime command in global configuration mode. To return to the default time of 180 seconds, use the no form of this command.

mpls ldp holdtime seconds

no mpls ldp holdtime seconds

Syntax Description

seconds

Number from 15 to 2147483, that defines the time, in seconds, an LDP session is maintained in the absence of LDP messages from the session peer. The default is 180.


Defaults

180 seconds

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect Multiprotocol Label Switching (MPLS) Internet Engineering Task Force (IETF) command syntax and terminology.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

When an LDP session is established between two label switch routers (LSRs), the hold time used for the session is the lower of the values configured on the two LSRs.

Examples

The following example shows how to configure the hold time of LDP sessions for 30 seconds:

Router# mpls ldp holdtime 30

Related Commands

Command
Description

show mpls atm-ldp bindings

Configures parameters for the LDP discovery mechanism.

show mpls ldp parameters

Displays current LDP parameter settings.


mpls ldp igp autoconfig

To disable LDP on an interface that belongs to an OSPF area, use the no mpls ldp igp autoconfig command in interface configuration mode. (See the Usage Guidelines for more information.)

mpls ldp igp autoconfig

no mpls ldp igp autoconfig

Syntax Description

This command has no arguments or keywords.

Defaults

This command works with the mpls ldp autoconfig command, which enables LDP on all interfaces that belong to an OSPF area. So, by default, all interfaces are enabled for LDP.

Command Modes

Interface configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

This command works with the mpls ldp autoconfig command, which enables LDP on all interfaces that belong to an OSPF area. To disable LDP on selected interfaces, use the no mpls ldp igp autoconfig command.

Examples

In the following example, LDP is disabled on interface POS1/0:

Router(config)# interface pos1/0
Router(config-if)# no mpls ldp igp autoconfig

Related Commands

Command
Description

mpls ldp autoconfig

Globally enables LDP on all interfaces that belong to an OSPF area.

show mpls interfaces

Displays information about interfaces configured for LDP.

show mpls ldp discovery

Displays the status of the LDP discovery process.


mpls ldp igp sync

To disable MPLS LDP Autoconfiguration on an interface that belongs to an Open Shorted Path First (OSPF) process, use the no mpls ldp igp sync command in interface configuration mode. (See the Usage Guidelines for more information.)

mpls ldp igp sync

no mpls ldp igp sync

Syntax Description

This command has no arguments or keywords.

Defaults

If you configured MPLS LDP Autoconfiguration for an OSPF instance, those interfaces are enabled for MPLS LDP Autoconfiguration by default.

Command Modes

Interface configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

This command works with the mpls ldp sync command, which enables MPLS LDP Autoconfiguration on all interfaces that belong to an OSPF process. To disable MPLS LDP Autoconfiguration on selected interfaces, use the no mpls ldp igp sync command.

Examples

In the following example, MPLS LDP Autoconfiguration is disabled on interface POS1/0:

Router(config)# interface pos1/0
Router(config-if)# no mpls ldp igp sync

Related Commands

Command
Description

mpls ldp sync

Globally enables LDP on all interfaces that belong to an OSPF process.

show mpls ldp igp sync

Displays information about interfaces configured for MPLS LDP Autoconfiguration.


mpls ldp igp sync holddown

To specify how long an Interior Gateway Protocol (IGP) should wait for Label Distribution Protocol (LDP) synchronization to be achieved, use the mpls ldp igp sync holddown command in global configuration mode. To disable the holddown timer, use the no form of this command.

mpls ldp igp sync holddown msecs

no mpls ldp igp sync holddown

Syntax Description

msecs

The number of milliseconds an IGP should wait for an LDP session to be established. The valid range of values is 1 to 2,147,483,647.


Defaults

An IGP will wait indefinitely for LDP synchronization to be achieved.

Command Modes

Global configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

This command enables you to limit the amount of time an IGP waits for LDP synchronization to be achieved.

Examples

In the following example, the IGP is limited to 10,000 milliseconds (10 seconds):

Router(config)# mpls ldp igp holddown 10000

Related Commands

Command
Description

mpls ldp sync

Globally enables LDP on all interfaces that belong to an OSPF process.

show mpls ldp igp sync

Displays information about interfaces configured for MPLS LDP Autoconfiguration.


mpls ldp logging neighbor-changes

To generate system error logging (syslog) messages when Label Distribution Protocol (LDP) sessions go down, use the mpls ldp logging neighbor-changes command in global configuration mode. To disable generating syslog messages, use the no form of this command.

mpls ldp logging neighbor-changes

no mpls ldp logging neighbor-changes

Syntax Description

This command has no arguments or keywords.

Defaults

Logging is enabled by default.

Command Modes

Global configuration

Command History

Release
Modification

12.0(24)S

This command was introduced.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.

12.2(14)T

This command was integrated into Cisco IOS Release 12.2(14)T.

12.0(31)S

The log message is updated to show a VPN routing/forwarding instance (VRF) information and the reason for an LDP neighbor going down.

12.3(15)

The log message is updated to show VRF information and the reason for an LDP neighbor going down.

12.4(1)

The log message is updated to show VRF information and the reason for an LDP neighbor going down.

12.2(28)S

The log message is updated to show VRF information and the reason for an LDP neighbor going down.


Usage Guidelines

Use the mpls ldp logging neighbor-changes command to generate syslog messages when an LDP session goes down. The command also provides VRF information about the LDP neighbor and the reason for the LDP session going down. Some of the reasons for an LDP session going down are the following:

An LDP was disabled globally by configuration.

An LDP was disabled on an interface.

Examples

The following example generates syslog messages when LDP sessions go down:

Router(config)# mpls ldp logging neighbor-changes


The following output shows the log entries when an LDP session with neighbor 192.168.1.100:0 goes down and comes up. The session went down because the discovery hold timer expired. The VRF table identifier for the neighbor is 1.

2d00h: %LDP-5-NBRCHG: LDP Neighbor 192.168.1.100:0 (1) is DOWN (Disc hold timer expired)
2d00h: %LDP-5-NBRCHG: LDP Neighbor 192.168.1.100:0 (1) is UP

mpls ldp loop-detection

To enable the Label Distribution Protocol (LDP) optional loop detection mechanism, use the mpls ldp loop-detection command in global configuration mode. To disable the LDP loop detection mechanism, use the no form of this command.

mpls ldp loop-detection

no mpls ldp loop-detection

Syntax Description

This command has no arguments or keywords.

Defaults

LDP loop detection is disabled.

Command Modes

Global configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

The LDP loop detection mechanism is intended for use in networks of non-TTL (time-to-live) decrementing devices (for example, ATM switches) that are incapable of fairly allocating device resources among traffic flows.

When configured, the LDP loop detection mechanism is used with the Downstream on Demand (DoD) method of label distribution, supplementing the DoD hop count mechanism to detect looping label switched paths (LSPs) that might occur during routing transients. When looping LSPs are detected, the loop is not set up.

Examples

The following example shows how to set the LDP loop detection mechanism:

Router(config)# mpls ldp loop-detection

Related Commands

Command
Description

mpls ldp maxhops

Limits the number of hops permitted for LSPs to a specified value. An LSP with more hops than the specified value is treated as one with a loop that will not be established.


mpls ldp maxhops

To limit the number of hops permitted in a label switched path (LSP) established by the Downstream on Demand (DoD) method of label distribution, use the mpls ldp maxhops command in global configuration mode. To return the number of hops permitted to the default, use the no form of this command.

mpls ldp maxhops number

no mpls ldp maxhops

Syntax Description

number

Number from 1 to 255, inclusive, that defines the maximum hop count. The default is 254.


Defaults

254 hops

Command Modes

Global configuration

Command History

Release
Modification

11.1CT

This command was introduced.

12.0(10)ST

This command was modified to reflect Multiprotocol Label Switching (MPLS) Internet Engineering Task Force (IETF) command syntax and terminology.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

When an ATM label switch router (LSR) initiates a request for a label binding, it sets the hop count value in the Label Request message to 1. Subsequent ATM LSRs along the path to the edge of the ATM label switching region increment the hop count before forwarding the Label Request message to the next hop.

When an ATM LSR receives a Label Request message, it does not send a Label Mapping message in response, nor does it propagate the request to the destination next hop if the hop count value in the request equals or exceeds the maxhops value. Instead, the ATM LSR returns an error message that specifies that the maximum allowable hop count has been reached. This threshold is used to prevent forwarding loops in the setting up of label switch paths across an ATM region.

Examples

The following example shows how to set the hop count limit to 10:

Router(config)# mpls ldp maxhops 10

Related Commands

Command
Description

mpls ldp neighbor implicit-withdraw

Enables the optional LDP loop detection mechanism.

show mpls atm-ldp bindings

Displays the requested entries from the ATM LDP label binding database, including the hop counts for LSPs that originate on the platform.

show mpls ldp bindings

Displays the requested entries from the ATM LDP label binding database, including the hop counts for LSPs that originate on the platform.


mpls ldp neighbor implicit-withdraw

To configure the advertisement of a new label for a Forwarding Equivalence Class (FEC) without the withdrawal of the previously advertised label, use the mpls ldp neighbor implicit-withdraw command in global configuration mode. To disable this option for the specified neighbor, use the no form of this command.

mpls ldp neighbor [vrf vpn-name] ip-address implicit-withdraw

no mpls ldp neighbor [vrf vpn-name] ip-address [implicit-withdraw]

Syntax Description

vrf vpn-name

(Optional) VPN routing/forwarding instance for the specified neighbor.

ip-address

Router ID (IP address) that identifies a neighbor.


Defaults

When the vrf keyword is not specified in this command, the label distribution protocol (LDP) neighbor is configured in the default routing domain.

If this command is not configured, when it is necessary for LDP to change the label it has advertised to a neighbor for some prefix, it will withdraw the previously advertised label before advertising the new label to the neighbor.

For the no form of the command, if the implicit-withdraw keyword is not specified, all configuration information for the specified neighbor reverts to the defaults and the neighbor record is deleted.

Command Modes

Global configuration

Command History

Release
Modification

12.0(21)ST

This command was modified to add the implicit-withdraw keyword.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.


Usage Guidelines

By default, in Cisco IOS Release 12.0(21)ST and later, LDP withdraws the previously advertised label using a withdraw message before advertising a new label for a FEC. In Cisco IOS releases prior to 12.0(21)ST, LDP did not withdraw a previously advertised label before advertising a new label for a FEC. In these older releases, the new label advertisement served as an implied withdraw and LDP did not send a withdraw message. To cause LDP to operate as it did in releases before Cisco IOS 12.0(21)ST, that is, LDP will advertise a new label for a FEC without first withdrawing the previously advertised label, use the implicit-withdraw keyword with this command.

Router(config)# mpls ldp neighbor 10.10.10.10 implicit-withdraw

Using the implicit-withdraw keyword avoids the overhead of label withdraw and label release message exchanges.

To disable the implicit-withdraw option, use the no form of the command with the implicit-withdraw keyword. This returns the router to the default, which requires that LDP withdraw the previously advertised label for a FEC before advertising a new label.

Router(config)# no mpls ldp neighbor 10.10.10.10 implicit-withdraw

Examples

In the following example, LDP does not send a label-withdraw message to the neighbor whose router ID is 10.10.10.10 when a need exists to change the previously advertised label for a FEC:

Router(config)# mpls ldp neighbor 10.10.10.10 implicit-withdraw

Related Commands

Command
Description

mpls ldp neighbor password

Configures a password key for computing MD5 checksums for the session TCP connection with the specified neighbor.

mpls ldp neighbor targeted

Sets up a targeted session with the specified neighbor.


mpls ldp neighbor labels accept

To configure a label switching router (LSR) to filter label distribution protocol (LDP) inbound label bindings from a particular LDP peer, use the mpls ldp neighbor labels accept command in global configuration mode. To disable this feature, use the no form of this command.

mpls ldp neighbor [vrf vpn-name] nbr-address labels accept acl

no mpls ldp neighbor [vrf vpn-name] nbr-address labels accept acl

Syntax Description

vrf vpn-name

(Optional) Specifies VPN routing and forwarding instance (vpn-name) for accepting labels.

nbr-address

Specifies address of the LDP peer whose advertisements are to be filtered.

labels accept acl

Specifies the prefixes (access control list) that are acceptable (permitted).


Defaults

If the vrf keyword is not specified, the specified LDP neighbor is configured in the default routing domain.

Command Modes

Global configuration

Command History

Release
Modification

12.0(26)S

This command was introduced.

12.2(25)S

This command was integrated into Cisco IOS Release 12.2(25)S.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

The specified ACL is used to filter label bindings advertised by the specified neighbor. If the prefix part of the label binding is permitted by the ACL, the router will accept the binding. If the prefix is denied, the router will not accept or store the binding.

This functionality is particularly useful when two different entities manage peer LSRs; that is, the recipient cannot perform filtering by altering the configuration of the sender. This is likely to occur in an MPLS virtual private network (VPN) that is using the LDP-based Carrier Supporting Carrier (CSC) feature. In that situation, the backbone carrier may want to restrict the set of label bindings that its provider edge (PE) router may learn from an adjacent customer edge (CE) router that a customer carrier operates.

When inbound label binding filtering is configured, certain configuration changes may require a router to retain bindings that it previously discarded. For example:

Inbound filtering is disabled.

An inbound filtering ACL is redefined to be less restrictive.

A router does not maintain a record of the set of bindings it previously discarded. Therefore, it cannot ask its neighbors to readvertise just those bindings. In addition, LDP (as defined by RFC 3036) does not provide a means for a router to signal its neighbors to readvertise all label bindings. Consequently, to relearn label bindings following such configuration changes, you must reset the LDP session or sessions by using the clear mpls ldp neighbor command.


Note The mpls ldp neighbor labels accept command has no effect on an LC-ATM interface. Such an interface behaves as though this command had not been executed. The mpls ldp request-labels ACL command, which is supported for LC-ATM, controls which label bindings are requested (accepted) from neighbors.


Examples

The following example specifies that the LSR accepts inbound label bindings from neighbor 19.19.19.19 in vrf vpn1 for prefixes permitted by the ACL named aclone:

Router(config)# mpls ldp neighbor vrf vpn1 19.19.19.19 label accept aclone

Related Commands

Command
Description

clear mpls ldp neighbor

Forcibly resets an LDP session.

mpls ldp advertise-labels

Controls the distribution of locally assigned (incoming) labels by means of LDP.

show ip access list

Displays the list of configured access lists and their definitions.

show mpls ldp neighbor

Displays the status of the LDP sessions.


mpls ldp neighbor password

To configure a password key for computing MD5 checksums for the session Transmission Control Protocol (TCP) connection with the specified neighbor, use the mpls ldp neighbor password command in global configuration mode. To disable this option for the specified neighbor, use the no form of this command.

mpls ldp neighbor [vrf vpn-name] ip-address password [0-7] password-string

no mpls ldp neighbor [vrf vpn-name] ip-address [password [0-7] password-string]

Syntax Description

vrf vpn-name

(Optional) Specifies the VPN routing/forwarding instance for the specified neighbor.

ip-address

Specifies the router ID (IP address) that identifies a neighbor.

0-7

(Optional) Specifies an encryption method for storing the supplied password in the configuration.

password-string

Defines the password key to be used for computing MD5 checksums for the session TCP connection with the specified neighbor.


Defaults

Unless the TCP MD5 Signature Option is explicitly configured with the password passsword-string keyword and argument for session TCP connections, the option is not used.

When the vrf keyword is not specified in this command, the Label Distribution Protocol (LDP) neighbor is configured in the default routing domain.

For the no form of the command, if the password keyword is not specified, all configuration information for the specified neighbor reverts to the defaults and the neighbor record is deleted.

Command Modes

Global configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.0(14)ST

This command was modified to reflect MPLS VPN support for LDP.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

You can invoke authentication between two LDP peers, verifying each segment sent on the TCP connection between the peers. To do so, you must configure authentication on both LDP peers using the same password; otherwise, the peer session is not established.

The authentication capability uses the MD5 (Message Digest 5) algorithm. MD5, an algorithm used in conjunction with SNMP, verifies the integrity of the communication, authenticates the origin of the message, and checks for timeliness.

Invoking the mpls ldp neighbor command causes the generation and checking of the MD5 digest for every segment sent on the TCP connection.

Configuring a password for an LDP neighbor causes an existing LDP session to be torn down and a new session to be established.

If a router has a password configured for a neighbor, but the neighbor router does not have a password configured, a message such as the following appears on the console while the two routers attempt to establish an LDP session:

%TCP-6-BADAUTH: No MD5 digest from [peer's IP address]:11003 to [local router's 
IP address]:646

Similarly, if the two routers have different passwords configured, a message such as the following appears on the console:

%TCP-6-BADAUTH: Invalid MD5 digest from [peer's IP address]:11004 to [local router's 
IP address]:646

Examples

The following example shows how to configure the string onethirty9 as the password key for use with MD5 for the neighbor whose router ID is 172.27.0.15:

Router(config)# mpls ldp neighbor 172.27.0.15 password onethirty9

The following example shows how to configure the string cisco as the password for use with MD5 for the LDP neighbor having router ID 10.4.4.4 in the VPN routing/forwarding instance named vpn1:

Router(config)# mpls ldp neighbor vrf vpn1 10.4.4.4 password cisco

Related Commands

Command
Description

mpls ldp neighbor implicit-withdraw

Configures the advertisement of a new label for a FEC without the withdrawal of the previously advertised label.

mpls ldp neighbor targeted

Sets up a targeted session with the specified neighbor.


mpls ldp neighbor targeted

To set up a targeted session with the specified neighbor, use the mpls ldp neighbor targeted command in global configuration mode. To disable this option for the specified neighbor, use the no form of this command.

mpls ldp neighbor [vrf vpn-name] ip-address targeted [ldp | tdp]

no mpls ldp neighbor [vrf vpn-name] ip-address [targeted [ldp | tdp]]

Syntax Description

vrf vpn-name

(Optional) VPN routing/forwarding instance for the specified neighbor.

ip-address

Router ID (IP address) that identifies a neighbor.

ldp

(Optional) Specifies the Label Distribution Protocol (LDP) as the label protocol for the targeted session.

tdp

(Optional) Specifies the Tag Distribution Protocol (TDP) as the label protocol for the targeted session.


Defaults

When the targeted keyword is not specified, a targeted session is not set up with the neighbor.

For the no form of the command if the targeted keyword is not specified, all configuration information for the specified neighbor reverts to the defaults and the neighbor record is deleted.

Command Modes

Global configuration

Command History

Release
Modification

12.0(22)S

This command was introduced.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.


Usage Guidelines

If you do not specify the label protocol for the targeted session, the label protocol specified with the mpls label protocol command is used. If the mpls label protocol command is not configured, then TDP is used for the targeted session.

Use the mpls ldp neighbor targeted command when you need to set up a targeted session and other means of establishing targeted sessions do not apply, such as configuring mpls ip on a traffic engineering (TE) tunnel or configuring Any Transport over MPLS (AToM) virtual circuits (VCs). For example, you would use this command to set up a targeted session between directly connected MPLS LSRs when MPLS label forwarding convergence time is an issue.

The mpls ldp neighbor targeted command can improve label convergence time for directly connected neighbor LSRs when the link(s) directly connecting them are down. When the links between the neighbor LSRs are up, both the link and targeted Hellos maintain the LDP session. If the links between the neighbor LSRs go down, the targeted Hellos maintain the session, allowing the label switch routers (LSRs) to retain labels learned from each other. When a link directly connecting the LSRs comes back up, the LSRs can immediately reinstall labels for forwarding use without having to reestablish their LDP session and exchange labels.

Examples

In the following example, the router sets up a targeted session with the neighbor 10.10.10.10 using TDP as the label protocol:

Router(config)# mpls ldp neighbor 10.10.10.10 targeted 

In the following example, the router sets up a targeted session with the neighbor 10.10.10.10 using LDP as the label protocol:

Router(config)# mpls label protocol ldp

Router(config)# mpls ldp neighbor 10.10.10.10 targeted 

Another way to set up a targeted session using LDP without changing the default label protocol is as follows:

Router(config)# mpls ldp neighbor 10.10.10.10 targeted ldp

Related Commands

Commands
Description

mpls ldp neighbor implicit-withdraw

Configures the advertisement of a new label for a FEC without the withdrawal of the previously advertised label.

mpls ldp neighbor password

Configures a password key for computing MD5 checksums for the session TCP connection with the specified neighbor.


mpls ldp router-id

To specify a preferred interface for determining the Label Distribution Protocol (LDP) router ID, use the mpls ldp router-id command in global configuration mode. To remove the preferred interface for determining the LDP router ID, use the no form of this command.

mpls ldp router-id interface [force]

no mpls ldp router-id

Syntax Description

interface

Causes the IP address of the specified interface to be used as the LDP router ID, provided that the interface is operational.

force

(Optional) Alters the behavior of the mpls ldp router-id command to force the use of the named interface as the LDP router ID. For more information, see the mpls ldp router-id command "Usage Guidelines" section.


Defaults

The mpls ldp router-id command is disabled.

Command Modes

Global configuration

Command History

Release
Modification

12.0(10)ST

This command was introduced.

12.0(14)ST

The force keyword was added.

12.1(8a)E

This command was integrated into Cisco IOS Release 12.1(8a)E.

12.2(2)T

This command was integrated into Cisco IOS Release 12.2(2)T.


Usage Guidelines

If the mpls ldp router-id command is not executed, the LDP router ID is determined as follows:

1. The IP addresses of all operational interfaces are examined.

2. If these IP addresses include loopback interface addresses, the largest such loopback address is selected as the LDP router ID.

3. Otherwise, the largest IP address pertaining to an operational interface is selected as the LDP router ID.

The normal (default) method for determining the LDP router ID may result in a router ID that is not usable in certain situations. For example, an IP address selected as the LDP router ID might not be advertisable by the routing protocol to a neighboring router. The mpls ldp router-id command provides a means for specifying an interface whose IP address is to be used as the LDP router ID. The specified interface must be operational for its IP address to be used as the LDP router ID.

When executed without the force keyword, the mpls ldp router-id command modifies the method for determining the LDP router ID by causing selection of the IP address of the specified interface argument (provided that the interface is operational) the next time it is necessary to select an LDP router ID. The effect of the command is delayed until the next time it is necessary to select an LDP router ID, which is typically the next time the interface whose address is the current LDP router ID is shut down or the address itself is not configured.

When executed with the force keyword, the effect of the mpls ldp router-id command depends on the current state of the specified interface:

a. If the interface is up (operational) when the mpls ldp router-id force command is issued and if its IP address is not currently the LDP router ID, the LDP router ID is forcibly changed to the IP address of the interface. This forced change in the LDP router ID tears down any existing LDP sessions, releases label bindings learned via the LDP sessions, and interrupts MPLS forwarding activity associated with the bindings.

b. If the interface is down (not operational) when the mpls ldp router-id force command is issued, when the interface transitions to up, the LDP router ID is forcibly changed to the IP address of the interface. This forced change in the LDP router ID tears down any existing LDP sessions, releases label bindings learned via the LDP sessions, and interrupts MPLS forwarding activity associated with the bindings.

Examples

The following example shows how to specify the POS interface 2/0/0 as the preferred interface for use in determining the LDP router ID. The IP address of such a specified interface is used as the LDP router ID.

Router(config)# mpls ldp router-id pos2/0/0

Related Commands

Command
Description

show mpls ldp discovery

Displays the status of the LDP discovery process, including the local LDP router ID and the LDP router IDs of discovered LSRs.


mpls ldp session protection

To enable MPLS LDP Autoconfiguration for existing Label Distribution Protocol (LDP) sessions or when new sessions are established, use the mpls ldp session protection command in global configuration mode. To disable this feature, use the no form of this command.

mpls ldp session protection [vrf vpn-name] [for acl] [duration seconds]

no mpls ldp session protection [vrf vpn-name] [for acl] [duration seconds]

Syntax Description

vrf vpn-name

(Optional) Specifies VPN routing and forwarding instance (vpn-name) for accepting labels. This keyword is available when the router has at least one VRF configured.

for acl

(Optional) Specifies a standard IP access control list that contains the prefixes that are to be protected.

duration seconds

(Optional) Specifies the number of seconds the LDP Targeted Hello Adjacency should be retained after a link is lost. The default is infinite. The valid range of values is 30 to 2,147,483 seconds.


Defaults

LDP sessions are not established.

Command Modes

Global configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

This command is not supported under the following circumstances:

With TDP sessions

With extended access lists

With LC-ATM routers

Examples

In the following example, MPLS LDP Autoconfiguration is enabled for LDP sessions for peers whose router IDs are listed in access control list rtr4:

Router(config)# mpls ldp session protection for rtr4

Related Commands

Command
Description

clear mpls ldp neighbor

Forcibly resets an LDP session.

show mpls ldp neighbor

Displays the contents of the LDP.


mpls ldp sync

To enable MPLS LDP Autoconfiguration on interfaces for an Open Shortest Path First (OSPF) process, use the mpls ldp sync command in router configuration mode. To disable this feature, use the no form of this command.

mpls ldp sync

no mpls ldp sync

Syntax Description

This command has no keywords or arguments.

Defaults

MPLS LDP Autoconfiguration is not enabled on interfaces belonging to the OSPF process.

Command Modes

Router configuration

Command History

Release
Modification

12.0(30)S

This command was introduced.

12.3(14)T

This command was integrated into Cisco IOS Release 12.3(14)T.


Usage Guidelines

If the mpls ldp sync command is configured, you cannot issue the global no mpls ip command. If you want to disable LDP Autoconfiguration, you must issue the no mpls ldp igp sync command first.

The mpls ldp sync command is supported only with OSPF. Other IGPs are not supported.

Examples

In the following example, MPLS LDP Autoconfiguration is enabled for an OSPF process:

Router(config-router)# mpls ldp sync 

Related Commands

Command
Description

mpls ldp igp sync

Enables LDP Autoconfiguration on an interface.

show mpls ldp igp sync

Displays information about interfaces configured for LDP Autoconfiguration.


mpls ldp tcp pak-priority

To give high priority to Label Distribution Protocol (LDP) messages sent by a router locally using Transmission Control Protocol (TCP) connections, use the mpls ldp tcp pak-priority command in global configuration mode. To keep LDP messages at normal priority, use the no form of this command.

mpls ldp tcp pak-priority

no mpls ldp tcp pak-priority

Syntax Description

This command has no arguments or keywords.

Defaults

This command is disabled.

Command Modes

Global configuration

Command History

Release
Modification

12.3

This command was introduced.


Usage Guidelines

This command allows you to set high priority for LDP messages sent by a router locally using TCP connections.

During heavy network traffic, LDP session keepalive messages can be dropped from the outgoing interface output queue. As a result, keepalives can timeout causing LDP sessions to go down.

First, to avoid session loss due to keepalive timeouts, configure the quality of service (QoS) and differentiated services code point (DSCP) for packets with type of service (ToS) bits set to 6. This configuration guarantees that packets with a ToS bit precedence value of 6 receive a specified percentage of the bandwidth of the designated outgoing links. Second, if you still experience a problem, use the mpls ldp tcp pak-priority command.


Note Previously established LDP sessions are not affected when you issue the mpls ldp tcp pak-priority or the no mpls ldp tcp pak-priority command.


Examples

The following example gives LDP session messages sent by a router high priority locally:

Router(config)# mpls ldp tcp pak-priority

Related Commands

Command
Description

class-map

Creates a class map to be used for matching packets to a specified class.

debug mpls ldp transport connections

Displays information about the TCP connections used to support LDP sessions.

match ip precedence

Identifies IP precedence values as match criteria.

match mpls experimental

Configures a class map to use the specified value of the EXP field as a match criterion.

policy-map

Creates or modifies a policy map that can be attached to one or more interfaces to specify a service policy.