Configuring a Dynamic MPLS TE Tunnel
Pre-configuration Tasks
Dynamic MPLS TE tunnels are set up using RSVP-TE signaling and are changed according to network changes. On a large-scale network, dynamic MPLS TE tunnels reduce the burden of per-hop configuration. Configuring a dynamic MPLS TE tunnel is the basis for configuring advanced features of MPLS TE.
Before configuring a dynamic MPLS TE tunnel, complete the following tasks:
Configure an IGP to ensure reachable routes between nodes.
Configure an LSR ID for each node.
Enable MPLS globally on each node.
Enable MPLS on each interface of each node.
Enabling MPLS TE and RSVP-TE
Context
To create a dynamic MPLS TE tunnel, first enable MPLS TE, enable RSVP-TE globally, enable RSVP-TE on an interface, and perform other configurations, such as setting the link bandwidth attributes and enabling CSPF.
Perform the following configurations on each node of the MPLS TE tunnel.
Procedure
- Run system-view
The system view is displayed.
- Run mpls
The MPLS view is displayed.
- Run mpls te
MPLS TE is enabled on the node globally.
- Run mpls rsvp-te
RSVP-TE is enabled on the node.
- Run quit
The system view is displayed.
- Run interface interface-type interface-number
The MPLS TE interface view is displayed.
- Run mpls
The MPLS is enabled on the interface.
- Run mpls te
The MPLS TE is enabled on the interface.
- Run mpls rsvp-te
RSVP-TE is enabled on the interface.
Configuring an MPLS TE Tunnel Interface
Context
A tunnel interface must be created on the ingress so that a tunnel can be established and forward data packets.
- Establishes a tunnel. Tunnel constraints, bandwidth attributes, and advanced attributes such as TE FRR and tunnel re-optimization can be configured on the tunnel interface to establish the tunnel.
- Manages a tunnel. Tunnel attributes can be modified on the tunnel interface to manage the tunnel.
Because MPLS TE tunnels forward MPLS packets, not IP packets, IP forwarding-related commands run on the tunnel interface are invalid.
Perform the following configurations on the ingress node of an MPLS TE tunnel.
Procedure
- Run system-view
The system view is displayed.
- Run interface tunnel interface-number
A tunnel interface is created and the tunnel interface view is displayed.
If the shutdown command is run on the tunnel interface, all tunnels established on the tunnel interface will be deleted.
- Run either of the following commands to assign an IP address to the tunnel interface:
To configure an IP address for the tunnel interface, run ip address ip-address { mask | mask-length } [ sub ]
The primary IP address must be configured before the secondary IP address is configured.
To configure the tunnel interface to borrow an IP address of another interface, run ip address unnumbered interface interface-type interface-number
An MPLS TE tunnel can be established even if the tunnel interface is assigned no IP address. The tunnel interface must obtain an IP address before forwarding traffic. The MPLS TE tunnel is unidirectional and does not need to configure a separate IP address for the tunnel interface. Generally, a loopback interface is created on the ingress node and a 32-bit address that is the same as the LSR ID is assigned to the loopback interface. Then the tunnel interface borrows the IP address of the loopback interface.
- Run tunnel-protocol mpls te
MPLS TE is configured as a tunnel protocol.
- Run destination dest-ip-address
A tunnel destination address is configured, which is usually the LSR ID of the egress.
Various types of tunnels require specific destination addresses. If a tunnel protocol is changed from another protocol to MPLS TE, a configured destination address is deleted automatically and a new destination address needs to be configured.
- Run mpls te tunnel-id tunnel-id
A tunnel ID is set.
- Run mpls te signal-protocol rsvp-te
RSVP-TE is configured as the signaling protocol.
- (Optional) Run mpls te signalled tunnel-name tunnel-name
The tunnel name is specified.
By default, the tunnel interface name such as Tunnel0/0/1 is used as the name of the TE tunnel.
Perform this step to fulfill the following purposes:- Facilitate TE tunnel management.
- Allow a Huawei device to be connected to a non-Huawei device that uses a tunnel name that differs from the tunnel interface name.
- (Optional) Run mpls te cspf disable
Do not perform the constraint shortest path first (CSPF) calculation when an MPLS TE tunnel is being set up.
- Run mpls te commit
The configuration is committed.
The mpls te commit command must be run to make configurations take effect each time MPLS TE parameters are changed on a tunnel interface.
(Optional) Configuring Link Bandwidth
Context
When a non-Huawei device as the ingress node of an MPLS TE tunnel initiates a request for setting up a CR-LSP with bandwidth constraints, configure link bandwidth on the connected Huawei device for negotiation so that the CR-LSP can be set up and network resources are used efficiently.
Perform the following configurations on each node of the MPLS TE tunnel.
Procedure
- Run system-view
The system view is displayed.
- Run interface interface-type interface-number
The MPLS-TE-enabled interface view is displayed.
- Run mpls te bandwidth max-reservable-bandwidth bw-value
The maximum available bandwidth of the link is configured.
By default, the maximum reservable bandwidth of a link is 0 bit/s. The bandwidth allocated to a static CR-LSP built over a link is certainly higher than 0 bit/s. If the maximum reservable bandwidth of the link is not configured, the static CR-LSP cannot be set up due to insufficient bandwidth.
- Run mpls te bandwidth { bc0 bc0-bw-value | bc1 bc1-bw-value } *
The BC bandwidth of the link is configured.
- The maximum reservable bandwidth of a link cannot be greater than the actual bandwidth of the link. A maximum of 80% of the actual bandwidth of the link is recommended for the maximum reservable bandwidth of the link.
- Neither the BC0 bandwidth nor the BC1 bandwidth can be greater than the maximum reservable bandwidth of the link.
Advertising TE Link Information
Context
OSPF TE
OSPF TE is an OSPF extension used on an MPLS TE network. LSRs on the MPLS area exchange Opaque Type 10 LSAs that carry TE link information to generate TEDBs for CSPF calculation.
OSPF areas do not support TE by default. The OSPF Opaque capability must be enabled to support OSPF TE, and a node can generate Opaque Type 10 LSAs only if at least one OSPF neighbor is in the Full state.
If OSPF TE is disabled, no Opaque Type 10 LSA is generated or exchanged by nodes to generate TEDBs. On an OSPF TE-incapable network, CR-LSPs are established using OSPF routes but not CSPF calculation results.
IS-IS TE
IS-IS TE is an IS-IS extension used on an MPLS TE network. IS-IS TE defines a new TLV in Link State Packets (LSPs) and IS-IS TE-enabled nodes send these LSPs to flood and synchronize TE link information. IS-IS TE extracts TE link information from LSPs and then transmits the TE link information to the CSPF module for calculating tunnel paths.
Use the mode in which TE information is advertised according to the IGP used on the backbone network. Perform the following operations on each node of an MPLS TE tunnel.
(Optional) Configuring Tunnel Constraints
Context
Constraints such as explicit path attributes can be configured on the ingress to accurately and flexibly establish an RSVP-TE tunnel.
Configuring an MPLS TE Explicit Path
You need to configure an explicit path before you can configure constraints on the explicit path.
An explicit path refers to a vector path on which a series of nodes are arranged in configuration sequence. The IP address of an interface on the egress is usually used as the destination address of the explicit path. Links or nodes can be specified for an explicit path so that a CR-LSP can be established over the specified path, facilitating resource allocation and efficiently controlling CR-LSP establishment.
Two adjacent nodes are connected in either of the following modes on an explicit path:
Strict: Two consecutive hops must be directly connected. This mode strictly controls the path through which the LSP passes.
Loose: Other nodes may exist between a hop and its next hop.
The strict and loose modes are used either separately or together.
Configuring Tunnel Constraints
After constraints are configured for tunnel establishment, a CR-LSP is established over a path calculated by CSPF.
Configuring Path Calculation
Context
To calculate a tunnel path meeting specified constraints, CSPF should be configured on the ingress.
- Link state information sent by IGP-TE and saved in TEDBs
- Network resource attributes, such as the maximum available bandwidth, maximum reservable bandwidth, and affinity property, sent by IGP-TE and saved in TEDBs
- Configured constraints such as explicit paths
An RSVP-TE tunnel can be established on a CSPF-disabled ingress. However, to allow a path to meet tunnel constraints, you are advised to enable CSPF on the ingress before establishing the RSVP-TE tunnel.
Enabling CSPF on all transit nodes is recommended. The tunnel function fails if CSPF or IGP TE is not enabled on the ingress, IGP TE is not enabled on some transit nodes or the egress, and CSPF is enabled on some transit nodes.
Perform the following configurations on the ingress node of an MPLS TE tunnel.
Procedure
- Run system-view
The system view is displayed.
- Run mpls
The MPLS view is displayed.
- Run mpls te cspf
CSPF is enabled on a node.
CSPF is disabled by default.
- (Optional) Run mpls te cspf preferred-igp { isis [ isis-process-id [ level-1 | level-2 ] ] | ospf [ ospf-process-id [ area { area-id-1 | area-id-2 } ] ] }
A preferred IGP is specified.
By default, OSPF is preferred for CSPF path calculation.
If a single IGP protocol is only configured on the backbone network to advertise OSPF or IS-IS TE information, ignore this step.
Verifying the Dynamic MPLS TE Tunnel Configuration
Procedure
- Run the display mpls te link-administration bandwidth-allocation [ interface interface-type interface-number ] command to check information about the allocated link bandwidth.
- Run the display ospf [ process-id ] mpls-te [ area area-id ] [ self-originated ] command to check information about OSPF TE.
- Run one of the following commands to check IS-IS TE information:
- display isis traffic-eng advertisements
- display isis traffic-eng link
- display isis traffic-eng network
- display isis traffic-eng statistics
- display isis traffic-eng sub-tlvs
- Run the display explicit-path [ [ name ] path-name ] [ tunnel-interface | verbose ] command to check configured explicit paths.
- Run the display mpls te cspf destination ip-address [ affinity properties [ mask mask-value ] | bandwidth { ct0 ct0-bandwidth | ct1 ct1-bandwidth | ct2 ct2-bandwidth | ct3 ct3-bandwidth | ct4 ct4-bandwidth | ct5 ct5-bandwidth | ct6 ct6-bandwidth | ct7 ct7-bandwidth } * | explicit-path path-name | hop-limit hop-limit-number | metric-type { igp | te } | priority setup-priority | srlg-strict exclude-path-name | tie-breaking { random | most-fill | least-fill } ] * [ hot-standby [ explicit-path path-name | overlap-path | affinity properties [ mask mask-value ] | hop-limit hop-limit-number | srlg { preferred | strict } ] * ] command to check information about a path that is calculated using CSPF based on specified conditions.
- Run the display mpls te cspf tedb { all | area { area-id | area-id-ip } | interface ip-address | network-lsa | node [ router-id ] | srlg srlg-number | overload-node } command to check information about TEDBs that can meet specified conditions and be used by CSPF to calculate paths.
- Run the display mpls rsvp-te command to check RSVP information.
- Run the display mpls rsvp-te established [ interface interface-type interface-number peer-ip-address ] command to check information about the established RSVP-TE CR-LSPs.
- Run the display mpls rsvp-te peer [ interface interface-type interface-number ] command to check RSVP neighbor parameters.
- Run the display mpls rsvp-te reservation [ interface interface-type interface-number peer-ip-address ] command to check information about RSVP resource reservation.
- Run the display mpls rsvp-te request [ interface interface-type interface-number peer-ip-address ] command to check information about the RSVP-TE request messages on interfaces.
- Run the display mpls rsvp-te sender [ interface interface-type interface-number peer-ip-address ] command to check information about RSVP senders.
- Run the display mpls rsvp-te statistics { global | interface [ interface-type interface-number ] } command to check RSVP-TE statistics.
- Run the display mpls te link-administration admission-control [ interface interface-type interface-number | stale-interface interface-index ] command to check the tunnels set up on the local node.
- Run the display mpls te tunnel [ destination ip-address ] [ lsp-id ingress-lsr-id session-id local-lsp-id ] [ lsr-role { all | egress | ingress | remote | transit } ] [ name tunnel-name ] [ { incoming-interface | interface | outgoing-interface } interface-type interface-number ] [ te-class0 | te-class1 | te-class2 | te-class3 | te-class4 | te-class5 | te-class6 | te-class7 ] [ verbose ] command to check tunnel information.
- Run the display mpls te tunnel statistics or display mpls lsp statistics command to check tunnel statistics.
- Run the display mpls te tunnel-interface [ tunnel interface-number | auto-bypass-tunnel [ tunnel-name ] ] command to check information about the MPLS TE tunnel.
- Run the display mpls te tunnel c-hop [ tunnel-name ] [ lsp-id ingress-lsr-id session-id lsp-id ] command to check path computation results of tunnels.
- Run the display mpls te session-entry [ ingress-lsr-id tunnel-id egress-lsr-id ] command to check detailed information about the LSP session entry.