欢迎user
以太网技术自诞生起,以其简单易用、价格低廉等特点逐步成为局域网的主导技术。近年来,随着千兆、万兆以太网技术的相继应用,以太网已经向城域网和广域网方向扩展。
由于以太网最初主要应用于局域网,而局域网对可靠性和稳定性的要求都较低,因此以太网一直缺乏有效的管理维护机制,这已成为以太网应用于城域网和广域网的严重障碍。因此,在以太网上实现OAM(Operation, Administration and Maintenance,操作、管理和维护)成为必然的发展趋势。以太网OAM是一种监控网络故障的工具,目前主要用于解决以太网接入“最后一公里”中常见的链路问题。用户通过在两个点到点连接的设备上启用以太网OAM功能,可以监控这两台设备之间的链路状态。
以太网OAM能够有效提高以太网的管理和维护能力,保障网络的稳定运行,其主要功能包括:
l 链路性能监测:对链路的各种性能进行监测,包括对丢包、时延和抖动等的衡量,以及对各类流量的统计;
l 故障侦测和告警:通过发送检测报文来探测链路的连通性,当链路出现故障时及时通知网络管理员;
l 环路测试:通过非以太网OAM协议报文的环回来检测链路故障。
以太网OAM工作在数据链路层,其协议报文被称为OAMPDU(OAM Protocol Data Units,OAM协议数据单元)。以太网OAM就是通过设备之间定时交互OAMPDU来报告链路状态,使网络管理员能够对网络进行有效的管理。
如图 1所示,是几种常见OAMPDU的报文格式,各重要字段的含义如表 1所示。
表 1 OAMPDU重要字段含义
字段 | 含义 |
Dest addr | 以太网OAM报文目的MAC地址,为慢协议组播地址:0x0180-C200-0002。由于慢协议报文不能被网桥转发,因此以太网OAM报文也不能被转发 |
Source addr | 以太网OAM报文源MAC地址,为发送端的桥MAC地址,是一个单播MAC地址 |
Type | 以太网OAM报文的协议类型,为0x8809 |
Subtype | 以太网OAM报文的协议子类型,为0x03 |
Flags | Flag域,包含了以太网OAM实体的状态信息 |
Code | OAMPDU报文的类型 |
我们称使能了以太网OAM功能的端口为“以太网OAM实体”,简称“OAM实体”。
图 1中几类OAMPDU报文的作用如表 2所示。
表 2 各类OAMPDU报文的作用
报文类型 | 中文含义 | 作用 |
Information OAMPDU | 信息OAMPDU | 用于将OAM实体的状态信息(包括本地信息、远端信息和自定义信息)发给远端OAM实体,以保持以太网OAM连接 |
Event Notification OAMPDU | 事件通知OAMPDU | 一般用于链路监控,对连接本端和远端OAM实体的链路上所发生的故障进行告警 |
Loopback Control OAMPDU | 环回控制OAMPDU | 主要用于远端环回控制,用来控制远端设备的OAM环回状态,该报文中带有使能或去使能环回功能的信息,根据该信息开启或关闭远端环回功能 |
以太网OAM功能建立在以太网OAM连接的基础上,下面对以太网OAM的工作流程进行简要介绍。
以太网OAM连接的建立过程也称为Discovery阶段,即本端OAM实体发现远端OAM实体、并与之建立稳定对话的过程。
在这个过程中,相连的OAM实体通过交互Information OAMPDU通报各自的以太网OAM配置信息和本端支持的以太网OAM能力信息。当OAM实体收到对端的配置参数后,决定是否建立OAM连接。当两端OAM实体对Loopback功能、单向链路检测及链路事件等配置信息的检查都通过之后,以太网OAM协议开始正常工作。
以太网OAM的连接模式有两种:主动模式和被动模式,在这两种模式下设备的处理能力如表 3所示。
处理能力 | 主动模式 | 被动模式 |
初始化以太网OAM Discovery过程 | 可以 | 不可以 |
对以太网OAM Discovery初始化过程的响应 | 可以 | 可以 |
发送Information OAMPDU | 可以 | 可以 |
发送Event Notification OAMPDU | 可以 | 可以 |
发送不携带TLV的Information OAMPDU | 可以 | 可以 |
发送Loopback Control OAMPDU | 可以 | 不可以 |
对Loopback Control OAMPDU的响应 | 可以,但需要对端为主动模式 | 可以 |
l 以太网OAM连接只能由主动模式的OAM实体发起,而被动模式的OAM实体只能等待对端OAM实体的连接请求。
l 都处于被动模式下的两个OAM实体之间无法建立以太网OAM连接。
以太网OAM连接建立后,两端的OAM实体会以一定的时间间隔为周期发送Information OAMPDU来检测连接是否正常,该间隔被称为握手报文发送间隔。如果一端OAM实体在连接超时时间内未收到对端OAM实体发来的Information OAMPDU,则认为OAM连接中断。
以太网的故障检测非常困难,特别是在网络物理通信没有中断而网络性能缓慢下降的情况下。链路监控用于在各种环境下检测和发现链路层故障,以太网OAM通过交互Event Notification OAMPDU来监控链路:当一端OAM实体监控到一般链路事件(其所含类型如表 4所示)时,将向其对端发送Event Notification OAMPDU以进行通报,管理员可以通过观察日志信息动态地掌握网络的状况。
事件类型 | 描述 |
错误信号事件(Errored Symbol Event) | 单位时间内的错误信号数量超过定义的阈值 |
错误帧事件(Errored Frame Event) | 单位时间内的错误帧数量超过定义的阈值 |
错误帧周期事件(Errored Frame Period Event) | 指定帧数N为周期,在收到N个帧的周期内错误帧数超过定义的阈值 |
错误帧秒数事件(Errored Frame Seconds Event) | 指定M秒数下有错误帧的秒数超过了定义的阈值 |
l 错误帧周期事件的检测周期将被系统转换为某端口在该周期内能发送64字节帧的最大帧数,即以最大帧数作为周期,其计算公式为:最大帧数=接口带宽(bps)×错误帧周期事件的检测周期(ms)÷(64×8×1000)。
l 错误帧秒:如果在某一秒内发生了错误帧,则将该秒称为错误帧秒。
在以太网OAM连接已建立的情况下,两端的OAM实体会不断交互Information OAMPDU。当设备故障或不可用导致流量中断时,故障端OAM实体会通过Information OAMPDU中的Flag域将故障信息(即紧急链路事件类型)通知给对端OAM实体。这样,管理员可以通过观察日志信息动态地了解链路状态,对相应的错误及时进行处理。紧急链路事件的类型及其对应的Information OAMPDU发送频率如表 5所示。
事件类型 | 描述 | OAMPDU发送频率 |
链路故障(Link Fault) | 对端链路信号丢失 | 每秒发送一次 |
致命故障(Dying Gasp) | 不可预知的状态发生,比如电源中断 | 不间断发送 |
紧急事件(Critical Event) | 不能确定的紧急事件发生 | 不间断发送 |
远端环回是指主动模式下的OAM实体向对端(远端)发送除OAMPDU以外的所有其它报文时,对端收到报文后不按其目的地址进行转发,而是将其按原路返回给本端。远端环回只有在以太网OAM连接建立之后才能实现。
远端环回功能可用于检测链路质量和定位链路故障。定期进行环回检测可以及时发现网络故障,并可通过分段环回检测来定位故障发生的具体区域。