01-802.1Qbv命令
本章节下载: 01-802.1Qbv命令 (226.69 KB)
目 录
1.1.1 display tsn bridge-delay
1.1.2 display tsn qbv flow interface
1.1.4 display tsn qbv interface
1.1.13 tsn qbv guard-band enable
display tsn bridge-delay命令用来显示TSN流流经本设备的传输时延。
【命令】
display tsn bridge-delay ingress-port interface-type interface-number egress-port interface-type interface-number cos cos-value
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
ingress-port interface-type interface-number:表示接收TSN流的接口的类型和编号。
egress-port interface-type interface-number:表示发送TSN流的接口的类型和编号。
cos cos-value:表示TSN流的服务等级(Class of service),取值范围为0~7。
【举例】
# 显示TSN流从接口GigabitEthernet1/0/1进入设备,再从接口GigabitEtherne1/0/2离开的传输时延。
<Sysname> display tsn bridge-delay ingress-port gigabitethernet 1/0/1 egress-port gigabitethernet 1/0/2 cos 1
Min independent delay: 420 nanoseconds
Max independent delay: 12596 nanoseconds
Min dependent delay: 481 picoseconds
Max dependent delay: 12657 picoseconds
表1-1 display tsn bridge-delay命令显示信息描述表
字段 |
描述 |
Min independent delay |
独立延迟(表示跟报文的长度没有关系的延迟)最小值,单位为纳秒 |
Max independent delay |
独立延迟最大值,单位为纳秒 |
Min dependent delay |
关联延迟(表示跟报文的长度有关系的延迟)最小值,单位为皮秒 |
Max dependent delay |
关联延迟最大值,单位为皮秒 |
display tsn qbv flow interface命令用来显示接口绑定的TSN流信息。
【命令】
display tsn qbv flow interface [ interface-type interface-number ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
interface-type interface-number:接口类型和编号。不指定该参数时,表示所有接口。
【举例】
# 显示所有接口的TSN特征流的信息。
<Sysname> display tsn qbv flow interface
Interface Flow ID Source MAC Destination MAC VLAN VLAN pri CoS
GE1/0/1 1 0001-0001-0001 0001-0001-0002 -- -- 7
GE1/0/1 2 0001-0001-0002 0001-0001-0002 -- -- 3
表1-2 display tsn qbv flow命令显示信息描述表
字段 |
描述 |
Flow ID |
TSN流的编号 |
Interface |
TSN流流经的接口 |
Source MAC |
TSN流的源MAC地址 |
Destination MAC |
TSN流的目的MAC地址 |
VLAN |
TSN流的VLAN信息 |
VLAN pri |
TSN流的VLAN Priority信息 |
CoS |
TSN流的CoS值 |
【相关命令】
· tsn flow
display tsn qbv global命令用来显示802.1Qbv全局信息。
【命令】
display tsn qbv global
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【举例】
# 显示802.1Qbv全局信息。
<Sysname> display tsn qbv global
DefaultQbvQueue 11011011
表1-3 display tsn qbv global命令显示信息描述表
字段 |
描述 |
DefaultQbvQueue |
接口的8个队列对QBV功能的支持情况,用八个二进制数表示,二进制数为1时表示该队列支持QBV功能,二进制数为0时表示该队列不支持QBV功能。取值从左往右,第一个二进制数对应队列0,第二个二进制数对应队列1,以此类推,最后一位二进制数对应队列7。例如11011011表示队列2和5不支持QBV功能 |
display tsn qbv interface命令用来显示接口的802.1Qbv相关信息。
【命令】
display tsn qbv interface interface-type interface-number
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
interface-type interface-number:接口类型和编号。
【举例】
# 显示接口GigabitEthernet1/0/1的802.1Qbv配置信息。
<Sysname> display tsn qbv interface gigabitethernet 1/0/1
TSN scheduled traffic processing configuration:
802.1Qbv : Enabled
Admin gate states : 00000001
Oper gate states : 00000001
Current time : 16888 sec 202564720 ns
UTC : 06:16:41 2021/01/01
Admin cycle time (sec):
Numerator : 1
Denominator : 1000
Oper cycle time (sec):
Numerator : 1
Denominator : 1000
AdminCycleTimeExtension : 1000 ns
OperCycleTimeExtension : 1000 ns
Admin base time : 1583157272 sec 1000 ns
Oper base time : 1583157272 sec 1000 ns
Config change : False
Config change time : 1583157272 sec 1000 ns
TickGranularity : 80
ConfigPending : False
Config change Error : 0
SupportedListMax : 16
SupportedCycleMax time (sec):
Numerator : 34
Denominator : 1
SupportedIntervalMax : 262000
Admin control List:
Index GateStates Interval(ns)
1 01001010 200
2 01001100 200
Oper control List:
Index GateStates Interval(ns)
1 01001010 200
2 01001100 200
表1-4 display tsn qbv configuration命令显示信息描述表
字段 |
描述 |
TSN scheduled traffic processing configuration |
802.1Qbv配置信息 |
802.1Qbv |
802.1Qbv流量调度功能的开关状态,取值为: · Enabled:802.1Qbv流量调度功能处于开启状态 · Disabled:802.1Qbv流量调度功能处于关闭状态 |
Admin gate states |
配置缺省的接口转发队列开关状态,可通过tsn qbv gate-state命令配置 |
Oper gate states |
实际缺省的接口转发队列开关状态 |
Current time |
当前时间,用PTP时间格式表示 |
UTC |
当前UTC(Coordinated Universal Time,国际协调时间)时间,格式为:时:分:秒 年/月/日 |
Admin cycle time (sec): Numerator : Denominator : |
配置接口转发队列调度循环时间,包括: · Numerator:队列调度循环时间的分子部分 · Denominator:队列调度循环时间的分母部分 |
Oper cycle time (sec): Numerator : Denominator : |
实际接口转发队列调度循环时间,包括: · Numerator:队列调度循环时间的分子部分 · Denominator:队列调度循环时间的分母部分 |
AdminCycleTimeExtension |
配置的802.1Qbv流转发队列调度控制链表新轮询周期的延迟生效时间 |
OperCycleTimeExtension |
实际的802.1Qbv流转发队列调度控制链表新轮询周期的延迟生效时间 |
Admin base time |
配置的基准时间,用PTP时间格式表示(包含秒和纳秒) |
Oper base time |
实际的基准时间,用PTP时间格式表示(包含秒和纳秒) |
Config change |
接口配置更新功能的开关状态,取值为: · True:接口配置更新功能处于开启状态 · False:接口配置更新功能处于关闭状态 |
Config change time : |
接口转发队列调度开始时间,用PTP时间格式表示(包含秒和纳秒) |
TickGranularity |
驱动支持的最小的时间精度 |
ConfigPending |
配置变更状态,取值为: · True:正在下发配置 · False:无需下发配置或者配置已经下发完毕 |
Config change Error |
配置变更错误个数 |
SupportedListMax |
接口支持的802.1Qbv流转发队列调度控制链表的最大节点数 |
SupportedCycleMax time (sec): Numerator : Denominator : |
接口支持的接口转发队列调度循环时间最大值,包括: · Numerator:队列调度循环时间的分子部分 · Denominator:队列调度循环时间的分母部分 |
SupportedIntervalMax |
接口支持的最大值 |
Admin control List |
配置接口转发队列调度链表 |
Oper control List |
实际接口转发队列调度链表 |
Index |
接口转发队列调度链表中节点的序列号 |
GateStates |
接口转发队列的开关状态 |
Interval(ns) |
每个节点中接口转发队列开关状态的持续时间 |
tsn qbv base-time命令用来配置802.1Qbv调度接口转发队列的基准时间。
undo tsn qbv base-time命令用来802.1Qbv恢复缺省情况。
【命令】
tsn qbv base-time seconds second-value nanoseconds nanoseconds-value
undo tsn qbv base-time
【缺省情况】
未配置802.1Qbv调度接口转发队列的基准时间,即不执行802.1Qbv队列调度。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
seconds second-value:调度802.1Qbv队列的基准时间的秒部分,取值范围为0~18446744073709551615。
nanoseconds nanoseconds-value:调度802.1Qbv队列的基准时间的纳秒部分,取值范围为0~999999999。
【使用指导】
当设备的系统时间达到“802.1Qbv调度接口转发队列的基准时间”,且接口的802.1Qbv功能处于开启状态时,接口才会执行802.1Qbv转发队列调度策略,通过灵活地调度接口转发队列,实现对TSN流的确定性转发(设备间转发延迟为微秒级)。
本命令配置的基准时间用来计算设备何时执行调度算法。例如,用户计划在2020年3月18日12:00:00开始执行802.1Qbv调度算法,需要先计算这个时间和1970年1月1日00:00:00的时间差,并换算成PTP时间格式(秒加纳秒的形式),用换算出的秒和纳秒进行配置。
本命令配置的时间必须晚于设备当前的系统时间,否则,配置失败。
【举例】
# 在接口GigabitEthernet1/0/1配置802.1Qbv调度接口转发队列的基准时间为1583157272秒1000纳秒。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-Gigabitethernet1/0/1] tsn qbv base-time seconds 1583157272 nanoseconds 1000
tsn qbv bind flow命令用来将TSN特征流和接口绑定。
undo tsn qbv bind flow命令用来取消TSN特征流和接口的绑定。
【命令】
tsn qbv bind flow flow-id cos cos-value
undo tsn qbv bind flow flow-id
【缺省情况】
接口下未绑定TSN特征流。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
flow-id:TSN特征流编号,取值范围1~4294967295。
cos cos-value:表示服务等级(Class of service),取值范围为0~7,缺省值为7。CoS值配置为几,则特征流进入几号转发队列进行转发。例如CoS值配置为7的特征流进入7号转发队列,CoS值配置为0的特征流进入0号转发队列。
【使用指导】
配置本命令后,接口收到指定编号的TSN特征流,会让流进入对应的转发队列,以便进行后续的队列调度。
【举例】
# 当接口GigabitEthernet1/0/1收到1号TSN特征流时,将该流引入3号转发队列。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv bind flow 1 cos 3
tsn qbv config-change命令用来开启预配置下发开关。
undo tsn qbv config-change命令用来关闭预配置下发开关。
【命令】
tsn qbv config-change
undo tsn qbv config-change
【缺省情况】
接口的预配置下发开关处于关闭状态。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【使用指导】
管理员在接口视图下执行TSN命令后,这些配置不会立即下发生效,而是作为预配置保存在临时缓冲区。
管理员执行tsn qbv config-change命令或者tsn qbv enable命令都会触发下发预配置,但要使预配置下发成功,必须确保预配置生效开关和端口的802.1Qbv功能均处于开启状态。
TSN预配置下发后,接口的预配置生效开关会恢复到关闭状态。如果后续再修改TSN配置,要使修改后的TSN配置生效,需要重新配置本命令。
执行display tsn qbv interface命令,显示信息中的Admin类参数表示TSN预配置,Oper类参数表示当前生效的TSN配置。
如果配置本命令前,使用tsn qbv control-list命令配置了节点,则要求配置的节点必须从1号节点开始,且序号是连续的,否则,本命令执行失败。
【举例】
# 开启接口GigabitEthernet1/0/1预配置下发开关。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv config-change
【相关命令】
· display tsn qbv interface
· tsn qbv control-list
tsn qbv control-list命令用来配置TSN流转发调度控制链表。
undo tsn qbv control-list命令用来删除TSN流转发调度控制链表。
【命令】
tsn qbv control-list { index index gate-state states interval interval-value }&<1-15>
undo tsn qbv control-list
【缺省情况】
未配置TSN流转发调度控制链表。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
index index:表示控制链表中节点的序列号,取值范围为1~16。
gate-state states:接口转发队列的开关状态,取值范围为0~255,转换为二进制,每个比特位表示一个队列的开关状态,0表示关,1表示开。
interval interval-value:每种开关状态持续的时长,取值范围为8~262136,且取值必须为8的倍数,单位为纳秒。
&<1-n>:表示前面的参数最多可以输入n次,n的取值为1~15。
【使用指导】
每个接口有八个转发队列,接口根据TSN流特征将指定的流划入对应的转发队列,通过控制接口转发队列的开关状态以及开关状态的持续状态,来决定是否允许报文流通过,以及允许通过的时间。
TSN流转发调度控制链表用于实现接口转发队列的调度以及报文的转发。
控制链表中最多包含16个节点。每个节点包含三个属性:
· 节点编号:控制链表中最多可以定义16个节点,节点对应的编号为1~16。802.1Qbv按照节点编号从小到大的顺序依次调度。
· 队列开关状态:接口转发队列的开关状态用一个8比特的二进制字符串(XXXXXXXX)表示,按照从右到左的顺序,右边第一位表示队列0的开关状态,右边第二位表示队列1的开关状态,以此类推。当某个比特位取值为0时,表示关,即不允许发送该队列中的报文;当某个比特位取值为1时,表示开,即允许发送该队列中的报文。
· 开关状态持续的时长:节点中接口转发队列开关状态的持续时间,当该时间到达,则继续执行下一个节点,切换到下一个节点中的队列开关状态。
802.1Qbv按照节点编号从小到大的顺序轮询执行队列的开关操作,达到流量控制的目的。例如,用户使用tsn qbv control-list index 1 gate-state 01001100 interval 50命令创建了节点1,使用tsn qbv control-list index 2 gate-state 11000010 interval 100命令创建了节点2,则链表内容如下:
1 01001100 50
2 11000010 100
802.1Qbv会按照以下顺序执行链表:
(1) 执行节点1时,转发队列2、3、6允许报文转发,其它队列不转发报文,此状态持续50纳秒。
(2) 执行节点2时,转发队列1、6、7允许报文转发,其它队列不转发报文,此状态持续100纳秒。
配置本命令时,请先规划轮询周期(cycle-time)和interval-value(每种开关状态持续的时长)之间的关系。如果在执行节点1、节点2的过程中,TSN流转发队列调度控制链表的轮询周期(cycle-time)已经超时,则剩余的节点不再执行,重新从节点1执行802.1Qbv控制链表。
如果执行完节点1到节点4,TSN流转发队列调度控制链表的轮询周期仍未到达,则按照缺省的队列开关状态执行,直到轮询周期超时,再重新执行802.1Qbv控制链表。
多次执行本命令,对于index相同的节点,以最新配置为准;对于不同index的节点,则最终生效的节点为所有命令配置的合集。
【举例】
# 在接口GigabitEthernet1/0/1配置TSN流转发调度控制链表:创建节点2,其队列开关状态为76,开关状态的持续时间为200纳秒。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv control-list index 2 gate-state 76 interval 200
【相关命令】
· tsn qbv gate-state
tsn qbv cycle-time命令用来在接口下配置TSN流转发队列调度控制链表的循环时间。
undo tsn qbv cycle-time命令用来恢复缺省情况。
【命令】
tsn qbv cycle-time numerator numerator-value denominator denominator-value
undo tsn qbv cycle-time
【缺省情况】
TSN流转发调度控制链表的循环时间为0,表示不执行流转发队列调度。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
numerator numerator-value:循环时间分子部分的数值,取值范围为1~4294967295。
denominator denominator-value:循环时间分母部分的数值,取值范围为1~4294967295。
【使用指导】
802.1Qbv循环时间是系统执行TSN流转发调度控制链表的周期。
该周期需大于tsn qbv control-list命令中所有队列开关状态的保持时间的总和,否则,tsn qbv control-list命令中配置的部分开关状态无法执行。
为了支持细粒度的轮询周期,轮询周期用分数表示,单位为秒。如果要配置为1秒,则执行的命令行为tsn qbv cycle-time numerator 1 denominator 1,如果要配置为1毫秒,则执行的命令行为tsn qbv cycle-time numerator 1 denominator 1000。
【举例】
# 在接口GigabitEthernet1/0/1下配置TSN流转发队列调度控制链表的轮询周期为1毫秒(1/1000)。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-Gigabitethernet1/0/1] tsn qbv cycle-time numerator 1 denominator 1000
tsn qbv enable命令用来开启端口的802.1Qbv功能。
undo tsn qbv enable命令用来关闭端口802.1Qbv功能。
【命令】
tsn qbv enable
undo tsn qbv enable
【缺省情况】
端口的802.1Qbv功能处于关闭状态。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【使用指导】
当设备的系统时间达到“802.1Qbv调度接口转发队列的基准时间”,且接口的802.1Qbv功能处于开启状态时,接口才会执行802.1Qbv转发队列调度策略,通过灵活地调度接口转发队列,实现对TSN流的确定性转发(设备间转发延迟为微秒级)。
请先配置tsn qbv global cycle-time以及tsn qbv base-time命令,否则,不允许开启802.1Qbv功能。
如果配置本命令前,使用tsn qbv control-list命令配置了节点,则要求配置的节点必须从1号节点开始,且序号是连续的,否则,本命令执行失败。
当需要修改802.1Qbv参数配置时,要先关闭802.1Qbv功能。
管理员执行tsn qbv config-change命令或者tsn qbv enable命令都会触发下发预配置,但要使预配置下发成功,必须确保预配置生效开关和端口的802.1Qbv功能均处于开启状态。
【举例】
# 开启接口GigabitEthernet1/0/1的802.1Qbv功能。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv enable
【相关命令】
· tsn qbv config-change
· tsn qbv control-list
· display tsn qbv interface
tsn flow命令用来配置TSN流特征。
undo tsn flow命令用来删除TSN流特征的配置。
【命令】
tsn flow flow-id { destination-mac dmac-address | source-mac smac-address | vlan vlan-id | vlan-priority vlan-priority-value } *
undo tsn flow flow-id
【缺省情况】
未配置TSN流特征。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
flow-id:流编号,取值范围1~4294967295。用户实际可创建的TSN流数量与设备的性能有关,请以设备的实际情况为准。
destination-mac dmac-address:目的MAC地址,格式为H-H-H。
source-mac smac-address:源MAC地址,格式为H-H-H。
vlan vlan-id:VLAN编号,取值范围为1~4094。
vlan-priority vlan-priority-value:VLAN优先级,取值范围为0~7,缺省值为0。
vlan vlan-id:VLAN编号,取值范围为1~4094。
【使用指导】
配置本命令后,设备将对转发的流量按照命令行中指定的参数值对流量进行分类。
多次执行本命令,可以配置多条不同编号的TSN特征流。
在同一台设备中TSN流编号用于唯一地标识一条TSN流。
如果TSN特征流已经和接口绑定,则需要先取消绑定关系,才能修改或删除此TSN特征流。
如需修改某条TSN特征流的匹配参数,请先删除再重新配置TSN特征流。
【举例】
# 配置TSN特征流的源MAC为0001-0001-0001、VLAN编号为1。
<Sysname> system-view
[Sysname] tsn flow 1 source-mac 0001-0001-0001 vlan 1
【相关命令】
· display tsn qbv flow
tsn qbv gate-state命令用来配置接口转发队列的缺省开关状态。
undo tsn qbv gate-state命令用来恢复缺省情况。
【命令】
tsn qbv gate-state states
undo tsn qbv gate-state
【缺省情况】
接口转发队列的缺省开关状态为11111111。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【参数】
states:接口转发队列的开关状态,用整数表示,取值为0~255。转换为二进制,每个比特位表示一个队列的开关状态,0表示关,1表示开。
【使用指导】
只有端口对应的转发队列是开状态时,该队列才能正常转发流量。
【举例】
# 在接口GigabitEthernet1/0/1配置端口转发队列0为打开状态。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv gate-state 1
tsn qbv guard-band enable命令用来开启802.1Qbv保护带功能。
undo tsn qbv guard-band enable命令用来关闭802.1Qbv保护带功能。
【命令】
tsn qbv guard-band enable
undo tsn qbv guard-band enable
【缺省情况】
802.1Qbv保护带功能处于关闭状态。
【视图】
二层以太网接口视图
【缺省用户角色】
network-admin
【使用指导】
802.1Qbv保护带功能用于确保设备在进行802.1Qbv转发队列调度时,能完整转发当前正在发送的数据帧。例如当接口正在转发802.1Qbv特征流,某个数据帧被发送了一半,转发队列开关状态持续的时长到达,此时:
· 如果802.1Qbv保护带功能处于关闭状态,则802.1Qbv会立即执行下一个节点,当前正在发送的数据帧内容被截断,剩余的内容可能被丢弃,或者需要等到下一个轮询周期,才能被发送。
· 如果802.1Qbv保护带功能处于开启状态,则802.1Qbv会将这个数据帧的剩余部分发送完毕后,再执行下一个节点。
【举例】
# 在接口GigabitEthernet1/0/1开启保护带功能。
<Sysname> system-view
[Sysname] interface gigabitethernet 1/0/1
[Sysname-GigabitEthernet1/0/1] tsn qbv guard-band enable
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!