链路层发现协议(Link Layer Discovery Protocol,LLDP)是一种数据链路层协议,网络设备可以通过在本地网络中发送LLDPDU(Link Layer Discovery Protocol Data Unit)来通告其他设备自身的状态。是一种能够使网络中的设备互相发现并通告状态、交互信息的协议。
LLDP协议属于链路层协议,它的以太类型为0x88cc。一个标准的LLDP帧格式如下:
目的MAC地址 | 源MAC地址 | 以太类型 | Chassis ID TLV | Port ID TLV | Time to live TLV | 可选 TLV | End of LLDPDU TLV |
---|---|---|---|---|---|---|---|
01-80-C2-00-00-0E 或
01-80-C2-00-00-03 或 01-80-C2-00-00-00 |
源MAC | 0x88cc | 零或多个可选的TLV | 表示LLDP结束 |
名称 | 目的MAC地址 | 意义 |
---|---|---|
Nearest bridge | 01-80-C2-00-00-0E | 包被限制在本地网络中,无法被任何桥或路由设备转发 |
Nearest non-TPMR bridge | 01-80-C2-00-00-03 | 包只被Two-Port MAC Relay (TPMR)转发,其他的任何桥或路由设备都不转发该数据包 |
Nearest Customer Bridge | 01-80-C2-00-00-00 | 只在两个Customer Bridge之间传播。 |
TLV类型
(7bits) |
TLV数据部分长度
(9bits) |
TLV数据部分
(0至511字节) |
TLV的类型部分的取值中,0~8以及127是规范中已经明确占用的数值,9~126则是预留的数值,其详细定义如下:[1]:25
TLV type | TLV name | 是否必须存在 |
---|---|---|
0 | End Of LLDPDU | 必须 |
1 | Chassis ID | 必须 |
2 | Port ID | 必须 |
3 | Time To Live | 必须 |
4 | Port Description | 可选 |
5 | System Name | 可选 |
6 | System Description | 可选 |
7 | System Capabilities | 可选 |
8 | Management Address | 可选 |
9–126 | Reserved for future standardization | — |
127 | Organizationally Specific TLVs | 可选 |