Configuring a Static DS-TE Tunnel
DS-TE provides QoS guarantee based on service types. A static DS-TE tunnel is easy to configure. It is established using labels that are allocated manually but not by a signaling protocol to send control packets. Therefore, fewer resources are consumed.
Pre-configuration Tasks
Before configuring a static DS-TE tunnel, complete the following tasks:
Configuring an IGP to ensure reachable routes between nodes
Configuring an LSR ID for each node
Enabling MPLS globally on each node
Enabling MPLS on each interface of each node
Configuration Procedure
To configure a static DS-TE tunnel, perform the following operations on the device. Configuring a TE-class mapping table and configuring mappings between CTs and services and the scheduling mode are optional.
- Enabling MPLS TE
- Configuring an MPLS TE Tunnel Interface
- Configuring DS-TE Mode
- Configuring DS-TE Bandwidth Constraints Model
- (Optional) Configuring TE-Class Mapping Table
- Configuring Link Bandwidth
- Configuring the Static CR-LSP and the Bandwidth
- Configuring the Packet Priority Trusted by the Inbound Interface
- (Optional) Configuring Mappings Between CTs and Services and the Scheduling Mode
- Verifying the Static DS-TE Tunnel Configuration
Enabling MPLS TE
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 quit
Return to the system view.
- Run interface interface-type interface-number
The view of the interface is displayed.
- Run mpls
The MPLS is enabled on the interface.
- Run mpls te
The MPLS TE is enabled on the interface.
Configuring an MPLS TE Tunnel Interface
Context
Before setting up an MPLS TE Tunnel, you must create a tunnel interface and configure other tunnel attributes on the tunnel interface. An MPLS TE tunnel interface is responsible for establishing an MPLS TE tunnel and managing packet forwarding on the tunnel.
Because the type of the packet forwarded by the MPLS TE tunnel is MPLS, the commands, such as the ip verify source-address and urpf commands, related to IP packet forwarding configured on this 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.
- To configure the IP address of the tunnel interface, run either of the following commands:
ip address ip-address { mask | mask-length } [ sub ]
The IP address of the tunnel interface is configured.
The secondary IP address of the tunnel interface can be configured only after the primary IP address is configured.
ip address unnumbered interface interface-type interface-number
The tunnel interface is configured to borrow an IP address from other interfaces.
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
The destination address of the tunnel is configured, which is usually the LSR ID of the egress node.
Different types of tunnels need different destination addresses. When the tunnel protocol is changed to MPLS TE from other protocols, the configured destination address is deleted automatically and you need to configure an address again.
- Run mpls te tunnel-id tunnel-id
The tunnel ID is configured.
- Run mpls te signal-protocol cr-static
The signal protocol of the tunnel is configured to be static CR-LSP.
- (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.
- Run mpls te commit
The current tunnel configuration is committed.
If MPLS TE parameters on a tunnel interface are modified, run the mpls te commit command to activate them.
Configuring DS-TE Mode
Context
You can configure the non-IETF mode or the IETF mode for a DS-TE tunnel.
The non-IETF (non-standard) mode supports two CTs (CT0 and CT1), eight priorities (0-7), and two bandwidth constraint models (Russian Dolls Model [RDM] and Maximum Allocation Model [MAM]).
The CT refers to the class type of a specific service flow. The priority refers to the LSP preemption priority.
- The IETF (standard) mode supports eight CTs (CT0 to CT7), eight priorities (0-7), and three bandwidth constraint models (RDM, MAM, and extended MAM).
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 ds-te mode { ietf | non-ietf }
The DS-TE mode is configured.
By default, the non-IETF mode is used.
Follow-up Procedure
On the device, the non-IETF mode and the IETF mode can be switched to each other.
When the non-IETF DS-TE mode is switched to the IETF DS-TE mode, the user configurations cannot be lost or modified. However, when the IETF DS-TE mode is switched to the non-IETF DS-TE mode, the user configurations that are supported in the non-IETF mode but are not supported in the non-IETF mode are lost or modified as follows:
- The extended-MAM configured in IETF DS-TE mode is automatically switched to the MAM, which may result in a tunnel re-establishment failure.
- The interface bandwidth values set for BC2 to BC7 in IETF DS-TE mode are deleted.
Item |
Non-IETF → IETF |
IETF → Non-IETF |
---|---|---|
Change in the bandwidth constraints model |
The bandwidth constraints model is unchanged. |
The bandwidth constraints model is changed as follows: The extended-MAM is changed to the MAM. The RDM is unchanged. The MAM is unchanged. |
Change in the bandwidth |
The bandwidth values of BC0 and BC1 are unchanged. |
Other BC values are reset to zero except values of BC0 and BC1. |
TE-class mapping table |
If the TE-class mapping table is configured, it is applied. Otherwise, the default one is applied.
NOTE:
For information about the default TE-class mapping table, see Table 4-31. |
The TE-Class mapping table is not applied.
|
LSP deletion |
LSPs whose combination of <CT, set-priority> or <CT, hold-priority> is not in the TE-class mapping table are deleted. |
The following LSPs are deleted:
|
Configuring DS-TE Bandwidth Constraints Model
Context
If preemption for CT bandwidth is enabled, you are recommended to use the RDM, which effectively uses bandwidth. If preemption for CT bandwidth is disabled on a network, you are recommended to use the MAM or the extended-MAM.
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 ds-te bcm { extend-mam | mam | rdm }
The DS-TE bandwidth constraints model is configured.
By default, the DS-TE bandwidth constraints model is the RDM.
The DS-TE non-IETF mode does not support the extended-MAM.
(Optional) Configuring TE-Class Mapping Table
Context
This configuration procedure is unnecessary to the non-IETF DS-TE.
For IETF DS-TE, it is recommended that the TE-class mapping tables applied to the entire DS-TE domain are the same. Otherwise, Some LSPs may not be set up correctly.
When configuring a TE-class mapping table, pay attention to the following information:
- Each DS-TE node has one TE-class mapping table at most.
- TE-class is a global concept, that is, TE-class is applied to all DS-TE tunnels of the LSR.
- A TE-class indicates the combination of a Class-Type (CT) and priority. The priority indicates the priority for CR-LSP preemption rather than the value of the EXP field in the MPLS packet header. The value of the preemption priority ranges from 0 to 7. The smaller the value is, the higher the priority is. A CR-LSP can be set up only when both the combination of its CT and setup priority (<CT, setup-priority>) and the combination of its CT and holding priority
(<CT, hold-priority>) exist in the TE-class mapping table. For example, suppose the TE-class mapping table of a certain node contains only TE-Class[0] = <CT0, 6> and TE-Class[1] = <CT0, 7>. Only the following types of CR-LSPs can be set up successfully:
- Class-Type = CT0, setup-priority = 6, hold-priority = 6
- Class-Type = CT0, setup-priority = 7, hold-priority = 6
- Class-Type = CT0, setup-priority = 7, hold-priority = 7
The setup-priority cannot be higher than the hold-priority. Therefore, the LSP, whose Class-Type is CT0, setup-priority is 6, holding priority is 7, does not exist.
- In the MAM and extended-MAM, the CT of a higher priority can preempt the bandwidth of CTs of the same type. CTs of different types do not preempt the bandwidth of each other.
- In the RDM, the preemption of bandwidth among CTs is determined by the preemption priority and the corresponding bandwidth constraint. Assume m and n are preemption priorities (0<=m<n<=7) and i and j are CT values (0<=i<j<=7).
- CTi with priority m can preempt the bandwidth of CTi with priority n or the bandwidth of CTj with priority n.
- The total bandwidth of CTi is equal to or less than the bandwidth of BCi.
- When the bandwidth of all CTs along an LSP meets the requirements, the preemption can be performed and the LSP can be set up.
Perform the following configurations on each node of the DS-TE tunnel in DS-TE IETF mode.
Procedure
- Run system-view
The system view is displayed.
- Run te-class-mapping
A TE-class mapping table is configured and the TE-Class mapping table view is displayed.
- Run one or multiple commands as follows to configured TE-Classes:
- To configure TE-Class0, run:
te-class0 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class1, run:
te-class1 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class2, run:
te-class2 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class3, run:
te-class3 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class4, run:
te-class4 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class5, run:
te-class5 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class6, run:
te-class6 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
- To configure TE-Class7, run:
te-class7 class-type { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority [ description description-info ]
In DS-TE IETF mode, when the TE-class mapping table is not configured, the default TE-class mapping table is applied. See Table 4-31.
After a TE-class is configured, you can run the { te-class0 | te-class1 | te-class2 | te-class3 | te-class4 | te-class5 | te-class6 | te-class7 } description description-info command to modify the TE-class description.
- To configure TE-Class0, run:
Configuring Link Bandwidth
Context
By configuring the link bandwidth, you can limit the bandwidth of a DS-TE tunnel.
In different bandwidth constraints models, the relationships between the reservable bandwidth and the bandwidth of each BC are different.
- In the RDM: max-reservable-bandwidth ≥ bc0-bw-value ≥ bc1-bw-value ≥ bc2-bw-value ≥ bc3-bw-value ≥ bc4-bw-value ≥ bc5-bw-value ≥ bc6-bw-value ≥ bc7-bw-value
- In the MAM: max-reservable-bandwidth ≥ bc0-bw-value + bc1-bw-value + bc2-bw-value + bc3-bw-value + bc4-bw-value + bc5-bw-value + bc6-bw-value + bc7-bw-value
- In the Extended-MAM: It is the same as the MAM.
BC is the bandwidth constraint for outgoing interface, while CT bandwidth is the bandwidth of the class type of DS-TE tunnel. The total bandwidth of BCi (0 ≤ i ≤ 7) of an interface is equal to or greater than the CTi bandwidth of all tunnels passing through this outgoing interface. For example, three LSPs of CT1 pass through a link and their bandwidth values are x, y, and z respectively. The bandwidth of BC1 of the link should be equal to or greater than the total bandwidth of x, y, and z.
- MAM/Extended-MAM: BCi bandwidth ≥ CTi bandwidth x 125% (0 ≤ i ≤ 7)
- RDM: BCi bandwidth ≥ sum of CTi to CT7 bandwidths x 125% (0 ≤ i ≤ 7)
Perform the following steps on the outbound interface of each node of the DS-TE tunnel:
Procedure
- Run system-view
The system view is displayed.
- Run interface interface-type interface-number
The view of the outbound interface of the link is displayed.
- Run mpls te bandwidth max-reservable-bandwidth bw-value
The maximum reservable bandwidth of the link is configured.
- Configure the link bandwidth.
- In non-IETF mode, run the mpls te bandwidth { bc0 bc0-bw-value | bc1 bc1-bw-value } * command.
- In IETF mode, run the mpls te bandwidth { bc0 bc0-bw-value | bc1 bc1-bw-value | bc2 bc2-bw-value | bc3 bc3-bw-value | bc4 bc4-bw-value | bc5 bc5-bw-value | bc6 bc6-bw-value | bc7 bc7-bw-value } * command.
Configuring the Static CR-LSP and the Bandwidth
Context
When configuring a static DS-TE tunnel, configure static CR-LSPs on the ingress, transit, and egress nodes. When there is no transit node, there is no need to configure a static CR-LSP on the transit node.
Procedure
- Configure the ingress node.
Perform the following configurations on the ingress node of a DS-TE tunnel.
- Configure a transit node.
Perform the following configurations on the transit node of a DS-TE tunnel.
- Configure an egress node.
Perform the following configurations on the egress node of a DS-TE tunnel.
Configuring the Packet Priority Trusted by the Inbound Interface
Context
After a DS-TE tunnel is configured, you need to configure the packet priority trusted by the inbound interface to provide differentiated services.
Procedure
- Configure the ingress.
Perform the following configurations on the inbound interface of the ingress node of the DS-TE tunnel.
- Configure the transit.
Perform the following configurations on the inbound interface of the transit node of the DS-TE tunnel.
- Configure the egress.
Perform the following configurations on the inbound interface of the egress node of the DS-TE tunnel.
(Optional) Configuring Mappings Between CTs and Services and the Scheduling Mode
Context
After a DS-TE tunnel is established, you can configure mappings between CTs and services and the scheduling mode.
Procedure
- Configure mapping between CTs and services.
Perform the following configurations on each node of a DS-TE tunnel. You are advised to carry out overall planning in advance and configure the same mappings on all the nodes.
- Configure the scheduling mode.
Perform the following configurations on the outbound interfaces on each node of the DS-TE tunnel.
Verifying the Static DS-TE Tunnel Configuration
Procedure
- Run the display mpls te ds-te { summary | te-class-mapping [ default | config | verbose ] } command to check information about DS-TE.
- Run display mpls te te-class-tunnel { all | { ct0 | ct1 | ct2 | ct3 | ct4 | ct5 | ct6 | ct7 } priority priority } command to check TE tunnels associated with the TE-classes.
- Run the display interface tunnel interface-number command to check information about traffic of each CT on the tunnel interface.
- Enabling MPLS TE
- Configuring an MPLS TE Tunnel Interface
- Configuring DS-TE Mode
- Configuring DS-TE Bandwidth Constraints Model
- (Optional) Configuring TE-Class Mapping Table
- Configuring Link Bandwidth
- Configuring the Static CR-LSP and the Bandwidth
- Configuring the Packet Priority Trusted by the Inbound Interface
- (Optional) Configuring Mappings Between CTs and Services and the Scheduling Mode
- Verifying the Static DS-TE Tunnel Configuration