链路故障(精选6篇)
链路故障 篇1
随着计算机网络技术的发展, 链路传输技术已经逐步取代了过去的同轴电缆传输方式, 而且随着这一技术的革新, 成本低廉的光网络传输将被大范围应用。本文针对项目的实际情况, 对光网络链路调度故障的检查与排除进行了探讨。
首先, 在链路调度申请前, 必须核实所涉及系统的资源, 包括端口、端口规格、传输带宽、链路套数等。在本端、对端端口资源初步确定或者传输局向基本确定 (传输ODF基本确定) 的情况下, 可以申请传输链路调度。
1 申请传输和链路调度时要注意的问题
申请链路调度前需要完成传输申请的准备工作, 这部分工作尤为重要, 是避免后续传输调度出现故障的先决条件。
许多项目在实施的时候就直接申请传输链路, 并没有核实实际情况, 当要用链路时, 才发现链路尾纤不匹配, 例如需要SC接口, 却配置了LC接口。因此在申请传输过程中, 要注意以下几个问题:①了解本端光模块、对端光模块需要什么类型的接口;②核实本端、对端使用的尾纤类型;③核实设备楼层ODF至传输ODF光缆是否满足使用需求;④申请前, 尽量通过工程主管询问传输维护部门传输路由是否满足条件。
在申请链路调度时, 要注意以下几个问题:①根据现场核实的具体情况如实填写传输链路申请表;②再次到现场核实ODF端口情况, 如果端口已被占用, 需要及时联系传输维护部门更改端口;③核实传输系统是否已经可以使用;④尽量避免使用裸纤直接接入。
2 链路调试中需要注意的问题
链路调单批复前, 可以根据确定的ODF端口进行预测试。在链路调试时, 涉及的系统有些是现网的, 有些未割接上线, 极易造成安全事故, 例如拔错纤等。所以在链路调试中需要注意以下几个问题:①要特别注意核实端口的位置。②核实传输调单分配端口是否与申请端口一致, 如果分配的是其他端口, 则要按照前面的要求详细核实新端口的情况。③在传输链路调单下来后, 切记不要急于接入, 避免因为光功率过大而烧坏光模块。④无论本端, 还是对端, 在接入前首先使用光功率计对发光端进行测试, 确保发光端光功率在规定范围内。⑤在传输链路的故障排查中, 如果出现光衰耗过大, 那么该节点肯定是故障点, 必须对其进行清洁或更换材料。⑥可以根据链路调单先行排查本端的楼间ODF光缆以及设备到ODF光纤的情况, 这时需要借助传输代维的部分工具, 包括光功率计、光源、小段测试用尾纤等。⑦如果安排有本项目工程人员, 则可以自行调试对端;如果没有安排本项目工程人员或对端在外地, 则可以联系对端机房传输代维协助测试。⑧在传输调单未下来前, 不建议与传输系统联调, 贸然调试容易造成安全事故。⑨调纤前, 先清洁成端内盒连接法兰头的成端尾纤头和法兰头 (FC头) 。插拔光纤操作时, 一定要先清洁设备尾纤。一般最好使用擦纤带, 尽量不使用其他清洁方式。⑩在将设备纤插入法兰头时, 应注意一定要对准插口, 用力要适当, 以免弄伤光纤或光纤头。⑪除了上文提到的问题外, 还有一个比较容易忽略的问题, 那就是光纤的转弯半径。
3 接入传输系统后的各种故障及排除方法
链路调单批复后, 只有在保证光功率不过大的情况下, 才能接入传输系统进行调试。下面讨论接入传输系统后的各种故障及排查方法:①传输链路不能正常工作时, 要判断出故障位置, 然后要求传输部门检查传输设备数据配置, 并清洁或更换法兰头, 更换故障光纤。②借助设备指示灯的情况。传输链路不能正常工作时, 可以借助现有的数通设备检查故障, 而且要求本端设备已经上电, 设备厂家或调试人员要在场。③设备指示灯仍无法满足调试需求的情况。首先要在本端某一位置打环, 打环前要确保光功率正常, 不能过高, 以免烧坏设备。打环后, 在设备维护平台输入命令查看端口状态, 此时端口状态一般情况下是UP, 但是数据状态为DOWN或者0时, 可以采用PING命令或者其他命令对本机IP进行测试, 观察数据丢包情况。如果本端已打环, 则数据包不会丢失。最后逐段对ODF光纤进行打环测试, 对比测试的数据, 数据异常段即为故障段。④通信协议不匹配的情况。这是由于数据设备与传输设备之间协议不匹配造成的。⑤交换机光模块配置方式有误。目前, 在数据通信中, 数据在线路上的传送方式可以分为单工通信、半双工通信和全双工通信3种。⑥传输链路丢包率过大的问题。首先要求厂家检查设备的配置情况, 包括通信协议、光模块是否完好等, 同时建议传输维护部门检查传输设备的状况是否良好。除了检查数通设备外, 问题还很有可能出现在了传输介质上, 包括光纤、法兰头、ODF架等, 这个时候需要逐段排查。⑦时断时续的情况。这种情况通常会在挂表测试、光功率测试、环路测试都正常的情况下出现, 主要原因是数据配置出错。⑧延时过高, 造成链路传输带宽不达标或者时断时续的情况。出现这种情况后, 首先要检查数据配置是否存在问题, 然后检查物理层面的光纤、法兰头、ODF架等。⑨极端特殊的情况。即使是最新设备, 都有可能存在极端特殊情况, 近2年来仍然会经常遇到。这种问题多数发生在数通设备和传输设备不是同一厂家的情况下。
在链路调度故障排查中, 由于每个项目、每条传输链路都有自己的特点, 本文所述不能完全涵盖。总之, 保证传输链路的高效、安全、稳定运行是所有通信系统稳定工作的前提, 也是所有通信项目建设最重要的节点。
摘要:网络传输技术的发展是互联网发展的基础。在云平台等互联网项目中, 最重要的一环是传输链路的调度。传输链路调度的故障排查是确保传输链路能正常工作的首要条件。
关键词:互联网,链路调度,传输系统,光缆
参考文献
[1]武新华, 段玲华.计算机网络维护与故障排除案例精选[M].北京:中国铁路出版社, 2006.
[2]Greg Tomsho.网络维护和故障诊断指南[M].北京:清华大学出版社, 2003.
链路故障 篇2
OSPF 区域内路由聚合(ABR)
当路由信息在ABR 中进行处理时,对于一个配置了路由聚合的网段,
只发送一条聚合路由。一个区域可多次配置路由聚合。当ABR 向其它区域发送路由
信息时,以网段为单位生成Sum_net_LSA(Type3 LSA)。若该区域中存在一些
连续的网段,则可使用abr-summary 命令将这些连续的网段聚合成一个网段。这
样,ABR 就只发送一条聚合后的LSA,所有由本命令指定的聚合网段范围内的LSA
将不再会被单独发送出去,由此减少其它区域链路状态数据库LSDB 的规模。
一旦将某一网络的聚合网段加入到区域中,该区域中所有落在这一聚合网段内的IP
地址的内部路由都不再被独立地广播到别的区域,而只是广播整个聚合网段的路由
信息。若该网段范围用关键字notadvertise 限定,则到这一网段路由的路由信息将
不会被广播出去。这个网段是由IP 地址/掩码的方式说明的。接收聚合网段和对该
网段的限定,可减少区域间路由信息的交流量。
缺省情况下,OSPF 不进行区域内路由聚合。
Virtual-Link
Virtual-link由两种情况会用到
1.是某个区域无法联入区域0导致某些网络不可达
2.由于某些区域将区域0分割造成多个OSPF的自治系统
虚连接是指在两台ABR之间,穿过一个非骨干区域(转换区域——Transit Area),建立的一条逻辑上的连接通道,可以理解为两台ABR之间存在一个点对点的连接。“逻辑通道”是指两台ABR之间的多台运行OSPF的路由器只是起到一个转发报文的作用(由于协议报文的目的地址不是这些路由器,所以这些报文对于它们是透明的,只是当作普通的IP报文来转发),两台ABR之间直接传递路由信息。这里的路由信息是指由ABR生成的type3的LSA,区域内的路由器同步方式没有因此改变。
若因网络拓扑结构的限制无法保证物理上连通,可通过创建虚连接来满足这一要求。
虚连接是指在两台ABR 之间通过一个非骨干区域内部路由的区域而建立的一条逻
辑上的连接通道。它的两端必须都是ABR,而且必须在两端同时配置方可生效。虚
连接由对端路由器的ID 号来标识。为虚连接两端提供一条非骨干区域内部路由的区
域称为转换区域(Transit Area),其区域号area-id 也必须在配置时就指明。
虚连接在穿过转换区域的路由计算出来后被激活,相当于在两个端点之间形成了一
个点到点的连接,因此,在这个连接上,和物理接口一样可以配置接口的各参数,
如发送Hello 报文的时间间隔等。
“逻辑通道”是指两台ABR 之间的多台运行OSPF 的路由器只是起到一个转发报
文的作用(由于协议报文的目的地址不是这些路由器,所以这些报文对于他们是透
明的,只是当作普通的IP 报文来转发),两台ABR 之间直接传递路由信息。这里
的路由信息是指由ABR 生成的LSA,区域内的路由器LSDB 的同步方式没有因此
改变。
R1
int loop 1
ip add 192.168.0.0
int loop 2
ip add 192.168.1.0
int loop 3
ip add 192.168.2.0
int loop 4
ip add 192.168.3.0
int loop 5
ip add 192.168.4.0
int loop 6
ip add 192.168.5.0
int loop 7
ip add 192.168.6.0
int s0
ip addr 192.168.8.1
ospf enable
int s0
ospf enable 0
int loop 1
ospf enable 0
int loop 2
ospf enable 0
int loop 3
ospf enable 0
int loop 4
ospf enable 0
int loop 5
ospf enable 0
int loop 6
ospf enable 0
int loop 7
ospf enable 0
R2
int so
ip add 192.168.8.2
int s1
ip add 192.168.9.1
ospf enable
int s0
ospf enable area 0
int s1
ospf enable area 1
vlin peer 192.168.9.2 trans 1
abr 192.168.0.0 mask 255.255.248.0 area 0 adv
R3
int s1
ip add 192.168.9.2
int e1
ip add 192.168.10.1
ospf enable
int s1
ospf enable area 1
int e1
ospf enable area 2
vlink peer-id 192.168.8.2 transit-area 1
S4
int vlan 10
port e0/24
int vlan-int 10
ip addr 192.168.10.2 255.255.255.0
int loop1
ip addr 192.168.11.1 255.255.255.0
ospf
area 2
network 192.168.10.0 0.0.0.255
network 192.168.11.0 0.0.0.255
不寻常的光纤链路故障 篇3
故障发生
2008年12月, 某钢铁集团公司, 网络采用星型拓扑, 总部信息中心机房核心交换机连接到下属子公司的汇聚交换机, 然后通过约2.5km的单模光纤与子公司的操作室进行连接, 两端通过光电转化器传输数据。某日, 操作室人员告知不能上网。
初步排查
中心机房的网管人员立即用排查的方式检查二层链路, 汇聚交换机Ping核心交换机正常, 因此, 很有可能是外线的光纤链路出现了问题。分别看子公司和操作室的收发器指示灯信息, 子公司的光纤收发器RX (收光) 灯亮, TX (发光) 灯不亮, ACT灯偶尔闪, 操作室一侧的光纤收发器RX (收光) 灯不亮, TX (发光) 灯亮, ACT灯不亮, 表示操作室只有发信号没收信号。接下来, 在两端把收发光纤都互相交换, 现象是子公司RX灯不亮, TX灯亮, 操作室RX灯亮, TX灯不亮。因此, 初步判定有一芯光纤出现故障。
进一步排查
由于该段光缆走的是地下管道, 两端作引上, 人为损坏可能性不大, 因此, 判断两端光终端盒或尾纤出问题的可能性较大, 于是重新熔接尾纤, 做两端的终端盒。然后用红光笔测试, 两芯都能够收到光, 表示终端盒、尾纤、光缆均正常。接上光收发器后, 两端的光收发器的收光灯都不亮。用Fluke Networks公司的光源和光功率计测试两芯光纤也都不通, 这样的结果比较奇怪。因为一般来说, 红光笔能够测通, 光缆肯定没有问题, 而现在红光笔能够测通, 但光表却不通, 反复测试了几次, 结果依旧。为了解决这个故障, 借来了Fluke Networks公司的单/多模光纤故障分析仪, 采用OTDR (光时域反射器) 进行深度测试。结果是从子公司一端测试故障点在2.4km处, 从操作室用户端测, 故障点在50m处, 于是顺着光缆检查, 发现暗井中光缆引上的部分结有冰块, 敲开冰块后发现光缆有裂痕, 推测有水渗入光缆后冻成了冰, 冰把缆芯挤裂, 因为有冰, 红光笔发出的650nm的荧光可以穿过, 而光源和光功率计1310nm的激光被折射, 所以导致用红光笔可测通, 用光表却测不通的现象。
故障解决
将暗井内被挤裂的缆芯熔接上, 又经过了光功率计的测试, 光纤链路恢复了正常。
启示
链路故障 篇4
随着网络技术的快速发展,网络已经成为人们生活中不可或缺的一部分,高可靠性,高速网络已经成为共同的追究目标,链路聚合技术正是解决这一需求的重要途径。链路聚合,是通过将多条以太网物理链路捆绑在一起成为一条逻辑的链路,增加了链路带宽,提高链路的可靠性。聚合链路技术主要有以下几个优点:1)、使两个或多个以太网连接捆绑在一起来提高带宽的容量,提高网络可用性。2)、将负荷均分到多个链路中,实现了网络的负载均衡。3)、捆绑在一起的聚合组通过相互间的冗余备份,提高网络链路的安全性和可靠性。4)、可以在现有网络设备基础上实施,从而节省资金。
1 链路聚合的分类
链路聚合技术基于IEEE802.3ad或者IEEE802.3(2002)Clause 43标准,也称为Ethernet trunk","NIC teaming","portchannel","port teaming","port trunking","link bundling"等等。链路聚合技术在网络中应用越来越广泛,但至今没有系统地进行分类。基于不同的分类角度,本文从以下几个方面对链路聚合技术进行分类。
1.1 按连接设备类型不同可分为两类
(1)网络设备之间的链路聚合。主要用于交换机、路由器等等网络设备之间,网络设备通过多条链路进行链路聚合,这也是链路聚合主要应用的环境。如图1所示:
(2)网络设备与终端设备(服务器、客户机等)之间的链路聚合。主要用于核心服务器,重要的客户端等与网络实现大容量、多冗余、高可靠性的通信。如图2所示:
1.2 按聚合组的网络层次不同可分为两类
(1)二层聚合组的链路聚合
二层聚合组的成员端口全部为二层以太网接口,其对应的聚合接口称为二层聚合接口(Bridge-aggregation Interface,BAGG);
(2)三层聚合组的链路聚合
三层聚合组的成员端口全部为三层以太网接口,其对应的聚合接口称为三层聚合接口(Route-aggregation Interface,RAGG)。不同型号的设备支持的聚合组/聚合接口的类型不同,以设备的实际情况为准。
1.3 按传输介质不同可分为两类
(1)光传输介质的链路聚合。网络传输介质为单模或多模光纤,主要用于远距离信号传输或核心网络设备间高速信息传输;
(2)电传输介质的链路聚合。网络传输介质为五类、超五类或六类双绞线,主要用于近距离、网络设备与终端设备间的信息传输。
1.4 按工作模式(聚合方式)不同可分为三类
(1)手工聚合。禁止LACP(Link Aggregation ControlProtocol)链路聚合控制协议。被聚合的设备间无需交互协议报文,端口的聚合完全由管理员手工指定。
(2)静态LACP聚合。启动LACP协议,但不允许系统自动向聚合组中添加端口。此时设备不仅仅参考人工配置的哪些端口在一个聚合组,设备还要通过LACP协议交互,来确定这些被人工聚合的端口是否真的可以被聚合在一起。
(3)动态LACP聚合。无需手工创建聚合组,也无需指定端口的聚合组,设备间交互LACPDU(Link Aggregation ControlProtocol Data Unit)链路聚合控制协议数据单元,根据每个端口上接收到的对端设备ID等参数,本设备硬件限制等,来确定聚合条件,自动聚合端口。三种模式主要特点如表1所示:
2 链路聚合案例常见故障排除
2.1 聚合链路后出现网络风暴
在某网络中,对两台华为S9303交换机实施链路聚合后出现网络风暴,网络严重拥堵甚至瘫痪,导致终端计算机之间无法通信。如图3所示:
故障分析:经检查,主要是交换机配置失误造成的。在配置交换机时没有启用生成树(STP,主要作用是避免环路,注意的是涉及网络中出现冗余链路时,千万要注意检查生成树的启动),导致网络中出现广播风暴。
解决方法:在聚合链路的两端华为S9303交换机配置中加入生成树启动命令,不同交换机命令可能会有所不同。以华为交换机为例,重新初始化交换机后,输入命令:switch A(Config)#spanning-tree,即可启用生成树,再次进行链路聚合配置。
2.2 服务器与交换机链路聚合无法通信的故障
为提高网络可靠性和性能,在某办公网络中实施链路聚合方案,用两条六类双绞线将服务器(HP Proliant DL380 G4)和交换机(华为S9303)连接起来,对交换机做好静态聚合组后,服务器无法访问。如图4所示:
故障分析:出现此类故障原因较多,主要从以下几个方面找原因:(1)网络物理连接是否有故障。(2)检查服务器网卡是否通过网卡绑定工具(HP NCU)进行绑定为一块虚拟网卡。(3)检查服务器端与交换机端聚合模式是否相同,必须同为一种聚合模式,此案例为静态聚合。
解决方案:确认线路物理连接正常情况下,对服务器网卡进行绑定,支持802.3ad协议,绑定模式与交换机保持一致同为静态聚合模式。注意不是所有的网络设备都支持三种聚合模式(比如:部分厂商某系列交换机只支持手工和静态两种聚合模式等等),一定要选择网络两端设备都支持的聚合模式。
2.3 网络设备中继的链路聚合连接故障
由于某些网络传输距离较远或设备接口限制,必须在传输过程中增加中继设备(中继器)或媒介转换设备(光电转换器)等有源设备。如某办公网络中汇聚交换机(华为S5328)通过两条六类双绞线手工聚合上联至核心交换机(华为S9303),中间安装了光电转换设备。终端用户计算机无法访问服务器,但是网络连接指示灯正常点亮。如图5所示:
故障分析:手工聚合模式没有开启LACP协议,所有聚合组链路均衡负载流量,当其中某一链路确认失败时,才会停止向故障链路转发流量。由于光电转换设备存在,交换机设备误认为物理连接没有中断,其中任何一条链路故障,都会影响网络通讯。当我们对其中一条故障链路的交换机设备端口Shutdown后,网络通信恢复正常。
解决方案:聚合方式改为静态聚合,启用LACP协议,开启对数据链路层连接故障检测机制的。静态聚合能在以下5种情况下触发聚合组链路切换,包括:(1)ETH-OAM检测到链路故障;(2)LACP协议发现链路故障;(3)接口不可用;(4)更改接口优先级;(5)链路down事件。只要检测到上述五种情况之一,聚合组就会对链路进行切换,保证系统正常通信。
2.4 其他应注意的问题:
除上述故障及解决办法外,在应用链路聚合技术组网时还应注意以下几点:
(1)聚合组成员端口必须相同:1同为全双工2同速率;2同为电口或同为光口;3同为Access口,且同属一个VLAN或同为Trunk端口(其Allowed VLAN和Native VLAN属性也应该相同)。
(2)两台网络设备间,最多6个聚合组,每组最多包含8个聚合端口。
(3)某些命令不能在链路聚合上的端口使用,包括:arp,bandwidth,ip-forward等;
(4)LACP和Security、802.1X的协议互斥,不能同时使用。
3 小结
链路故障 篇5
链路带宽 (link bandwidth) 即链路容量 (link capacity) , 指一条链路在单位时间内能够传送的数据量[1]。若链路带宽设计得过大, 则引起较大的浪费;设计过小, 一旦发生故障就容易引起一些线路的拥塞。IP中链路带宽的设计问题有重要的实际意义。每一条可靠的链路带宽, 不仅需要正常情况下必须通过此段链路的流量, 还需要考虑将来通过重新路由经过该条链路上的流量。网络设计人员必须保证做到下面两点:第一, 在正常情况下达到网络拓扑图的设计的一般要求, 可以到达每个节点, 尽量避免拥塞;第二, 应考虑到发生故障后的网络质量保证。由于发生故障后, 路径需要更改, 要考虑更改后选择的路径是否会发生拥塞。
1 IP网络中链路带宽设计方法
1.1 通过得到点对点的流量矩阵来设计链路带宽
流量矩阵 (Traffic Matrix, TM) 表示了网络中任意OD (Origin Destination) 对之间的流量, 描述了网络流量在各个OD对间的分布情况。OD节点可以是链路 (Link to Link) 、路由器 (Router to Router) , 也可以是POP (Point of Presenc) 。流量矩阵反映了一个网络中所有源节点对之间的流量需求, 网络中节点的类型选择会影响流量矩阵的粒度和类型[1]。
网络流量矩阵的获得, 按测量的协作方式可分为主动测量和被动测量, 按测量的情况可分为直接测量和间接测量。流量矩阵在网络上并不容易直接获得。针对现有网络设备很少对网络流量矩阵的测量提供协作方式的情况, 网络流量的获取以被动测量和间接测量为主。从源节点出发的网络流量通过路由策略被转发到目的地, 各个OD流在它所经过的链路上汇聚, 而汇聚情况取决于网络拓扑结构和路由转发策略。尽管流量矩阵不容易直接获得, 但是各个链路流量很容易通过测量得到[2]。所以, 流量矩阵、路由策略、链路流量之间存在某种关系, 这种关系可以由一个线性等式来描述:
其中, Y是一个列向量, 表示链路流量;X也是一个列向量, 表示流量矩阵;A表示路由矩阵, A可表示为A={aij}, aij为路由矩阵A的元素。如果OD流j通过链路i, 则aij=1, 否则aij=0。一般地, 公式中的Y和A较容易获得:Y可以通过SNMP (Simple Network Management Protocol) 测量得到, A可以通过路由策略和网络拓扑获得。通常情况下, 由于网络中OD对的数量要远大于链路数, 而A不是一个满秩矩阵, 这就意味着上式将有无穷多组可能解, 是一个病态的线性逆问题[3]。流量矩阵估计是一个复杂的问题, 通过Y=AX, 很难得到X。但是要获得准确的流量矩阵X, 目前有一些技术问题:①链路测量数据的可靠性;②拓扑结构的准确性;③OD流模型的有效性;④反演估计的可靠性。
综上所述, 通过得到流量矩阵的方法而求得链路带宽是最准确、最理想的办法, 但是由于设备、技术上的缺陷, 这个方法很难得到需要的参数值, 往往借助估算, 且流量矩阵估算的方法也有一些工程的技术问题尚待解决。
1.2 通过简单方法来设计链路带宽[4]
使用简单方法得到发生故障后链路带宽的变化, 正如其名, 方法比较简单, 具体步骤如下:①判断发生故障的链路上的流量会不会重新寻找路径而流到某一条链路上来;②if会;③那么这条链路增加的负载就等于发生故障链路的负载;④else不会;⑤这条链路增加的负载就等于0。
如图1所示:有3个流量节点分别在2和3之间、0和2之间, 1和2之间、这时网络故障发生在1和2之间。
通过分析得到, 流量b (0和2之间) 和c (1和2之间) 必须通过重新选择路径。根据网络的拓扑结构, 以及OS-PF选择路由的策略, 流量b通过 (0到3到2) 而到达目的地, 流量c通过 (1到3到2) 而到达目的地。我们看到在链路1~3、0~3、2~3路径上, 不能仅仅设计不考虑故障的带宽, 不然必将引起发生故障后的拥塞。但是具体该设置多少呢?由于很难得到流量矩阵真实的值 (即这里的a、b、c) , 所以无法得到准确的链路带宽值去计算链路带宽的上限。不使用难以测量的流量矩阵, 而使用在网络管理中容易得到的链路负载来设计带宽。通过试验还发现, 当发生故障的链路上的流量重新路由时, 选择的路径差异越大, 则这种方法得到的链路带宽浪费就越大。
综上所述, 虽然这种方法没有用到流量矩阵的办法, 少去了求得流量矩阵的复杂步骤, 只用到了链路负载, 但却以它的准确性为代价。当网络拓扑结构十分复杂的时候, 这个simple method使用起来很清晰、简单、有用。但是另一方面, 它可能产生大量的浪费。而且这个浪费, 在发生了故障后, 路径的选择差异越大, 这个浪费也就越大。所以当重新选路差异会很大的时候, 尽量少用该种方法。
1.3 通过构建模型来设计链路带宽
其中:
变量:t0={t0, t1, t2, t3…, tT-1}tr表示在发生故障前的流量向量
常数:T代表点对点的流量数, i代表链路数, k∈K, k表示一种具体的故障实例, K表示故障的集合。L表示节点数。
A0={a0ij|0≤i≤L-1, 0≤j≤T-1}:表示发生故障前的路由矩阵;
kA0={ka0ij|0≤i≤L-1, 0≤j≤T-1}:表示发生故障k后的路由矩阵;
x0={x0, x1, x2, x3……xT-1}tr:表示发生故障前的链路负载。
同样使用上面的试验, 一次得到下面的常量值:
A0=1 1 1kA0=0 0 0 (发生了k故障前后, 路由矩阵)
t0= (ta, tb, tc) tr, 其中ta, tb, tc未知, 但是ta+tb+tc=t (设t为一个已知量, 即为链路1上的负载, 这个值易得到) 。
依次可以得到, kf (2) =max (ta+tb) ;kf (3) =max (ta+tb) ;kf (4) =max (ta+tb) ;kf (5) =max (tc) ;kf (6) =max (tc) ;kf (7) =max (tc) ;kf (8) =max (tc) 。可以直观地发现链路的浪费已经减少, 基本上接近需求量。
其中满足的约束条件即是:①A0t0=x0, 也就是保证发生故障前各链路上的流量等于流经各条链路上的流量。通过数学分析可得, 这个线性方程是个非齐次线性方程, 其中的R (A0) =R (A0, X0)
综上所述:这个办法有两个优势, 第一, 它没有使用第一种难求的链路流量矩阵方法, 而是使用了比较容易直接测得的链路负载。第二, 它没有像simple method方法一样完全不使用流量矩阵, 只使用链路负载, 巧妙地将链路流量矩阵作为未知量, 同时它的变化在一定的范围变动, 故在第三种办法中流量矩阵是收到链路负载约束的一个变量, 大大提高了带宽设计的准确性。
在参考文献[5]中, 作者又提到这种方法虽然能有上面的优点, 但随着网络节点数的增加, LP计算将花费的时间增长很明显, 因为相应的约束条件和变量都增加。所以在不影响LP优化结果的基础上, 增加了一个启发式的步骤, 来减少一些变量及对结果不产生影响的约束条件来加快速度[5]。模拟得到改进的方法不仅能保持模型方法的准确性, 而且缩短了得到结果的时间。
2 模拟实验及改进
我们将用两种网络拓扑来进行模拟, 分别为NSF-NET和COST 262网络。它们的节点数、链路数、流量数如表1所示。
同时我们还用了3种流量方式:①让每一对出口和入口的所有的流量都具有相同的流量值;②每一对出口和入口的流量值在30%的范围浮动;③每一对出口和入口的流量值随机得到。估计出设计的总带宽数量和总的带宽变动量。
我们定义一个名词“差异系数”, 用来表示发生链路故障后, 流量在新的网络拓扑图下选择路径的差异大小。差异系数的计算方法如图2所示。
在图2中, 可以得知, 在发生故障前, 链路1的流量数是4, 发生故障后在2, 3, 4, 5, 6, 7, 8, 9上的流量数是2, 在10, 11上的流量数是1, 故差异系数就是 ( (4-2) *8+ (4-1) *2) *2=44, 故差异系数就是4, 从计算方法上, 很容易发现差异系数越小, 重新选择的路径差异就越小, 差异系数越大, 重新选择的路径差异就越大。模拟结果见图3。
从模拟结果, 得到如下结论:①从图3 (1) 中, 用模型计算带宽的方法得到的链路带宽接近实际需求的带宽量, 比较simple method, 可节约更多的带宽;②从图3 (2) 、图3 (3) 、图3 (4) , 在COST266网络下, 按不同的差异系数, 对3种方式分别进行模拟, 得到实际的带宽总变化量, 差异系数越大, 用simple method得到的带宽总变化量的差异越大;③在这3种情况下, 用simple method的方法, 总的带宽变化量随着差异系数的增加变化很剧烈, 而本模型的方法, 变化随着差异系数的增加逐渐稳定。
3 结语
随着Internet持续高速的发展, 人们开始对其服务质量、可靠性和效率进行重新思考并提出解决方案, 网络带宽设计技术提供反映IP网络运行状况指标, 并能及时发现网络异常, 为网络故障发现和定位提供依据。本文提到的3种IP网络中考虑网络故障而设计网络带宽的方法有各自的优缺点, 关键是在实际操作中如何去使用它们, 以保证网络的高可靠性和高质量。
参考文献
[1]蒋定德, 胡光岷.流量矩阵估计研究综述[J].计算机科学, 2008, 35 (4) :5-13.
[2]刘敏, 耿玉水, 赵荣芳.Internet带宽测量技术简述[J].山东轻工业学院学报, 2009, 23 (2) :66-70.
[3]周静静, 杨家海, 杨扬, 等.流量矩阵估算的研究[J].软件学报, 2007, 18 (11) :2669-2682.
[4]RYUTA SUGIYAMA, TOMONORI TAKEDA.Link bandwidth design method considering failure in IP network[J].IEEE, 2010.
链路故障 篇6
波分复用(WDM)网络在为运营商提供巨大带宽的同时,也增加了网络发生故障时的风险。一旦发生网络故障,将导致大量的业务丢失,从而造成重大的损失。因此,光网络需要快速高效的生存性,对光网络故障的保护恢复策略的研究也就显得非常必要。
预置圈(P圈)是W.D.Grover教授在1998年提出的概念[1],它是一种基于环结构的网络保护方案,利用空闲资源预先设置的环形通道来实现网状网络中的快速保护,它区别于其他如增强环法、单向环双重覆盖法等基于环的保护方案的最大特点就是在允许工作通道任意选择路由的条件下,同时可对圈上和跨接区段上的链路故障提供保护。这样,由于被保护的工作容量的范围扩大了,则利用少量的空闲资源就能实现网状网络的快速保护。P圈法由于结合了基于环的保护和基于网状的恢复这两种方案的优点——快速的环网恢复速度和网状恢复网络的容量有效性,使其得到了业界广泛的关注和研究。
目前,关于P圈算法的研究已有很多,根据使用的最优化方法的不同,大致可以分为两大类:完全最优化方法和启发式方法。完全最优化方法是先枚举网络拓扑中所有简单圈作为备选P圈,再利用整数线性规划(ILP)得到最优化的解[2]。该方法对于小型网络可以使用,但是当网络节点和链路数量很大时,计算所有简单圈并且再去找到最优化的解是非常复杂和困难的,需要耗费很长的时间,因此不适合大型网络。启发式方法又可以分为两类:基于ILP的启发式方法和完全启发式方法。前者是先计算出一部分性能比较好的备选圈,然后将这些备选圈进行最优化组合得到最优解[3],由于这种方法仍然要用到ILP,因此需要大量的计算时间,且不利于网络的扩展;后者是利用启发式算法构造出性能较好的一部分备选圈,再结合实际网络中的工作容量,将实际提供保护能力较大的备选圈优先配置,其目的是减小P圈配置的计算时间[4,5]。由于这些算法对P圈的配置都需要两步,第1步构造P圈,第2步选择高效的P圈进行容量分配,这样就既增加了算法的计算时间,又不能保证配置的最优化。本文提出一种新的算法,该算法只用一步就能够计算出高效的P圈并100%保护光网络,从而可以减少算法的计算时间,提高网络的资源利用率。
1 P圈的评价标准
假设S代表网络中所有链路的集合,经过某种特定P圈生成算法计算以后,集合P={p1, p2,p3,…,pN}代表一系列P圈的集合,其中N表示该集合中P圈的个数。为了量化P圈的性质,本文给出了评价P圈的性能指标:冗余度R(p),即一个P圈的空闲容量(圈使用的波长数)与工作容量(圈上以及跨接链路上被保护的波长数)的比值。它是用来评价该P圈的资源利用效率的。
式中,Ci表示第i条链路的空闲容量;Xp,i表示这个P圈能够保护的工作容量。我们知道,当链路i是圈上边时,Xp,i=1;当链路i是跨接边时,Xp,i=2;当链路i既不是圈上边也不是跨接边时,Xp,i=0。该P圈的效率越高,冗余度越小,表示它能用更少的资源保护工作容量。
2 算法描述
评价一个算法的好坏主要有3个标准:总冗余度、P圈的个数和算法的计算时间。总冗余度低意味着100%保护网络时所用的空闲容量少,可以有效地提高网络的资源利用率。减少P圈的个数可以减轻圈繁琐的配置和维护工作,同时也减小了配置错误的风险。算法的计算时间直接影响着网络故障时恢复的速度,算法的计算时间越短,网络故障时恢复速度越快,网络运营所付出的代价也就越小。为了能够使冗余度更低、P圈的个数更少且计算时间更短,本文提出了P圈优化配置启发式算法(P-cycle Optimization Configuration Heuristic Algorithm,POCA)。
POCA始终以降低冗余度为目标,当未保护工作容量多的时候,链路数大的、有更多跨接边的P圈可以有效地降低冗余度,增大资源利用率;而当未保护工作容量少的时候,
链路数多的P圈因为能够保护的网络资源少了,冗余度反而会增大。举例说明,图1所示为4个节点、5条链路的WDM网络,每条链路的工作容量如图所示。以a-b-d-a为最小圈,冗余度为3/2;如果圈继续扩张,则为a-b-c-d-a,其冗余度为4/2,反而增大了,所以此时用跳数少的a-b-d-a可以降低冗余度。为了制约P圈在未保护工作容量少时继续扩展,本文提出了未保护链路比率(ULR)的概念,它被定义为网络中未保护的链路数与总链路数的比值。
POCA的具体步骤如下:
算法输入:网络物理拓扑G=(N,S),其中N为网络的节点集,S是网络中双向链路的集合;第i条链路上的工作容量Wi;输入参数K(0<K<1)。
算法输出:算法的计算时间、100%配置网络所需的圈数和总冗余度。
步骤1:令∀i∈S,ui=Wi,ui为未保护的工作容量,迭代次数m=1。
步骤2:在网络拓扑G中计算出工作容量最大的一条链路P1,其两个端点作为运行圈需要的目标节点。将链路P1从网络中删除,运行Dijkstra最短路径算法得到最短路径P2,P1和P2就是节点分离的两条链路,将P1和P2首尾相连构成最小圈C1。
在网络中将P1和P2删除,判断能否再找出一条最短路径,如果找到则记为P3,P1和P3构成最小圈C2。P2和P3构成基本圈C3,P1就是C3的跨接链路。分别计算出这3个圈的冗余度,找出最小冗余度R和冗余度最小的圈。如果找不到这条最短路径,则C1便是冗余度最小的圈,冗余度为R。
步骤3:计算此时网络未保护链路比率ULR。
步骤4:如果ULR<K并且ULR<R,则转步骤7;否则,转步骤5。
步骤5: 把输入的冗余度最小圈上第i(从1开始)条边删除,运行Dijkstra算法计算出与第i条边节点分离的最短链路。用这条最短链路替换第i条边,则第i条边为这个新圈的跨接链路,暂时储存这个新圈,并计算出其冗余度R(c+i),i=i+1。转至步骤5。如果i不能够再增加,则转至步骤6。
步骤6:计算并比较出第d条边扩张的新圈冗余度最小为R(c+d),储存这个新圈,释放其余的圈。如果此时ULR<K并且ULR<R(c+d),则转步骤7;否则,转步骤5。
步骤7:更新网络中的每条链路,对于圈上链路减去1倍工作容量;对于跨接链路,减去两倍的工作容量。如果没有工作容量尚未分配保护资源,则算法结束;否则,m=m+1,转至步骤2。
3 仿真与数据分析
为了分析该算法的性能,本文对该算法与经典的启发式算法容量迭代构造算法[5]CIDA进行对比,其中根据备选P圈的构造算法的不同,本文分别选用跨接链路算法(SLA)构造的基本圈和节点增长(GROW)算法扩张的高效圈为备选P圈,放在CIDA容量分配算法中仿真。 SLA-CIDA的特点是运算时间短,而GROW-CIDA的特点是备选P圈效率高,冗余度小。本文选用两个网络进行仿真,分别是图2所示的新泽西州LATA 网络(11个节点,23条边)和图3所示的泛欧COST-239网络(11个节点,26条边)。网络连接需求是任意的,每条边上的工作容量的最高限制为20,分别取5组任意网络连接需求,将P圈配置到网络中。假设网络中的工作流向是双向对称的,预留的空闲资源要为工作容量提供100%的保护,节点具有全波变换能力,每条链路上的工作容量是给定的,其单位是波长的个数。网络拓扑上的每条边的代价主要由参考文献[6~7]中的实际物理距离来设置。
仿真程序用C语言编写,编译器是Microsoft Visual C++ 2008 Express Edition,硬件配置为Intel(R) Core(TM) 2 Duo CPU T5670处理器、1.00 G内存和Windows Vista Home Basic操作系统。在其他环境下由于软件、硬件和编程技巧的不同,最终数据可能会有所不同,尤其是对算法计算时间会有影响。
表1、表2和表3分别给出了不同仿真条件下配置P圈数、总冗余度和算法的计算时间。表中SLA-CIDA简写为SLA,GROW-CIDA简写为GROW。
从表1中我们可以看到,由于SLA-CIDA产生基本圈的跳数较少,100%保护网络时所需的P圈个数相对要多很多。无论是在COST-239还是LATA网络中,POCA每组需要的P圈个数都要比GROW-CIDA的少,因为POCA每次都能够把P圈扩张到最大限度地减小冗余度,当网络中工作容量一定时,能有效地减少P圈的个数。
从表2中可以看出,SLA-CIDA的冗余度最大,这是因为SLA产生的是只有一个跨接链路的P圈,因此效率非常低。GROW-CIDA是在基本圈的基础上运行节点增长扩张算法,使得扩张后的P圈有非常高的效率,同时也保留了跳数少的圈,在容量配置时根据网络的剩余工作容量,选择实际保护效率最高的P圈分配到网络中,因而冗余度较小,比SLA-CIDA需要的空闲容量少近1/3。POCA比GROW-CIDA除了COST-239网络的第5组的冗余度大0.02以外,其余均比它小或相等,相差最大时冗余度小0.054。这是因为圈扩张的每一步都是以减少冗余度为标准的,在未保护工作链路较少时,又受参数K的约束,抑制了圈的无效扩张,因而节省了网络资源。
从表3中我们可以看到,GROW-CIDA所用的时间要比SLA-CIDA的长,这是因为它在构造备选P圈时,要想得到效率高的圈必须在每个基本圈上进行GROW扩张,因而需要更长的计算时间。而POCA在进行P圈配置时只需要一步,即可把P圈扩张后直接配置到网络中,不需要每次容量配置都重新计算所有备选P圈的实际保护效率,减少了算法的计算时间。
图4为我们展示了不同参数K值时两个网络中的冗余度的变化。曲线从大的趋势看是递增的,因为当参数K值变大时算法的约束力变小,P圈很容易停止扩张,没有最大限度地减少冗余度。我们发现LATA网络中K值从0到1时冗余度是局部降低。K值为0时,意味着P圈无论在什么情况下都不会停止扩张,当未保护链路数少时,圈的扩张增大了空闲容量的投入,从而增加了冗余度。图4说明
由于不同网络的拓扑结构不同,只有将参数K值调节在一个合理的范围内才能使冗余度最小。
4 结束语
传统的P圈保护算法认为跨接链路越多P圈的效率越高,因而在产生P圈时只根据网络的拓扑结构,而没有考虑网络中工作容量的分布。除此之外,算法在产生备选P圈的同时也必然增加了计算时间。本文针对这两个缺点提出了一种新的启发式算法,该算法在P圈扩张时以冗余度为标准,同时考虑了网络的拓扑结构和剩余的工作容量,并且只用一步就计算出优秀的P圈,将其配置到网路中,保证了100%光网络的保护。仿真结果表明,新算法的计算时间短,需要配置的P圈个数少,同时还提高了网络的资源利用率。
摘要:文章针对传统P圈保护算法计算时间长、资源利用率低的缺点,提出一种新的启发式算法,该算法以冗余度为评价标准,结合了未保护链路比率,在未保护链路数少的情况下能有效地约束P圈的扩张,只需一步就能计算出高效的P圈并100%保护光网络。通过在泛欧COST239网络和新泽西州LATA网络上仿真,表明该算法可以有效地减少配置P圈的数量,减少计算时间,提高网络的资源利用率。
关键词:P圈,保护,生存性,光网络
参考文献
[1]Grover W D,Stamatelakis D.Cycle-oriented distribu-ted pre-configuration:ring-like speed with mesh-likecapacity for self-planning network restoration[A].Proc of IEEEInternational Conference on Communica-tions 1998[C].Atlanta:IEEE,1998.537-543.
[2]Shen Gangxiang,Grover W D.Design and perform-ance of protected working capacity envelopes based onp-cycles for dynamic provisioning of survivable services[J].Journal of Optical Networking,2005,4(7):361-390.
[3]Kang B,Habibi D,LO K,et al.An approach to gen-erate an efficient set of candidate p-cycles in WDMMesh Networks[A].Proc of IEEE Asia-Pacific Con-ference on Communications 2006[C].Busan:IEEE,2006.1-5.
[4]Zhang H,Yang O.Finding protection cycles inDWDMnetworks[A].In Proceedings of IEEE Inter-national Conference on Communications(ICC)2002[C].New York:IEEE,2002.2 756-2 760.