【技术实现步骤摘要】
本申请涉及通信
,特别涉及一种路由计算方法和设备。
技术介绍
迪杰斯特拉(Dijkstra)算法是一种单源最短路径算法,用于在有向加权图中计算最小生成树。在有向加权图中,每台设备就是一个节点(Node),设备之间的连接就是一条边(Link),用D (A, B)表示两台设备的距离,相邻设备间的距离就是接口的Cost值。参见图1所示简单组网,节点S分别通过节点A和B与节点D相连,假设该组网中任何一条边的Cost都是1,则S可以计算出到达A的出端口就是S连接到A的端口 P1,距离为I ;到达B的出端口是S连接到B的端口 P2,距离为I ;到达D有两条等价路径:S-A-D和S-B-D,其中,在路径S-A-D上的出端口是S连接到A的端口 P1,距离为2,下一跳为A ;在路径S-B-D上的出端口是S连接到B的端口 P2,距离为2,下一跳为B。中间系统到中间系统(ISIS)最早是ISO在OSI协议栈下设计的动态路由协议,采用TLV架构,易于扩展,被广泛应用于IP网络,是IPv4/IPv6双栈可共用的单播路由协议。ISIS与其它单播路由协议如开放最短路径优先(OSPF) —样,采用Dijkstra算法计算路由设备之间的最短路径,从而算出路由的出端口和下一跳,当存在等价路径时,在等价路径上进行负载分担。基于中间系统到中间系统的最短路径桥(SPB-1SIS)是IEEE802.1laq最新发布的最短路径桥接标准,应用ISIS协议来扩展多生成树协议(Multiple Spanning TreeProtocol,MSTP),用于大二层网络核心层的转发路径的学习。SPB-1S ...
【技术保护点】
一种路由计算方法,应用于SPB?ISIS网络中的路由设备,其特征在于,该方法包括:检测到SPB?ISIS网络拓扑变化时,如果判断确定需要重新计算单播路由,则计算本路由设备到SPB?ISIS网络中其它每个路由设备的所有路径的Cost和跳数,将本路由设备到该其它路由设备的Cost最小的所有路径中跳数最小的路径确定为该其它路由设备对应的最优路径;按照预设规则在SPB?ISIS网络中其它每个路由设备对应的最优路径中优选出该其它路由设备对应的在每种ECT算法下的转发路径,根据优选出的转发路径确定该其它路由设备对应的在该ECT算法下的出端口和下一跳。
【技术特征摘要】
1.一种路由计算方法,应用于SPB-1SIS网络中的路由设备,其特征在于,该方法包括: 检测到SPB-1SIS网络拓扑变化时,如果判断确定需要重新计算单播路由,则计算本路由设备到SPB-1SIS网络中其它每个路由设备的所有路径的Cost和跳数,将本路由设备到该其它路由设备的Cost最小的所有路径中跳数最小的路径确定为该其它路由设备对应的最优路径; 按照预设规则在SPB-1SIS网络中其它每个路由设备对应的最优路径中优选出该其它路由设备对应的在每种ECT算法下的转发路径,根据优选出的转发路径确定该其它路由设备对应的在该ECT算法下的出端口和下一跳。2.根据权利要求1所述的路由计算方法,其特征在于, 所述计算本路由设备到SPB-1SIS网络中其它每个路由设备的所有路径的Cost和跳数,将本路由设备到该其它路由设备的Cost最小的所有路径中跳数最小的路径确定为该其它路由设备对应的最优路径的方法为采用以下步骤: A、将本路由设备的所有邻居路由设备加入候选列表,将本路由设备与每个邻居路由设备间的直连链路添加到该邻居路由设备的ParentLinkList并设置onTree标记,记录本路由设备到该邻居路由设备的跳数,将本路由设备记为该邻居路由设备的父节点; B、判断候选列表是否为空,如果是,则确定本路由设备经过设置有onTree标记的链路到达SPB-1SIS网络中其它每个路由设备的路径为该其它路由设备对应的最优路径,并结束本流程,否则,执行步骤C ; C、从候选列表中取出距离本路由设备的Cost最小的路由设备作为当前路由设备,判断当前路由设备是否有除父节点外的邻居路由设备,如果是,则执行步骤D,否则,返回步骤B执行; D、将当前路由设备的除父节点外的所有邻居路由设备加入候选列表,计算本路由设备经由当前路由设备到达新加入候选列表中的各路由设备的路径的cost和跳数,将当前路由设备记为新加入候选列表中的各路由设备的父节点,对于首次加入候选列表的每个路由设备,将该路由设备与当前路由设备间的直连链路添加到该路由设备的ParentLinkList并设置onTree标记;对于非首次加入候选列表的每个路由设备,如果本路由设备经由当前路由设备到达该路由设备的路径的Cost比原来计算的Cost小或与原来计算的Cost相等但跳数比原来小,则清空该路由设备的ParentLinkList,将该路由设备与当前路由设备间的直连链路添加到该路由设备的ParentLinkList并设置onTree标记;返回步骤B执行。3.根据权利要求2所述的路由计算方法,其特征在于, 所述按照预设规则在SPB-1SIS网络中其它每个路由设备的最优路径中优选出该其它路由设备对应的在每种ECT算法下的转发路径,根据优选出的转发路径确定该其它路由设备对应的在该ECT算法下的出端口和下一跳包括: 按照SPB-1SIS网络中其它每个路由设备对应的最优路径的Cost从小到大的顺序对所有路由设备进行排序,并按照以下步骤确定序列中各路由设备在每种ECT算法下的转发路径: 对于排序中的第一个路由设备,将本路由设备上直连该第一个路由设备的端口确定为该第一个路由设备对应的出端口,且该第一个路由设备对应的下一跳为该第一个路由设备;假设排序中的前K个路由设备的出端口和下一跳已经确定,则对于第Κ+l个路由设备,根据该第κ+l个路由设备的ParentLinkList确定该第Κ+l个路由设备在该第Κ+l个路由设备对应的最优路径上的父节点数,如果确定该Κ+l个路由设备只有一个父节点,则该第Κ+l个路由设备继承该父节点的出端口和下一跳;如果该Κ+l个路由设备具有m个父节点,则确定本路由设备经由该第Κ+l个路由设备的m个父节点对应的转发路径到达该第Κ+l个路由设备的m条最优路径,按照该种ECT算法从所述m条最优路径中优选一条转发路径,该第Κ+l个路由设备继承该第Κ+l个路由设备在优选的转发路径上的父节点的出端口和下一跳;其中,m是大于I的自然数。4.根据权利要求3所述的路由计算方法,其特征在于, 确定排序中前K个路由设备的出端口和下一跳之后,根据该第Κ+l个路由设备的ParentLinkList确定该第Κ+l个路由设备在该第Κ+l个路由设备对应的最优路径上的父节点数之前,进一步包 括:如果该第Κ+l个路由设备对应的所有最优路径之间存在除本路由设备以外的其它交点,则确定该第Κ+l个路由设备继承所有其它交点中任一交点的出端口和下一跳,否则,根据该第Κ+l个路由设备的ParentLinkList确定该第Κ+l个路由设备在该第Κ+l个路由设备对应的最优路径上的父节点数。5.根据权利要求1-4中任一权项所述的路由计算方法,其特征在于,该方法进一步包括: 预先记录SPB-1SIS网络中每条link所在的各组播树的根节点; 检测到SPB-1SIS网络拓扑变化时,进一步确定引起所述拓扑变化的link,根据预先记录的SPB-1SIS网络中每条link所在的各组播树的根节点判断该link是否在组播树上,如果该link在组播树上,则重新计算该link所在的组播树的拓扑;如果该link不在任何组播树上,则若该link的Cost减小,则重新计算SPB-1SIS网络中所有组播树的拓扑,若该link断开或Cost增大,则不对任何组播树的拓扑进行重新计算。6.一种路由设备,应用于SPB-1SIS网络,其特征在于,该路由设备包括:检测单元、判断单元、计算单元、优选单元; 所述检测单元,用于检测SPB-1SIS网络是否发生拓扑变化; 所述判断单元,用于在检测单元检...
【专利技术属性】
技术研发人员:范浩,章海锋,
申请(专利权)人:杭州华三通信技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。