24-eMDI配置
本章節下載: 24-eMDI配置 (301.63 KB)
目 錄
在IPTV等基於組播的視頻業務中,丟包、亂序、抖動是影響視頻質量的三個重要因素。丟包、亂序和抖動均有可能導致視頻花屏和馬賽克。如何在故障發生時快速準確地定界呢?eMDI應運而生。
eMDI(Enhanced Media Delivery Index,增強型媒體傳輸質量指標)是一種專門為視頻、音頻業務設計的網絡質量監控和故障定界方案,它能直接對IP網絡中各個網絡節點上指定的由TCP或RTP承載的業務報文進行實時監控與分析。網絡管理員可以結合多個網絡節點的監控與分析結果,對故障位置進行快速定界。
eMDI功能是基於實例實現的。每個eMDI實例由目標數據流、監控周期、監控時間和告警閾值等組成。
在數據流經過的各個節點上配置eMDI,實例啟動後會對目標數據流進行實時監控,采集目標數據流報文頭中的相關字段,並以周期為基本單位進行分析計算,然後向網管上報分析數據。
如圖1-1所示,eMDI的原理機製如下:
(1) 網絡管理員收到業務質量變差消息後,獲取該業務流的源IP地址、目的IP地址等報文特征信息。
(2) 網絡管理員通過網管或CLI在設備上部署eMDI。
(3) 設備周期性地將監控結果上送給網管。
(4) 網管彙總各設備上送的數據進行分析和統計,並將結果進行圖形化展示。
(5) 網絡管理員根據圖形化展示結果對故障位置進行快速定界。
圖1-1 eMDI組網圖
對於目標TCP數據流,eMDI將自動監控表1-1中的這些指標。
對於目標UDP數據流,eMDI將自動監控表1-2中的這些指標。
eMDI將周期性地將這些指標的值發送給網管。
表1-1 目標TCP數據流監控指標
監控指標 |
指標含義 |
算法 |
說明 |
Rate |
接收報文速率,單位為bps和pps |
· Rate(bps)=周期內收到的所有報文的長度之和÷周期長度 · Rate(pps)=周期內收到的所有報文個數÷周期長度 |
單向流支持監控該指標 |
UPLR(Upstream Packet Lost Ratio) |
監控點上遊丟包率 |
UPLR=上遊丟包數÷(接收到的總包數+上遊丟包數) |
在無丟包的情況下,當前接收的報文的序列號+報文長度=下一個報文的預期序列號 如果“當前接收的報文的序列號>下一個報文的預期序列號”,則判斷為上遊發生丟包。丟包個數根據平均報文大小計算 單向流支持監控該指標 |
DPLR(Downstream Packet Lost Ratio) |
監控點下遊丟包率 |
· 下遊丟包數=總丟包數-上遊丟包數 · DPLR=下遊丟包數÷接收到的總包數 |
在無丟包的情況下,當前發送的報文的序列號+報文長度=下一個報文的預期序列號 如果“報文序列號<預期的序列號”,則判斷其為重傳報文,重傳報文數=總丟包數 單向流支持監控該指標 |
DRTT(Downstream average Round Trip Time) |
監控點下遊平均雙向時延,單位為微秒 |
DRTT=T2–T1 |
記錄接收到的非重傳報文的當前時間戳為T1 根據序列號和報文長度計算出下一個報文的預期序列號 當收到下遊回複的ACK報文的確認號大於或等於預期的序列號時,記錄當前時間戳為T2 記錄周期內滿足上述條件的所有T1、T2值,計算平均值 雙向流支持監控該指標 |
URTT(Upstream average Round Trip Time) |
監控點上遊平均雙向時延,單位為微秒 |
URTT=T2–T1 |
· T1表示發現Client端建立連接請求的SYN報文時的時間戳 · T2表示發現Server返回的SYN ACK報文的時間戳 由於本監控指標監控的是TCP控製報文,所以在一個監控周期內該值不一定能計算出來 雙向流支持監控該指標 |
表1-2 目標UDP數據流監控指標
監控指標 |
指標含義 |
算法 |
說明 |
RTP-LR(RTP Lost Rate) |
RTP報文的丟包率 |
RTP-LR=丟包數÷(收包數+丟包數-亂序數) |
· 如果“當前RTP報文的序列號-已接收所有報文中的最大序列號>1”,則為丟包 · 如果“當前RTP報文的序列號<已接收所有報文中的最大序列號”,則為亂序 單向流支持監控該指標 |
RTP-SER(RTP Sequence Error Ratio) |
RTP報文的亂序率 |
RTP-SER=亂序數÷(收包數+丟包數-亂序數) |
單向流支持監控該指標 |
Jitter |
RTP報文的抖動,單位為微秒 |
Jitter=T2–T1 |
· T1表示發送端發送第一個報文和最後一個報文的時間差 · T2表示接收端接收第一個報文和最後一個報文的時間差 單向流支持監控該指標 |
RTP-LP(RTP Lost Packet) |
RTP報文的最大連續丟包數 |
監控周期內RTP報文連續丟失的最大個數 |
網絡管理員或者網管應用通過監測RTP-LP的值可以: · 判斷網絡狀態,以便及時響應網絡故障,確保關鍵業務的暢通。例如:當RTP-LP的值增速較快,則說明網絡中可能存在突發流量,可以排查突發流量是否為網絡攻擊,以及對突發流量進行限速;當RTP-LP的值大於經驗值或者常規值,則說明網絡存在擁塞或者其它故障,網絡管理員可以調整丟包重傳策略、增大網絡帶寬或者啟用備份鏈路等,從而緩解網絡帶寬壓力,有效減少丟包 · 快速定位網絡故障,業務報文從源端到目的端要經過很多網絡設備,分段檢測RTP-LP值,可以快速定位丟包發生的區域,從而縮小故障檢測範圍,提高故障排除的效率 單向流支持監控該指標 |
RTP-ELF(RTP Effective Loss Factor) |
FEC有效丟包因子 |
RTP-ELF=周期內丟包窗口總數÷周期內滑動窗口總數 |
RTP-ELF是一個監控周期內丟包窗口占滑動窗口總數的比例。RTP-ELF的計算依賴於窗口大小與預設的丟包閾值 設備周期內采樣的業務報文數達到滑動窗口大小時生成首個窗口,滑動窗口數計1。後續每收到一個報文,向後滑動一個報文並生成新的窗口,滑動窗口數加1。每個窗口都會檢驗報文丟失數量是否超出了預設的閾值。若超出了閾值,則認為該窗口為丟包窗口,丟包窗口的計數加1。這一過程持續進行,直至監控周期結束,窗口停止滑動。此時設備得到監控周期內,滑動窗口的總數和丟包窗口的總數,計算出RTP-ELF的值 如果一個監控周期內的丟包窗口總數大於0,則認為該周期報文傳輸存在故障 |
一個eMDI實例隻能監控一條目標數據流,不同eMDI實例不能監控相同的目標數據流或者存在衝突的數據流。存在包含關係(clock-rate除外)的流即視為存在衝突。例如:
· 如下兩條流,係統將視為存在衝突(存在包含關係,第一條流包含第二條流):
¡ flow ipv4 tcp source 1.1.1.1 destination 2.2.2.2
¡ flow ipv4 tcp source 1.1.1.1 destination 2.2.2.2 destination-port 20
· 如下兩條流,係統不會視為衝突(不存在包含關係):
¡ flow ipv4 tcp source 1.1.1.1 destination 2.2.2.2 destination-port 10
¡ flow ipv4 tcp source 1.1.1.1 destination 2.2.2.2 destination-port 20
實例啟動後,實例中的所有參數均不支持修改,如需修改請先使用stop命令停止實例;如果設備發生主備倒換或eMDI進程重啟,實例會自動停止,如需啟動請重新執行start命令。
在如下兩種情況中,由於eMDI功能監控到的數據不是完整的,所以監控結果將會存在偏差:
· 被監控的數據流中,有部分流量在網絡中傳輸時未經過本設備;
· 被監控的數據流中,雖然所有流量都經由本設備轉發,但並不是經由本設備中的同一個單板轉發。
獲取目標數據流的特征,才能根據特征為實例配置目標數據流。
(1) 進入係統視圖。
system-view
(2) 開啟eMDI功能並進入eMDI視圖。
emdi
缺省情況下,eMDI功能處於關閉狀態。
(3) (可選)配置eMDI實例在監控周期中采樣的最大報文數。
monitor-period-packet maximum max-number
(4) 創建eMDI實例並進入實例視圖。
instance instance-name
(5) (可選)配置eMDI實例的描述信息。
description text
缺省情況下,未配置eMDI實例的描述信息。
(6) 配置目標數據流。請選擇其中一項進行配置。
¡ 配置目標TCP數據流
flow ipv4 tcp source source-ip-address destination destination-ip-address [ destination-port destination-port-number | source-port source-port-number | vlan vlan-id | vni vxlan-id | vpn-instance vpn-instance-name ] *
¡ 配置目標UDP數據流
flow ipv4 udp source source-ip-address destination destination-ip-address [ destination-port destination-port-number | source-port source-port-number | vlan vlan-id | vni vxlan-id | pt pt-value | clock-rate clock-rate-value | vpn-instance vpn-instance-name ] *
缺省情況下,未配置eMDI實例的目標數據流。
在進行模糊匹配(即未指定命令中除clock-rate之外的某些可選參數)時,實例僅會以設備收到的首包所屬的流為基礎進行指標計算。以目的端口號為例,假設配置的目標TCP數據流為flow ipv4 tcp source 10.0.0.1 destination 10.0.1.1,此時設備收到了屬於該規則的首包的目的端口號為100,則後續該實例將僅基於源IP地址為10.0.0.1、目的IP地址為10.0.1.1、目的端口號為100這條流進行指標計算,而源IP地址為10.0.0.1、目的IP地址為10.0.1.1、目的端口號為非100的報文,將不會納入計算範圍。
上述模糊匹配的實現機製可能會導致最終的監控結果存在偏差,所以為了保證監控結果的精確性,建議將目標數據流的粒度配置得越精細越好。
(7) (可選)配置eMDI實例的告警閾值。
alarm { dplr | rtp-lr | rtp-ser | uplr } threshold threshold-value
缺省情況下,eMDI實例的告警閾值為100。
對於TCP數據流,僅支持配置dplr和uplr;對於UDP數據流,僅支持配置rtp-lr和rtp-ser。
(8) (可選)配置eMDI實例的告警抑製次數。
alarm suppression times times-value
缺省情況下,eMDI實例的告警抑製次數為3。
(9) (可選)配置目標UDP數據流的視頻質量監控的滑動窗口和閾值。
fec { window window-size | threshold threshold-value } *
缺省情況下,UDP數據流的視頻質量監控的滑動窗口為100,閾值為5。
(10) (可選)配置eMDI實例的監控時間。
lifetime { seconds seconds | minutes minutes | hours hours | days days }
缺省情況下,eMDI實例的監控時間為1小時。
(11) (可選)配置eMDI實例的監控周期。
monitor-period period-value
缺省情況下,eMDI實例的監控周期為60秒。
(1) 進入係統視圖。
system-view
(2) 進入eMDI視圖。
emdi
(3) 進入eMDI實例視圖。
instance instance-name
(4) 啟動eMDI實例。
start
請選擇其中一項進行配置。
· 停止eMDI實例。
a. 進入係統視圖。
system-view
b. 進入eMDI視圖。
emdi
c. 進入eMDI實例視圖。
instance instance-name
d. 停止eMDI實例。
stop
· 停止所有eMDI實例。
a. 進入係統視圖。
system-view
b. 進入eMDI視圖。
emdi
c. 停止所有eMDI實例。
stop all
在完成上述配置後,在任意視圖下執行display命令可以顯示eMDI配置後的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除eMDI的統計信息。
表1-3 eMDI顯示和維護
配置 |
命令 |
顯示eMDI實例的信息 |
display emdi instance [ name instance-name | id instance-id ] [ verbose ] |
顯示設備的eMDI實例資源信息 |
display emdi resource |
顯示eMDI實例的監控統計信息 |
display emdi statistics { instance-name instance-name | instance-id instance-id } [ number number ] [ abnormal | verbose ] |
清除eMDI實例的統計信息 |
reset emdi statistics [ instance-name instance-name | instance-id instance-id-value ] |
如圖1-2所示,Camera通過Device A、Device B和Device C將RTP視頻數據流回傳給Server。現發現Server端收到的畫麵有花屏,需在Device A、Device B和Device C配置eMDI功能,進行故障定界,以快速發現故障鏈路或設備。
圖1-2 eMDI典型配置組網圖
配置各設備的IP地址,並確保它們之間路由可達。
(1) 配置Device A
# 開啟eMDI功能。
<DeviceA> system-view
[DeviceA] emdi
# 創建eMDI實例test。
[DeviceA-emdi] instance test
# 配置目標UDP數據流:源IP為192.168.1.2,目的IP為10.1.1.2。
[DeviceA-emdi-instance-test] flow ipv4 udp source 192.168.1.2 destination 10.1.1.2
# 配置eMDI實例的監控周期為10秒。
[DeviceA-emdi-instance-test] monitor-period 10
# 配置eMDI實例的監控時間為30分鍾。
[DeviceA-emdi-instance-test] lifetime minutes 30
# 啟動eMDI實例。
[DeviceA-emdi-instance-test] start
(2) 配置Device B和Device C
與Device A的配置相同,配置步驟略。
# 實例運行一段時間後,查看Device A、Device B和Device C上實例test的簡要監控統計信息,結合三個設備上的數據,判斷故障位置。下麵以Device A的統計信息為例。
<DeviceA> display emdi statistics instance-name test
Instance name : test
Instance ID : 1
Monitoring period: 10 sec
Protocol : UDP
Unit for RTP-LR, RTP-SER and RTP-ELF is 1/100000
Timestamp Status RTP-LR RTP-SER Jitter(us) RTP-LP RTP-ELF
2019/09/17 16:17:20 Normal 0 0 2560 0 0
2019/09/17 16:17:10 Abnormal 50000 0 2459 1 100000
2019/09/17 16:17:00 Abnormal 12634 33333 5236 3 23356
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!