此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍如何在Catalyst 3650、3850、9300和9500平台上配置音频视频桥接(AVB)并对其进行故障排除。
音频和视频(AV)设备部署通常采用模拟、单用途、点对点、单向链路。随着部署迁移到数字传输,它们继续保留点对点单向链路架构。这种专用连接模式导致专业和消费者应用中出现大量难以管理和操作的布线。
我们确定了多种机制来解决这一问题,但这些机制都是非标准的、难以操作和部署,或者昂贵且不灵活的。迁移到以太网基础设施被视为除了降低总拥有成本(TCO)和实现新服务的透明集成之外,还满足专业AV设备需求的一种方式。但是,部署机制缺乏灵活性和互操作性。
为了加速采用基于以太网的AV并提供更灵活的部署,IEEE开发了IEEE 802.1音频视频桥接(AVB)标准。此标准定义了一种机制,通过该机制,终端和网络作为一个整体发挥作用,从而能够在消费者应用中实现高质量的AV流,并通过以太网基础设施进行专业的AV部署。
从软件版本Cisco IOS® XE Denali 16.3.x开始,Cat3K平台支持AVB。在Cat9k中,AVB功能是在Fuji-16.8.1a中引入的。由于软件版本不断改进,AVB功能也在不断更新。
这些平台支持AVB:
Catalyst 3650/3850 | Catalyst 9300 | Catalyst 9400 | Catalyst 9500 | |
支持的SKU/PID |
|
|
|
|
注意:目前,AVB仅在固定/独立平台上受支持,不支持堆叠配置。模块化平台(如Cat9400)的支持正在规划中。
AVB |
但丁 |
CobraNet |
|
标准 |
IEEE802.1(以太网音频/视频) |
专有(IP音频) |
专有(以太网音频) |
信道容量 |
在>=10Gbps网络时的最高信道容量 |
在1Gbps网络中提供更高的信道容量 |
100Mbps网络下的低信道容量 |
时钟同步 |
IEEE802.1AS gPTP 所有设备(交换机、AVB终端)都需要支持gPTP |
IEEE1588 支持DANTE的设备需要支持IEEE1588 |
专有 |
延迟 |
<2毫秒 |
<2毫秒 |
<5.33毫秒 对于许多应用而言为高 |
帧/数据包格式 |
第2层以太网帧 |
第3层IP数据包,但不可路由 |
第2层以太网帧 |
配置和安装 |
简单(来自不同供应商的控制器软件) |
简单(DANTE提供的控制器软件) |
复杂 |
许可证费用 |
不适用 |
昂贵 |
昂贵 |
网络交换机/路由器 |
交换机需要支持AVB 自动设置QoS 更好的QoS功能 |
标准交换机 手动设置QoS 使用标准IP语音(VoIP)服务质量(QoS)交换机功能 |
标准交换机 手动设置QoS |
IEEE 802.1音频视频网桥(AVB)实际上包含这四种IEEE标准。这意味着,无论何时出现AVB问题,我们都必须考虑每个标准并相应地排除故障:
IEEE802.1AS (gPTP)
IEEE802.1Qat (MSRP)
IEEE802.1Qav(QoS)
IEEE802.1Qak(MVRP)
注意:某些AVB终端可以同时充当AVB讲话者和AVB听众。
注意:每台交换机仅支持一个AVB域。
注意:gPTP仅支持一个域。
BMCA用于选择每个链路上的主时钟,并最终为整个gPTP域选择根时钟。根时钟负责为整个域提供定时和同步。BMCA用于使用通告消息选择每个链路上端口的主要状态和辅助状态。选择作为主要时钟的最佳时钟取决于时钟质量(稳定性)和配置(例如gPTP优先级)。它在每个端口上本地运行,将其自己的本地数据集与从相邻设备收到的通告消息上的数据集进行比较,以确定链路上的最佳时钟。
支持gPTP的交换机通过测量对等延迟来确定对等体是否也支持gPTP,对等延迟是直接连接的端口之间的延迟,中间没有交换机。此延迟测量机制使用消息类型Pdelay_Req、Pdelay_Resp和Pdelay_Resp_Follow_Up。根据这些消息交换,确定端口gPTP功能。 一旦建立了主从时钟层次结构,时钟同步过程就会开始。
gPTP基于IEEE1588v2
gPTP |
IEEE1588v2 |
|
传输 |
仅L2 |
L2/L3 |
系统组合 |
只有时间感知gPTP设备才能在网络中 |
可以同时使用PTP时间感知设备和时间感知设备 |
域 |
仅允许一个 |
可以有多个 |
最佳主时钟选择算法 |
简化的状态机 |
存在预初级状态和未校准状态 |
设备类型 |
AVB终端和AVB交换机 |
普通、边界和透明时钟 |
讲话者声明通过输出端口转发,这些端口可能导致保留的目标MAC地址。监听器声明仅传播到具有相关讲话者声明(即,基于匹配流ID)的端口。如果在任何交换机端口上未注册任何关联的Talker声明,则不会传播监听程序声明。
注意:MSRP感知型交换机自动生成过时注册的撤销注册,以终止AVB会话。
讲话者通告:在来自讲话者的网络路径上未遇到任何带宽或其他网络限制的数据流的通告。
讲话者失败:由于带宽限制或来自讲话者的路径上的其他限制,侦听器无法使用的流通告。
Ready:此子类型表示至少有一个监听程序想要监听并且已成功保留资源,没有监听程序想要监听但无法保留资源。
Ready Failed:此子类型表示至少有一个监听程序想要监听并成功预留资源,但至少有一个其他监听程序想要监听,但无法预留资源。
Asking Failed:此子类型表示至少有一个监听程序想要监听但无法保留资源,但没有监听程序想要监听并且成功保留资源。
支持8Q策略。Cat3K/Cat9K不支持每端口入口队列。针对AVB对内部队列进行了微调,以便为交换机内的SR类流量提供端到端优先处理(低延迟)。
控制流量示例:OAM、信令、网络控制、网间控制
数据流预留(SR) A类 | 数据流预留(SR) B类 | Control Traffic | VoIP |
最高优先级 最坏情况下延迟2毫秒 COS 3 |
第二高优先级 最坏情况下延迟50毫秒 COS 2 |
COS 6,7 |
COS 5 |
多媒体 | 交易数据 | 批量/清道夫数据 | 尽力 |
COS 4 |
COS - |
COS 1 |
COS 0 |
IEEE802.1Qav - QoS入口重标记
IEEE802.1Qav - QoS出口队列
AVB架构-带宽分配设计
什么是MVRP?
在交换机上启用MVRP时
注意:VTP必须处于禁用模式或透明模式,MVRP才能正常工作。
注意:MVRP以双向方式处理声明和注册事件,这意味着,如果在其中一个设备上启用此功能,该域中的终端和相邻网桥也需要具有MVRP感知能力,否则,如果启用MVRP的网桥未收到某些VLAN的声明/注册信息,则会修剪某些VLAN,这可能导致潜在的连接问题。
当交换机上未启用MVRP时
手动将交换机配置为中继模式,以允许AVB流预期使用的所有VLAN。
步骤1: 启用AVB功能及其相应的VLAN:
Cat3850# configure terminal Cat3850(config)# avb Cat3850(config)# vlan 2 Cat3850(config)# end
注意:AVB使用的标准VLAN-ID是VLAN 2。可以使用cli avb vlan <vlan-id>在交换机中为AVB VLAN设置不同的VLAN-ID。此配置用于指定通过MSRP应用AVB特定QoS设置的VLAN。如果需要在AVB终端设备控制器上使用需要设置的非标准VLAN(默认的VLAN 2除外),以便AVB终端设备向交换机声明AVB所需的正确VLAN,否则,AVB终端设备可以在与交换机上配置的VLAN不同的VLAN上通告其流。
第二步: 将沿着AVB连接路径的交换机接口配置为dot1q中继端口:
Cat3850# configure terminal Cat3850(config)# interface GigabitEthernet1/0/3 Cat3850(config-if)# switchport mode trunk Cat3850(config-if)# end Cat3850#
第 3 步(可选): 在交换机上启用MVRP以启用动态VLAN传播。
Cat3850# configure terminal Cat3850(config)# mvrp global Cat3850(config)# vtp mode transparent Cat3850(config)# mvrp vlan create Cat3850(config)# end Cat3850#
第 4 步(可选): 调整交换机上的PTP优先级。
Cat3850#configure terminal Cat3850(config)# ptp priority1 <0-255> Cat3850(config)# ptp priority2 <0-255> Cat3850(config)# end Cat3850#
Cisco XE Denali 16.3.2引入了对AVB的分层QoS支持。AVB分层QoS策略是一种两级父子策略。AVB父策略将音频、视频流量流(SR-Class A、SR-Class B)和网络控制数据包与标准尽力而为以太网流量(非SR)分离,并相应地管理流。
注意:AVB的QoS策略由MSRP自动创建并控制。
注意:最终用户完全控制包含非SR类属性的子策略,并且只能修改这些子策略,即……:policy-map AVB-Output-Child-Policy和policy-map AVB-Input-Child-Policy。 即使在重新加载后,AVB HQoS子策略配置也会保留。
A类SR的核心端口和B类SR的边界端口(这意味着在该端口上,MSRP仅接收了A类流的通告,因此B的所有流量都重新标记为COS 0,而保留A类流的标记)。
interface GigabitEthernet1/0/3 service-policy input AVB-Input-Policy-Remark-B service-policy output AVB-Output-Policy-Gi1/0/3
policy-map AVB-Input-Policy-Remark-B
class AVB-SR-B-CLASS <<< Parent Policy dynamycally generated (not user editable)
set cos 0 (set 0 for boundary & SR class B PCP value for core port)
class class-default
service-policy AVB-Input-Child-Policy <<< Child Policy (user editable)
SR Class B的核心端口和SR Class A的边界端口(这意味着在此端口上,MSRP仅收到有关B类流的通告,因此A的所有数据流都重新标记为COS 0,而B类流的标记保留)。
interface GigabitEthernet1/0/4 service-policy input AVB-Input-Policy-Remark-A service-policy output AVB-Output-Policy-Gi1/0/4
policy-map AVB-Input-Policy-Remark-A
class AVB-SR-A-CLASS <<< Parent Policy dynamycally generated (not user editable)
set cos 0 (set 0 for boundary & SR class A PCP value for core port)
class class-default
service-policy AVB-Input-Child-Policy <<< Child Policy (user editable)
SR Class A和SR Class B的核心端口(这意味着在此端口上,MSRP接收了A类和B类流的通告,因此将保留这两种流类型的入口标记)。
interface GigabitEthernet1/0/2 service-policy input AVB-Input-Policy-Remark-None service-policy output AVB-Output-Policy-Gi1/0/2
policy-map AVB-Input-Policy-Remark-None
class class-default
service-policy AVB-Input-Child-Policy <<< Child Policy (user editable)
SR Class A和SR Class B的边界端口(这意味着在此端口上,MSRP未收到任何流的通告,既不是A类也不是B类流,因此这两种流类型的入口标记都重新标记为COS 0)。
interface GigabitEthernet1/0/1 service-policy input AVB-Input-Policy-Remark-AB service-policy output AVB-Output-Policy-Gi1/0/1
policy-map AVB-Input-Policy-Remark-AB
class AVB-SR-A-CLASS <<< Parent Policy dynamycally generated (not user editable)
set cos 0 (set 0 for boundary & SR class A PCP value for core port)
class AVB-SR-B-CLASS <<< Parent Policy dynamycally generated (not user editable)
set cos 0 (set 0 for boundary & SR class B PCP value for core port)
class class-default
service-policy AVB-Input-Child-Policy <<< Child Policy (user editable)
输入子策略(用户可编辑)
policy-map AVB-Input-Child-Policy class VOIP-DATA-CLASS set dscp EF class MULTIMEDIA-CONF-CLASS set dscp AF41 class BULK-DATA-CLASS set dscp AF11 class TRANSACTIONAL-DATA-CLASS set dscp AF21 class SCAVENGER-DATA-CLASS set dscp CS1 class SIGNALING-CLASS set dscp CS3 class class-default set dscp default
出口策略也由MSRP在端口基础上动态配置。MSRP可以为A类和B类动态保留最多75%的端口带宽。其他15%被静态预留给控制管理流量,其余部分可以按需分配给AVB-Output-Child-Policy上定义的不同流量类型:
policy-map AVB-Output-Policy-Gix/y/z
class AVB-SR-A-CLASS
priority level 1 (Shaper value based on stream registration)
class AVB-SR-B-CLASS
priority level 2 (Shaper value based on stream registration)
class CONTROL-MGMT-QUEUE
priority level 3 percent 15
class class-default
bandwidth remaining percent 100
queue-buffers ratio 80
service-policy AVB-Output-Child-Policy <<< Child Policy (user editable)
policy-map AVB-Output-Child-Policy
class VOIP-PRIORITY-QUEUE
bandwidth remaining percent 30
queue-buffers ratio 10
class MULTIMEDIA-CONFERENCING-STREAMING-QUEUE
bandwidth remaining percent 15
queue-limit dscp AF41 percent 80
queue-limit dscp AF31 percent 80
queue-limit dscp AF42 percent 90
queue-limit dscp AF32 percent 90
queue-buffers ratio 10
class TRANSACTIONAL-DATA-QUEUE
bandwidth remaining percent 15
queue-limit dscp AF21 percent 80
queue-limit dscp AF22 percent 90
queue-buffers ratio 10
class BULK-SCAVENGER-DATA-QUEUE
bandwidth remaining percent 15
queue-limit dscp AF11 percent 80
queue-limit dscp AF12 percent 90
queue-limit dscp CS1 percent 80
queue-buffers ratio 15
class class-default
bandwidth remaining percent 25
queue-buffers ratio 25
在本例中,Gi1/0/6是SR A类核心端口和SR B类边界端口(这意味着在此端口上,我们只接收A类流的通告)。分配给AV流的带宽限制为总端口带宽的最大75%。由于在这种情况下,端口自动协商的链路速度为1 Gbps,因此可将此带宽的75%(750 Mbps)预留给A类和B类流。在本例中。MSRP为A类动态保留71%(约701 Mbps),为B类动态保留0%。
但是,当我们检查连接到接口的实际QoS-Policy时,我们可以注意到,从可保留BW的75%来看,71%实际上已分配给A类(优先级1),但实际上,BW的一小部分(1%)也已分配给B类(优先级2)。正如预期的那样,15%被分配到control-mgmt流量(优先级3),剩余带宽被分配到用户可编辑的出口子策略:
show msrp port interface Gi1/0/6
Port: Gi1/0/6 Admin: admin up Oper: up
MTU: 1500 Bandwidth: 1000000 Kbit/s DLY: 0 us mode: Trunk
gPTP status: Enabled, asCapable
Residence delay: 20000 ns
Peer delay: 84 ns (Updated Wed Nov 18 17:35:18.823)
AVB readyness state: Ready
Per-class value Class-A Class-B
-------------------------------------------------------
Tx srClassVID 2 2
Rx srClassVID 2 0
Domain State Core Boundary
VLAN STP State FWD FWD
Reservable BW (Kbit/s) 750000 0
Reserved BW (Kbit/s) 701504 0
Applied QOS BW (percent) 71 0
show policy-map interface Gi1/0/6
Service-policy output: AVB-Output-Policy-Gi1/0/6
<snip>
Class-map: AVB-SR-CLASS-A (match-any)
0 packets
Match: cos 3
Priority: 701504 kbps, burst bytes 17537600, <<< 71% of the reservable BW
Priority Level: 1
Class-map: AVB-SR-CLASS-B (match-any)
0 packets
Match: cos 2
Priority: 10000 kbps, burst bytes 250000, <<< 1% of the reservable BW
Priority Level: 2
Class-map: AVB-CONTROL-MGMT-QUEUE (match-any) 0 packets Match: ip dscp cs2 (16) 0 packets, 0 bytes 5 minute rate 0 bps Match: ip dscp cs3 (24) 0 packets, 0 bytes 5 minute rate 0 bps Match: ip dscp cs6 (48) 0 packets, 0 bytes 5 minute rate 0 bps Match: ip dscp cs7 (56) 0 packets, 0 bytes 5 minute rate 0 bps Match: ip precedence 6 0 packets, 0 bytes 5 minute rate 0 bps Match: ip precedence 7 0 packets, 0 bytes 5 minute rate 0 bps Match: ip precedence 3 0 packets, 0 bytes 5 minute rate 0 bps Match: ip precedence 2 0 packets, 0 bytes 5 minute rate 0 bps Match: cos 6 0 packets, 0 bytes 5 minute rate 0 bps Match: cos 7 0 packets, 0 bytes 5 minute rate 0 bps Priority: 15% (150000 kbps), burst bytes 3750000, <<<< 15% of the total BW Priority Level: 3 Class-map: class-default (match-any) 0 packets Match: any Queueing (total drops) 0 (bytes output) 81167770686 bandwidth remaining 100% <<< all remaining BW got assigned to child policy queue-buffers ratio 70 Service-policy : AVB-Output-Child-Policy <snip>
您必须将故障排除分为五部分:
1. 我们是否在所有涉及的交换机中正确配置了AVB?
2. 检查AVB
3. 检查MSRP (QoS)
4. 检查gPTP
5. 检查MVRP
<<显示avb域>>
Switch#show avb domain AVB Class-A Priority Code Point : 3 VLAN : 2 Core ports : 2 Boundary ports : 31 AVB Class-B Priority Code Point : 2 VLAN : 2 Core ports : 0 Boundary ports : 33 -------------------------------------------------------------------------------- Interface State Delay PCP VID Information -------------------------------------------------------------------------------- Te1/0/1 up 300ns Class- A core 3 2 Class- B boundary 0 0 ---- Te1/0/2 up N/A Port is not asCapable ---- Te1/0/3 up 284ns Class- A core 3 2 Class- B boundary 0 0 ---- Te1/0/4 down N/A Oper state not up ---- Te1/0/5 down N/A Oper state not up ---- Te1/0/6 down N/A Oper state not up ----
<< show avb stream >>
------------------ show avb stream ------------------ Stream ID: 0090.5E15.965A:65434 Incoming Interface: Te1/0/1 Destination : 91E0.F000.3470 <<<< AVB works with layer-2 multicast (least-significant bit of the first octet is on) Class : A Rank : 1 Bandwidth : 8192 Kbit/s Outgoing Interfaces: ---------------------------------------------------------------------------- Interface State Time of Last Update Information ---------------------------------------------------------------------------- Te1/0/3 Ready Wed Jun 13 16:32:36.224 Stream ID: 0090.5E15.96D5:65436 Incoming Interface: Te1/0/3 Destination : 91E0.F000.0770 Class : A Rank : 1 Bandwidth : 5120 Kbit/s Outgoing Interfaces: ---------------------------------------------------------------------------- Interface State Time of Last Update Information ---------------------------------------------------------------------------- Te1/0/1 Ready Wed Jun 13 16:28:45.114
<<显示msrp流>>
<< show msrp streams brief >>
<< show msrp streams stream-id # >>
------------------ show msrp streams ------------------ Legend: R = Registered, D = Declared. -------------------------------------------------------------------------------- Stream ID Talker Listener Advertise Fail Ready ReadyFail AskFail R | D R | D R | D R | D R | D -------------------------------------------------------------------------------- 0090.5E15.965A:65434 1 | 1 0 | 0 1 | 1 0 | 0 0 | 0 0090.5E15.96D5:65436 1 | 1 0 | 0 1 | 1 0 | 0 0 | 0 0090.5E15.96D5:65534 1 | 1 0 | 0 1 | 1 0 | 0 0 | 0 ------------------ show msrp streams brief ------------------ Legend: R = Registered, D = Declared. -------------------------------------------------------------------------------- Stream ID Destination Bandwidth Talkers Listeners Fail Address (Kbit/s) R | D R | D -------------------------------------------------------------------------------- 0090.5E15.965A:65434 91E0.F000.3470 8192 1 | 1 1 | 1 No 0090.5E15.96D5:65436 91E0.F000.0770 5120 1 | 1 1 | 1 No 0090.5E15.96D5:65534 91E0.F000.0770 3584 1 | 1 1 | 1 No
0090.5E1A.33E2:65534 0000.0000.0000 0 0 | 0 1 | 0 Yes <<< Listener is requesting for this stream but no Talker transmit
show msrp streams stream-id 65534 <<< non-working one (ASK Failed).
Legend: R = Registered, D = Declared.
--------------------------------------------------------------------------------
Stream ID Talker Listener
Advertise Fail Ready ReadyFail AskFail
R | D R | D R | D R | D R | D
--------------------------------------------------------------------------------
0090.5E1A.33E2:65534 0 | 0 0 | 0 0 | 0 0 | 0 1 | 0 <<< Listener request for the stream, but such stream is not transmitted by any talker
<snip>
<< show msrp port bandwidth >>
------------------ show msrp port bandwidth ------------------ -------------------------------------------------------------------------------- Ethernet Capacity Assigned Available Reserved Interface (Kbit/s) A | B A | B A | B -------------------------------------------------------------------------------- Te1/0/1 1000000 75 | 0 73 | 73 2 | 0 Te1/0/2 1000000 75 | 0 75 | 75 0 | 0 Te1/0/3 1000000 75 | 0 73 | 73 2 | 0 Te1/0/4 1000000 75 | 0 75 | 75 0 | 0
<< show msrp port interface >>
Switch# sh msrp port int te1/0/1 Port: Te1/0/1 Admin: admin up Oper: up MTU: 1500 Bandwidth: 1000000 Kbit/s DLY: 0 us mode: Trunk gPTP status: Enabled, asCapable Residence delay: 20000 ns Peer delay: 295 ns (Updated Thu Apr 27 16:49:05.574) AVB readyness state: Ready Per-class value Class-A Class-B ------------------------------------------------------- Tx srClassVID 2 2 Rx srClassVID 2 0 Domain State Core Boundary VLAN STP State FWD FWD Reservable BW (Kbit/s) 750000 0 Reserved BW (Kbit/s) 14720 0 Applied QOS BW (percent) 2 0
Switch# show msrp port interface gi 1/0/40 det
Port: Gi1/0/40 Admin: admin down Oper: down
Intf handle: 0x30 Intf index: 0x30
Location: 1/40, Handle: 0x1001000100000027
MTU: 1500 Bandwidth: 1000000 Kbit/s DLY: 0 us mode: Other
LastRxMAC: 0:90:5E:1A:F5:92
gPTP status: Enabled
AVB readyness state: Oper state not up
Per-class value Class-A Class-B
-------------------------------------------------------
Tx srClassVID 2 2
Rx srClassVID 2 0
Domain State Boundary Boundary <<< Interface is Down hence Boundary.
VLAN STP State BLK BLK
Reservable BW (Kbit/s) 750000 0
Reserved BW (Kbit/s) 0 0
Applied QOS BW (percent) 0 0
Registered Talker: count 0
Declared Talker: count 0
Registered Listener: count 1
Handle 0x1001000100001F97
Registered Listener, Listener Fail
Stream: 0090.5E1B.048D:65534, handle 1001000100001F96
Port handle 0x1001000100000027, vlan: 0
MRP: 0/0/60207669/0/0
<< show tech msrp >>
Switch#show tech msrp ------------------ show clock ------------------ *10:32:56.410 UTC Thu Jun 13 2017 ------------------ show version ------------------ Cisco IOS Software [Denali], Catalyst L3 Switch Software (CAT3K_CAA-UNIVERSALK9-M), Version 16.3.2, RELEASE SOFTWARE (fc4) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2016 by Cisco Systems, Inc. Compiled Tue 08-Nov-16 17:31 by mcpre Cisco IOS-XE software, Copyright (c) 2005-2016 by cisco Systems, Inc. All rights reserved. Certain components of Cisco IOS-XE software are licensed under the GNU General Public License ("GPL") Version 2.0. The software code licensed under GPL Version 2.0 is free software that comes with ABSOLUTELY NO WARRANTY. You can redistribute and/or modify such GPL code under the terms of GPL Version 2.0. For more details, see the documentation or "License Notice" file accompanying the IOS-XE software, or the applicable URL provided on the flyer accompanying the IOS-XE software.
<snip>
注意:每跳最坏情况延迟贡献的总和,会导致SR-A类的总端到端延迟为2毫秒或更短,SR-B类的总端到端延迟为50毫秒或更短。从讲话者到听众的典型7跳AVB部署可满足这些延迟要求。
注意:mGig平台上的100Mbps或更低速度不支持gPTP。原因:100Mbps速度会导致抖动超过50毫秒。
<< show ptp brief >>
Switch#show ptp brief Interface Domain PTP State FortyGigabitEthernet1/1/1 0 FAULTY FortyGigabitEthernet1/1/2 0 FAULTY TenGigabitEthernet1/0/1 0 MASTER TenGigabitEthernet1/0/2 0 MASTER TenGigabitEthernet1/0/3 0 MASTER TenGigabitEthernet1/0/4 0 FAULTY TenGigabitEthernet1/0/5 0 FAULTY TenGigabitEthernet1/0/6 0 FAULTY TenGigabitEthernet1/0/7 0 FAULTY TenGigabitEthernet1/0/8 0 FAULTY TenGigabitEthernet1/0/9 0 FAULTY
<snip>
<< show ptp clock >>
Switch#show ptp clock PTP CLOCK INFO PTP Device Type: Boundary clock PTP Device Profile: IEEE 802/1AS Profile Clock Identity: 0x2C:86:D2:FF:ED:AD:A6:0 Clock Domain: 0 Number of PTP ports: 34 PTP Packet priority: 4 Priority1: 2 Priority2: 2 Clock Quality: Class: 248 Accuracy: Unknown Offset (log variance): 16640 Offset From Master(ns): 0 Mean Path Delay(ns): 0 Steps Removed: 0
<<显示ptp parent >>
Switch# show ptp parent PTP PARENT PROPERTIES Parent Clock: Parent Clock Identity: 0x2C:86:D2:FF:ED:AD:A6:0 Parent Port Number: 0 Observed Parent Offset (log variance): 16640 Observed Parent Clock Phase Change Rate: N/A Grandmaster Clock: Grandmaster Clock Identity: 0x2C:86:D2:FF:ED:AD:A6:0 <<< Local switch is the Grandmaster Clock of the domain Grandmaster Clock Quality: Class: 248 Accuracy: Unknown Offset (log variance): 16640 Priority1: 2 Priority2: 2
<<显示ptp端口>>
<< show platform software fed switch active ptp interface >>
Non-Working Port:
switch#show ptp port gi1/0/32
PTP PORT DATASET: GigabitEthernet1/0/32
Port identity: clock identity: 0xB0:90:7E:FF:FE:28:3C:0
Port identity: port number: 32
PTP version: 2
Port state: DISABLED
Delay request interval(log mean): 0
Announce receipt time out: 3
Neighbor prop delay(ns): -10900200825022 <<< The is an erroneous reading. Default to 800ns.
Announce interval(log mean): 0
Sync interval(log mean): -3
Delay Mechanism: Peer to Peer
Peer delay request interval(log mean): 0
Sync fault limit: 500000000
switch# show platform software fed switch active ptp interface gi1/0/32
Displaying port data for if_id 28
=======================================
Port Mac Address B0:90:7E:28:3C:20
Port Clock Identity B0:90:7E:FF:FE:28:3C:00
Port number 32
PTP Version 2
domain_value 0
Profile Type: : DOT1AS
dot1as capable: FALSE
sync_recpt_timeout_time_interval 375000000 nanoseconds
sync_interval 125000000 nanoseconds
compute_neighbor_rate_ratio: TRUE
neighbor_rate_ratio 0.999968
compute_neighbor_prop_delay: TRUE
neighbor_prop_delay 9223079830310536030 nanoseconds <<< Error reading
port_enabled: TRUE
ptt_port_enabled: TRUE
current_log_pdelay_req_interval 0
pdelay_req_interval 1000000000 nanoseconds
allowed_pdelay_lost_responses 3
is_measuring_delay : TRUE
neighbor_prop_delay_threshold 800 nanoseconds
Port state: : DISABLED
sync_seq_num 29999
num sync messages transmitted 903660
num followup messages transmitted 903628
num sync messages received 0
num followup messages received 0
num pdelay requests transmitted 161245
num pdelay responses received 161245
num pdelay followup responses received 161245
num pdelay requests received 161283
num pdelay responses transmitted 161283
num pdelay followup responses transmitted 160704
Working Port:
switch#show ptp port gi1/0/7
PTP PORT DATASET: GigabitEthernet1/0/7
Port identity: clock identity: 0xB0:90:7E:FF:FE:28:3C:0
Port identity: port number: 7
PTP version: 2
PTP port number: 7
PTP slot number: 1
Port state: MASTER
Delay request interval(log mean): 0
Announce receipt time out: 3
Neighbor prop delay(ns): 154
Announce interval(log mean): 0
Sync interval(log mean): -3
Delay Mechanism: Peer to Peer
Peer delay request interval(log mean): -3
Sync fault limit: 500000000
switch#sh platform software fed switch active ptp interface gi1/0/7
Displaying port data for if_id f
=======================================
Port Mac Address B0:90:7E:28:3C:07
Port Clock Identity B0:90:7E:FF:FE:28:3C:00
Port number 7
PTP Version 2
domain_value 0
Profile Type: : DOT1AS
dot1as capable: TRUE
sync_recpt_timeout_time_interval 375000000 nanoseconds
sync_interval 125000000 nanoseconds
compute_neighbor_rate_ratio: TRUE
neighbor_rate_ratio 1.000000
compute_neighbor_prop_delay: TRUE
neighbor_prop_delay 146 nanoseconds
port_enabled: TRUE
ptt_port_enabled: TRUE
current_log_pdelay_req_interval -3
pdelay_req_interval 0 nanoseconds
allowed_pdelay_lost_responses 3
is_measuring_delay : TRUE
neighbor_prop_delay_threshold 800 nanoseconds
Port state: : MASTER
sync_seq_num 41619
num sync messages transmitted 2748392
num followup messages transmitted 2748387
num sync messages received 0
num followup messages received 35
num pdelay requests transmitted 2746974
num pdelay responses received 2746927
num pdelay followup responses received 2746926
num pdelay requests received 2746348
num pdelay responses transmitted 2746348
num pdelay followup responses transmitted 2746345
!
mvrp global
mvrp vlan create
!
!
<snip>
! ! vlan 2 avb ! !
vtp mode transparent
<< show mvrp interface >>
switch1(config)#vlan 17
switch1(config-vlan)#exit
switch1(config)#interface vlan 17
switch1(config-if)#
*Nov 10 10:48:40.155: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan17, changed state to up >>> configured vlan with interface.
switch1(config)#do sh mvrp interface Gi1/0/1
Port Status Registrar State
Gi1/0/1 on normal
Port Join Timeout Leave Timeout Leaveall Timeout Periodic
Timeout
Gi1/0/1 20 60 1000 100
Port Vlans Declared >>> Switch is sending Declarations for VLAN 17 over Gi1/0/1
Gi1/0/1 1,8,17
Port Vlans Registered >>> MVRP Registration available only for VLAN 1 and 8
Gi1/0/1 1,8
Port Vlans Registered and in Spanning Tree Forwarding State
Gi1/0/1 1,8
switch1(config)#do show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi1/0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi1/0/1 1-4094
Port Vlans allowed and active in management domain
Gi1/0/1 1-2,8,17,21-33,35-62,64-72,74-82,84-86,88-91,94-95,97-110,112-198,531-544,800-802,900-1000
Port Vlans in spanning tree forwarding state and not pruned
Gi1/0/1 1,8 >>> Vlan 17 is Pruned because we have not received any Declaration from the neighboring device, hence this vlan is not registered in MVRP yet.
### switch2
switch2(config)#do show mvrp interface Te1/0/2
Port Status Registrar State
Te1/0/2 on normal
Port Join Timeout Leave Timeout Leaveall Timeout Periodic
Timeout
Te1/0/2 20 60 1000 100
Port Vlans Declared
Te1/0/2 1,8 >>> we are not sending Declarations for vlan 17 to switch1
Port Vlans Registered
Te1/0/2 1,8,17 >>> we see the vlan getting registered and hence in forwarding state on this switch.
Port Vlans Registered and in Spanning Tree Forwarding State
Te1/0/2 1,8,17
switch2(config)#do show interfaces trunk
Port Mode Encapsulation Status Native vlan
Te1/0/2 on 802.1q trunking 1
Port Vlans allowed on trunk
Te1/0/2 1-4094
Port Vlans allowed and active in management domain
Te1/0/2 1,8,17
Port Vlans in spanning tree forwarding state and not pruned
Te1/0/2 1,8,17 >>> vlan 17 is in forwarding state on switch2
switch2(config)#int vlan 17
switch2(config-if)#
*Nov 10 11:32:55.539: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan17, changed state to up
### switch1
switch1(config)#do sh mvrp interface Gi1/0/1
Port Status Registrar State
Gi1/0/1 on normal
Port Join Timeout Leave Timeout Leaveall Timeout Periodic
Timeout
Gi1/0/1 20 60 1000 100
Port Vlans Declared
Gi1/0/1 1,8,17
Port Vlans Registered
Gi1/0/1 1,8,17 >>> vlan 17 is now registered on switch1
Port Vlans Registered and in Spanning Tree Forwarding State
Gi1/0/1 1,8,17 >>> and in FWD state
switch1(config)#do show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi1/0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi1/0/1 1-4094
Port Vlans allowed and active in management domain
Gi1/0/1 1-2,8,17,21-33,35-62,64-72,74-82,84-86,88-91,94-95,97-110,112-198,531-544,800-802,900-1000
Port Vlans in spanning tree forwarding state and not pruned
Gi1/0/1 1,8,17 >>> vlan 17 is in FWD state and no longer pruned
提示:如果相邻设备不运行或不支持MVRP,则可以在已运行MVRP的交换机上,在连接不支持MVRP的相邻设备的端口上配置此行:'mvrp registration fixed'。此配置会忽略该端口上的所有MVRP声明,并且交换机上静态配置的所有VLAN不会被MVRP在该接口上动态修剪。
— AVB验证命令—
#gptp show ptp brief show ptp clock show ptp parent
show ptp port <int_name>
show platform software fed switch active ptp interface <int_name> #avb show avb domain show avb stream #msrp show msrp streams
show msrp streams brief show msrp streams detail
show msrp streams stream-id <stream-id> show msrp port bandwidth
show msrp port interface <int_name>
show tech msrp #mvrp show mvrp summary
show mvrp interface <int_name> #QoS
show policy-map interface <int_name>
show interface <int_name> counter errors show platform hardware fed switch active qos queue config interface <int_name> show platform hardware fed switch active qos queue stats interface <int_name>
show platform hardware fed switch active fwd-asic resource tcam utilization
show tech qos
!!! Starting from Cisco IOS XE Denali 16.3.2, 'show running-config interface' command does not display any details of the AVB policy attached.
!!! You must use 'show policy-map interface' command to display all the details of the AVB policy attached to that port. #FED QoS show platform software fed switch active qos policy summary
show platform software fed switch active qos policy target interface <int_name>
版本 | 发布日期 | 备注 |
---|---|---|
2.0 |
15-Oct-2021 |
添加了一些额外的样式修复 |
1.0 |
14-Dec-2020 |
初始版本 |