最短路径桥接网络中的转发路径确定方法及设备的制造方法

文档序号:8265594阅读:443来源:国知局
最短路径桥接网络中的转发路径确定方法及设备的制造方法
【技术领域】
[0001] 本发明涉及最短路径桥接(SPB,Shortest Path Bridging)技术领域,尤其涉及 SPB网络中的转发路径确定方法及设备。
【背景技术】
[0002] SPB是为解决大型组网中多生成树协议(MSTP,Multiple Spanning Tree Protocol)组网的一些弊端而产生的。相比MSTP组网而言,有如下一些优势:软件层通过 下发驱动规则的方式控制特定流量的转发,不需要完全阻塞链路造成资源浪费;基于链路 状态和开销来计算最优的转发路径,最大程度减小时延和不必要的带宽消耗;提供针对不 同服务的负载均衡,充分利用网络中的冗余链路等。
[0003] SPB原理如下:
[0004] 1、两个节点通过直连线路或者纯二层网络连接后,,通过交互Hello报文来发现 对方并建立SPB邻居。通常有两报文交互或者三报文交互的方式。
[0005] 两报文交互方式下,端口 Up后就持续发送Hello报文,如果此时能收到对端发过 来的Hello报文,则建立一个到对端的邻居。
[0006] 三报文交互方式下,端口 Up后持续发送初始化Hello报文,如果此时能收到对端 的初始化Hello报文,则将本端状态置为"正在初始化",并向对端发送请求建立邻居报文。 当端口处于"正在初始化"并且收到对端的请求建立邻居报文时,则建立一个到对端的邻 居。
[0007] 邻居建立完成后该链路即拥有转发流量的能力。
[0008] 2、建立了邻居的链路拥有一个开销值属性,表示流量走该链路所需的花费。SPB中 的最优路径是指路径总开销值最小。
[0009] SPB将自己了解到的邻居和链路开销信息封装在链路状态协议(LSP,Link State Protocol)报文中,并扩散给其它节点。每个节点通过收集其它节点的LSP来获取整个网络 中的链路状态,并以此计算出本节点到任意节点之间的最优路径。所有最优路径的集合就 是一个最短路径优先(SPF,Shortest Path First)树。
[0010] 3、当两个节点之间存在多个总开销值和跳数都相等的路径时,这两条路径成为等 价路径。此时SPF树中会有类似于图1中所示的两条路径,其中CE+ED的开销等于CF+FD 的开销。
[0011] SPB有自己的负载均衡实现,该实现依赖于一种称为等价树(ECT,Equal Cost Tree)的算法。ECT算法共有16种,在组建SPB网络时,需要为SPF树绑定ECT算法,该过程 实际上是在多条等价路径中选取一条。绑定不同的ECT算法会导致最终选取的路径不同, 最终结果取决于中间节点的系统标识(system-id)、桥优先级和所使用的ECT算法。
[0012] 如图1,假设该SPF树绑定ECT 1时,最终的结果是选择路径A->C->E->D->B,而当 绑定ECT 15时,最终的结果是选择路径A->C->F->D->B。这样当外围用户网络连接到SPB 网络时,可以为它们分配不同的ECT算法,使得不同用户的流量可以运行在不同的路径上, 达到负载分担的效果。
[0013] 如上描述的负载均衡技术是一个全局意义上的均衡,从设计上来说,每两个节点 之间只能有一条链路。如果有需要在两个节点使用多条链路进行负载均衡和备份,SPB并 没有提供解决办法。
[0014] 当前实现是,如果两个节点之间存在一条以上的链路,如图2所示,那么有两种组 网方式:
[0015] 1、两条链路独立并分别都在两端使能SPB。这时候SPB会自动选择一条链路建立 邻居并转发,另一条链路闲置。如果在用的一条出现了故障,如down掉,会切换到另一条链 路重新建立邻居并转发;
[0016] 如图2所示,SPB网络中存在两台设备A、B,它们之间有两条链路Linkl、Link2。A 设备的SPB协议启动后,会通过端口 Pl和P2同时向B发送HelIo报文探测邻居。假定B 首先收到A从Pl 口发过来的Hello报文,则B在Pl 口上建立到A的邻居。然后B又在P2 口上收到A的报文,则B此时会进行一定的决策,从Pl和P2中选择出一个端口重新建立邻 居。比如决策的结果为P2更优,则B将Pl上到A的邻居删除,同时在P2上建立到B的邻 居。同理,B也会向A发送Hello报文探测邻居,处理方式亦同。等到网络稳定后,A和B之 间仅有一条链路可以建立邻居,其它节点通过LSP报文获取到的A、B之间的邻居信息也仅 有一条。当流量经过时,不论A还是B,都只选择建立了邻居的链路转发流量,另外一条链路 被闲置。
[0017] 2、将两条链路加入到一个聚合组中,在聚合组上建立邻居并转发。此时由聚合组 负责流量的分担,当一条链路出现问题,所有流量都走另一条链路。
[0018] 如上描述的2种方式有各自的局限性:
[0019] 按1的方式组网并没有达到负载分担的效果,总有一条链路闲置,而且链路切换 和重新计算转发表都需要时间,会引起较长时间的震荡;
[0020] 按2的方式组网,在SPB中效果不理想。在SPB网络中转发的报文是一种二次封 装的报文,是在用户报文外面再套一层媒体接入控制(MAC, Media Access Control)头,目 的MAC地址和源MAC地址是由SPB决定的,相对固定。受限于一些交换机芯片的设计,在流 数目较少时负载分担效果不理想,某些情况也有可能达不到分担的效果。

【发明内容】

[0021] 本发明提供SPB网络中的转发路径确定方法及设备,以优化SPB网络中的负载分 担效果。
[0022] 本发明的技术方案是这样实现的:
[0023] -种最短路径桥接SPB网络中的转发路径确定方法,包括:
[0024] 第一 SPB设备与相邻SPB设备建立邻居,其中,当第一 SPB设备与任一相邻SPB设 备间有多条链路时,则针对每条链路分别与该相邻SPB设备建立一个邻居;
[0025] 第一 SPB设备向所述SPB网络广播邻居信息,其中,当与任一相邻SPB设备间有多 条链路时,在广播该相邻SPB设备对应的邻居信息时,只将该相邻SPB设备作为一个邻居广 播邻居信息;
[0026] 第一 SPB设备根据自身建立的邻居信息以及来自其它SPB设备的邻居信息,计算 最短路径优先SPF树,其中,在计算SPF树时,若针对一个邻居SPB设备存在多条邻居信息, 则将该多条邻居信息中的链路开销设为同一值,分别为SPF树绑定不同的等价树ECT算法, 得到每个虚拟服务实例VSI对应的本设备到该多链路邻居SPB设备的转发路径。
[0027] 所述方法进一步包括:
[0028] 当第一 SPB设备向多链路邻居发送报文时,根据报文中的VSI标识确定对应的转 发路径。
[0029] 所述当与任一相邻SPB设备间有多条链路时,在广播该相邻SPB设备对应的邻居 信息时,只将该相邻SPB设备作为一个邻居广播邻居信息包括:
[0030] 该邻居信息中的邻居节点ID为该相邻SPB设备的设备节点ID,链路开销根据第一 SPB设备与该相邻SPB设备间建立邻居关系的所有链路的总传输能力计算获得。
[0031] 所述针对每条链路分别与该相邻SPB设备建立一个邻居包括:
[0032] 向与该相邻SPB设备间的每条链路分别发送Hello报文,其中,向不同链路上发送 的Hello报文中携带的本地节点ID互不相同,从每条链路上接收来自该相邻SPB设备的 Hello报文,其中,从不同链路上接收到的Hello报文中的邻居节点ID互不相同。
[0033] 所述第一 SPB设备向所述SPB网络广播邻居信息进一步包括:
[0034] 当第一 SPB设备接收到任一其它SPB设备发来的邻居信息时,忽略该邻居信息中 本设备的多链路邻居与本设备之间的信息。
[0035] 一种SPB设备,包括:
[0036] 邻居建立模块:与相邻SPB设备建立邻居,其中,当与任一相邻SPB设备间有多条 链路时,则针对每条链路分别与该相邻SPB设备建立一个邻居;
[0037] 邻居信息发布模块:向SPB网络广播邻居信息,接收其它SPB设备发来的邻居信 息,其中,当与任一相邻SPB设备间有多条链路时,在广播该相邻SPB设备对应的邻居信息 时,只将其作为一个邻居进行广播;
[0038] SPF树计算模块:根据邻居建立模块建立的邻居信息以及邻居信息发布模块接收 到的来自其它SPB设备的邻居信息,计算SPF树,其中,在计算SPF树时,若针对一个邻居 SPB设备存在多条邻居信息,则将该多条邻居信息中的链路开销设为同一值,分别为SPF树 绑定不同的ECT算法,得到不同VSI下本设备到该多链路邻居SPB设备间的转发路径。
[0039] 所述设备进一步包括:
[0040] 负载均衡模块:当本设备向多链路邻居发送报文时,根据报文中的VSI标识,在 SPF树计算模块得到的转发路径中,选择对应的转发路径。
[0041] 所述邻居信息发布模块在广播该相邻SPB设备对应的邻居信息时,只将其作为一 个邻居进行广播包括:该邻居信息中的邻居节点ID为该相邻SPB设备的设备节点ID,链路 开销根据与该相邻SPB设备间建立邻居关系的所有链路的总传输能力计算获得。
[0042] 所述邻居建立模块针对每条链路分别与该相邻SPB设备建立一个邻居包括:向与 该相邻SPB设备间的每条链路分别发送Hello报文,其中,向不同链路上发送的Hello报文 中携带的本地节点ID互不相同,从每条链路上接收来自该相邻SPB设备的Hello报文,其 中,从不同链路上接收到的Hello报文中的邻居节点ID互不相同。
[0043] 所述邻居信息发布模块进一步用于,当接收到任一其
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1