AFDX网络管理技术研究

(整期优先)网络出版时间:2022-11-17
/ 4

 AFDX网络管理技术研究

刘晓锋,宋娅,周磊

中航西安飞机工业集团股份有限公司 西安 710089

摘要:AFDX网络已广泛应用于轰运类飞机航电系统信息交互,对其实行有效的监控管理是保证航电应用有效运行的基础。本文从管理信息库、SNMP协议、构型管理、故障管理和配置管理等5个方面对AFDX网络管理技术进行了分析研究并给出具体实例。

关键字:AFDX;MIB;SNMP

Abstract:AFDX network already is more extensively applied to avionics system of bomber-transport airplane for information to hand over with each other, as to it's practice an effective supervision management that is a foundation for avionics application. This text is analysis and research to the AFDX networks from the management information database and SNMP agreement, reached management, break down the management and allocation manage etc. in addition give an application.

Key words: AFDX; MIB; SNMP

0 引言

在某型机能力提升项目中,通过对原装机的航电网络系统进行分析,得出其拓扑结构复杂、扩展能力有限,已无法适应后期的加改装,因此采用了AFDX网络进行数据传输。

AFDX网络即航空电子全双工交换式以太网,是在以太网基础上发展起来的,继承了以太网的高性能、灵活性,并根据航空领域要求,增加了网络确定性、完整性,提供延迟保证、带宽保证和可靠的应用服务,明确了从物理层到应用层的完整协议要求。作为一种定制的确定性以太网络可保证航空电子系统以实时的方式从源端到接收端数据传输的完整性,采用星型拓扑结构易于系统扩展,采用虚链路保证数据帧次序的完整性。

AFDX网络作为作为航电数据交互核心,其交换机和端节点的工作状态管理尤为重要。AFDX网络管理是指对AFDX网络中的终端进行管理,网络管理包括管理进程和代理进程两部分,管理进程和代理进程之间的通信有两种方式,一种是管理进程向代理进程发出请求,询问一个具体的参数值,另一种方式是代理进程主动向管理进程报告有某些重要的事件发生,管理进程除了可以向代理进程询问某些参数值以外,它还可以改变代理进程的参数值。

1 网络管理技术

AFDX网络管理涉及到的内容包括管理信息库、SNMP协议、构型管理、故障管理和配置管理等。

1.1 管理信息库

管理信息库(MIB)是所有代理进程包含的、并且能够被管理进程进行查询和设置的信息的集合。在AFDX网络中,所有端系统和交换机中都具有MIB库,MIB的信息定义示例如表1和表2。

表1  交换机MIB库信息参数表(示例)

参数编号:

1.3.6.1.4.1.75

名称

参数含义

类型

字节

交换机编号:.1

.1

SWID

硬件配置编码

字符串

12

.2

SWVer

软件配置编码

字符串

13

.3

SWMode

交换机操作模式

整型

4

.4

SWLinkStatus

端口链路连接状态

整型

4

.5

SWReset

0”为默认,“1”表示复位

整型

4

.6

SWPort

交换机端口(24,023

.6.1

SWPort1

端口0统计

.6.1.1

CRCErrCnt

CRC错误计数

整型

4

.6.1.2

LenExceed64

帧长度小于64Bytes的计数

整型

4

.6.1.3

LenExceed1518

帧长度大于1518Bytes的计数

整型

4

表2  普通终端MIB库信息参数表(示例)

参数编号:

1.3.6.1.4.1.75

名称

参数含义

类型

字节

终端系统编号:.3

.1

ESID

终端设备标识号(硬件板卡号)

整型

4

.2

ESVer

终端设备软件版本号

整型

4

.3

ESPosition

终端位置(域//本地)

整型

4

.4

ESTx

ES发送统计

.4.1

ESTxCnt

发送总计数

整型

4

.4.2

ESTxIPCnt

发送IP计数

整型

4

.4.3

ESTxICMPCnt

发送ICMP计数

整型

4

.4.4

ESTxUDPCnt

发送UDP计数

整型

4

1.2 SNMP协议

管理进程和代理进程之间的信息交互由SNMP协议定义,AFDX网络采用SNMP V2协议,SNMP V2定义了7种报文操作,如图1所示。

a) get-request操作:从代理进程处提取一个或多个参数值;

b) get-next-request操作:从代理进程处提取一个或多个参数的下一个参数值;

c) set-request操作:设置代理进程的一个或多个参数值;

d) get-response操作:返回一个或多个参数值,这个操作是由代理进程发出的;

e) trap操作:代理进程主动发出的报文,通知管理进程有某些事情发生;

f) get-bulk-request操作:从代理进程读取大块数据;

g) inform-request操作:一个管理进程向另一个管理进程发送信息。

图1  管理进程与代理进程之间的通信机制

图2  普通PDU包格式

图3  Trap PDU包格式

表3  SNMPv2报文中的PDU类型

PDU类型

用户

GetRequest

0

管理站请求获得代理中当前对象值

GetNextRequest

1

管理站请求获得代理中当前对象的下一个对象值

Response

2

代理对除告警之外的其它请求的响应

SetRequest

3

管理站请求修改代理中当前对象指

GetBulkRequest

5

管理站请求获得代理中批量对象值

InformRequest

6

管理站请求其它管理站响应的信息

SNMPv2-Trap

7

代理主动发送给管理站的告警信息

SNMP报文格式如图2、3所示,具体解释如下:

a) IP 首部长度为20 字节,UDP 首部长度8字节;

b) 版本字段是1,该字段的值是SNMP版本号减去1,1代表SNMP V2;

c) PDU是协议数据单元,对应的值见表3;

d) 共同体字段是一个字符串,是管理进程和代理进程之间的口令,明文格式,默认值是public;

e) 请求标识:对于get、get-next和set操作,请求标识由管理进程设置,然后由代理进程在get-response中返回。这个字段的作用是使客户进程(管理进程)能够将服务进程(代理进程)发出的响应和客户进程发出的查询进行匹配。这个字段允许管理进程对一个或多个代理进程发出多个请求,并且从返回的众多应答中进行分类;

f) 错误状态字段是一个整数,由代理进程标注,指明有错误发生,表4是参数值、名称和表述之间的对应关系;

g) 错误索引字段是一个整数偏移量,指明当有错误发生时,错误发生在哪个参数,由代理进程标注,并且只有发生noSuchName、readOnly 和badValue 差错时才进行标注;

h) 在get、get-next 和set的请求数据报中,包含变量名称和变量值的一张表。对于get和get-next操作,变量值部分被忽略,不需要填写;

i)企业字段填入trap报文的网络设备的对象标识符;

j)trap类型字段见表5;

k)特定代码指明代理自定义的事件(若trap类型为6),否则为0;

l)时间戳指明自代理进程初始化到trap报告的事件发生所经历的时间,单位为ms。

表4  SNMP错误状态值

错误类型

用途

noError

0

没有错误

tooBig

1

代理无法将回答封装到SNMP报文中

noSuchName

2

操作一个不存在的变量

badValue

3

Set操作的值或语义有错误

readOnly

4

管理进程试图修改一个只读参数

genErr

5

其它错误

noAccess

6

对象不可访问

wrongType

7

错误的类型

wrongLength

8

错误的长度

wrongEncoding

9

错误的编码

wrongValue

10

错误的值

表5  trap类型说明

trap

名字

说明

0

clodStart

代理进行了初始化

1

warmStart

代理进行了重新初始化

2

linkDown

一个接口从工作状态变为故障状态

3

linkUp

一个接口从故障状态变为工作状态

4

authenticationFailure

SNMP管理进程接收到具有一个无效共同体的报文

5

egpNeighborLoss

一个外部网关协议相邻路由器变为故障状态

6

enterpriseSpecific

代理自定义的事件,需要用后面的“特定代码”来指明

SNMP请求响应的时间应小于0.1s,该时间从SAP到SAP端口测量,不包括进入端系统堆栈时间。

1.3 构型管理

对AFDX网络设备进行管理,包括端系统和交换机的上下网查询、在线信息上报、网络管理权切换。

1.3.1 AFDX端系统上下网查询

上下网查询是指对网络终端的工作状态进行管理,如果终端设备能完成正常的通信功能,则该设备称为在线状态,反之,该设备定义为离线状态。

端系统的MIB库具有一个表示该设备在线状态的参数,参数编号为1.3.6.1.4.1.75.3.8,名称为EquipmentOnline,整型变量,长度4个字节。EquipmentOnline的Bit31表示设备的在线状态,Bit0~Bit30表示分区的在线状态,应用软件每隔250ms周期性地设置MIB库中的EquipmentOnline参数,如果应用软件功能正常,相应位设置为1,否则,设置为0。如果端系统宿主机采用分区技术,相应分区应用软件周期设置相应分区所对应的位,如果宿主机不采用分区技术,应用软件设置Bit31。

网络管理软件每隔500ms查询网络中的所有终端,采用get-request命令提取各端系统代理进程中的EquipmentOnline参数,网络管理软件根据get-request命令的执行情况和返回的EquipmentOnline参数的值判断该设备的在线状态。如果get-request命令连续三个周期未得到端系统代理进程响应,则说明该端系统出现故障,网络管理软件应将该端系统设置为离线状态;如果get-request命令响应成功,网络管理软件还要判断返回的EquipmentOnline参数,如果连续三次获取到的该参数均为0,则说明端系统宿主机应用软件故障,该端系统应设置为离线状态;否则说明端系统宿主机至少有一个应用软件/分区正常,该端系统应设置为在线状态。端系统代理进程对网络管理软件的get-request命令采用get-response操作进行响应,端系统代理进程执行完get-response操作后,同时将MIB库中的EquipmentOnline参数清零。

1.3.2  AFDX交换机上下网查询

交换机MIB库具有一个表示交换机操作模式的参数,编号为1.3.6.1.4.1.75.1.3,名称为SWMode。网络管理软件每隔100ms采用get-request命令提取交换机代理进程中的SWMode参数,网络管理软件根据get-request命令的执行情况和返回的SWMode参数的值判断交换机的在线状态。如果get-request命令连续三个周期未得到交换机代理进程响应,则说明交换机出现故障,网络管理软件应将该交换机设置为离线状态;如果get-request命令响应成功,网络管理软件还要判断返回的SWMode参数,如果该参数表示的模式为OPS或DL,则说明该交换机为在线状态,否则,为离线状态。交换机代理进程对网络管理软件的get-request命令采用get-response操作进行响应。

1.3.3  在线信息上报

网络管理软件搜集到各设备的在线状态信息后,在其状态发生改变(离线变化到在线或在线变化到离线)时,在显控管理处理机上显示各设备的状态信息。

1.3.4  网络管理权切换

AFDX网络设置两台网络管理机,网络管理软件分别驻留在两台显控管理处理机中,缺省方式下,显控管理处理机1作为主管理机,显控管理处理机2作为备份管理机,主管理机具有对整个网络进行管理的权利。

主管理机对AFDX网络进行管理时,每隔500ms周期性地通过inform-request向备份管理机发送信息,将当前的网络状态提供给备份管理机,以便主管理机故障时,备份管理机“平滑”地接管网络管理权利。

当主管理机故障时,停止向备份管理机发送inform命令,备份管理机连续三个周期接收不到inform命令,将主动接管网络管理权,执行网络管理功能。inform命令发送的内容为网络构型信息和统计的故障信息。

1.4 故障管理

1.4.1 通信故障的判断

交换机的通信错误在MIB库中的参数编号为1.3.6.1.4.1.75.1.7。交换机每隔1秒的周期查询该段时间内的错误参数值,如果错误参数值与该段时间内的接收计数的比值超过0.5,则说明该通信错误已演变为一种故障,否则,该错误为一种瞬间错误,交换机只作记录,不进行任何处理。

1.4.2 故障管理

交换机的故障包括通信错误演变成的故障和自检测发现的故障。当交换机的故障状态发生改变时(正常变为故障或故障变为正常),交换机的代理进程应通过Trap操作将状态上报给网络管理进程,Trap上报的基本信息单元为两个32位的信号,一个基本信息单元表示一个故障信息(包括故障编码和故障发生时间),如图4所示,第一个信号的高16位表示故障/正常,为0表示正常,为0xFFFF表示故障,低16位表示故障编码,第二个信号为故障发生的时间,分辨率为1ms,对上电BIT而言,时间信息可以采用Trap的时间。一个Trap操作可以上报多个故障信息。

图4  Trap操作传输内容

1.5  配置管理

交换机的配置信息由网管获取,各端系统的配置信息由所宿主的设备上报给网管。交换机的配置信息包括硬件部件号、软件版本信息和配置表版本信息。网管应通过get-request 操作查询交换机的硬件部件号、软件版本信息和配置表版本信息,交换机通过get-response 操作响应网管的查询操作。

2 实现与验证

为便于显示控制管理进程运行在机载显示控制终端,代理进程运行在机载交换机和其他各端节点。同时,通过图形化显示界面,显示整个网络状态,并在系统维护工作模式下通过后台访问方式查询和设置交换机和端节点的MIB库。

管理端接收代理端消息配置如下:

FragmentationAllowed="0" SamplingFrequency="0" ServiceType="2" BufferNum="20" SrcIp="10.1.40.1" DstIP="10.1.44.1" SrcUDP="162" SnmpID="1" LoaderID="0"/>

管理端向代理端发送消息配置如下:

3 结论

本文通过对管理信息库、SNMP协议、构型管理、故障管理和配置管理等AFDX网络管理技术进行分析研究,设计了适用于型号应用的MIB库、信息流以及管理界面,并在项目中成功应用,该研究成果可为后续型号改进改型中推广适用AFDX提供技术支持。

参考文献:

[1]RFC1212: Concise MIB Definitions[S], March 1991

[2]RFC1157: A Simple Network Management Protocol (SNMP)[S],May 1990

[3]ARINC SPECIFICATION 664P7 Aircraft Data Network Part 7 Avionics Full Duplex Switched Ethernet(AFDX) Network[S],

[4]RFC3416:Version 2 of the Protocol Operations for the Simple Network Management Protocol(SNMP)[S],December 2002.

[5]RFC3418:Management Information Base(MIB) for the Simple Network Management Protocol(SNMP)[S],December 2002.