本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案介紹如何在Catalyst 3650、3850、9300和9500平台上設定和疑難排解音訊橋接(AVB)。
音訊和影片(AV)裝置部署傳統上都是模擬、單用途、點對點、單向鏈路。隨著部署遷移到數位傳輸,它們繼續保留點對點單向鏈路架構。這種專用連線模式導致專業和消費類應用的大量佈線難以管理和操作。
解決此問題的機制有多種,但都是非標準的,難以操作和部署,或者昂貴且僵硬。遷移至乙太網基礎設施被視為滿足專業AV裝置需求的一種方法,此外還可以降低總擁有成本(TCO)並實現新服務的透明整合。但是,部署機制缺乏靈活性和互操作性。
為了加快基於乙太網的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功能的增強功能。
這些平台支援AVB:
Catalyst 3650/3850 | Catalyst 9300 | Catalyst 9400 | Catalyst 9500 | |
支援的SKU/PID |
|
|
|
|
附註:目前,AVB僅支援固定/獨立平台,不支援堆疊配置。對模組化平台(如Cat9400)的支援正在規劃中。
AVB |
但丁 |
眼鏡蛇網 |
|
標準 |
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 Audio Video Bridge(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地址的輸出埠轉發通話者宣告。監聽程序宣告僅傳播到具有關聯的Talker宣告(即,基於匹配的流ID)的埠。 如果在任何交換機埠上未註冊關聯Talker宣告,則不會傳播監聽程式宣告。
附註:MSRP感知交換機自動生成過時註冊的取消註冊,以終止AVB會話。
Talker廣告:在來自通話者的網路路徑上未遇到任何頻寬或其他網路限制的資料流通告。
Talker失敗:由於頻寬限制或其他限制而無法從偵聽器獲取的Stream通告。
就緒:此子型別表示至少有一個監聽程式,它們都打算監聽並且已成功保留資源;沒有監聽程式打算監聽但無法保留資源。
就緒失敗:此子型別表示至少有一個監聽程式,它們都打算監聽並且已成功保留資源,但至少有一個其他監聽程式打算監聽,但無法保留資源。
詢問失敗:此子型別表示至少有一個監聽程式打算監聽但無法保留資源,但沒有監聽程式同時打算監聽並且成功保留資源。
支援8Q策略。Cat3K/Cat9K不支援每埠輸入佇列。內部隊列已針對AVB進行微調,以便為交換機內的SR類流量提供端到端優惠處理(低延遲)。
控制流量示例:OAM、信令、網路控制、InterNetwork Control
串流保留(SR)A類 | 串流保留(SR)B類 | 控制流量 | 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的宣告/註冊,則會修剪這些網橋,從而導致潛在的連線問題。
交換機上未啟用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上通告其流。
步驟2.將沿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子策略配置也會保留。
SR Class A的核心埠和SR Class B的邊界端口(這表示在此埠上,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 B類的核心埠和SR 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 Class A的核心埠,以及SR Class B的邊界埠(這意味著在此埠上,我們僅接收類A流的通告)。 分配給AV流的頻寬限製為總埠頻寬的75%。因為在這種情況下,連線埠會自動交涉連結速度為1 Gbps,所以此頻寬的最大75%(750 Mbps)可保留給A類和B類流。在這種情況下。MSRP為A類動態保留71%(約701 Mbps),為B類動態保留0%。
但是,當我們檢查介面所連線的實際QoS策略時,我們可以注意到,從可保留BW的75%中,有71%實際上已分配給A類(優先順序級別1),但在現實中,也有一小部分BW - 1% — 被分配給B類(優先順序級別2)。 正如預期的那樣,15%的頻寬被分配給控制管理流量(優先順序級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
<< show avb domain >>
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
<< show msrp streams >>
<< 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-Class A的端到端總延遲為2毫秒或更短,SR-Class B的端到端總延遲為50毫秒或更短。從通話者到監聽程式的典型AVB部署7跳符合這些延遲要求。
附註:mGig平台上的100 Mbps或更低速度不支援gPTP。原因:100Mbps的速度會引入超過50ms的抖動。
<< 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
<< show 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
<< show ptp port >>
<<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 |
初始版本 |