- Table of Contents
- Related Documents
-
| Title | Size | Download |
|---|---|---|
| 01-Network slicing configuration | 158.40 KB |
Network slicing tasks at a glance
Creating an NSI and configuring parameters
Configuring a network slice channel on an interface
Configuring bindings between packets and NSI IDs
Including NSI IDs in the reserved field of VXLAN packet headers
Configuring the queue group mode for network slice channels
Configuring network slice packet statistics
Display and maintenance commands for network slicing
Network slicing configuration examples
Example: Configuring network slicing
Configuring network slicing
About network slicing
In the era of IoT, with a massive amount of devices and various applications connected to the network, home and industry users have diversified demands. A single network or unified policy can no longer meet the evolving demands of new services and scenarios. Building separate networks for each scenario is costly and time-consuming. The network slicing technology allows partitioning a physical network into multiple independent virtual networks. It enables on-demand resource allocation for different services and provides differentiated queue scheduling capabilities, meeting various business demands without affecting existing networks.
Figure 1 Network slicing architecture
Basic concepts
Network slicing has the following concepts:
· Network slice instance (NSI)—An independent virtual network in a network with network slicing deployed. A virtual network is identified by its unique NSI ID (also called slice ID).
· Network slice packet—Based on DSCP/VLAN/VXLAN information, you can bind common packets to specific NSI IDs for transmission. The packets can then be forwarded through the associated NSIs, which are known as network slice packets.
· Network slice channel—A logical channel on an interface, used for forwarding network slice packets. A network slice channel is associated with an NSI by the NSI ID. You can create multiple network slice channels on an interface and assign an independent scheduling queue to each network slice channel. In this way, the scheduling queues for network slice channels do not affect each other.
Operating mechanism
Figure 2 shows the specific operating mechanism for network slicing as follows:
1. The device maps packets to a network slice channel on the output interface based on the configured bindings between packets and NSI IDs. In the current software version, you can bind packets to NSI IDs based on only the DSCP values, VLAN IDs, VXLAN IDs, input interfaces, and the VSI information of packets. In this example, packets with DSCP 10 are mapped to network slice channel 2. Packets with DSCP 20 are mapped to network slice channel 3. Packets with DSCP 30 are mapped to network slice channel 1.
2. Before being forwarded through a network slice channel on the output interface, the packets first passes through the buffer in the outbound direction. If network congestion occurs in the outbound direction, the buffer helps prevent packet loss. For packets bound to different NSI IDs, you can adjust their buffer classes. A higher buffer class allows the packets in the network slice channel to occupy more buffer space.
3. You can specify guaranteed bandwidth for each network slice channel on the interface. The network slice channels can use different queues for scheduling without affecting each other, ensuring service bandwidth resources.
4. When forwarding packets through network slice channels, the device performs strict priority-based scheduling according to the priority of the network slice channels. If network congestion occurs on the output interface, packets in higher-priority network slice channels are forwarded first. Packets in lower-priority network slice channels can be scheduled in sequence only after all packets from the high-priority network slice channels are forwarded out of the queue.
Figure 2 Network slice packet forwarding process
Network slicing tasks at a glance
To configure network slicing, perform the following tasks:
1. Creating an NSI and configuring parameters
2. Configuring a network slice channel on an interface
3. Configuring bindings between packets and NSI IDs
4. (Optional.) Including NSI IDs in the reserved field of VXLAN packet headers
5. (Optional.) Configuring the queue group mode for network slice channels
6. (Optional.) Configuring network slice packet statistics
Creating an NSI and configuring parameters
Restrictions and guidelines
If an NSI is associated with an interface through the slice-id flex-channel command, use the undo slice-id flex-channel command to cancel the association before you delete the NSI.
When multiple network slice channels exist on the output interface, the device performs strict priority-based scheduling according to the scheduling priority of the network slice channels. If network congestion occurs on the output interface, packets in higher-priority network slice channels are forwarded first. Packets in lower-priority network slice channels can be scheduled in sequence only after all packets from the high-priority network slice channels are forwarded out of the queue.
After you configure the queue-group mode enable command, you can use the slice-priority command in queue group mode to configure scheduling priorities for different network slice channels. Network slice channels with the same scheduling priority are scheduled in a round-robin manner. If the queue-group mode enable command is not configured, each network slice channel represents a queue in queue mode. Different network slice channels are scheduled with strict priority. The higher the NSI ID, the higher the scheduling priority.
Procedure
1. Enter system view.
system-view
2. Enable network slicing and enter network slice view.
network-slice
By default, network slicing is disabled.
3. Create an NSI and enter its view.
instance slice-instance-id
4. (Optional.) Configure a description for the NSI.
description text
By default, no description is configured for an NSI.
5. Configure the scheduling priority for the network slice channel.
slice-priority priority-number
The default setting is 0.
6. (Optional.) Configure the queue buffer class for the network slice channel.
queue-buffer-class number
By default, the queue buffer class for the network slice channel is 7.
Configuring a network slice channel on an interface
About this task
After enabling network slicing on an interface, you can create network slice channels on the interface. The device allocates independent scheduling queue resources for network slice channels on the interface. Packets matching an NSI ID are forwarded through the associated network slice channel. The bandwidth specified for the network slice channel created on the interface serves as both the guaranteed bandwidth and the upper limit for the channel. Traffic exceeding this bandwidth is processed by traffic shaping for buffering.
The device supports the following types of network slice channels:
· Network slice channels in exclusive mode—When you configure a network slice channel on an interface, specify the flex-channel keyword without the shared keyword. The device will allocate exclusive-mode scheduling queue resources to this network slice channel. Network slice packets from other network slice channels and non-network slice packets cannot preempt the scheduling queue resources of this network slice channel.
· Network slice channels in shared mode—When you configure a network slice channel on an interface, specify the flex-channel keyword with the shared keyword. The device will assign shared-mode scheduling queue resources to this network slice channel. Non-network slice packets and network slice packets from other network slice channels can compete for the scheduling queue resources of this network slice channel during network congestion. Network slice channels in shared mode enable more flexible traffic scheduling.
Restrictions and guidelines
Before enabling network slicing on an interface, you must use the instance command to create an NSI.
You can configure multiple network slice channels for an interface.
If you configure the network-slice enable command to enable network slicing for the interface, you cannot add the interface to a link aggregate group.
This feature is supported only on physical interfaces and Layer 2 aggregate interfaces. In the current software version, this feature is not supported by Layer 3 aggregate interfaces and their member ports (including the associated Layer 3 aggregate subinterfaces).
When the network slice channels are in queue group mode, first configure the binding between packets and NSI IDs. Then, execute this command on the interface to specify the bandwidth for network slice channels. If you do not perform the configuration in this way, the network slice channels might not take effect correctly.
When the network slice channels are in queue mode, the network slice channel bandwidth configuration is mutually exclusive with the queue-based traffic shaping configuration and interface WFQ queue configuration. For more information about queue-based traffic shaping and interface WFQ configuration, see QoS configuration in ACL and QoS Configuration Guide.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Enable network slicing for the interface and enter network slice view of the interface.
network-slice enable
By default, network slicing is disabled on the interface.
4. Create a network slice channel for the interface, and specify the bandwidth for the network slice channel.
slice-id slice-instance-id flex-channel flex-channel-value [ shared ]
By default, no network slice channels are configured on the interface.
Configuring bindings between packets and NSI IDs
About this task
With this feature configured, the device binds the specified packets to NSI IDs. When forwarding the packets through an output interface, the device searches for the network slice channel configured on the output interface. The device then schedules and forwards the packets through the network slice channel identified by the bound NSI ID. If no network slice channel identified by the bound NSI ID exists on the output interface, the device forwards the packets according to routing table lookup.
You can repeatedly execute the index binding-type command to configure multiple bindings between packets and NSI IDs identified by different index-value values. Upon receiving a packet, the system compares it with packet match criteria in ascending order of index values specified with the index binding-type command. If a match is found, the system does not continue to compare the packet with other bindings.
Restrictions and guidelines
If you repeatedly execute the index binding-type command and specify the same index value, the most recent configuration takes effect.
If you bind a DSCP/VLAN/VXLAN value or interface/VSI to an NSI ID, you cannot bind the DSCP/VLAN/VXLAN value or interface/VSI to any other NSI IDs.
In the current software version, only Layer 2 Ethernet interfaces, Layer 2 aggregate interfaces, and Layer 3 Ethernet interfaces support scheduling and forwarding the packets through the network slice channel identified by the bound NSI ID.
When an interface acts as the public interface of a VXLAN or SRv6 tunnel and has multiple encapsulation modes, packets passing through the interface-associated tunnel canot be identified by bindings between packets and NSI IDs.
Procedure
1. Enter system view.
system-view
2. Enable network slicing and enter network slice view.
network-slice
By default, network slicing is disabled.
3. Create and enter NSI-to-packet mapping view.
nsi-mapping
4. Configure bindings between packets and NSI IDs.
index index-value binding-type { dscp { dscp-startvalue [ to dscp-endvalue ] } &<1-32> | vlan { vlan-startvalue [ to vlan-endvalue ] } &<1-32> | vxlan-list { vxlan-startvalue [ to vxlan-endvalue ] } &<1-32> }* slice slice-id
index index-value binding-type { interface interface-type interface-number | vsi-name vsi-name }* slice slice-id
By default, the bindings between packets and NSI IDs are not configured. That is, no packets are scheduled or forwarded through the network slice channels identified by NSI IDs on an interface.
Including NSI IDs in the reserved field of VXLAN packet headers
About this task
You can enable this feature on VTEPs and non-VTEPs in a VXLAN network to carry different service packets through network slices and achieve differentiated scheduling for various services.
· Enable this feature on a VTEP:
When the VTEP receives the original packet, it first matches the packet's characteristics with the bindings configured with the index binding-type command to associate the original packet with the NSI ID. Then, it encapsulates the packet with a VXLAN header. During VXLAN packet encapsulation, the VTEP uses the higher 20 bits of the Reserved field in the VXLAN header to carry the NSI ID. On the output interface, the device schedules and forwards the packet based on the NSI ID through the associated network slice channel.
· Enable this feature on a non-VTEP in a VXLAN network:
The non-VTEP can read the NSI ID from the VXLAN header in a received packet. On the output interface, the device schedules and forwards the packet based on the NSI ID through the associated network slice channel.
Figure 3 VXLAN header that carries an NSI ID
Restrictions and guidelines
If you configure both the index binding-type and vxlan reserved enable commands on a non-VTEP in a VXLAN network, follow these restrictions and guidelines: The device first compares the packet with the bindings configured with the index binding-type command. If a matching NSI ID is found, the device schedules the packet on the output interface based on the NSI ID. If no matching NSI ID is found, the device reads the NSI ID from the VXLAN header of the packet, and then schedules the packet on the output interface based on the NSI ID.
If the index binding-type command is not configured on the non-VTEP in a VXLAN network, you can use this feature as a supplementary measure to obtain the NSI ID from packets.
For the same VXLAN packet, all devices in the VXLAN network will obtain the same NSI ID for configuring unified scheduling mechanism.
This feature takes effect only on SF series interface modules.
This feature and service chain PBR are mutually exclusive.
This feature takes effect only on unicast tunnel packets.
This feature takes effect only when the NSI ID is in the range of 1 to 127.
Procedure
1. Enter system view.
system-view
2. Enter network slice view.
network-slice
3. Include NSI IDs in the reserved field of VXLAN packet headers.
vxlan reserved enable
By default, no NSI IDs are not included in the reserved field of VXLAN packet headers.
Configuring the queue group mode for network slice channels
About this task
This feature allows for further classification of service packets within a network slice channel. It first performs queue scheduling based on service granularity and then performs queue scheduling based on the same network slice channel.
After you configure the queue group mode for network slice channels, each network slice channel corresponds to one queue on an interface. Each queue group contains eight queues. For the first scheduling, different types of service packets are mapped to different network slice channels based on the bindings between packets and NSI IDs configured with the index binding-type command. Then, a secondary scheduling is performed, which maps the packets to different queues within the network slice channels based on the packets' local priorities, achieving hierarchical scheduling management.
Restrictions and guidelines
This feature takes effect only on SF series interface modules. As a best practice when you configure this feature, make sure all interface modules on the device are the SF series. If other series of interface modules exist, use queue-mode network slicing.
The device supports this feature only when it is operating in expert mode. For more information about device operating modes, see device management configuration in Fundamentals Configuration Guide.
When the network slice channel is in queue mode, the packet forwarding priority for non-network-slice packets is obtained according to the default priority mapping table, and the selected forwarding channel might be the same as the forwarding channel for network slice packets.
You cannot directly switch the network slice channel from queue mode to queue group mode by using this command. To do that, enable the network slicing feature again, execute this command, and restart the device for the queue group mode to take effect.
Procedure
1. Enter system view.
system-view
2. Enter network slice view.
network-slice
3. Configure the queue group mode for network slice channels.
queue-group mode enable
By default, the network slice channels are in queue mode. That is, each network slice channel corresponds to one queue on an interface.
Configuring network slice packet statistics
About this task
With network slice packet statistics enabled, you can use the display network-slice statistics command to display statistics of packets forwarded through the specified network slice.
Restrictions and guidelines
After you create a mapping rule by executing the index binding-type command in NSI-to-packet mapping view, packets can be assigned to the configured slice. At this point, you must execute the slice-id flex-channel command for the interface to configure the network slice channel for the interface, so that packets can be counted for the corresponding network slice channel. Without the configuration, no slice channel is configured, and the network slice traffic data cannot be collected.
Procedure
1. Enter system view.
system-view
2. Enter network slice view.
network-slice
3. Enable network slice packet statistics.
statistics enable
By default, network slice packet statistics is disabled.
4. (Optional.) configure the interval for collecting network slice packet statistics.
statistics interval time
By default, the device collects network slice packet statistics at 30-second intervals.
Display and maintenance commands for network slicing
Execute display commands in any view and reset commands in user view.
|
Task |
Command |
|
Display network slice configuration information. |
display network-slice instance [ slice-id slice-id ] |
|
Display the bandwidth usage of network slices on interfaces. |
display network-slice bandwidth usage statistics [ interface interface-type interface-number ] |
|
Display the associations between NSIs and interfaces. |
display network-slice binding-list [ slice-id slice-instance-id ] [ interface interface-type interface-number ] |
|
Display network slice packet statistics. |
display network-slice statistics [ slice-id slice-instance-id ] [ interface interface-type interface-number ] [ verbose ] |
|
Clear network slice packet statistics. |
reset network-slice statistics [ slice-id slice-instance-id ] [ interface interface-type interface-number ] |
Network slicing configuration examples
Example: Configuring network slicing
Network configuration
As shown in Figure 4, High Speed Internet (HSI), Voice over IP (VoIP), and Video on Demand (VOD) user services are available. The DSCP value for the HSI service is 10. The DSCP value for the VoIP service is 20. The VLAN ID for the VOD service is 30. Traffic passes through campus network devices Device A and Device B to access the ISP's egress. Configure network slicing on Device A and Device B to provide differentiated scheduling and SLA assurance for different services:
· The HSI service adopts the common forwarding mechanism with the best-effort service policy.
· The VoIP service is forwarded through network slice channel 1 with a guaranteed bandwidth of 20 Mbps and a priority of 3. The service latency is ensured.
· The VOD service is forwarded through network slice channel 2 with a guaranteed bandwidth of 100 Mbps and a priority of 2. Sufficient bandwidth resources are available. The priority of the VOD service is lower than that of the VoIP service, because video services can be buffered.
|
Device |
Interface |
IP address |
Device |
Interface |
IP address |
|
Device A |
Loop1 |
1.1.1.1/32 |
Device B |
Loop1 |
2.2.2.2/32 |
|
|
Vlan-int10 |
12.0.0.1/30 |
|
Vlan-int10 |
12.0.0.2/30 |
|
AR |
Loop1 |
3.3.3.3/32 |
|
Vlan-int20 |
23.0.0.1/30 |
|
|
Vlan-int10 |
23.0.0.2/30 |
|
|
|
Procedure
1. Configure the IP address for each interface as shown in Figure 4. (Details not shown.)
2. Configure Device A:
# Configure the queue group mode for network slice channels.
<DeviceA> system-view
[DeviceA] network-slice
[DeviceA-network-slice] queue-group mode enable
|
IMPORTANT: The queue group mode for network slice channels requires a device reboot to take effect. |
# Create NSIs and enable network slice packet statistics.
<DeviceA> system-view
[DeviceA] network-slice
[DeviceA-network-slice] statistics enable
[DeviceA-network-slice] instance 1
[DeviceA-network-slice-instance-1] description VOIP
[DeviceA-network-slice-instance-1] slice-priority 3
[DeviceA-network-slice-instance-1] quit
[DeviceA-network-slice] instance 2
[DeviceA-network-slice-instance-2] description VOD
[DeviceA-network-slice-instance-2] slice-priority 2
[DeviceA-network-slice-instance-2] quit
[DeviceA-network-slice] quit
# Configure network slice channels on the output interface.
[DeviceA] interface ten-gigabitethernet 3/0/1
[DeviceA-Ten-GigabitEthernet3/0/1] network-slice enable
[DeviceA-Ten-GigabitEthernet3/0/1-network-slice] slice-id 1 flex-channel 20
[DeviceA-Ten-GigabitEthernet3/0/1-network-slice] slice-id 2 flex-channel 100
[DeviceA-Ten-GigabitEthernet3/0/1-network-slice] quit
[DeviceA-Ten-GigabitEthernet3/0/1] quit
# Configure bindings between different types of service packets and NSI IDs.
[DeviceA] network-slice
[DeviceA-network-slice] nsi-mapping
[DeviceA-network-slice-nsi-mapping] index 1 binding-type dscp 20 slice 1
[DeviceA-network-slice-nsi-mapping] index 2 binding-type dscp 30 slice 2
[DeviceA-network-slice-nsi-mapping] quit
[DeviceA-network-slice] quit
# Configure IS-IS to implement Layer 3 connectivity, and set the IS-IS cost style to wide.
[DeviceA] isis 1
[DeviceA-isis-1] network-entity 00.0000.0000.0001.00
[DeviceA-isis-1] cost-style wide
[DeviceA-isis-1] address-family ipv4 unicast
[DeviceA-isis-1-ipv4] quit
[DeviceA-isis-1] quit
[DeviceA] interface vlan-interface 10
[DeviceA-Vlan-interface10] isis enable 1
[DeviceA-Vlan-interface10] quit
[DeviceA] interface loopback 1
[DeviceA-LoopBack1] isis enable 1
[DeviceA-LoopBack1] quit
3. Configure Device B:
# Configure Device B in the same way Device A is configured. (Details not shown.)
Verifying the configuration
# Display network slice configuration information on Device A.
[DeviceA] display network-slice instance
Total number: 2
Statistics : Enabled
Statistics interval(s) : 30
Slice ID Priority Queue buffer class
1 3 3
2 2 3
# Display brief network slice packet statistics for NSI 1.
<Sysname> display network-slice statistics slice-id 1 interface ten-gigabitethernet 3/0/1
Network slice statistics
Interface : XGE3/0/1
Slice ID : 1
[total]
Pass: 42,430,945 packets, 0 bytes
Discard: 2,368,695,114 packets, 0 bytes
Last 50 seconds pass rate:
72,498 pps, 0 bps
Last 50 seconds discard rate:
4,048,135 pps, 0 bps
Last 5 seconds pass rate:
7298 pps, 0 bps
Last 5 seconds discard rate:
4148,135 pps, 0 bps




