一种防止多次刷新转发表的方法及系统与流程

文档序号:11263611阅读:417来源:国知局
一种防止多次刷新转发表的方法及系统与流程

本发明涉及通信领域,尤其涉及一种防止多次刷新转发表的方法及系统。



背景技术:

目前支持的包括封闭的环路和开放的环路的以太环网保护技术中,都是通过以太保护技术实现当环没有故障时,堵塞其中一个端口。

当环发生第一处故障后,原堵塞端口收到故障通告后将端口放开进入转发状态,进入转发状态后网络拓扑发生变化,需要发送报文通知环上所有节点进行二层发表刷新。即在发生第一处故障或最后一处故障恢复后,环网可能发生拓扑变化,进行环上节点的二层转发表刷新;对于多级环网,还需要向上级网络进行二层转发表刷新的扩散,即上级网络也需要进行二级转发表的刷新。

对于多级网络,如果下级环发生拓扑变化,进入转发状态的端口所在设备将发送flush_fdb报文通知环上节点进行二层转发表刷新;同时下级环的刷新报文扩散到上级环,这样上级环的节点都将收到多份刷新报文,导致多次二层转发表的刷新。如图1所示,现有技术中一种刷新转发表的方法为:

101、转发表刷新报文;

当下级环发生拓扑变化后,转发表刷新报文至环中的每个节点以进行转发表刷新。

102、扩散该转发表刷新报文;

边界节点向上级环扩散该转发表刷新报文。

103、刷新。

根据接收到的刷新报文进行刷新。

当边界节点为2个或2个以上时,如果下级网络拓扑变化,将导致上级网络的设备存在大量不必要的二层转发表刷新问题,增加了网络设备的报文处理开销以及转发表刷新开销,降低了网络性能。



技术实现要素:

本发明实施例提供了一种防止多次刷新转发表的方法及系统。

一种防止多次刷新转发表的方法,包括:

转发表刷新报文或具有刷新功能的报文,所述报文中携带报文产生的事件源信息;扩散收到的刷新报文时需要继续携带所述源信息;判断收到的刷新报文的事件源信息与之前刷新记录的事件源信息是否相同,若相同,则不再刷新,若不相同,则刷新。

一种防止多次刷新转发表的系统,包括:

转发单元,用于转发表刷新报文或具有刷新功能的报文,所述报文中携带报文产生的事件源信息;扩散单元,用于扩散收到的刷新报文,扩散时需要继续携带所述的源信息;刷新单元,用于判断收到的刷新报文的事件源信息与之前刷新记录的事件源信息是否相同,若相同,则不再刷新,若不相同,则刷新。

从以上技术方案可以看出,本发明实施例具有以下优点:

通过在刷新报文中携带事件源,可以判断出新接收到的刷新报文携带的事件源信息与记录中的事件源信息是否相同,若相同,则不再刷新,从而有效抑制不必要的多次刷新。

附图说明

图1为现有技术刷新转发表的方法示意图;

图2为本实施例中防止多次刷新转发表方法一个实施例示意图;

图3为本实施例中防止多次刷新转发表方法另一个实施例示意图;

图4为本实施例中防止多次刷新转发表系统的一个实施例示意图。

具体实施方式

本发明实施例提供了一种防止多次刷新转发表的方法和系统,用于抑制不必要的多次刷新。

当节点发生拓扑变化后,发送的刷新报文中需要携带发生触发二层转发表刷新的触发原因信息,原因信息的一个可选方案为当前节点的mac、端口索引和事件源信息等。

环上节点在收到刷新报文后,进行二层转发表刷新,同时记录本次刷新的事件源信息,判断再次收到的刷新报文,如果再次收到的刷新报文中携带的事件源与保存的最近一次刷新事件源信息相同,则不再进行刷新,从而保证相同的刷新报文只执行一次,抑制了不必要的多次刷新。

下面对本发明防止多次刷新转发表的方法进行详细描述:

本发明方法第一实施例流程图,请参阅图2,主要包括步骤:

201、转发表刷新报文或具有刷新功能的报文;

当节点发生拓扑变化后,发送的刷新报文中需要携带发生触发二层转发表刷新的触发原因。

其中触发原因可选为当前节点的mac、端口索引和事件源等信息。

202、扩散收到的刷新报文;

收到刷新的报文后,网络节点将根据收到的刷新报文进行扩散,并且扩散的时候需要继续携带原事件源信息。

203、判断刷新的报文事件源与记录的事件源信息是否相同。

收到刷新报文后,节点需要保存报文中所携带的事件源信息,如果收到的刷新报文中携带的事件源信息和保存的之前记录的事件源信息相同,那么将不再刷新,如果不相同,则进行刷新操作。

本实施例中,通过在刷新报文中增加携带事件源信息,使得每一个刷新的报文都具有唯一性,当再次收到刷新的报文时,可以通过对比事件源信息,判断该刷新是否已执行,若已执行则不再刷新,从而可以保证对相同的刷新报文只执行一次刷新操作。

下面是本发明方法的另一实施例,请参阅图3,包括:

301、转发表刷新报文或具有刷新功能的报文;

本实施例中的步骤301与前述图2所述的实施例中的步骤201相同,此处不再赘述。

302、扩散收到的刷新报文;

本实施例中的步骤302与前述图2所述的实施例中的步骤202相同,此处不再赘述。

303、判断记录的事件源信息是否超过限制时间;

环上节点在收到刷新报文后,进行二层转发表刷新,同时记录本次刷新的事件源,判断记录的事件源信息是否已超过存储的时间,若超过,执行步骤305,若没超过,执行步骤304。

304、判断刷新报文的事件源与记录的事件源信息是否相同,若相同,执行步骤307,若不相同,执行步骤306;

环上节点再次收到刷新报文时,判断刷新报文中携带的事件源信息与保存的最近一次刷新事件源信息是否相同,若相同,说明收到的刷新报文已执行,则不再进行刷新,若不相同,说明收到的刷新报文还没有执行,则进行刷新。

305、删除;

将超过限制时间的记录的事件源删除。

306、刷新;

当节点判断出接收的刷新报文事件源与记录的事件源信息不相同时,执行刷新操作。

307、不刷新。

当节点判断出记录的事件源没有超过限制时间,而接收的刷新报文事件源信息与记录的事件源信息相同时,不执行刷新操作。

本实施例中,步骤303是以“判断记录的事件源是否超过限制时间”为例判断记录的事件源信息是否为旧的记录,实际应用中,同样可以采用其他的方式,此处不再赘述。

以上是本发明方法的实施方式,下面介绍本发明系统的实施方式,请参阅图4,包括:转发单元401,扩散单元402,刷新单元403。

其中,所述扩散单元402包括存储单元4021,所述刷新单元403包括删除单元4031。

发生拓扑变化后,所述转发单元401转发携带有发生触发二层转发表刷新的触发原因信息,扩散单元402收到刷新报文后,进行二层转发表刷新,存储单元4021记录本次刷新的事件源信息,再次收到刷新报文时,判断记录的刷新事件源信息是否超过限制时间,如果超过,使用删除单元4031删除记录,如果没有超过,判断刷新报文携带的事件源信息和记录的刷新事件源信息是否相同,如果不相同,则通过刷新单元403刷新。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上对本发明所提供的一种防止多次刷新转发表的方法及系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1