参考:

LLDP协议、STP协议 笔记

LLDP

提出背景:

随着网络技术的发展,接入网络的设备的种类越来越多,配置越来越复杂,来自不同设备厂商的设备也往往会增加自己特有的功能,这就导致在一个网络中往往会有很多具有不同特性的、来自不同厂商的设备,为了方便对这样的网络进行管理,就需要使得不同厂商的设备能够在网络中相互发现并交互各自的系统及配置信息

LLDP:

是一种二层的信息发现与通告协议,提供了一种标准的链路层发现方式;它不是一个配置、控制协议,无法通过该协议对远端设备进行配置。LLDP是一个单向的协议,只有主动通告一种工作方式,无需确认。

作用:

1.使得接入网络的一台设备可以将其主要的能力,管理地址,设备标识,接口标识等信息发送给接入同一个局域网络的其它设备;

2.为上层提供了关于网络拓扑以及管理配置的信息,这些信息可以被用于管理和配置。

实现方法:

1.LLDP的实体主要维护了两个MIB库,一个 local system MIB 用于维护本地相关的设备MIB信息,一个remote system MIB 用于维护远端设备MIB信息;

2.初始化,LLDP与右侧几个MIB库进行交互,获取需要的信息;

3.将本地的相关信息通告出去,并获得网络中其它设备的相关信息,得到其他设备的相关信息之后更新 remote system MIB 库;

4.用户或者上层有需要,可以通过MIB库获取网络拓扑和设备配置信息。

帧格式:

  • Ethernet II 封装格式

  • SNAP 封装格式

目的地址:

  • 01-80-C2-00-00-0E (Nearest Bridge组地址) 任何类型的网桥都不能转发目的为该地址的帧,限制在连接两个网桥接口的连接上传输。

  • 01-80-C2-00-00-03 (Nearest non-TPMR Bridge组地址) Two-Port MAC Relay(TPMR) 组件不接收;S-VLAN组件,C-VLAN组件,802.1D网桥不能转发它,需要接收并处理它。即跨越TPMR。

  • 01-80-C2-00-00-00 (Nearest non-Customer Bridge) Two-Port MAC Relay(TPMR), S-VLAN组件不接收;C-VLAN组件,802.1D网桥不能转发它,需要接收并处理它。

LLDPDU:

LLDPPDU是LLDP的有效负载,用于承载要发送的消息。

采用TLV(type,length,value)格式,每个TLV都代表一个信息

工作机制:

  • 初始化并维护本地MIB库中的信息。

  • 从本地MIB库中提取信息,并将信息封装到LLDP帧中。LLDP帧的发送有两种触发方式,一是定时器到期触发,一是设备状态发生了变化触发。

  • 识别并处理接收到的LLDPDU帧

  • 维护远端设备LLDP MIB信息库。

  • 当本地或远端设备MIB信息库中有信息发生变化时,发出通告事件。

STP协议

STP(Spanning Tree Protocol) 生成树协议,基于OSI网络模型的二层通信协议。

目的:

  • 1.防止环路;

  • 2.防止MAC地址震荡;

  • 3.防止重复帧的出现;

  • 4.防止广播风暴的出现。

工作过程:

1.根网桥的选举:根据设备的bridge priority和MAC地址生成桥ID,桥ID最小的成为ROOT。使用BPDU进行设备间通信。

2.计算每个节点到根桥的距离与开销,得到最短路径。

3.在非根网桥上选举根端口,根据端口开销和PID选举得到。

4.在每个网段计算指定端口,通常是根网桥的端口成为指定端口。

5.根端口和指定端口进入转发态,其他端口只侦听BPDU包。

6.当侦听端口20s没有收到BPDU包的时候,重新选举。

2017.4.23

最新文章

  1. [译]基于GPU的体渲染高级技术之raycasting算法
  2. POJ1065Wooden Sticks[DP LIS]
  3. 在Visio2010中修改默认字体的大小
  4. 关于eclipse入门开发c/c++文章推荐
  5. js 字符串中取得第一个字符和最后一个字符
  6. Java基础-布局
  7. KFC数据测试hbase结果
  8. Contest2037 - CSU Monthly 2013 Oct (problem D :CX and girls)
  9. delphi中formatFloat代码初探(在qt下实现floatformat的函数)
  10. Goldbach's Conjecture(哥德巴赫猜想)
  11. M​i​c​r​o​s​o​f​t​ ​w​e​b​ ​a​p​p​l​i​c​a​t​i​o​n​ ​s​t​r​e​s​s​ ​t​o​o​l​ 测试
  12. Jbpm工作流表补数记录
  13. 《转载-两篇很好的文章整合》Android中自定义控件
  14. 前端---js02
  15. java数组的声明、创建和遍历
  16. 学习 Spring (八) 注解之 Bean 的定义及作用域
  17. SQL得到任意一个存储过程的参数列表sp_procedure_params_rowset
  18. python 阿狸的进阶之路(6)
  19. 【IT笔试面试题整理】有序数组生成最小高度二叉树
  20. HDU1114(KB12-F DP)

热门文章

  1. Java-idea-生成for循环
  2. Spark中的Spark Shuffle详解
  3. 小希的迷宫(hdu1272 并查集)
  4. Linux实验楼学习之二
  5. 修改class文件
  6. http接口自动化测试框架实现
  7. Lucene简介和创建索引初步
  8. SVA描述(一)
  9. iostat使用
  10. html文件上传控件file自定义样式