基于VSU极简广域网虚拟化管理设计实现

2019-06-20 03:55
长春师范大学学报 2019年6期
关键词:广域网路由器报文

方 伟

(1.淮北职业技术学院计算机科学技术系,安徽淮北 235000;2.浙江大学控制科学与工程学院,浙江杭州 310000)

在传统网络设计中,为了提高网络的稳定性,通常在网络核心层部署两个交换机,并且所有的汇聚层交换机都有两条链路分别与核心层交换机相连,链路冗余由生成树来实现。为了消除环路,在核心层及汇聚层交换机上配置MSTP协议阻塞一部分链路。为了提供冗余网关,在核心层交换机上进行配置VRRP协议。然而,复杂的网络架构增加了网络操作与维护的复杂性,减少了投资回报率,大量的备份链路也转换成虚拟逻辑设备。利用VSU技术可以将网络内核转换成虚拟逻辑设备,用户只要对虚拟设备进行操作就可以实现对所有物理设备的管理[1-3]。这种虚拟设备既具有盒式设备低成本的优点,又具有框式分布式设备的扩展性以及高可靠性。

1 极简广域网虚拟化管理核心技术

1.1 设备虚拟化技术VSU

VSU是一种将多台设备虚拟成一台设备来管理和使用的技术,能够显著降低管理及拓扑逻辑复杂度,方便用户管理和使用,其主要实现过程包括物理连接、拓扑发现和角色选举。物理连接即通过VSL口连接两台设备,作为设备构建VSU系统通信的线路。百兆、千兆、万兆接口均可配置成为VSL接口,但在实际应用中RSR77-X系列设备通常使用万兆接口互联,同时采用双VSL链路的部署方式(汇聚及接入设备除外)。拓扑发现通过交互VSU Hello报文携带拓扑信息,包括本机的成员编号、设备优先级、MAC信息、VSU端口连接关系等内容[4-5]。角色选举是通过选举主备设备、拓扑收敛,形成VSU系统。其中Master角色的选举规则是当前主机优先(先启动的设备优先为主设备),设备优先级大的优先,MAC地址小的优先。选举完成后,Master向Slave发送Convergence报文,通知Slave一起进行拓扑收敛,然后VSU进入管理与维护阶段。Master将构造两台设备的数据信息,包括设备线卡信息、接口信息、全局配置信息。VSU可实现基于线卡和接口编号的统一管理,管理通道路径实现见图1。VSU可直接在Master上统一管理本机和从机的线卡、接口。其中接口编号采用三维格式,如GigabitEthernet1/2/0,分别表示槽位号、子槽号和该子槽位上的接口编号。VSU虚拟化之后,接口编号增加一级,采用四维格式(如GigabitEthernet 1/1/2/0),第一维数字1表示机箱成员设备编号。Master与VSU系统中其它设备也具有可靠的管理通道,例如RSR77-X是分布式设备,管理板负责管理设备。要实现管理就需要有管理通道,内部的管理通道为IPC通道。IPC为上层模块屏蔽掉其中的路径(管理板-VSL链路-线卡等),在管理板与线卡间建立起直连的逻辑通道。

图1 VSU管理通道路径

VSL虚拟交换链路(Virtual Switching Link)是VSU最为核心的技术之一。VSL用来在两台成员路由器之间传输控制报文的特殊聚合链路。除了控制报文以外,可能存在跨机箱的数据报文通过VSL传输。VSL端口以聚合端口组的形式存在,由VSL传输的数据流根据流量平衡算法在聚合端口的各个成员之间进行负载均衡。设备上可以用于VSL端口连接的物理端口称为VSL成员端口,VSL成员端口可以是堆叠端口、以太网接口或者光口。优先级是VSU成员路由器的另一个重要属性,在角色选举过程中用来确定成员路由器的角色。优先级越高,被选举为主机箱的可能性越大,取值范围从1到255,缺省优先级是100。成员设备的优先级分为配置优先级和运行优先级,运行优先级在VSU运行过程中不会变化。管理员修改配置优先级,运行优先级还是原来的值,保存配置并重启后新配置的优先级才会生效。

1.2 链路虚拟化技术AG(link-aggregation)

链路虚拟化技术AG实际上就是将两条或者多条链路聚合成一条逻辑链路,目前仅支持以太链路聚合,一个聚合口最多支持8条成员链路。采用链路聚合后,逻辑链路的带宽增加了n-1倍,这里n为聚合的路数。链路聚合后,对网络层以及以上网络层次均表现为一个端口,数据流可以实现快速切换,断流时间在毫秒级别。被链路聚合连接在一起的两个(或多个)设备,通过内部控制可以对聚合连接设备科学合理地分配数据,从而实现负载分担。

AG功能有静态和动态之分:静态方式只有在本端接口关闭的情况下,接口才会退出聚合组,因此不适用于广域网的场景;动态方式在参与聚合的接口所在线路异常的情况下,接口才会退出聚合组。动态检测有LACP和BFD两种协议可以实现(工作流程见图2):LACP(Link Aggregation Control Protocol,链路汇聚控制协议)是一种实现链路动态汇聚与解汇聚的协议,利用LACPDU(链路汇聚控制协议数据单元)实现对端数据信息传输。LACP链路的两端分别称为Actor和Partner,双方通过LACPDU报文交换,将系统MAC、系统优先级、操作Key等信息向对端通告。对端获得上述信息后,与其它端口保存的信息进行比较,以选择能够汇聚的端口[6-8]。双方可以对端口加入或退出某个动态汇聚组达成一致,从而确定哪些链路可以加入同一聚合组以及某一条链路何时能够加入聚合组。RFC-7130标准的BFD协议可实现成员链路的检查,RFC-7130规定在AG的每一个成员口上均建立独立的BFD会话,独立检测而不相互影响。一旦某接口上BFD会话关闭,在数据面该接口从AG成员口中移除,不参与接收和发送数据,所有数据流被快速的切换到正常的成员口上。简单理解,BFD探测的方式就是将BFD功能和AG功能联动。在BFD检测到关闭时,AG将对应的接口移出聚合组,二者是互相独立的。BFD检测可配置成最快速度150 ms检测到故障,完成数据切换。

图2 LACP、BFD协议工作原理图

1.3 智能动态调整技术IDA

传统的链路聚合技术包含流量均衡算法,通过哈希算法将报文(IP五元组)散列到不同的成员链路,达到流量均衡的目标。该算法存在一定的缺陷:100条流被散列到成员口1,那么这条规则将永远不会改变,即使成员口1过载。IDA(Intelligence Dynamic Adjustment)是一种动态的流量调度技术,摈弃了传统的静态均衡算法,通过实时监测AG成员链路的带宽利用率,智能地进行流量调整,始终保持每条链路的高效利用,其数据流量控制过程见图3。IDA功能会根据AG成员接口的负载情况自动选择轻载链路,无需复杂配置,只需打开IDA功能开关即可[9-10]。

图3 智能流量调度

在广域网线路中,不同运营商链路的延时、丢包、抖动存在差异。如果同一条流的报文被分配到不同线路,在接收端就会出现报文乱序的现象。乱序意味着丢包重传,会降低链路的有效载荷,浪费链路带宽。在接收端采用缓存报文重组的方式虽然能够降低重传报文的几率,但报文延迟和内存消耗可能是无法接受的。IDA的流量均衡是基于流的,也就是说,同一条流的报文同一时刻只会在一条成员链路中传输,避开了不同质量的链路对流的影响。在此基础之上,IDA智能流量调度还提供了两个子功能:用户可根据需求,指定特定业务流到固定链路上传输,该类业务流将不被调整,除非链路故障;用户可以指定特定业务流优先在优质的链路上传输,当链路过载时,才调整业务流到另外的链路。这两个子功能是利用与HQOS联动来实现的,通过设置链路和HQOS流动作的亲和属性操作。将业务和链路关联起来。在某些特定场景下,设备的配置要随着外部状态的改变而作出相应的调整。传统的技术想要做到这一点需使用网管或CLI进行人工修改配置,而IDA策略调整可智能调整,无需人工干预[11]。

2 极简广域网虚拟化管理总体设计方案分析

采用VSU技术将2台RSR20-14F路由器虚拟化成1台路由器,可简化网络管理、维护流程,无需使用VRRP+MSTP等技术架构。通过设置虚拟化优先级,区分2台RSR20-14F:优先级高为VSU-主路由器,优先级低为VSU-备。2台RSR20-14F通过GE0/1口互连1条网线作为VSU的VSL链路,通过FE1/46和FE1/47互连2条网线作为VSU的双机心跳检测链路,同时作为广域网数据传输链路。将带宽高的主链路接入VSU-主路由器GE0/0,带宽低的备链路接入VSU-备路由器GE0/0。开启生成树功能,确保成为网点局域网络的主根桥,实现生成树优化计算;开启全局RLDP功能,实现基于端口维度的防环功能,下联终端的端口配置RLDP处理动作为Shutdown;开启HQOS功能,区分生产和办公业务,优先保证生产业务[12-13]。

为了实现端口数量扩展和广域网内各终端设备互联,虚拟化路由器可以通过Trunk端口下联网点接入交换机。单链路接入交换机可以单线接入VSU-主路由器或者VSU-备路由器交换端口,双链路接入交换机可以双线路分别接入VSU-主路由器和VSU-备路由器对应交换端口,其中注意接入交换机必须开启生成树功能。低端口号端口(如1/1)连接VSU-主路由器端口,高端口号端口(1/2)连接VSU-备路由器端口。此时备链路如果被STP阻塞,业务终端(生产、办公、WLAN)等可以接入虚拟化路由器RSR20-14F的交换物理口,也可以接入下联的网点接入交换机的交换物理端口。具体网络拓扑结构见图4。

图4 网点虚拟化方案拓扑设计

3 极简广域网虚拟化设计实施过程

3.1 路由器虚拟化设置

将GE0/1与GE0/1用网线互连,作为虚拟化VSL链路(内部数据通信接口)。设置1号设备虚拟化优先级为200,保证1号设备成为VSU-主设备,同时将路由器从单机模式切换成虚拟化模式;设置2号设备虚拟化优先级为150,保证2号设备成为VSU-备,同时将路由器从单机模式切换成虚拟化模式。如果实施过程出现1号设备为VSU-备,则应断电重启2号设备。2号设备重启后查看1号设备角色状态值为Active,确保1号设备为VSU-主。代码主要实现如下:

# configure terminal

(config)#switch virtual domain 1

(config-vs-domain)#switch 1(or 2)

(config-vs-domain)#switch 1(or 2) priority 200(or150)

(config-vs-domain)#switch 1(or 2) description RSR20 14F-1(or 2)

(config)#vsl-aggregateport 1

(config-vsl-ap-1)#port-member interface GigabitEthernet 0/1

HQoS配置:

interface GigabitEthernet 1/0/0

port-queue pq shaping 20000///运营商提供的链路带宽,例如:20M

interface GigabitEthernet 2/0/0

port-queue pq shaping 10000///运营商提供的链路带宽,例如:10M

interface VLAN 140

traffic-policy HQoS inbound

interface VLAN 110

traffic-policy HQoS inbound

默认静态路由指向主用链路优先级高,指向备用链路优先级低;

ip route 0.0.0.0 0.0.0.0 38.16.X.X

ip route 0.0.0.0 0.0.0.0 38.16.X.Y 70

WLAN业务静态路由指向备链路优先级高,指向主链路优先级低;

ip route 38.0.5.0 255.255.255.0 38.16.X.Y

ip route 38.0.5.0 255.255.255.0 38.16.X.X 70

正常情况下,生产、办公、其它业务走主链路,WLAN走备链路。如果能精确区分目的网段是办公业务访问,也可以配置对应的静态路由让办公业务走备链路,实现链路负载分担。此外,接入交换机必须开启生成树功能,生成树优先级保持默认配置,连接VSU-主(RSR20-14F-1)路由器端口号小于连接VSU-备路由器(RSR20-14F-2)端口号,如1/44接VSU-主、1/45接VSU-备。此时,接入交换机与虚拟化路由器之间存在环路,生成树计算会阻塞接入交换机连接VSU-备路由器(RSR20-14F-2)端口。当主链路故障时,该端口连接的备份链路会被收敛激活,成为链路备份。这种设计能有效解决以下问题:保证下行流量从VSU-主路由器转发,当2条双机检测链路或VSL链路不小心被拔掉后,VSU-备路由器会失效。此时下联交换机依然可以通过VSU-主链路进行数据访问,不受影响,否则需要经过1次链路收敛切换的中断影响。

3.2 路由器虚拟化双机检测口(DAD-BFD)配置

虚拟化路由器逻辑上为1台设备,在2台设备的虚拟化线路(VSL)中断时,就会出现双主机。此时网络上有两台配置完全一样的设备,会导致地址冲突等情况,影响网络正常运行。因此,需要配置双主机探测协议来解决。RSR20-14F只有1条VSL链路,可以配置1条或者多条DAD-BFD双主机检测线路。多条线路实际聚合成1个二层聚合链路(AG),它既作双主机检测,也是双机间二层数据的通道。网络互联全部采用2条双主机检测线路,1号设备1/46与2号设备1/46互连,2号设备1/47与2号设备1/47互连,如图5所示。

图5 双主机检测线路

4 结语

相比MSTP、VRRP等传统的冗余技术而言,VSU技术提高了链路的利用率,缩短了故障恢复时间,使网络的稳定性和可靠性得到有效的保障。通过网络虚拟化改造,可以将多网络设备虚拟成1台设备来管理和使用,进一步优化了网点的网络拓扑结构,提高了带宽的利用率,显著减低了管理复杂度和拓扑逻辑复杂度。随着网络应用范围的不断发展以及对网络性能要求的不断提升,网络虚拟化技术将会得到广泛的应用和发展。

猜你喜欢
广域网路由器报文
基于J1939 协议多包报文的时序研究及应用
买千兆路由器看接口参数
维持生命
路由器每天都要关
路由器每天都要关
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
基于低功耗广域网的海岛水产养殖环境监测系统研制
关于局域网安全路由器基本配置的研究
ATS与列车通信报文分析