一、簡介
LLDP,即鏈路層發現協議(Link Layer Discovery Protocol),是一種與廠商無關的網絡協議,用於發現直接相連的設備、設備類型、數量、端口號等信息。它是標準的以太網物理層協議,於2001年被IEEE 802.1AB標準化。
二、消息格式
LLDP協議通過發送和接收LLDP數據單元來實現設備之間的通信。LLDP數據單元由類型、長度、值組成,格式如下:
┌────┬───────┬────┬───────┬────┬───────┐ │頭部 │ TLV1 │ TLV2 │ TLV3 │ 尾部 │ └────┴───────┴────┴───────┴────┴───────┘
其中:
- 頭部:包含參數如版本、長度等。
- TLV:即type、length、value,包含四個部分:
- type:描述信息的類型,佔用7個比特位,最多定義255種。例如,鄰居設備的端口ID為2的時候TLP的type值為2;
- length:描述type字段後面長度,佔用9個比特位,最多支持511字節;
- value:具體描述信息,佔據(type+length)個字節;
- 尾部:佔用0個字節,其目的是幫助接收者正確解讀LLDPDU。
三、發送流程
發送LLDP數據單元的主機,需要執行以下操作:
- 設置LLDP報文頭的長度字段。
- 將端口的MAC地址(即源MAC地址)作為LLDP報文的源MAC地址。
- 逐個添加需要發送的TLV類型。
- 在LLDP報文尾部添加一個空的TLV,以幫助接收方識別LLDP幀結束。
- 設置以太網幀的目標MAC地址為LLDP多播地址 01:80:c2:00:00:0e(交叉域多播地址)。
- 通過選定的物理層介質(例如,有線或無線)傳輸該幀,以便其到達鄰接交換機或直接連接的設備。
圖示如下:
┌──────────────────────────┐ │ Ethernet II │ ├───────────┬──────────────┤ │LLDP頭部 │ TLV1 │ ├───────────┼──────────────┤ │TLV2 │ TLV3 │ ├───────────┼────────────────┤ │ │ TLVn │ 尾部 │ └───────────┴────────────────┘
四、接收流程
接收LLDP數據單元的主機,需要執行以下操作:
- 解析以太網幀,以識別LLDP幀。
- 驗證LLDP幀頭,以確定它的長度是否正確。
- 查找源MAC地址,用於確定LLDP報文源。
- 處理每個TLV類型的值,以確定是否與其他LLDP幀有衝突。
五、應用場景
LLDP協議常用於以下場景:
- 拓撲發現:通過LLDP協議,可以發現與自己直接相連的交換機及設備的信息,從而了解整個網絡拓撲結構。
- 伺服系統識別:LLDP協議可以幫助伺服系統識別鄰居的信息和端口配置,從而更加智能地管理網絡資源。
- 安全控制:LLDP協議可以提供設備之間必要的信息,以實現安全控制和網絡監控。
六、總結
LLDP協議是一種典型的鏈路層發現協議,主要用於發現直接相連的設備、設備類型、數量、端口號等信息,具有良好的跨平台兼容性和零配置簡便性。在實際應用中,LLDP協議經常作為網絡管理中的一個重要組成部分,應被廣泛關注和使用。
原創文章,作者:JNDHJ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/370571.html