網絡體檢技術大揭秘(上篇)
一、網絡體檢的必要性
日常中我們應該會接觸到各種檢,體檢、車檢、安檢這些都除外,閱歷豐富的你應該也還能拎出好多檢字輩的例子來。那與我們息息相關,號稱重要性比肩甚至超越水電的網絡,我們有沒有必要對他進行體檢呢?調皮的你可能會說"體檢有什么卵用,體檢又不能讓網速變快,網絡變好"。
確實,長期以來我們對網絡選擇了逆來順受,不是因為我們脾氣好,是我們確實貌似沒有什么好的手段來對我們的網絡進行體檢,判斷出我們的網絡撒嬌時到底是哪個環節在搗鬼。如果我們能有一些行之有效的方法或得心應手的工具來診斷我們的網絡,我們就可以判斷出問題的癥結所在,進而奪命連環call相關負責人立刻馬上對問題進行解決,我們的網絡也就會及時的恢復健康。我們也就可以繼續愉快地網上沖浪了。
通過這篇文章,我將和大家一起對這個話題做個新認識,也許你會發現上文中的如果其實是可以去掉的。也就是說我們是有一些手段來檢測我們的網絡的,要不怎么能說以太網是一個NB的網絡呢~
二、網絡體檢的常用手段
我們在之前的文章中也提到過,學技術本來就不容易,所以我們只學習主流的(標準的)技術,其他非主流的萬一我們還沒整明白就淘汰了,多尷尬。
1. 二層體檢常用手段
二層的主要手段基本都在 IEEE 802.3ah、 IEEE 802.1ag、 ITU-T Y.1731這三個標準(MEF其實也有定義,類似)里邊進行了定義和規范,常見的主要是EFM和CFD這哥倆。先來個表對比傷害一下,再分別展開介紹。
表1 EFM與CFD對比
(1) EFM技術
a. 協議報文
EFM OAM工作在數據鏈路層,其協議報文被稱為OAMPDU(OAM Protocol Data Units,OAM協議數據單元)。EFM OAM就是通過設備之間定時交互OAMPDU來報告鏈路狀態,使網絡管理員能夠對網絡進行有效的管理。
圖1 OAMPDU報文格式示意圖
表2 OAMPDU重要字段含義
表3 常見的OAMPDU
b. EFM OAM連接建立
EFM OAM功能的實現建立在EFM OAM連接的基礎之上,EFM OAM連接的建立過程也稱為Discovery階段,即本端OAM實體發現遠端OAM實體、并與之建立穩定對話的過程。
當設備的某個接口使能了EFM OAM功能時,如果該接口的EFM OAM工作模式為主動模式,便由該接口向遠端發起EFM OAM連接。在建立EFM OAM連接的過程中,相連的OAM實體通過交互Information OAMPDU通報各自的EFM OAM配置信息。當OAM實體收到遠端的配置參數后,決定是否建立EFM OAM連接。
圖2 EFM OAM連接示意圖
如圖2所示,Device A的接口Ethernet1/1工作在主動模式下,當該接口上使能了EFM OAM功能時:
- Device A向Device B發送Information OAMPDU,其中包含Device A的EFM OAM配置信息。
- Device B收到該OAMPDU后,與自己的EFM OAM配置進行匹配,然后向Device A回復Information OAMPDU,其中除了包含Device A和Device B二者的EFM OAM配置信息外,還包含Device B對Device A的EFM OAM配置是否匹配的標志信息。
- Device A收到Device B發來的OAMPDU后,再來判斷Device B的EFM OAM配置與自己的配置是否匹配。
通過以上過程,如果雙方的EFM OAM配置都匹配,EFM OAM連接便建立起來。EFM OAM連接建立后,兩端的OAM實體會周期性地發送Information OAMPDU來檢測連接是否正常。如果一端OAM實體在連接超時時間內未收到遠端發來的Information OAMPDU,則認為EFM OAM連接中斷。
c. 鏈路性能監控
當一端OAM實體監控到一般鏈路事件時,將向其遠端OAM實體發送Event Notification OAMPDU進行通報,同時將監控信息記入日志并上報給網管系統;遠端OAM實體收到該信息后,也將其記入日志并上報給網管系統。這樣,管理員就可以通過觀察日志信息動態地掌握網絡的狀況。
- 遠端故障檢測:當設備上發生緊急鏈路事件而導致流量中斷時,故障端OAM實體通過Information OAMPDU中的Flag域將故障信息(即緊急鏈路事件類型)通知給遠端OAM實體,同時將故障信息記入日志并上報給網管系統;遠端OAM實體收到該信息后,也將其記入日志并上報給網管系統。這樣,管理員就可以通過觀察日志信息動態地了解鏈路狀態,對相應的錯誤及時進行處理。
- 遠端環回:遠端環回功能是指主動模式下的OAM實體向遠端發送除OAMPDU以外的所有其它報文時,遠端收到報文后不按其目的地址進行轉發,而是將其按原路返回給本端。它可用于定位鏈路故障和檢測鏈路質量:網絡管理員通過觀察非OAMPDU報文的返回情況,可以對鏈路性能(包括丟包率、時延、抖動等)作出評判。
圖3 遠端環回示意圖
如圖3所示,Device A的接口Ethernet1/1工作在主動模式下,在Device A與Device B之間的EFM OAM連接建立之后,使能該接口上的遠端環回功能:
- Device A向Device B發送帶有使能信息的Loopback Control OAMPDU,并等待回復。
- Device B收到該OAMPDU后,向Device A回復狀態改變的Information OAMPDU,并進入環回狀態(在此狀態下,設備會把收到的非OAMPDU報文都按原路返回)。
- Device A收到回復后,開始向Device B發送非OAMPDU的測試報文。
- Device B收到測試報文后,將其按原路返回給Device A。
- 當Device A需要停止遠端環回時,向Device B發送帶有去使能信息的Loopback Control OAMPDU。
- Device B收到該OAMPDU后便退出環回狀態,并向Device A回復狀態改變的Information OAMPDU。