摘要:该文介绍了ATM网路由机制及其存在的缺陷,阐述了开发ATM网路由监测系统的原因,并着重介绍了ATM网路由监测系统的设计及实现方法。
关键词:ATM网;业务路由;使用率
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)28-6732-06
1 概述
ATM网是民航空管业务的主要承载网络,为保障空管运行起到了重要作用。但随着网络承载业务的不断增加,ATM网出现了传输服务质量不稳定,传输性能指标满足不了用户业务需求的情况。而这些问题,在很大程度上是由于ATM网实行的路由机制所引起。
在ATM网络中,ATM网采用PNNI作为路由协议,每台ATM交换机单独根据获得的最新网络链路状态信息PTSE,使用Dijkstra SPF算法动态计算最优路径。根据业务不同的度量标准及服务质量要求每台ATM交换机内保存有不同的路由表。当ATM交换机接收到业务连接请求时,它可根据请求所呼叫的目的地址采用最长匹配方法匹配路由表相应条目,根据匹配路径数量的不同,PNNI会采取不同的选路方法。
1) 静态预计算路由(最优路由)
当路由表中存在一条以上能够满足业务所有服务质量需求的路径时,PNNI即采用预计算路由方式,为业务选择最优(最短)传输路径。
2) 动态按需路由(On-Demand Routing)
当交换机无法从最优路径路由表中找到一条满足业务所有服务质量需求的路径时,PNNI可采用first-fit或best-fit策略,根据网络链路状态进行动态按需路由查找。
first-fit是PNNI将查找到的第一条满足业务服务质量需求的路径作为业务传输路径,该路径通常为非最优路径;best-fit是PNNI选出满足业务服务质量需求的最优(最短)路径作为业务传输路径,该方式将花费更多路径选择时间。
为缩短由中继电路中断造成的业务传输中断时间(即业务传输路径切换时间),目前ATM网PNNI路由采用first fit按需路由方式,即在业务传输最优路径发生中断的瞬间,路由计算还未收敛,新的最优路由表尚未建立,PNNI于是启动按需路由计算,并将查找到的第一条满足业务服务质量需求的路径作为业务传输路径。伴随该种路由方式ATM网存在网络固有缺陷:此方式从本质上而言是以牺牲空间复杂性为代价换取较低的时间复杂性。随之而来的必然结果是会在网络中生成大量非最优路由,耗费网络资源。更为严重的是,面对这样的缺陷,路由选择算法本身没有提供在最优路由表收敛后,将非最优路由切换回最优路由的机制。于是直接导致生成的非最优路由长期存在于网络中,占用资源得不到释放,随着时间推移这一问题越发严重,直至出现网络中继链路资源枯竭。
因此解决ATM网业务非最优路由问题成为ATM网迫切需要解决的技术课题。
经过严密的论证、分析与试验,有效的业务非最优路由解决方法是:运用设备系统提供的CLI人机对话指令,通过获取节点所有业务的当前路由信息,并将其与当时的最优路由进行比较,从而找出非最优路由业务,进行优化。然而此方法尽管能够有效地解决业务非最优路由的问题,但作为需要进行周期性维护的该项工作在实际实施上却面临着工作量大,无法通过人工方式实现的问题。因为ATM网络中单独一个节点就承载几条至几十条业务,网络中有数百个节点。显然要通过人工方式遍历全部节点业务路由,耗时费力,可行性几乎为零。
为解决上述问题,笔者偕同部门同事共同开发了ATM网路由监控软件,利用计算机模拟人工智能技术,通过软件程序将复杂且枯燥的人工操作指令整合起来,实现操作全过程的自动化,从而大大降低人力资源成本同时也可缩短整个查询对比所需的时间。
2 系统结构简介
ATM网路由监测软件分为基础数据子系统、信息展示子系统以及维护管理子系统,每个子系统由不同的功能模块组成,详细信息如下:
2.1 基础数据子系统
1) 通信交互模块:完成路由监测软件与ATM設备之间的通信交互。
2) 链路数据处理模块:将从ATM设备提取出的节点信息、链路信息经过处理后存储到数据库中。
3) 路由数据处理模块:将从ATM设备提取出的路由信息经过整合、处理后存储到数据库中。
2.2 信息展示子系统
1) 中继信息模块:将系统从ATM设备获取的原始数据进行分析、处理,整合成中继带宽、中继使用率、中继承载的业务等信息提供给用户。
2) 系统拓扑模块:将业务路由、网络结构等数据以图形化形式显示。
3) 数据更新模块:提供与ATM设备的交互端口,通过事件触发,从ATM网络中获取所需数据。
4) 路由信息模块:将系统从ATM设备获取的原始数据进行分析、处理,记录某特定时刻ATM网内业务的走向、最优路由等信息。
2.3 维护管理子系统
提供对系统内部资料、数据的添加、编写、删除等功能以及日志记录等功能。
3 系统设计及实现
3.1 系统各模块数据流程
3.1.1 ATM网路由监测软件系统的顶层数据流程
ATM网路由监测软件系统的顶层数据流程如图1所示:
数据流程图说明:
从上图中可以看出,整个ATM网路由监测软件系统可以分为基础数据处理系统、信息展示系统等子系统。其中基础数据处理系统为底层通信是该系统的核心部分。
3.1.2 ATM网路由监测软件系统的一层数据流图
1) 基础数据处理系统DFD一层子图(图2) :
基础数据处理系统包含了通信交互、路由数据处理、链路数据处理三个模块,通信交互模块用于接收操作员的指令向MGX设备发送对应的CLI指令,获取设备反馈信息,通过路由数据处理模块和链路数据模块对设备反馈基础数据进行加工和整合,得到规范标准的数据信息存入数据库。
2) 信息展示系统DFD一层子图(图3) :
信息展示系统主要包括中继信息、数据更新信息、路由信息和系统拓扑四个模块。中继信息模块主要是从数据库读取链路资料通过系统拓扑模块绘制系统拓扑图;数据更新模块可以从ATM交换机获取更新数据;路由信息模块则提供了获取路由信息的范围及查询历史路由的信息最终通过系统拓扑模块直观的展现给用户。
3.1.3 ATM网路由监测软件系统的二层数据流图
1) 基础数据处理系统DFD二层子图(图4) :
图4主要包括原始数据分析与数据整合两个模块。原始数据分析模块主要将收到的设备反馈信息通过读取关键词的方式得到有用的数据并存入数据库;数据整合模块主要是将数据库中的数据进行比对来得到想要的信息,即对数据二次加工。
2) 信息展示系统DFD二层子图(图5) :
中继信息模块主要包括链路参数获取、中继业务、使用率查询、中继合并及中继展开五个模块。传递用户操作指令调用通信交互模块获取网络链路信息;中继业务模块通过对业务资料表及当前路由表的整合,显示中继业务信息。使用率查询模块通过调用链路资料表,根据使用率的不同,在网络拓扑图中以不同颜色显示中继。中继线合并和中继线展开模块通过对网络拓扑图中链路的轮询,比对节点数据和链路信息实现中继的合并与展开。
3) 信息展示系统DFD二层子图(图6) :
图6包括路由选择模块、历史路由模块、路由展示模块、拓扑学习模块、拓扑基础操作模块;主要为操作员提供了路由选择范围,并将路由信息以图形方式展现出来。而且提供全网拓扑自动学取功能,保证拓扑结构的实时性。
3.2 关键技术与算法
3.2.1 非最优路由获取算法
本算法是整个系统实现其核心路由监测功能的基础。在算法设计上,依据网管人工操作流程,整合一系列telnet指令集,依靠计算机模拟人工操作。
1) 登陆待查节点设备;
2) 查询设备业务板卡类型及槽位;
3) 操作终端切换至相应业务板卡;
4) 获取该业务板卡上所有业务连接信息;
5) 操作终端切换回节点设备主控板卡;
6) 跟踪该业务板卡上所有业务连接传输路径;
7) 重复步骤3~6,直至完成全部板卡业务连接路径跟踪操作;
8) 获取全部板卡业务连接传输路径信息;
9) 获取各业务服务等级&度量标准组合最优路由表(共10张);
10) 根据业务源节点(业务连接master端节点)服务等级及度量标准,比对各业务实际传输路径与最优路由表,发现非最优路径;
11) 退出节点。
3.2.2 中继链路带宽使用率算法
1) 获取中继节点参数,源节点记为Cn、目的节点记为Gn,端口记为PCn、PGn;
2) 获取中继总带宽参数(MaxCR)及剩余带宽参数(AvCR);
3) 数据库中继列表为(C1、PC1,G1、PG1) 、(C2、PC2,G2、PG2) ……(Cn、PCn,Gn、PGn);
4) 选中一条中继记为(Ck、PCk,Gk、PGk)或(Gk、PGk,Ck、PCk)与数据库中继列表进行匹配,获取对应的MaxCR和AvCR值;
5) 通过公式:
6) 根据不同的使用率,运用不同的颜色来分别表示链路使用率的高低情况。
3.2.3 中继链路承载业务查询算法
1) 确定一条中继的两端节点,节点名记为x1、x2 ,端口号记为Px1、Px2;
2) 取數据库当前路由信息表中的一条记录,记节点为y、跳数为n、端口号为Py1、Py2 ,业务路由顺序为y1、Py1,y2、Py2,……yk、Pyk,yk+1、Pyk+1,……yn、Pyn,
3) 取k(0≤k≤n-1,n为整数),将(yk、Pyk,yk+1、Pyk+1,)与(x1、Px1,x2 、Px2) 或(x2、Px2,x1 、Px1) 进行比较,匹配者则为该中继上承载的业务,直至k+1=n(跳数);
4) 结合业务数据表通过DLCI、VPI、VCI等参数找出相应的业务名输出;
5) 重复步骤2) ~4) ,直至整个当前路由信息表的记录全部被遍历;
6) 最终显示所有匹配的数据。
3.3 模块代码(部分)
Public Sub dorouteconn(db As String, s As String, port As String, dlc As String, pi As String, ci As String)
Dim t As String
Dim t0 As String
Set objcn = New Connection '
objcn.ConnectionString = "DSN=sql;database=" + db + ";UID=sa;PWD=pdnc;" '
objcn.ConnectionTimeout = 30 '
objcn.Open '
Set objrs.ActiveConnection = objcn
objrs.CursorLocation = adUseClient
If dlc <> 0 Then
strsql = "select * from AllCTBuffersroute where NodeName0='" + s + "'and InPortID='" + Trim(port) + "'and DLCI='" + Trim(dlc) + "'"
End If
If dlc = 0 Then
strsql = "select * from AllCTBuffersroute where NodeName0='" + s + "'and InPortID='" + Trim(port) + "'and InVPI='" + Trim(pi) + "'and InVCI='" + Trim(ci) + "'"
End If
objrs.Open strsql
For Each arr In FlowChart1.Arrows
arr.Color = &HFF8080
arr.PenWidth = 2
Next arr
If Not objrs.EOF Then
For Each b In FlowChart1.boxes
b.FillColor = &H8000&
If Trim(b.Text) = Trim(objrs!NodeName0) Then
Set Source = b
End If
Next b
j = Trim(objrs!totaljump)
i = 1
While i <= j + 1
t = Trim("NodeName" + Trim(str(i)))
t0 = Trim("OutgoingPort" + Trim(str(i - 1)))
For Each arr In Source.IncomingArrows
If Trim(arr.OriginBox.Text) = Trim(objrs.Fields(t)) And Trim(str(arr.UserData)) = Trim(objrs.Fields(t0)) Then
Set arrow1 = arr
arrow1.Color = &HFF&
arrow1.PenWidth = 3
arrow1.Visible = True
Set Source = arrow1.OriginBox
justify = True
Else
justify = False
End If
Next arr
If justify = False Then
For Each arr In Source.OutgoingArrows
If Trim(arr.DestinationBox.Text) = Trim(objrs.Fields(t)) And Trim(arr.UserString) = Trim(objrs.Fields(t0)) Then
Set arrow1 = arr
arrow1.Color = &HFF&
arrow1.PenWidth = 3
arrow1.Visible = True
Set Source = arrow1.DestinationBox
End If
Next arr
End If
i = i + 1
justify = False
Wend
End If
End Sub
4 總结
ATM网路由监测软件的使用,对ATM网的维护及使用产生了积极效果,包括减少资源空耗,降低网络延迟,提高链路传输质量等。
网络监测数据显示在本项目成果使用期间各中继带宽使用率下降明显如:青浦至济南中继平均使用率从41.77%降低为35.32%,青浦至合肥中继平均使用率从36.29%降为23.79%,青浦至厦门中继平均使用率从41.77%降低为35.52%。
在提高业务可用性方面,本系统所取得的效果同样十分突出:对于绕行路由进行优化之后可以将此类链路的网络延时从原先的200ms左右减少到50ms以下的正常范围内,保证了业务的传输质量。
对于非最优路由占用大量网络带宽资源这一问题,使用该软件后,原先大量业务非最优路由虚耗带宽资源情况得到有效控制,原先人工完成一次单节点非最优路由查询工作,平均耗时30分钟,本软件完成相同工作平均耗时仅为3分钟,节约时间达90%。
ATM网路由监测软件的技术成果是对现有网管技术的一种有效补充,创新地将计算机模拟人工智能方法引入了设备管理领域,对民航空管系统一体化运行的各类远程设备的保障管理具有相当的借鉴意义。
参考文献:
[1] PNNI Network Planning Guide for MGX.
[2] Planning Intermediate Route Selection.
[3] Advanced PNNI Configuration.