[发明专利]一种三层网络多生成树链路倒换性能优化的实现方法有效
申请号: | 201010173359.0 | 申请日: | 2010-05-10 |
公开(公告)号: | CN101867513A | 公开(公告)日: | 2010-10-20 |
发明(设计)人: | 曲志丰 | 申请(专利权)人: | 北京东土科技股份有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100041 北京市石*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 三层 网络 生成 树链路 倒换 性能 优化 实现 方法 | ||
1.一种三层网络多生成树链路倒换性能优化的实现方法,其特征在于,将所有的TC进行打包,统一发送;改变清表的过程,在一次拓扑变化的过程中,多个实例都要对一个端口按端口清ARP表时,只对该端口ARP统一清表一次;并在hello报文中不携带TC。
2.根据权利要求1所述的方法,其特征在于,具体实现包括如下两处,一处在端口变转发,要发出TC标志处;另一处为收到TC后的处理;
(1)端口变转发要发送TC,即首次发出TC,将多实例的TC打包统一发送,在一个报文中,携带所有应该带TC的实例;
(2)收到TC,程序会转到TCM状态机,需在各实例TCM处理之前保存下tx_count的值,并将其临时设置为TX_HOLD_COUNT,在TCM处理完之后,将tx_count设置回前边所保存原值,并调用发送报文的状态机发送报文,该报文将会携带所有实例的TC。
3.根据权利要求2所述的方法,其特征在于,具体实现步骤如下:
(1)依次保存所有端口当前的tx_count值,并将其设置为TX_HOLD_COUNT,直至所有端口处理完毕;
(2)依次以实例为参数调用端口信息状态机,在端口状态机中,以实例为参数调用端口角色选择状态机,直至所有实例处理完毕;
如果端口角色从替换角色变为指定角色或根角色,设置“是否首发TC”标志为true,否则设为false;
(3)设置“普通报文是否携带TC”标志为true或false,如果其它报文带TC标志,设置为true,否则设置为false;
(4)取回在步骤(1)中已保存的所有端口的tx_count值;如果tx_count与TX_HOLD_COUNT相等,则给tx_count减一;
(5)判断“是否首发TC”或“普通报文是否携带TC”标志只要有一个为true,端口发送的报文就要携带TC,并设置“是否首发TC”标志为默认值false;否则端口发送的报文不携带TC;
(6)循环(4)-(5),直至所有端口处理完毕;
(7)设置“普通报文是否携带TC”标志为true。
4.根据权利要求1所述的方法,其特征在于,通过端口清表任务信号量的方式进行限制,该信号量保证是否要做清表的动作;具体步骤为:
(1)持有端口清表任务信号量,这样清表任务会等待;
(2)依次判断端口实例链表中的实例是否需要清表,如果需要,设置由该清表函数所使用的端口map;
(3)等端口上的全部实例添加到清表的端口map中后,释放该信号量;这样清表任务只会对多个实例要清多次的某一端口清一次,而不是各个实例分别要清一次。
5.根据权利要求1所述的方法,其特征在于,具体步骤:
(1)设置一个“是否发送TC标志”,在发送hello前将该标志置为false;程序中在对报文进行编码的地方,检测该标志,该标志位被置为false的时候不将TC打包在报文中;
(2)判断“是否发送TC标志”是否被设为true;如果设为true,发送带携带TC的hello报文;设为false,发送不携带TC的hello报文;
(3)在发完后,再设置“是否发送TC标志”为true。
6.根据权利要求1所述的方法,其特征在于,该方法还包含,为了尽可能的减少拓扑改变消息,在非拓扑改变事件引发的报文,不携带TC,具体处理过程同权利要求5。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京东土科技股份有限公司,未经北京东土科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010173359.0/1.html,转载请声明来源钻瓜专利网。