1、UDLD(单向链路检测协议)工作原理
         为了在生成转发环路之前检测到单向链路,Cisco 设计并实施了 UDLD 协议。UDLD 是与第 1 层 (L1) 机制一起工作以确定链路物理状态的第 2 层 (L2) 协议。
         在第 1 层中,自动协商负责物理信令和故障检测。UDLD 执行自动协商不能执行的任务,例如,检测邻居身份和关闭错误连接的端口。当同时启用自动协商和 UDLD 时,第 1 层和第 2 层检测将一起工作,以防止出现物理和逻辑单向连接以及其他协议无法正常工作的情况。
    UDLD 的工作方式为与相邻设备交换协议数据包。为了使 UDLD 发挥作用,链路上的两个设备必须支持 UDLD,并且已在各自的端口上启用了 UDLD。
         为 UDLD 配置的每个交换机端口将发送 UDLD 协议数据包,这些数据包中包含该端口自己的设备/端口 ID,以及由该端口上的 UDLD 发现的接设备/端口 ID。邻接端口应在接收自另一端的数据包中查看它们自己的设备/端口 ID(回声)。

如何判断为单向链路:如果在特定的持续时间内,该端口在传入的 UDLD 数据包中未看到其自己的设备/端口 ID,则该链路会被视为单向链路。

此回声算法允许检测以下问题:
①链路两端均已接通,但是,只有一端可以接收数据包(单通)。
②当接收和传输光纤未连接到远程端上的同一端口时发生的配线错误。

UDLD触发时的现象和如何恢复:
一旦 UDLD 检测到单向链路,将禁用各自的端口,并将在控制台上输出以下信息:
UDLD-3-DISABLE Unidirectional link detected on port 1/2.Port disabled
由 UDLD 关闭的端口将保持禁用状态,直到手动重新启用该端口,或直到 errdisable 超时到期(如果已配置)。

2、UDLD 运行模式
UDLD 能够以两种模式运行:正常和主动。

在正常模式下,如果确定端口的链路状态为双向,并且 UDLD 信息超时,UDLD 不会执行任何操作。UDLD 的端口状态标记为未确定。该端口根据其 STP 状态运行。
在主动模式下,如果确定端口的链路状态为双向,并且在该端口上的链路仍处于接通状态时,UDLD 信息超时,则 UDLD 将尝试重建端口状态。如果不成功,则该端口被置于 errdisable 状态。

当运行 UDLD 的端口在保留时间段内不接收来自邻接端口的 UDLD 数据包时,会发生 UDLD 信息老化的情况。端口的保留时间由远程端口决定,并且取决于远程端的消息间隔。消息间隔越短,保留时间就越短,检测速度也越快。UDLD 的最近实施允许配置消息间隔。

UDLD 信息可能会由于端口上的错误率较高(由某个物理问题或双工不匹配导致)而老化。这样的数据包丢弃并不意味着链路是单向的,以正常模式运行的 UDLD 不会禁用这样的链路。
为了保证适当的检测时间,能够选择正确的消息间隔非常重要。消息间隔应该足够短,以便可以在生成转发环路之前检测到单向链路,但是,它不应使交换机 CPU 过载。默认的消息间隔为 15 秒,完全能够在用默认 STP 定时器生成转发环路之前检测到单向链路。

检测时间大约等于消息间隔的三倍。
例如:T检测 | message_interval x3
对于默认的消息间隔 15 秒,检测时间为 45 秒。
它采取T STP的reconvergence(再收敛) = max_age + 2x forward_delay能再聚合在单向链路故障的情况下。使用默认定时器,需要花费 20+2x15=50 秒。
它通过选择一个适当的消息间隔推荐保持T检测 < T再收敛。

在主动模式下,一旦信息老化,UDLD 将尝试通过每秒发送一次数据包(共持续 8 秒)的方式来重建链路状态。如果仍然没有确定链路状态,将禁用该链路。

主动模式添加了对以下情况的附加检测:
①端口停止响应(一端的端口既不传输也不接收,但是链路两端均处于接通状态)。
②链路在一端处于接通状态,并在另一端处于断开状态。这是光纤端口可能出现的问题。从本地端口上拔下传输光纤后,链路仍然在本地端处于接通状态。但是,它在远程端已断开。

最近,为使链路两端在这些情况下都处于断开状态,光纤快速以太网硬件实施提供了远端故障指示(FEFI) 功能。在千兆以太网上,链路协商提供了一个相似的功能。铜缆端口通常不会受这类问题的影响,因为它们使用以太网链路脉冲监控链路。必须指出的是,在这两种情况下,由于端口之间没有任何连接,所以不会存在任何转发环路。但是,如果链路的一端接通,而另一端断开,则可能发生数据流黑洞。主动 UDLD 设计为可防止出现此问题。

3、可用性

4、配置和监控

通过使用以下命令详细说明了运行 CatOS 的 Catalyst 交换机上的 UDLD 配置。首先需要使用以下命令全局启用 UDLD(默认为禁用状态):
Vega> (enable) set udld enable     //UDLD enabled globally

发出以下命令:以验证是否已启用 UDLD
Vega> (enable) show udld

UDLD :enable

Message Interval:15 seconds

还需要对必要的端口使用以下命令启用 UDLD:
Vega> (enable) set udld enable 1/2    //UDLD enabled on port 1/2
要验证是否已对端口启用 UDLD 以及链路状态是什么状态,请发出 show udld port 命令:

Vega> (enable) show udld port

UDLD : enabled

Message Interval : 15 seconds

Port Admin Status Aggressive Mode Link State

-------- ------------ --------------- ----------------

1/1 enabled disabled undetermined

1/2 enabled disabled bidirectional
使用 set udld aggressive-mode enable <module/port> 命令,对每个端口启用主动 UDLD:
Vega> (enable) set udld aggressive-mode enable 1/2

Aggressive UDLD enabled on port 1/2.

Vega> (enable) show udld port 1/2

UDLD : enabled

Message Interval : 15 seconds

Port Admin Status Aggressive Mode Link State

-------- ------------ --------------- ----------------

1/2 enabled enabled undetermined
发出以下命令以更改消息间隔:
Vega> (enable) set udld interval 10   //UDLD message interval set to 10 seconds
间隔范围可为 7 秒到 90 秒,默认值是 15 秒。

原文链接:https://www.cisco.com/c/zh_cn/support/docs/lan-switching/spanning-tree-protocol/10591-77.html

转载于:https://www.cnblogs.com/MomentsLee/p/10162855.html

UDLD(Unidirectional Link Detection)相关推荐

  1. 计算机网络笔记Part3 数据链路层(Data Link Layer)

    本人计算机网络笔记总目录 计算机网络笔记Part1 概述 计算机网络笔记Part2 物理层(Physical Layer) 计算机网络笔记Part3 数据链路层(Data Link Layer) 计算 ...

  2. 迅雷、QQ旋风-链接自动转换(Download link conversion)

    插件介绍: 在使用互联网的过程中,想必各位小伙伴都遇到过这样的情况,在花了不少时间找到自己需要的资源后,发现下载链接仅支持迅雷,而恰好电脑里又没有迅雷,又得花时间去找下载迅雷,其实这个问题很简单,只需 ...

  3. Unidirectional Link Detection Protocol

    UDLD : 单向链路监测协议 用途是能够检测链路是否存在链路上的单向,避免出现环路.我们知道,full duplex的端口都能同时发送和接受包(1236四条线,当其中任意一条线损换的话,就会引起单向 ...

  4. 【通讯原理】Ch.11 DLC(Data Link Control)数据链路控制

    DLC在5G时代背景下,有线网充分发展,有线网第二阶层的DLC渐渐消失了:而对于移动通信,DLC仍然是必要的.而DLC实际上就是流量控制和差错控制,流量控制是指可以根据状况调整传输速率,差错控制则是上 ...

  5. 读自动驾驶激光雷达物体检测技术(Lidar Obstacle Detection)(1):Stream PCD流式载入激光点云数据

    首先贴一下大佬的github链接:https://github.com/williamhyin/SFND_Lidar_Obstacle_Detection 知乎专栏:https://www.zhihu ...

  6. 读自动驾驶激光雷达物体检测技术(Lidar Obstacle Detection)(2):点云滤波FilterCloud()函数

    FilterCloud()所包括的功能: 1.首先使用体素滤波(相当于做稀释减少点的数量)(体素网格过滤将创建一个立方体网格, 过滤点云的方法是每个体素立方体内只留下一个点, 因此立方体每一边的长度越 ...

  7. 以YOLOv5为基准实现布匹缺陷检测(Fabric Defect Detection)

    一.YOLOv5 安装 使用以下命令安装最新版的YOLOv5 # 下载代码 git clone https://github.com/ultralytics/yolov5 # clone cd yol ...

  8. Harris 角点检测(Harris Corner Detection)(OpenCV实现)

    匹配问题 Harris角点检测是Chris Harris和Mike Stephens在1988年提出的.主要用于运动图像的追踪.当时的普遍想法是利用边缘进行追踪,但是当相机或物体运动时你不知道朝哪个方 ...

  9. 400G PAM4, ANEG LT 自适应及链路学习(Autonegotiation Link Training),浅析自适应及链路学习功能在400/200/100G PAM4模式

    PAM4 上个PAM4眼图跟NRZ的眼图对比,细节就不啰嗦了 Autonegotiation 自动协商 自动协商最初是为高达1G的双绞线以太网设计的.与此相关的设备 链路的各个点可以协商常见的传输参数 ...

最新文章

  1. 小程序的ui应该怎么设计?
  2. Spring Cloud 注册中心在tomcat中部署
  3. 人生感悟:一个男人必须具有的东西
  4. Boost:基于Boost的阻塞udp回显服务器
  5. 2015结束,2016开始
  6. 【转】GigE Vision简介
  7. java的继承和访问_Java基础篇:如何解决成员的访问和继承?
  8. pytorch ResNet结构代码实现
  9. select2多选框无法手动排序问题[转载]
  10. 互联网秒杀业务架构设计
  11. netty冲突 play sbt_播放Cassandra Netty Server空指针异常-问答-阿里云开发者社区-阿里云...
  12. java 时间格式化 注解_Java关于时间格式化的方法
  13. Office之下拉字体选项名称为英文
  14. 吉司机线段树(segment tree beats!)
  15. 我是如何拿到蚂蚁金服实习 offer 的
  16. 今晚开启公募的雪崩协议,带协议层先进入3.0
  17. Column 'id' in where clause is ambiguous
  18. FLASH2.0学习教程
  19. 华为OD岗位:C/C++,java, python , 软件测试,后端开发,JS,数据开发都有
  20. 循环 条件 命名 运算符

热门文章

  1. UML学习——类图(三)
  2. 关于 php mysql pdo cannot find driver 解决方案
  3. Flume数据传输事务分析[转]
  4. jQuery实现分页
  5. [转载]EXT核心API详解(一)-Ext
  6. Mock.js 和Node.js详细讲解
  7. 计网 --- 域名服务系统:因特网的目录服务
  8. CSS中的未定义行为,浏览器的差异(一)
  9. H5页面适配所有iPhone和安卓机型的六个技巧
  10. python 时间日期处理