LLDP协议原理

LLDP协议原理目录LLDP概念LLDP报文LLDP工作原理1、LLDP概念LLDP(LinkLayerDiscoveryProtocol,链路层发现协议)。LLDP定义在802.1ab中,它是一个二层协议,它提供了一种标准的链路层发现方式。LLDP协议使得接入网络的一台设备可以将其主要的能力,管理地址,设备标识,接口标识等信息发送给接入同一个局域网络的其它设备。当一个设备从网络中接收到其它设备的这些信息时,它就将这些信息以MIB的形式存储起来。 这些MIB信息可用于发现设备的物理拓扑结构以及管理配置信息。

大家好,又见面了,我是你们的朋友全栈君。

目录
LLDP概念
LLDP报文
LLDP工作原理

1、LLDP概念

LLDP(Link Layer Discovery Protocol,链路层发现协议)。LLDP定义在802.1ab中,它是一个二层协议,它提供了一种标准的链路层发现方式。LLDP协议使得接入网络的一台设备可以将其主要的能力,管理地址,设备标识,接口标识等信息发送给接入同一个局域网络的其它设备。当一个设备从网络中接收到其它设备的这些信息时,它就将这些信息以MIB的形式存储起来。这些MIB信息可用于发现设备的物理拓扑结构以及管理配置信息。需要注意的是LLDP仅仅被设计用于进行信息通告,它被用于通告一个设备的信息并可以获得其它设备的信息,进而得到相关的MIB信息。它不是一个配置、控制协议,无法通过该协议对远端设备进行配置,它只是提供了关于网络拓扑以及管理配置的信息,这些信息可以被用于管理、配置的目的,如何用取决于信息的使用者。

2、LLDP报文

在这里插入图片描述

3、LLDP工作原理

基本原理:
1.LLDP模块通过LLDP代理与设备上物理拓扑MIB、实体MIB、接口MIB以及其他类型MIB的交互,来更新自己的LLDP本地系统MIB,以及本地设备自定义的LLDP扩展MIB;
2.将本地设备信息封装成LLDP帧发送给远端设备;
3.接收远端设备发过来的LLDP帧,更新自己的LLDP远端系统MIB,以及远端设备自定义的LLDP扩展MIB;
4.通过LLDP代理收发LLDP帧,设备就很清楚地知道远端设备的信息,包括连接的是远端设备的哪个接口、远端设备的MAC地址等信息;
5.LLDP的MIB用来保存本地设备信息。包括设备ID、接口ID、系统名称、系统描述、接口描述、网络管理地址等信息;

LLDP的工作模式:
LLDP有以下四种工作模式:
TxRx:既发送也接收LLDP报文;
Tx:只发送不接收LLDP报文;
Rx:只接收不发送LLDP报文;
Disable:既不发送也不接收LLDP报文;

当端口的LLDP工作模式发生变化时,端口将对协议状态机进行初始化操作。为了避免端口工作模式频繁改变而导致端口不断执行初始化操作,可配置端口初始化延迟时间,当端口工作模式改变时延迟一段时间再执行初始化操作。

  1. LLDP报文的发送机制
    当端口工作在TxRx或Tx模式时,设备会周期性地向邻居设备发送LLDP报文。如果设备的本地配置发生变化则立即发送LLDP报文,以将本地信息的变化情况尽快通知给邻居设备。但为了防止本地信息的频繁变化而引起LLDP报文的大量发送,每发送一个LLDP报文后都需延迟一段时间后再继续发送下一个报文。
    当设备的工作模式由Disable/Rx切换为TxRx/Tx,或者发现了新的邻居设备(即收到一个新的LLDP报文且本地尚未保存发送该报文设备的信息)时,该设备将自动启用快速发送机制,即将LLDP报文的发送周期缩短为1秒,并连续发送指定数量的LLDP报文后再恢复为正常的发送周期。
    2.LLDP报文的接收机制
    当端口工作在TxRx或Rx模式时,设备会对收到的LLDP报文及其携带的TLV进行有效性检查,通过检查后再将邻居信息保存到本地,并根据TTL(Time To Live,生存时间) TLV中TTL的值来设置邻居信息在本地设备上的老化时间,若该值为零,则立刻老化该邻居信息。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137074.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 什么是QT[通俗易懂]

    什么是QT[通俗易懂]QT是什么?它能做什么?Qt是一个1991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。简单来说,QT可以很轻松的帮你做带界面的软件,甚至不需要你投入很大精力。QT学习需要避免的坑QT分为4.0版本和5.0版本他们之间的差别很大,不通用!!!不通用!!!不通用!!!所以要么你学习4.0要么你学习5….

  • RabbitMQ集群(非常详细总结)

    RabbitMQ集群(非常详细总结)

  • 怎么获取Spring的ApplicationContext

    怎么获取Spring的ApplicationContext

    2021年12月10日
  • Oracle函数之LAG函数[通俗易懂]

    Oracle函数之LAG函数[通俗易懂]语法使用方法  LAG是一个分析函数。它可以在不使用自连接的情况下同时访问到一个表的多行数据。给一个或多个列名和一个游标位置(位移),LAG可以访问当前行之前的行,行之间间隔的行数为位移值。  语法树中的offset(位移)参数是可选的,可以指定一个大于0的整数,如果不指定offset(位移)参数函数会默认位移为1。语法树中的default值也是可选的,这个default值是当位移值超过查…

  • bat命令详解_bat结束进程命令

    bat命令详解_bat结束进程命令批处理文件中可引用的参数为%0~%9,%0是指批处理文件的本身,也可以说是一个外部命令;%1~%9是批处理参数,也称形参;而替换形参的实参若超过了批处理文件中所规定数值(9个)且想在批处理文件中应用这些实参的话,shift命令可以帮你实现! Shift命令:更改批处理文件中可替换参数的位置 C代码    shift[/n]   n的取值是[0,8],且为整数;[/n]为可选参数,当赋予n

  • 手把手学习的DSP

    手把手学习的DSPss

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号