單向鏈路檢測(UDLD)

單向鏈路檢測(UDLD)
單向鏈路檢測(UDLD)用於檢測和禁用光纖接口上由錯誤的光纖連線或者端口故障所導致的單相鏈路
     UDLD協議使通過光纖或銅線(例如:第5類電纜)以太網線纜連接的設備可以監控線纜的物理配置,
檢查是否存在單向鏈路。檢測到單向鏈路時,UDLD協議會關閉受影響的端口並向用戶發出警報。
 
udld port命令淺談
udld是一種第2層協議,它與第1層機制協同工作來確定鏈路的物理狀態。在第1層中,自動協商功能將照顧到物理信令和故障監測。udld能夠執行自動協商不能執行的任務,例如監測鄰居身份和關閉連接不當的端口。當同時啓用自動協商和udld的時候,第1層和第2層監測將協同工作來防止物理或邏輯上的單向連接,並且還可以其他協議的故障。      
udld有兩種模式:通常模式和廣泛模式。通常模式是默認的,當監測吉比特接口出現了故障,它會監測到單向性鏈路,防止出現問題。如果某個端口連接正確沒有故障,但只是傳輸是單向的,udld不會監測到單向鏈路,因爲第1層機制沒有問題,它也不會非法這個端口。      
廣泛模式下,當出現一下情況時,它會監測到單向鏈路,它將非法端口:      
* 一個光纖吉比特端口或雙絞線鏈路中,其中一個端口不能發送或接收數據包      
* 一個光纖吉比特端口或雙絞線鏈路中,其中一個端口斷了而其他端口是活動      
* 一個光纖線纜的一頭連接錯誤      
   積極模式udld是udld的一種變種,它能夠提供額外的好處。在啓用積極模式udld的情況下,當端口停止接收udld數據包的時候,udld將嘗試重新建立與鄰居的連接。但如果嘗試次數超過8次之後,那麼端口狀態就將變更爲“error-disable”狀態,它將有效地禁用端口。      
udld的算法:      
學習鄰居的信息並將信息保存在一個本地cache中,一但檢測到一個新的鄰居或一個鄰居請求重新同步cache時,就發送一系列的udld probe/echo(hello)包。      
  udld在所有端口上持續的發送probe/echo信息,當在端口上收到一個udld響應信息時觸發一個"detection-phase"和驗證進程。如果所有的有效條件都達滿足(端口是雙向連接,並且線纜正確),這個端口被啓用。否則,該端口被禁用,並觸發如下所示的syslog信息:      
"udld-3-disable: unidirectional link detected on port mod/port. port disabled"()      
"udld-4-onewaypath: a unidirectional link from port mod/port to port mod/port of device [chars] was detected"      
  一但一個鏈路建立起來並被標誌爲雙向的,udld會繼續每隔15秒發送一個probe/echo信息。      
1. 鄰居數據庫維護(neighbor database maintenance)      
udld在每個活動的接口上週期性的發送probe/echo包,以維護鄰居緩存的完整性。一端收到一個hello信息,將它緩存到內存中,並保存一個通過hold-time定義的時間間隔。如果一個hold-time超時,相應的cache被清空,如果在hold-time定義的時間間隔內收到新的hello信息,則新的替代老的,並將計時器清零。      
爲了維護udld cache的完整性,一旦一個啓用了udld的接口被禁用,或該接口上的設備被重啓,該接口存在的所有緩存均會被清除,udld傳送至少一個信息讓鄰居清空響應的緩存條目。      
2. 回顯監測機制      
       回顯機制構成了檢測算法的基礎。一旦一個udld設備學習到了一個新的鄰居或從一個非同步狀態的鄰居收到一了個重新同步的請求。它將啓動或重啓本端的檢測窗口,併發送一個完全同意的回顯信息。由要求所有的鄰居都必須有這個相應的行爲,回顯的發送者期待收到一個響應的echos。如果檢測窗口結束,而沒有合法的響應信息收到,這個鏈路被認爲是單向連接。就觸發鏈路重連接或端口shutdown進程。      
在啓用udld的情況下,交換機將定期地向鄰居發送udld協議數據包,並且期望在預定計時器到期之前接收到迴應的數據包。如果計時器到期,那麼交換機將確定該鏈路是單向鏈路,並且關閉該端口。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章