网络系统、节点及节点控制程序、网络控制方法

文档序号:7948366阅读:310来源:国知局
专利名称:网络系统、节点及节点控制程序、网络控制方法
技术领域
本发明涉及在网络中的节点发生故障(node-down)或链路切断等的故障发生时,不用停止通信而能继续进行服务运行的网络系统,尤其涉及通过节点的冗余备份,在故障发生时可继续进行通信的网络系统。
背景技术
首先,举出一例,对采用由作为管理端口状态的协议之一的SpanningTree Protocol(STP)计算的帧的传输路径相关的信息,来在对帧进行传输的网络(以下称作STP网)中传输帧的步骤进行说明。
例如,在图45那样的网络拓扑(topology)的网络中,通过STP计算图45的粗线的路径(生成树,Spanning Tree)。
在该网络中,在将帧从节点5下属的终端传输到节点3下属的终端时,经由节点1传输帧。
同样,在将帧传输到节点2下属的终端时,经由节点1进行传输。
在上述的STP网中,在节点1发生故障的情况下,存在节点5不对节点3、节点2下属的终端进行任何帧传输的问题。
作为消除这种不良情况的方法,有将节点双重化,即使在一方的节点中发生故障,也可采用没有发生故障的另一方节点继续进行帧的传输的方法。
作为将不属于STP网的节点双重化的现有的节点冗余协议,公知有VSRP(Virtual Switch Redundancy Protocol)(Foundry Switch and RouterInstallation and Basic Configuration Guide,Chapter 12“Configuring Metro Features”(http://www.foundrynet.com/services/documentation/sribcg/Metro.html#61625)文献2)、ESRP(Extreme Standby Router Protocol)(ExtremeWare 7.2.0 Software User Guide,Chapter 15,page 347-376(http://www.extremenetworks.com/services/documentation/swuserguides.asp)文献3)等。
以下参照图39,说明应用了对不属于STP网的节点进行冗余化的现有的节点冗余协议(node redundancy protocol)的网络系统中,产生节点发生故障或链路切断的故障时的一般的动作。
在图39中所示的应用现有的节点冗余协议的网络系统中,主节点210和备份节点(backup node)220作为冗余的一对节点而存在。主节点210和备份节点220处于分别经由直接连接(接线)的节点(以下称作Aware节点)230、240被连接的状态。
在这种网络系统中,主节点210处于称作节点冗余协议的主模式的动作状态,并进行通常帧的收发,并且定期地从节点冗余协议的成员端口(member port)P1、P2发送Keepalive帧(Hello消息)。
所谓该现有技术中的节点冗余协议的成员端口,意味着节点冗余协议为有效的端口,即通过节点冗余协议管理其端口状态的端口。端口状态被定义为转发状态(forwarding state)和阻塞状态(blocking state)这两个状态,所谓转发状态是指参照目的地信息而传输接收帧的状态,所谓阻塞状态是指不传输接收帧而废弃的状态。
但是,将接收帧中的、作为节点冗余协议的控制帧的Hello消息以及Flush消息或者其他协议中采用的控制帧,与输入端口的端口状态无关地,发送到对节点内的控制帧进行处理的模块。
因此,在上述的状态中,主节点210中的节点冗余协议的成员端口P1、P2的端口状态被设定为转发状态。
Aware节点230、240,将分别从主节点210侧的端口P1接收的Hello消息从备份节点220侧的端口P2发送。
此外,备份节点220处于称作节点冗余协议的备份模式的动作状态,对由成员端口P1、P2接收的帧中Hello消息或Flush消息进行监视,废弃除此之外的帧。
因此,在该状态下,备份节点220中的节点冗长协议的成员端口P1、P2的端口状态,被设定为阻塞状态。
在上述状态下,分别在Aware节点230、240的下属的终端经由处于主模式的主节点210进行通信。
在此,如图40所示,对处于主节点210发生故障,从而不从主节点210发送上述Hello消息的状况下的情况进行说明。在备份节点220无法以规定次数连续地接收Hello消息的情况下,开始从成员端口P1、P2定期地发送Hello消息的处理的同时,继续对是否接收从主节点210发送的Hello消息进行监视。
备份节点220在开始Hello消息的发送后,经过规定时间后,也没有接收从主节点210发送的Hello消息的情况下,判断主节点210发生故障,切换到主模式。
切换到主模式的备份节点220,使处于阻塞状态的成员端口P1、P2处于转发状态,并且从成员端口P1、P2发送用于表示自己切换到主模式的Flush消息。之后,备份节点220继续从成员端口P1、P2定期地发送Hello消息。
如果Aware节点230、240接收上述Flush消息,则改写FDB(Forwarding database,转发数据库)的内容,该FDB用于存储帧中所示的目的地和该帧的输出端口之间的对应。具体地来说,在接收Flush消息之前,将记载有接收Hello消息的端口的FDB的条目(entry)的输出端口名改写为已接收Flush消息的端口。例如在图40的网络中的Aware节点230,进行以下那样的FDB的改写。在接收来自节点220的Flush消息之前,接收Hello消息的端口为P1,因此FDB中,针对记载P1作为输出端口名的条目,将输出端口名改写为Flush消息的接收端口P2。
如上所述,分别在Aware节点230、240的下属的终端,能够经由切换为主模式的备份节点220继续进行通信。
此外,认为链路切断是与上述的主节点的发生故障不同的故障。采用图41对该情况的动作进行说明。如图41所示,在主节点210和Aware节点230间发生链路切断的情况下,主节点210探测到链路切断,并按照降低自身节点的优先级的方式工作。并且,发送保存有该降低的优先级信息的Hello消息。另一方面,接收该Hello消息的备份节点220,通过得知主节点210的优先级比自节点(备份节点220)低的情况,而开始进行从成员端口P1、P2定期地发送保存有自节点的优先级的Hello消息的处理,并继续对从主节点210发送的Hello消息进行监视。
接收从备份节点220发送的Hello消息的主节点210,通过得知备份节点220的优先级比自节点(主节点210)高,而切换为备份模式,将成员端口P1、P2的端口状态从转发状态变为阻塞状态,并且停止定期地发送Hello消息的处理。之后,主节点210对从备份节点220定期发送的Hello消息进行监视。
在主节点210停止发送Hello消息,备份节点220在规定的时间不能接收从主节点210发送的Hello消息的情况下,将备份节点220切换到主模式。
切换到主模式的备份节点220,使成员端口P1、P2处于转发状态,并且从成员端口P1、P2发送flush消息。之后,备份节点220继续定期地从成员端口P1、P2发送Hello消息。
此时,Flush消息以及Hello消息保存有备份节点220的优先级信息后被发送。
接收Flush消息的Aware节点230、240的动作与上述相同。即,将FDB的条目中的、输出端口名为备份节点220的切换之前接收了Hello消息的端口的条目的输出端口名,改写为接收到Flush消息的端口。
如上那样,处于Aware节点230、240各自下属的终端,能够经由切换为主模式的备份节点220继续进行通信。
如上所述,通过采用现有的节点冗余协议对节点进行冗余化,即使产生节点故障或链路切断等的故障,也能够不用停止通信而继续进行服务运行。
但是,对例如STP那样,应用了管理端口的端口状态的其他协议(以下记述为其他协议)的网络内的节点,应用现有的节点冗余协议的情况下,存在不能传输帧的问题。
例如,图42中表示在STP网的边缘(edge)部分中应用现有的节点冗余协议的网络。在图42中,在主节点210和备份节点220的双方中,节点冗余协议的成员端口成为P1~P4。另一方面,在观察STP网侧时,将主节点210以及备份节点220的STP的成员端口设定为P3、P4。STP的成员端口意味着STP为有效的端口、即其端口状态通过STP管理的端口。这种设定的情况下,关于端口P3、P4的端口状态的管理,在STP和节点冗余协议之间发生竞争,如后所述,存在不能传输帧的问题。
此外,为了避免上述的竞争,在图42中,将主节点210、备份节点220各自的端口P1、P2设定为节点冗余协议的成员端口,将各个成员端口P3、P4设定为STP的成员端口的情况下,当切换主模式和备份模式时,在与STP的成员端口P3、P4连接的节点250以及260中不能发送上述的Flush消息,因此不能改写节点250以及260的FDB。因此,此时在节点250以及260的FDB对象换出(age out)之前的期间,节点250以及260处于不能进行通信(帧的传输)的状态。
以下,对在将主节点210以及备份节点220的端口P3、P4设定为节点冗余协议以及STP这两协议的成员端口的情况下,因端口状态的管理进行竞争,而不能进行通信的问题进行说明。
在图43所示的结构的网络中,节点260经由备份节点220的成员端口P4以及P3与其他节点进行通信。图44中表示对备份节点220中的STP的成员端口的端口状态进行管理的端口状态管理表270的设定内容、和对节点冗余协议的成员端口的端口状态进行管理的端口状态管理表280的设定内容的例子。
关于备份节点220的端口P1、P2,采用STP进行的端口状态的管理处于无效,在采用节点冗余协议的管理中,端口状态处于转发状态。
此外,关于端口P3、P4,在STP的管理中,端口状态均为转发状态,但采用节点冗余协议的管理中,端口状态均处于阻塞状态,在STP和节点冗余协议中,设定互相不同的端口状态。
由于备份节点220的端口P3和P4的STP中的端口状态为转发状态,因此节点260可经由这些端口与其他节点进行通信。
与此相对,由于端口P3和P4的节点冗余协议中的端口状态为转发状态,因此从节点260到其他节点的通信以及从其他节点到节点260的通信分别在备份节点220的成员端口P4及P3上断开。
即、即使STP中的端口状态为转发状态,但由于节点冗余协议中的端口状态为阻塞状态,因此废弃除如STP的BPDU(Bridge Protocol Data Unit)帧或节点冗余协议的Hello消息及Flush消息那样的控制帧以外的通常的数据帧。因此,因STP和节点冗余协议中的端口状态的管理进行竞争,而节点260处于不能与其他节点进行通信的状态。

发明内容
本发明的第一目的在于,提供一种能够使采用如上所述的节点冗余协议的网络和采用其他协议的网络共存的网络系统、节点以及节点控制程序、节点控制方法。
本发明的第二目的在于,提供一种能够解决在使采用节点冗余协议的网络和采用其他协议的网络共存的情况下,在切换主模式和备份模式时,采用其他协议的网络侧的节点的FDB对象换出之前,不能通信的问题的网络系统、节点以及节点控制程序、节点控制方法。
本发明的第三目的在于,提供一种相互连接STP网之间的网络系统,可实现能够提高可靠性的系统的网络系统、节点以及节点控制程序、节点控制方法。
本发明的第四目的在于,提供一种可实现对STP网的路由节点的节点进行冗余化,尤其可有效抑制在故障恢复时需要时间的路由节点的故障的产生的网络系统、节点以及节点控制程序、节点控制方法。
为了实现上述目的,本发明的网络系统中,使采用节点冗余协议的网络和采用其他协议的网络共存,上述网络系统构成为对于属于主节点和备份节点、而且处于节点冗余协议的管理下的成员端口且处于上述其他协议的管理下的端口的状态,不采用节点冗余协议进行管理,而采用上述其他协议进行管理,其中上述主节点和备份节点构成了采用其他协议的网络,此外,在将主节点或备份节点向主模式切换时,向与处于节点冗余协议的管理下的成员端口连接的全部节点,发送用于改写转发数据库的控制帧。
通过本发明,将处于其他协议的管理下的端口的状态从节点冗余协议的管理下除去,从而能够避免采用节点冗余协议和其他协议的端口管理状态进行竞争,并且在切换主节点和备份节点的节点冗余协议中的动作状态时,通过向与处于节点冗余协议的管理下的成员端口连接的所有节点发送Flush消息,从而可刷新与处于其他协议的管理下的成员端口连接的节点的FDB。


图1为表示应用本发明的第一实施例的网络系统的结构的图。
图2为表示第一实施例的主节点和备份节点的结构的框图。
图3为表示第一实施例的与主节点和备份节点直接连接的STP网外的节点的结构的框图。
图4表示第一实施例的与主节点和备份节点直接连接的STP网内的节点的结构。
图5为表示图1的网络系统中的、主节点的节点冗余协议成员端口管理表和STP成员端口管理表的设定内容的图。
图6为表示图1的网络系统中的、备份节点的节点冗余协议成员端口管理表和STP成员端口管理表的设定内容的图。
图7为表示图1的网络系统中的、主节点的端口状态管理表的内容例的图。
图8为表示图1的网络系统中的、备份节点的端口状态管理表的内容例的图。
图9为表示图1的网络系统中的、不属于STP网的Aware节点的节点冗余协议成员端口管理表的设定内容例的图。
图10为表示图1的网络系统中的、不属于STP网的Aware节点的节点冗余协议成员端口管理表的设定内容例的图。
图11为表示图1的网络系统中的、属于STP网的Aware节点的STP成员端口管理表的设定内容例的图。
图12为表示图1的网络系统中的、属于STP网的Aware节点的STP成员端口管理表的设定内容例的图。
图13为表示图1的网络系统中的、将备份节点切换为主模式之后的状态的图。
图14为表示图1的网络系统中的、发送Flush消息所引起的FDB改写后的状态的图。
图15为说明在图1的网络系统中,主节点接收帧时的动作的流程图。
图16为说明在图1的网络系统中,主节点接收帧时的动作的流程图。
图17为说明在图1的网络系统中,主节点接收帧时的动作的流程图。
图18为说明在图1的网络系统中,不属于STP网的Aware节点接收帧时的动作的流程图。
图19为对第一实施例中的网络系统的动作进行说明的顺序图。
图20为表示本发明的第二实施例的网络系统的结构,即在设定多个VLAN的网络系统中应用节点冗余协议时的结构的图。
图21为表示第二实施例中的、主节点和备份节点在各VLAN中的动作状态的图。
图22为表示第二实施例中的主节点和备份节点的节点冗余协议成员端口管理表的各VLAN的设定内容的图。
图23为表示第二实施例中的主节点和备份节点的节点冗余协议成员端口管理表的各VLAN的设定内容的图。
图24为表示第二实施例中的主节点和备份节点的端口状态管理表中设定的、各VLAN中的节点冗余协议的成员端口的端口状态的图。
图25为表示属于STP网的Aware节点的节点冗余协议成员端口管理表中设定的、各VLAN中的节点冗余协议的成员端口的端口状态的图。
图26为表示不属于STP网的Aware节点的节点冗余协议成员端口管理表中设定的、各VLAN中的节点冗余协议的成员端口的端口状态的图。
图27为表示不属于STP网的Aware节点的节点冗余协议成员端口管理表中设定的、各VLAN中的节点冗余协议的成员端口的端口状态的图。
图28为表示本发明的第三实施例的主节点和备份节点的结构的框图。
图29为表示第三实施例的主节点和备份节点的其他结构的框图。
图30为表示第三实施例中的将备份模式切换为主模式之后的状态的图。
图31为表示第三实施例中的通过发送建立了Topology Change标志位的BPDU帧,来改写FDB后的状态的图。
图32为表示在第四实施例的两个STP网间的相互连接部分设置了主节点和备份节点的结构的图。
图33为表示第五实施例的、主节点和备份节点作为STP网的路由节点发挥功能的网络系统的图。
图34为在第五实施例中,因主节点发生故障而将备份节点切换到主模式之后的状态的图。
图35为表示在第五实施例中,对位于STP网的边缘以外的部分的路由节点进行冗余化的网络系统的图。
图36为表示第六实施例的网络系统的结构的图。
图37为表示在图36的网络系统中,通过切断两个链路而使主节点和备份节点全部成为主节点的状态的图。
图38为表示在第六实施例中,用于避免主节点和备份节点全部处于主模式时的问题的路由路径成本的值的设定例的图。
图39为表示应用现有的节点冗余协议的网络系统的例子的图。
图40为说明在图39的网络系统中,因主节点发生故障而将备份模式切换到主模式时的动作的图。
图41为说明在图39的网络系统中,因发生切断而备份节点切换到主模式时的动作的图。
图42为说明使现有的节点冗余协议和STP共存的网络系统中的、成员端口的竞争的图。
图43为说明使现有的节点冗余协议和STP共存的网络系统中的、成员端口的竞争所引起的不良情况的图。
图44为表示图43的网络系统的备份节点中的STP的端口状态管理表的设定内容和节点冗余协议的端口状态管理表的设定内容的例子的图。
图45为表示现有的STP网的网络的例子的图。
图46为对文献1中提出的STP网进行说明的、表示生成树结构的第一例的图。
图47为对文献1中提出的STP网进行说明的、表示生成树结构的第二例的图。
图48为对文献1中提出的STP网进行说明的、表示生成树结构的第三例的图。
图49为对文献1中提出的STP网进行说明的、表示生成树结构的第四例的图。
图50为对文献1中提出的STP网进行说明的、表示生成树结构的第五例的图。
图51为对文献1中提出的STP网进行说明的、表示生成树结构的第六例的图。
具体实施例方式
以下,参照附图,对本发明的优选实施例进行详细的说明。
(第一实施例)在第一实施例中,对构成STP网的节点进行冗余化的方法进行详细地说明。
图1为表示应用本发明的网络系统的结构的图。
属于STP网的节点50、60分别与主节点10以及备份节点20的端口P3、P4连接,不属于STP网的节点30、40分别与主节点10以及备份节点20的端口P1、P2连接。
此外,节点70、80分别与属于STP网的节点50、60连接,节点70、80与主节点10、备份节点20、节点50、节点60一起构成STP网。
主节点10及备份节点20中应用本发明的节点冗余协议,主节点10以及备份节点20中一方的节点处于本发明的节点冗余协议中的主模式的动作状态,另一方处于备份模式的动作状态,各个节点作为被冗余的一对节点中之一动作。
此外,与通过本发明的节点冗余协议冗余化的主节点10以及备份节点20直接连接的属于STP网的节点50、60以及不属于STP网的节点30、40全部作为主节点10以及备份节点20的Aware节点动作。
以下对主节点10以及备份节点20的结构和动作进行说明。
如图2所示,主节点10具备帧解析部110、开关120、端口状态管理表130、FDB(转发数据库)140和帧多路复用部150,在本发明中具有特点的结构为具备STP模块160、节点冗余协议模块170、STP成员端口管理表180和节点冗余协议成员端口管理表190。
另外,备份节点20的结构与主节点10相同。
图5中表示图1的网络结构例中的主节点10的节点冗余协议成员端口管理表190的设定例以及STP成员端口管理表180的设定例。
在图5中所示的主节点10的节点冗余协议成员端口管理表190中,直接连接有Aware节点(节点30、40、50、60)的端口P1~P4登记为主节点10的节点冗余协议的成员端口。
这些成员端口的管理表也可在网络构筑时手动地设定,还可由用户设定。
此外,图5中所示的主节点10的STP成员端口管理表180中,直接连接有构成STP网的节点50、60的端口P3、P4登记为主节点10的STP的成员端口。
图6中表示图1的网络结构例中的备份节点20的节点冗余协议成员端口管理表190的设定例及STP成员端口管理表180的设定例。
在图6中所示的备份节点20的节点冗余协议成员端口管理表190中,连接有Aware节点(节点30、40、50、60)的端口P1~P4登记为备份节点20的节点冗余协议的成员端口。
此外,在图6所示的备份节点20的STP成员端口管理表180中,连接有构成STP网的节点50、60的端口P3、P4登记为备份节点20的STP的成员端口。
以下,对主节点10的动作进行说明。在此,只对主节点10的动作进行说明,但备份节点20的动作也相同。
在主节点10的动作状态处于主模式的情况下,节点冗余协议解析部172对Hello/Flush消息发送部173进行指示,以使从节点冗余协议的成员端口(P1~P4)定期地发送保存有自节点的节点冗余协议相关的信息(例如优先级)的Hello消息。
作为节点冗余协议相关的信息,使用如主节点10以及备份节点20的动作状态互相不同的信息。
例如在将主节点10的动作状态从备份模式更新到主模式时,需要计算主节点10以及备份节点20的节点冗余协议相关的信息,以使备份节点20的动作状态被从主模式更新到备份模式。
在此,对采用优先级作为节点冗余协议相关的信息时,计算优先级的方法的一例进行说明。
作为优先级,从默认或设定接口预先通过手动等设定作为基准的值(以下称作基准值)后,保持在节点冗余协议解析部172中。
作为节点的优先级的计算方法,主要采用利用基准值、节点冗余协议的成员端口数、链接激活(linkup)的成员端口数来计算的方法。
在例如,优先级的基准值为100,节点冗余协议的成员端口为P1~P4这四个,其中链接激活的成员端口为P1~P3这三个的情况下,可按照优先级为,基准值×(节点冗余协议的成员端口数)/(节点冗余协议的成员端口中的链接激活的端口数)=100×3/4=75的方式进行计算。
除了上述的优先级计算方法以外,也可采用考虑涉及节点冗余协议的成员端口以外的端口的信息等的其他信息的计算方法。
Hello/Flush消息发送部173基于自节点的节点冗余协议相关的信息,作成Hello消息,指示帧多路复用部150从节点冗余协议的成员端口发送所作成的Hello消息。
在主节点10的动作状态处于备份模式的情况下,如后所述,对从处于主模式的节点定期地发送的Hello消息进行监视。
下面,参照图15到图17中所示的流程图,对主节点10接收帧时的动作进行说明。
除了在接收作为节点冗余协议的控制帧的Hello消息或Flush消息时之外,主节点10接收帧时的动作不依赖于节点的动作状态(主模式或备份模式)。
由端口P3、P4接收的帧全部被发送到帧解析部110(步骤1501)。
帧解析部110,识别所接收的帧的种类(步骤1502)后,如果接收帧为STP的控制帧即BPDU帧,则向STP模块160内的BPDU接收部161发送接收帧(步骤1503)。
STP模块160的以后的详细动作将后述。
如果接收帧为作为节点冗余协议的控制帧即Hello消息或Flush消息,则帧解析部110将接收帧向节点冗余协议模块170内的Hello/Flush消息接收部171发送(步骤1504)。
关于节点冗余协议模块170以后的详细动作将后述。
如果接收帧为STP的控制帧以及节点冗余协议的控制帧以外的通常的数据帧,则帧解析部110向开关120发送接收帧(步骤1505)。
开关120将接收帧的输入端口作为关键字,参照端口状态管理表130,取得输入端口的端口状态(步骤1506)。
图7表示图1的网络结构例中的主节点10的端口状态管理表130的示例,图8表示图1的网络结构例中的备份节点20的端口状态管理表130的示例。
端口状态管理表130为用于管理属于主节点10或备份节点20的各端口的端口状态(转发状态或阻塞装的任一个状态)的表,通过STP解析部172以及节点冗余协议解析部192对端口状态管理表130进行参照,并且改写内容。
在输入端口的端口状态为阻塞状态时(步骤1507),开关120中断传输接收帧的处理后,废弃接收帧(步骤1508)。
在输入端口的端口状态为转发状态时(步骤1507),开关120将保存在接收帧中的目的地信息作为关键字,对FDB140进行检索后,取得接收帧的输出端口信息(步骤1509),对帧多路复用部150进行指示以使由保存在所取得的输出端口信息中的端口发送接收帧(步骤1510)。
将这种帧的传输方法称作单播(unicast)传输。
在没有检索到与保存在接收帧中的目的地信息相关的输出端口信息的情况下,开关120参照端口状态管理表130,对帧多路复用部150进行指示,以使由除了输入端口之外的处于转发状态的所有端口发送接收帧。
将这种帧的传输方法称作广播传输。
以下,对接收帧为BPDU帧时的STP模块160的动作详细地进行说明。
STP模块160,将连接有属于STP网的节点(节点50、60)的端口(P3、P4)作为STP的成员端口,具有用于管理该端口状态的功能,具备BPDU接收部161、STP解析部162和BPDU发送部163。
STP解析部162,通过对由BPDU接收部161所接收的BPDU帧中保存的帧的传输路径相关的信息(例如路由节点的MAC地址、路由路径开销)和STP解析部162自身所保持的帧的传输路径相关的信息进行解析,由此对自身的帧的传输路径相关的信息进行更新(步骤1511),并且基于所更新的帧的传输路径相关的信息,决定STP的成员端口的端口状态(转发状态或阻塞状态),从而变更端口状态管理表130(步骤1512)。
此外,为了将所更新的帧的传输路径相关的信息传送到与自节点连接的其他节点,STP解析部162对BPDU发送部163进行指示,以使由STP的成员端口发送保存有帧传输的路径相关的信息的BPDU帧(步骤1513)。
BPDU发送部163基于所更新的帧的传输路径相关的信息,作成BPDU帧(步骤1514),对帧多路复用部150进行指示以使从STP的成员端口发送已作成的BPDU帧(步骤1515)。
此外,STP解析部162对BPDU发送部163进行指示,以使从STP的成员端口定期地发送BPDU帧。
BPDU发送部163基于帧的传输路径相关的信息作成BPDU帧,对帧多路复用部150进行指示,以使由STP的成员端口发送已作成的BPDU帧。
以下,对接收帧为Hello消息或Flush消息时的节点冗余协议模块的动作进行详细说明。
节点冗余协议模块170具有将与Aware节点(节点30、40、50、60)连接的端口(P1、P2、P3、P4)作为节点冗余协议的成员端口,用于管理该端口状态的功能,并且具备Hello/Flush消息接收部171、节点冗余协议解析部172和Hello/Flush消息发送部173。
由于节点冗余协议模块170的动作依赖于主节点10的动作状态,因此以下将主模块10的动作状态分为主模式的情况和备份模式的情况进行说明。
首先,参照图16的流程图,对主节点10的动作状态为主模式的情况进行说明。
由Hello/Flush消息接收部171接收Hello消息或Flush消息时(步骤1601),节点冗余协议解析部172通过对保存在所接收的Hello消息或Flush消息中的节点冗余协议相关的信息以及节点冗余协议解析部172自身保持的节点冗余协议相关的信息进行解析,来决定自节点的动作状态(步骤S1602)。
在自节点的动作状态没有更新而仍为主模式的情况下(步骤1603),废弃所接收的Hello消息或Flush消息(步骤1604),结束所接收的Hello消息或Flush消息相关的处理,并且继续定期发送Hello消息。
另一方面,在将自节点的动作状态决定为备份模式的情况下(步骤1603),节点冗余协议解析部172将动作状态切换到备份模式后,为了防止STP和节点冗余协议之间的竞争,而只将不包括在STP的成员端口中的节点冗余协议的成员端口(P1、P2)的端口状态,由转发状态变更为阻塞状态,并对端口状态管理表130的内容进行变更(步骤1605),并且停止定期地发送上述Hello消息的处理(步骤1606)。
之后,如后所述,对从处于主模式的其他节点定期地发送的Hello消息进行监视。
接下来,参照附图17的流程图,对主节点10的动作状态为备份模式的情况进行说明。
在主节点10的动作状态为备份模式的情况下,由Hello/Flush消息接收部171接收Hello消息或Flush消息时(步骤1701),节点冗余协议解析部172通过对保存在所接收的Hello消息或Flush消息中的节点冗余协议相关的信息以及节点冗余协议解析部172自身保持的节点冗余协议相关的信息进行解析,来决定主节点的动作状态(步骤S1702)。
在主节点10的动作状态没有更新而仍为备份模式的情况下(步骤1703),废弃所接收的Hello消息或Flush消息(步骤1704),并且继续对定期发送的Hello消息进行监视。
在将主节点10的动作状态决定为主模式的情况下(步骤1703,是),节点冗余协议解析部172开始由节点冗余协议的成员端口P1~P4定期地发送Hello消息的处理(步骤1705),并且继续对从处于主模式下的节点(备份节点20)发送的Hello消息进行监视。
另一方面,处于主模式的节点(备份节点20),通过接收从主节点10定期地发送的Hello消息,而将自节点的动作状态从主模式更新到备份模式,由于停止定期地发送Hello消息的处理,因此主节点10无法接收Hello消息。
在主节点10开始发送Hello消息以后,在规定时间不能接收从处于主模式下的节点发送的Hello消息的情况下(步骤1706),将自节点的动作状态切换为主模式(步骤1707)。
而且,为了防止STP和节点冗余协议之间的竞争,主节点10只将不包括在STP的成员端口中的节点冗余协议的成员端口(P1、P2)的端口状态由转发状态变为阻塞状态,并对端口状态管理表130的内容进行变更(步骤1708),并且由节点冗余协议的所有成员端口(P1~4)发送Flush消息(步骤1709)。
之后,主节点10继续从节点冗余协议的成员端口P1~P4发送Hello消息。
另外,在开始发送Hello消息以后,主节点10接收Hello消息的情况下,主节点10停止定期地发送Hello消息的处理(步骤1710),对所接收的Hello消息,进行与上述的节点冗余协议相关的信息的解析后,进行决定自节点的动作状态的处理。以后的主节点10的动作与上述相同。
以下,对处于主模式的备份节点20发生故障,处于备份模式的主节点10不能接收Hello消息时的动作进行说明。
在主节点10不能以规定次数连续地接收Hello消息的情况下,判断处于主模式的节点(备份节点20)发生故障,开始由节点冗余协议的成员端口(P1~P4)发送Hello消息的处理。
在开始发送Hello消息之后,主节点10在规定时间不能接收从备份节点20发送的Hello消息的情况下,将自节点的动作状态切换到主模式。
关于以后的动作,与将上述的主节点10从备份模式切换到主模式时的动作相同,因此省略说明。
以上,只对主节点10的动作进行了详细的说明,但在主节点10的动作状态为主模式的情况下,备份节点20的动作状态为备份模式,在主节点10的动作状态为备份模式的情况下,备份节点20的动作状态为主模式,除了上述情况,备份节点20的动作与主节点10的动作相同,因此省略说明。
如上所述,节点冗余协议解析部172只对不包括在STP的成员端口中的节点冗余协议的成员端口的端口状态进行管理,此外在从备份模式切换为主模式时,通过从节点冗余协议的所有成员端口发送Flush消息,从而通过节点冗余协议对STP网内的节点进行冗余化,因此可提供一种即使被冗余化的一方的节点发生故障,也可经由另一方的节点继续通信的网络系统。
以下,对与主节点10和备份节点20的成员端口P1、P2连接的不属于STP网的节点30、40的结构和动作进行说明。
如图3所示,节点30、40具备帧解析部310、开关320、FDB340和帧多路复用部350,还具备节点冗余协议模块370和节点冗余协议成员端口管理表390。关于节点冗余协议模块370,与主节点10的节点冗余协议模块170相同,具备Hello/Flush消息接收部371、节点冗余协议解析部372和Hello/Flush消息发送部373。
图9表示图1的网络结构例中的节点30的节点冗余协议成员端口管理表390的设定例。
图9中所示的节点30的节点冗余协议成员端口管理表390中,将直接连接有主节点10或备份节点20的端口P1、P2登记为节点30的节点冗余协议的成员端口。
图10表示图1的网络结构例中的节点40的节点冗余协议成员端口管理表390的设定例。
图10中所示的节点40的节点冗余协议成员端口管理表390中,将连接有主节点10或备份节点20的端口P1、P2登记为节点40的节点冗余协议的成员端口。
以下,参照图18的流程图,对节点30接收帧时的动作进行说明。
在此,对节点30的动作进行了说明,但节点40的动作与节点30的动作相同,因此省略说明。
由端口P1、P2接收的帧全部被发送到帧解析部310(步骤1801)。
如果接收帧为节点冗余协议的控制帧即Hello消息或Flush消息(步骤1802),则帧解析部310将接收帧发送到节点冗余协议模块370内的Hello/Flush消息接收部371(步骤1803)。
在由Hello/Flush消息接收部371接收的帧为Hello消息时(步骤1804),节点冗余协议解析部372对Hello消息的输入端口进行存储(步骤1805),并且参照节点冗余协议成员端口管理表390,对Hello/Flush消息发送部373指示,以使由除了输入端口之外的节点冗余协议的所有成员端口发送所接收的Hello消息(步骤1806)。
另外,在端口未登记在节点冗余协议成员端口管理表390中时,由输入端口以外的所有端口发送Hello消息。
所接收的Hello消息与输出端口信息一起,从Hello/Flush消息发送部373被发送到帧多路复用部350后,由通过节点冗余协议解析部372指示的端口被发送(步骤1807)。
在由Hello/Flush消息接收部371接收的帧为Flush消息时(步骤1804),节点冗余协议解析部372将FDB340的条目中的输出端口信息为接收到此为止所接收的Hello消息的端口的条目的输出端口,改写为所接收的Flush消息的输入端口(步骤1808),并且参照节点冗余协议成员端口管理表390,对Hello/Flush消息发送部173进行指示,以使由除了输入端口之外的节点冗余协议的所有成员端口发送所接收的Flush消息(步骤1809)。
此外,在没有将端口登记在节点冗余协议成员端口管理表390中时,由输入端口以外的所有端口发送Flush消息。
所接收的Flush消息与输出端口信息一起,从Hello/Flush消息发送部373被发送到帧多路复用部350后,由通过节点冗余协议解析部372指示的端口被发送(步骤1807)。
接下来,对在步骤1802中判定为接收帧是节点冗余协议的控制帧以外的通常的数据帧的情况进行说明。
帧解析部310向开关320发送接收帧(步骤1810),开关320将保存在接收帧中的目的地信息作为关键字,对FDB340进行检索(步骤1811),取得接收帧的输出端口信息后(步骤1812),通过对帧多路复用部350进行指示,以使由保存在所取得的输出端口信息中的端口发送接收帧,从而对接收帧进行单播传输(步骤1813)。
在没有检索到保存在接收帧中的目的地相关的输出端口信息的情况下,开关320对帧多路复用部150进行指示,以使由输入端口以外的所有端口发送接收帧,从而对接收帧进行广播传输(步骤1814)。
如上所述,节点30、40通常将从主模式的节点定期发送的Hello消息传输到备份模式的节点,并且在被冗余化的节点的动作状态互相切换的情况下,接收从新切换为主模式的节点发送的Flush消息,而对FDB340的内容进行更新,从而即使发生链路切断或节点发生故障等的网络故障,而改变主模式的节点,也能继续进行通信。
以下,对与主节点10和备份节点20的成员端口P3、P4连接的属于STP网的节点50、60的结构和动作进行说明。
如图4所示,属于STP网的节点50、60除了图3所示的节点30、40的结构外,还具备STP模块360、STP成员端口管理表380和端口状态管理表330。
关于节点50、60的STP模块360,与主节点10及备份节点20的STP模块160相同,具备BPDU接收部361、STP解析部362和BPDU发送部363。
图11表示图1的网络结构例中的节点50的节点冗余协议成员端口管理表390的设定例以及STP成员端口管理表380的设定例。
图11中所示的节点50的节点冗余协议成员端口管理表390中,将直接连接有主节点10或备份节点20的端口P1、P2登记为节点50的节点冗余协议的成员端口。
此外,图11所示的节点50的STP成员端口管理表380中,将直接连接有构成STP网的节点10、20、60、70的端口P1~4登记为节点50的STP的成员端口。
图12表示图1的网络结构例中的节点60的节点冗余协议成员端口管理表390的设定例以及STP成员端口管理表380的设定例。
图12中所示的节点60的节点冗余协议成员端口管理表390中,将连接有主节点10或备份节点20的端口P1、P2登记为节点60的节点冗余协议的成员端口。
此外,在图12所示的节点60的STP成员端口管理表380中,将直接连接有构成STP网的节点10、20、50、80的端口P1~4登记为节点60的STP的成员端口。
以下,对节点50接收帧时的动作进行说明。
在此,对节点50的动作进行了说明,但节点60的动作与节点50的动作相同,因此省略说明。
由端口P1、P2接收的帧全部被发送到帧解析部310。
帧解析部310对所接收的帧的种类进行识别,如果接收帧为STP的控制帧即BPDU帧,则将接收帧发送到STP模块360内的BPDU接收部361。
以下的STP模块360的动作,与主节点10接收BPDU帧时的STP模块160的动作相同,因此省略说明。
如果接收帧为节点冗余协议的控制帧即Hello消息或Flush消息,则帧解析部310将接收帧发送到节点冗余协议模块370内的Hello/Flush消息接收部371。
以下的节点冗余协议模块370的动作与节点30接收Hello消息或Flush消息时的节点冗余协议模块370的动作相同,因此省略说明。
在接收帧为节点冗余协议的控制帧以外的通常的数据帧的情况下,帧解析部310将接收帧向开关320发送。
以下的传输数据帧的动作,与上述的主模式10传输数据帧的动作相同,因此省略说明。
如上所述,节点50与节点30相同,通常将从主模式的节点定期发送的Hello消息传输到备份模式的节点,并且在被冗余化的节点的动作状态互相切换的情况下,接收从新切换为主模式的节点发送的Flush消息,而对FDB340的内容进行更新,从而即使发生链路切断或节点发生故障等的网络故障,而改变主模式的节点,也能继续进行通信。
接下来,参照图19中所示的顺序图,对第一实施例中的网络系统的动作进行说明。
在图1的网络结构中,主节点10的动作状态为主模式,备份节点20的动作状态为备份模式。
通常主节点10从登记在冗余协议成员端口管理表190中的所有成员端口(P1~P4)定期地发送Hello消息(1901)。
节点30、40、50、60分别由端口P1接收从主节点10发送的Hello消息后(1902),由连接有备份节点20的端口P2发送所接收的Hello消息(1903)。
备份节点20接收从主节点10定期发送的Hello消息(1904),对保存在Hello消息中的节点冗余协议相关的信息进行监视。
在此,对切断主节点10和节点30之间的链路后,主节点10的优先级比备份节点20的优先级低的情况进行说明。
在检测出保存在由端口P2接收的Hello消息中的主节点10的优先级比备份节点20的优先级低(1905)时,将备份节点20的动作状态决定为主模式(1906),从节点冗余协议的成员端口(P1~P4)定期地发送Hello消息(1907)。
节点30、40、50、60将从主节点10发送的Hello消息发送到备份模式20,并且接收从备份节点20发送的Hello消息后(1908),向主节点10发送(1909)。
主节点10接收从备份节点20发送的Hello消息后(1910),检测出保存在Hello消息中的备份节点20的优先级比自节点高(1911),而将自节点的动作状态从主模式切换到备份模式(1912)。
即关于主模式10的端口状态管理表130,将不包括在STP成员端口管理表180中的节点冗余协议成员端口(P1、P2)的端口状态由转发状态变更为阻塞状态(1913)。
而后,主节点10停止定期地发送Hello消息的处理(1914),以后对从备份节点20定期地发送的Hello消息进行监视。
另一方面,备份节点20,在开始发送Hello消息后,规定时间不能接收从主节点10发送的Hello消息的情况下(1915),将自节点的动作状态切换为主模式(1916)。
即关于备份节点20的端口状态管理表130,将不包括在STP成员端口管理表180中的节点冗余协议成员端口(P1、P2)的端口状态由阻塞状态变更为转发状态(1917)。
之后,备份节点20从节点冗余协议的成员端口(P1~P4)发送Flush消息(1918),以后继续定期发送Hello消息。
节点30、40、50、60分别由端口P2接收从备份节点20发送的Flush消息后,将FDB的条目中的、输出端口信息为接收了Hello消息的端口P1的条目的输出端口,改写为Flush消息的接收端口P2(1919)。此外,将从备份节点20发送的Hello消息以及Flush消息发送到主节点10(1920)。
图13表示在备份节点20的动作状态从备份模式切换为主模式后,从备份节点20发送Flush消息,从而Aware节点的FDB被变更之后的网络的状态。
此外,图14中表示互换主节点10和备份节点20的动作状态,而从备份节点20定期地发送Hello消息的状态的网络。
如上所述,在本发明的第一实施例中,将节点构成为,仅由STP模块160来管理作为节点冗余协议的成员端口且STP的成员端口的端口的端口状态,而节点冗余协议模块170对上述端口状态不进行管理,并且在主节点10和备份节点20的动作状态切换的情况下,通过从节点冗余协议的所有的成员端口发送Flush消息的结构,来避免发生关于成员端口的节点冗余协议和STP所引起的竞争,从而可将节点冗余协议应用于STP网的节点。
(实施例2)接下来,对本发明的第二实施例的网络系统进行说明。
在第二实施例中,对在设定多个VLAN(Virtual LAN)的网络系统中应用本发明的节点冗余协议的方法进行说明。
图20为将本发明的节点冗余协议应用于设定有三个VLAN401、402、403的网络系统中的例子,按每个VLAN表示网络系统的状态。
在VLAN401中,节点50为STP网的路由节点,主节点10、备份节点20的动作状态分别为主模式、备份模式。
VLAN402中,主节点10为STP网的路由节点,主节点10、备份节点20的动作状态分别为备份模式、主模式。
VLAN403中,节点70为STP网的路由节点,主节点10、备份节点20的动作状态分别为主模式、备份模式。
如上所述,STP网的路由节点也可按每个VLAN不同,主节点10以及备份节点20的节点冗余协议的动作状态也可按每个VLAN而不同。
图21中表示主节点10以及备份节点20的VLAN401、402、403中的节点冗余协议的动作状态。
主节点10以及备份节点20的节点冗余协议解析部172对图21所示的内容进行保持。
即在第一实施例中,节点冗余协议解析部172只保持有一个自节点的节点冗余协议的动作状态,但在第二实施例中,按每个VLAN保持自节点的节点冗余协议的动作状态。
在本实施例中,按照图22中所示的主节点10以及备份节点20的节点冗余协议成员端口管理表190、图25中所示的节点30、40的节点冗余协议成员端口管理表、图26示出的节点50、60所示的节点冗余协议成员端口管理表那样,按每个VLAN管理节点冗余协议的成员端口。
同样,在本实施例中,按照图23中所示的主节点10以及备份节点20的STP成员端口管理表180、图27中所示的节点50、60的STP成员端口管理表那样,按每个VLAN管理STP的成员端口。
在本实施例中,按照图24中所示的主节点10以及备份节点20的端口状态管理表130那样,按每个VLAN管理各端口的端口状态。
关于主节点10、备份节点20以及节点30、40、节点50、60的结构,除了按每个VLAN管理上述各信息的这一点、FDB140存储有目的地以及VLAN的信息和输出端口信息的对应的这一点之外,与在第一实施例中说明的结构相同。
通过第一实施例所说明的方式,主节点10、备份节点20按每个VLAN401、402、403对成员端口的端口状态进行管理。
主节点10以及备份节点20的各VLAN中的动作,与第一实施例中所说明的主节点10以及备份节点20的动作相比,参照VLAN信息的这一点不同。
在第二实施例中,主节点10以及备份节点20,在Hello消息或Flush消息中保存有用于识别VLAN的ID(VRID)并进行发送。
此外,在主节点10以及备份节点20接收Hello消息或Flush消息的情况下,参照保存在Hello消息或Flush消息中的VRID,对与VRID对应的VLAN,决定节点冗余协议的动作状态(主模式或备份模式)、节点冗余协议的成员端口的端口状态(转发状态或阻塞状态)。
例如,在备份节点20接收保存有与VLAN401对应的VRID1的Hello消息的情况下,备份节点20针对VLAN401中的节点冗余协议的动作状态以及节点冗余协议的成员端口的端口状态进行上述的处理,但对VLAN402、403中的节点冗余协议的动作状态以及成员端口的端口状态不会带来影响。
此外,关于BPDU帧,通过参照保存在帧中的VLAN信息(例如保存在VLAN标签(tag)中的VLAN ID),从而按每个VLAN计算STP网的传输路径,按每个VLAN对STP的成员端口的端口状态进行管理。
此外,关于BPDU帧、Hello消息以及Flush消息以外的数据帧,开关120将保存在帧中的目的地信息以及VLAN信息作为关键字,对FDB 140进行检索后,取得输出端口信息,从而对接收帧进行传输。
Aware节点(节点30、40、50、60)的Hello消息或Flush消息接收时的动作,也与主节点10以及备份节点20相同,除了参照保存在Hello消息或Flush消息中的VRID,对与VRID对应的VLAN进行节点冗余协议的处理以外,与第一实施例中说明的动作相同。
例如,在Aware节点接收了Flush消息时,参照保存在Flush消息中的VRID,将FDB340的条目中的、VLAN信息为与VRID对应的VLAN且输出端口信息为在接收Flush消息以前接收了保存有相同的VRID的Hello消息的端口的条目的输出端口信息,改写为Flush消息的接收端口。
此外,BPDU帧、数据帧接收时的Aware节点的动作与上述的主节点0以及备份节点20相同。
如上所述,通过STP成员端口管理表180、节点冗余协议成员端口管理表190、端口状态管理表130,按每个VLAN对节点冗余协议的动作状态进行管理,并且通过主节点10和备份节点20发送保存有用于识别VLAN的ID(VRID)的Hello消息或Flush消息,从而可将本发明的节点冗余协议适用于设定有多个VLAN的网络系统中。
(第三实施例)接下来,对本发明的第三实施例的网络系统进行说明。
关于第三实施例中的节点冗余协议,对在图1的节点50、60与设置在通常的STP网中的节点相同只具有STP模块360的情况下,不用改良已有的STP对应的节点,而可对STP网中的节点进行冗余的方法进行了说明。
使用与已有的STP对应的节点作为图1的节点50、60,在图1的网络系统中应用第一实施例的节点冗余协议的情况下,由于与已有的STP对应的节点不能识别节点冗余协议的控制帧(Hello消息以及Flush消息),因此发生不能作为节点冗余协议的Aware节点发挥作用的问题。
具体地来说,存在不能将从应用节点冗余协议的节点对的一方节点(主节点10、备份节点20中的一方)发送的Hello消息传输到另一方的节点的问题。
此外,还存在下述问题,即在主节点10、备份节点20的动作状态交换的情况下,由于不能识别由备份模式切换为主模式的节点所发送的Flush消息,从而无法改写FDB,因此通信就会中断到FDB的条目失去时效(aging)为止。
在第三实施例中,使用特殊地址作为保存在Hello消息中的目的地信息,此外利用BPDU帧作为向属于STP网的Aware节点50、60发送的Flush消息,由此即使与已有的STP对应的节点不能识别节点冗余协议的控制帧,也可作为Aware节点发挥功能。
主节点10以及备份节点20的结构与第一实施例中所示的结构基本相同,但在第三实施例中,如图28所示,追加了下述功能,即节点冗余协议模块170的节点冗余协议解析部172能够对STP模块160的STP解析部162进行指示,向节点30、40发送用作Flush消息的、建立了STP的Topology Change标志位的BPDU帧。
首先,对用于使已有的STP对应的节点50、60可传输Hello消息以及Flush消息的方法,以下进行说明。
在第三实施例中,主节点10、备份节点20保存有与已有的STP对应的节点始终判断为未知那样的特殊地址作为目的地信息后,发送Hello消息以及Flush消息。
在主节点10、备份节点20的帧解析部110以及不属于STP网的Aware节点30、40的帧解析部310中,预先将作为目的地信息具有该特殊地址的帧确认为节点冗余协议的控制帧(Hello消息以及Flush消息)。
由此,与第一实施例相同,从主节点10、备份节点20中的一方对节点30、40发送的Hello消息以及Flush消息被传输到另一方的节点。
另一方面,在节点50、60接收Hello消息以及Flush消息的情况下,帧解析部310不会认为节点冗余协议的控制帧,而认为通常的数据帧后,将Hello消息以及Flush消息传输到开关320。
节点50、60的开关320将Hello消息以及Flush消息的目的地信息作为关键字,对FDB340进行检索,但由于使用特殊地址作为Hello消息以及Flush消息的目的地信息,因此检索总是失败。
因此,开关320,由STP的成员端口中的、除Hello消息或Flush消息的接收端口以外的、处于转发状态的所有端口,对所接收的Hello消息或Flush消息进行广播传输。
由于节点50、60的STP的成员端口的任一个与主节点10、备份节点20连接,因此能将从主节点10或备份节点20的一方发送的Hello消息或Flush消息传输到另一方的节点。
此时,通过将用于识别发送Hello消息或Flush消息的节点对(主节点10以及备份节点20)的ID保存在Hello消息以及Flush消息中,从而能够防止接收从其他的节点对发送并在STP网内被广播传输的Hello消息或Flush消息,而使主节点10、备份节点20误动作。
此外,作为解决在Aware节点50、60为与已有的STP对应的节点时,作为不能传输Hello消息的问题的方法还有,在主节点10以及备份节点20的节点冗余协议的成员端口中的、还包括于STP的成员端口中的端口上,不发送Hello消息的方法。
此时,由于Hello消息以及Flush消息只经由不属于STP网的Aware节点30、40被传输,并且Hello消息在STP网中不被广播传输,因此能够防止由其他节点对所发送的Hello消息所引起的误动作,并且具有不由无用的通信量压迫通信频带的优点。
接下来,对在与已有的STP对应的节点50、60接收了Flush消息的情况下,可对FDB340进行清除的方法进行说明。
如图30所示,在处于主模式的主节点10发生故障,而备份节点20从备份模式切换到主模式时与第一实施例相同,通过从备份节点20向节点30、40发送Flush消息,从而改写节点30、40的FDB340。
对于STP网内的节点50、60,备份节点20的节点冗余协议解析部172对STP解析部162进行指示,对在备份节点20的STP成员端口管理表180以及节点冗余协议成员端口管理表190双方中设定的端口发送建立了Topology Change标志位的BPDU帧。
由此,从BPDU发送部163对STP的成员端口发送建立了TopologyChange标志位的BPDU帧。
此外,作为对建立了Topology Change标志位的BPDU帧进行发送的方法有,如图29的主节点10、备份节点20的结构所示那样,在BPDU发送部163和帧多路复用部150之间设置Topology Change标志位赋予部199的方法。
在上述的方法中,节点冗余协议解析部192对Topology Change标志位赋予部199进行指示,以使建立从BPDU发送部152定期发送的BPDU帧的Topology Change标志位,从而可对在STP成员端口中包括的节点冗余协议的成员端口发送Flush消息。
节点50、60接收建立了Topology Change标志位的BPDU帧时,按照STP规范中规定的方式,从BPDU帧的接收端口以外的所有的STP的成员端口发送建立了Topology Change标志位的BPDU帧,并且完全删除FDB340的条目中、输出端口信息为BPDU帧的发送端口的条目。
由于在节点50、60发送制定了Topology Change标志位的BPDU帧的端口中,必须包括连接有主节点10的端口(P1),因此在节点50、60接收BPDU帧以前不需要预先保存接收了Hello消息的端口。
如上所述,通过使用制定了Topology Change标志位的BPDU帧作为对STP网内的Aware节点的Flush消息,对由与已有的STP对应的节点构成的STP网也能应用第三实施例的节点冗余协议。
如上所述,通过第三实施例,构成为将对应已有的STP的节点始终判断为未知的特殊地址用作Hello消息的目的地信息,在STP网内对Hello消息进行广播传输,此外,通过使用制定了Topology Change标志位的BPDU作为针对与已有的STP对应的节点的Flush消息,从而不用对与已有的STP对应的节点实施改良,可对STP网内的节点进行冗余化。
(第四实施例)
接下来,对本发明的第四实施例的网络系统进行说明。
在第四实施例中,对通过在两个STP网间的相互连接部分中应用本发明的节点冗余协议,从而提高STP网间的相互连接部分的可靠性的方法进行说明。
图32表示由主节点10、备份节点20、节点50、60以及70、80构成的STP网1、和由主节点10a、备份节点20a以及节点90、100构成的STP网2,通过连接主节点10、10a、备份节点20、20a的四条链路来相互连接的结构的网络系统。
以下,对在图32所示的网络系统中应用第四实施例中的节点冗余协议的方法进行说明。
首先,将STP网1的主节点10、备份节点20看作被冗余的节点对,将STP网1的节点50、60、STP网2的主节点10a、备份节点20a看作主节点10、备份节点20的Aware节点,并应用第一实施例中的节点冗余协议。
接下来,将STP网2的主节点10a、备份节点20a看作被冗余化的节点对,将STP网2的节点90、100、STP网1的主节点10、备份节点20看作主节点10a、备份节点20a的Aware节点,并应用第一实施例中的节点冗余协议。
此时,主节点10、10a、备份节点20、20a将用于对从主节点10、备份节点20发送的Hello消息以及Flush消息和从主节点10a、备份节点20a发送的Hello消息以及Flush消息进行识别的ID保存在Hello消息以及Flush消息中。
可采用在第二实施例中说明的VRID作为用于识别Hello消息以及Flush消息的ID的例子。
由此,通过保存用于识别在Hello消息以及Flush消息中应用节点冗余协议的节点对的ID,主节点10、10a、备份节点20、20a接收Hello消息或Flush消息时,可判断应作为应用节点冗余协议的节点对之一进行处理,还是应作为Aware节点进行处理。
由于主节点10、10a、备份节点20、20a、节点50、60、90、100的动作与第一以及第二实施例相同,因此省略说明。
如上所述,通过应用本发明的节点冗余协议,可提高两个STP网的相互连接部分的可靠性。
(第五实施例)接下来,对本发明的第五实施例的网络系统进行说明。
在第五实施例中,对用于通过将本发明的节点冗余协议应用于STP网的路由节点,而解决在故障恢复时需要时间的路由节点故障的方法进行说明。
图33表示应用第五实施例中的节点冗余协议的网络系统。
在图33中,主节点10、备份节点20为应用节点冗余协议的节点对,在通常没有发送故障时,主节点10处于主模式,备份节点20处于备份模式。
此外,节点30、40、50为主节点10、备份节点20的Aware节点。
主节点10、备份节点20和不属于STP网的节点30、40间的动作与第一实施例相同,因此省略说明,以下对STP网中的主节点10、备份节点20和节点50间的动作进行说明。
在着眼于图33的STP网时,主节点10、备份节点20均作为STP网的路由节点工作。
为了使主节点10、备份节点20双方的节点作为STP网的路由节点发挥作用,设定值相同且优先级比STP网内的其他节点高的桥接器(bridge)ID,来作为主节点10以及备份节点20的STP的桥接器ID。
此时,主节点10、备份节点20向节点50发送保存有相同的桥接器ID的BPDU帧。
在由两个端口P1、P2接收具有相同的桥接器ID的BPDU帧时且该桥接器ID的优先级在STP网内最高时,STP网内的Aware节点50选择接收了具有高优先级的路由路径开销(Root Path Cost)的BPDU帧的端口作为路由端口(端口状态为转发状态),选择接收了具有低优先级的路由路径开销的BPDU帧的端口作为代替端口(端口状态为阻塞状态)。
由于STP网内的节点50、70、80下属的终端,可与不属于STP网的节点30、40下属的终端进行通信,因此节点50需要选择连接处于主模式的节点的端口作为路由端口。
因此,将处于主模式的节点的路由路径开销的值设定为比处于备份模式的节点的路由路径开销小。
例如,也可将处于主模式的路由路径成本的值设定为“0”,将处于备份模式的路由路径开销的值设定为“1”。
在图33中,处于主模式的主节点10向节点50发送将路由路径开销的值设定为“0”的BPDU帧,处于备份模式的备份节点20向节点50发送将路由路径开销的值设定为1的BPDU帧。
节点50选择端口P1作为路由端口,选择端口P2作为代替端口,并且将端口P1的端口状态设定为转发状态,将端口P2的端口状态设定为阻塞状态。
如上所述,能够对STP网的路由节点应用本发明的节点冗余协议。
以下,对图33的主节点10发生故障而Hello消息到达未达到规定次数,备份节点20从备份模式切换到主模式的情况进行说明。
节点50,通过端口P1的链路断开,检测出主节点10的故障(或者主节点10和节点50间的链路的切断)时,节点50将路由节点从端口P1切换到代替端口即端口P2。
此外,如第一实施例所述,在备份节点20从备份模式切换到主模式时,备份节点20从节点冗余协议的成员端口P1~P3发送Flush消息。
接收Flush消息的节点30、40、50,将FDB340的条目中的、输出端口信息为在接收Flush消息以前接收Hello消息的端口(P1)的条目的输出端口名改写为Flush消息的接收端口(P2)。
此外,由于切换为主模式的备份节点20向节点50发送将路由路径开销的值设定为“0”的BPDU帧,因此节点50选择直接连接备份节点20的端口P2为路由端口。因此,即使在主节点10发生故障而备份节点20切换为主模式的情况下,STP网内的节点50、70、80下属的终端也能经由备份节点20与节点30、40下属的终端继续进行通信。
还有,主节点10从故障中恢复,按照第一实施例所说明的步骤将主节点切换为主模式,将备份节点20切换为备份模式时,处于主模式的主节点10向节点50发送路由路径开销的值比处于备份模式的备份节点20小的BPDU帧。
因此,节点50选择直接连接主节点10的端口P1作为路由端口,选择直接连接备份节点20的端口P2作为代替端口,因此STP网内的节点50、70、80下属的终端能经由主节点10与节点30、40下属的终端继续进行通信。
如上所述,对应用节点冗余协议的节点对设定在STP网中优先级最高的桥接器ID,通过处于主模式的节点发送具有比处于备份模式的节点的优先级高的路由路径开销的BPDU,可将STP网的路由节点冗余化,尤其能有效抑制在故障恢复时需要时间的路由节点的故障的发生。
此外,如图35的网络系统所示,通过对没有连接不属于图34的STP网的节点30、40与主节点10以及备份节点20这样的网络系统,也应用第五实施例的节点冗余协议,而能对STP网的路由节点进行冗余化。
图35中的主节点10、备份节点20的动作,除了只设定端口P3、P4作为节点冗余协议的成员端口以外,与上述的图34的网络系统中的主节点10、备份节点20的动作相同。
此外,图35中的节点50、60的动作与图34的网络系统中的节点50的动作相同。
如上所述,对不位于STP网的边缘部分的路由节点也应用第五实施例的节点冗余协议后,能对路由节点进行冗余化。
另外,在第五实施例中,对通过主节点10和备份节点20对STP网的路由节点进行冗余化的情况进行了说明,但本发明也可适用于图33的网络网不是通常的STP网,而是本申请的申请人在特愿2003-041838号(特开2004-140777号文献1)中提出的、连接多个节点的网络(STP网)中。所谓文献1所述的网络(STP网),为通过将各边缘节点作为路由节点的多个生成树来设定多个传输路径后,传输帧的情况下,采用通过将连接帧的传输目标的边缘节点作为路由节点的生成树设定的路径进行帧传输那样的STP网。
在此,对在特愿2003-041838号(特开2004-140777号文献1)中提出的STP网简单地进行说明。
以下,以由图46那样的六个节点构成的网络为例,对文献1记载的网络(STP网)进行说明。在该例中,设所有的节点(11~16)为边缘节点。
图46为将节点11作为路由节点的生成树的结构图。将该生成树设为树61。树61将节点11的优先级值设定为比节点12~节点16的各节点小的值而作成。通过树61设定的路径,可用于从节点12~16的任一个节点向节点11的帧的单播发送以及从节点11向节点12~节点16的各节点发送广播帧的情况。
图47为将节点12作为路由节点的生成树的结构图。将该生成树设为树62。树62将节点12的优先级值设定为比节点11以及节点13~节点16的各节点小的值而作成。通过树62设定的路径,可用于从节点11或节点13~16的任一个节点向节点12的帧的单播发送以及从节点12向节点11以及节点13~节点16的各节点发送广播帧的情况。
图48为将节点13作为路由节点的生成树的结构图。将该生成树设为树63。树63将节点13的优先级值设定为比节点11~12以及节点14~节点16的各节点小的值而作成。通过树63设定的路径,可用于从节点11~节点12或节点14~16的任一个节点向节点13的帧的单播发送以及从节点13向节点11~节点12以及节点14~节点16的各节点发送广播帧的情况。
图49为将节点14作为路由节点的生成树的结构图。将该生成树设为树64。树64将节点14的优先级值设定为比节点11~13以及节点15~节点16的各节点小的值而作成。通过树64设定的路径,可用于从节点11~节点13或节点15~16的任一个节点向节点14的帧的单播发送以及从节点14向节点11~节点13以及节点15~节点16的各节点发送广播帧的情况。
图50为将节点15作为路由节点的生成树的结构图。将该生成树设为树65。树65将节点15的优先级值设定为比节点11~14以及节点16的各节点小的值而作成。通过树65设定的路径,可用于从节点11~节点14或节点16的任一个节点向节点15的帧的单播发送以及从节点15向节点11~节点14以及节点16的各节点发送广播帧的情况。
图51为将节点16作为路由节点的生成树的结构图。将该生成树设为树66。树66将节点16的优先级值设定为比节点11~节点15的各节点小的值而作成。通过树66设定的路径,可用于从节点11~15的任一个节点向节点16的帧的单播发送以及从节点16向节点11~节点15的各节点发送广播帧的情况。
接下来,参照图46~图51,对上述各图中的节点11~节点16的节点向节点11~节点16的各节点或各节点下属的终端发送帧时的顺序进行叙述。另外,假设各链路的开销相等,各图中的树61~树66的各树的结构均完成,且拓扑稳定。
在从节点12~节点16的各节点向节点11或其下属的终端单播发送帧时,使用由图46记载的树61设定的路径。例如从节点15向节点11发送帧时,节点15向数据帧添加识别树61的标签(例如节点11的节点ID)后,从树61中的上游侧端口(树61中的STP的路由端口)发送数据帧。由树61设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点11时为树61),从树61中的上游侧端口发送数据帧。如上所述,数据帧被向作为树61的路由节点的节点11发送。
在从节点11以及节点13~节点16的各节点向节点12或其下属的终端单播发送帧时,使用由图47记载的树62设定的路径。例如从节点14向节点12发送帧时,节点14向数据帧添加识别树62的标签(例如节点12的节点ID)后,从树62中的上游侧端口(树62中的STP的路由端口)发送数据帧。由树62设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点12时为树62),从树62中的上游侧端口发送数据帧。如上所述,数据帧被向作为树62的路由节点的节点12发送。
在从节点11~节点12以及节点14~节点16的各节点向节点13或其下属的终端单播发送帧时,使用由图48记载的树63设定的路径。例如从节点11向节点13发送帧时,节点11向数据帧添加识别树63的标签(例如节点13的节点ID)后,从树63中的上游侧端口(树63中的STP的路由端口)发送数据帧。由树63设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点13时为树63),从树63中的上游侧端口发送数据帧。如上所述,数据帧被向作为树63的路由节点的节点13发送。
在从节点11~节点13以及节点15~节点16的各节点向节点14或其下属的终端单播发送帧时,使用由图49记载的树64设定的路径。例如从节点12向节点14发送帧时,节点12向数据帧添加识别树64的标签(例如节点14的节点ID)后,从树64中的上游侧端口(树64中的STP的路由端口)发送数据帧。由树64设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点14时为树64),从树64中的上游侧端口发送数据帧。如上所述,数据帧被向作为树64的路由节点的节点14发送。
在从节点11~节点14以及节点16的各节点向节点15或其下属的终端单播发送帧时,使用由图50记载的树65设定的路径。例如从节点16向节点15发送帧时,节点16向数据帧添加识别树65的标签(例如节点15的节点ID)后,由树65中的上游侧端口(树61中的STP的路由端口)发送数据帧。由树65设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点15时为树65),从树65中的上游侧端口发送数据帧。如上所述,将数据帧向作为树65的路由节点的节点15发送。
在从节点11~节点15的各节点向节点16或其下属的终端单播发送帧时,使用由图51记载的树66设定的路径。例如从节点14向节点16发送帧时,节点14对数据帧添加识别树66的标签(例如节点16的节点ID)后,由树66中的上游侧端口(树66中的STP的路由端口)发送数据帧。由树66设定的路径上的各节点,通过参照数据帧的标签,识别使用于数据帧的传输的树(数据帧的目的地为节点16时为树66),从树661中的上游侧端口发送数据帧。如上所述,将数据帧向作为树66的路由节点的节点16发送。
可将第五实施例的节点冗余协议应用于以上说明的文献1中记载的STP网的边缘节点(生成树的路由节点),可使边缘节点冗余化,此外,在将第五实施例的节点冗余协议应用于文献1记载的STP网的多个边缘节点时,如第二实施例所说明那样,将用于识别应用节点冗余协议的节点对的ID保存在Hello消息以及Flush消息中,来防止因其他的节点对发送的Hello消息以及Flush消息而发生节点冗余协议模块的误动作,由此可将多个边缘节点冗余化。
通过将第五实施例的节点冗余协议应用于以上所说明的文献1记载的网络(STP网),来使STP网的边缘节点(生成树的路由节点)冗余化,从而即使边缘节点的主节点产生故障,通过将备份节点切换为主模式也能继续进行帧传输。
另外,通过将本发明应用于文献1所述的STP网而使路由节点冗余化的情况下,也可只对节点冗余协议的成员端口中、不属于STP的成员端口的端口发送Flush消息。
其理由在于,在采用文献1所述的数据传输方式的STP网中,对数据帧进行中继的节点,不是FDB而是基于保存在数据帧的标签中的转发信息(用于识别使用于数据帧的传输的生成树的信息)对数据帧进行中继。
其结果为,在应用第五实施例的节点冗余协议的文献1所述的STP网中,Aware节点50在改写FDB的时间可高速地从故障中恢复。
(第六实施例)接下来,对本发明的第六实施例的网络系统进行说明。
在第六实施例中,对在相互连接基于第五实施例中所示的文献1提出的数据传输方式的STP网间的部分中,应用本发明的节点冗余协议的情况进行说明。
图36表示由主节点10、备份节点20、节点50、60以及70、80构成的STP网1、和由主节点10a、备份节点20a以及节点90、100构成的STP网2,通过连接主节点10、10a、备份节点20、20a的四条链路,相互被连接的结构的网络系统。
STP网1以及STP网2为基于文献1提出的数据传输方式的STP网。
节点50、60、70、70、90、100是搭载有STP模块360,但未不搭载节点冗余协议模块370的与已有STP对应的节点。
以下,对将第六实施例中的节点冗余协议应用于图36中所示的网络系统的情况进行说明。
首先,将STP网1的主节点10、备份节点20看作被冗余化的一对节点,将STP网1的节点50、60、STP网2的主节点10a、备份节点20a看作主节点10、备份节点20的Aware节点,并应用第五实施例中所说明的节点冗余协议。
接下来,将STP网2的主节点10a、备份节点20a看作被冗余化的一对节点,将STP网2的节点90、100、STP网1的主节点10、备份节点20看作主节点10a、备份节点20a的Aware节点,并应用第五实施例中所说明的节点冗余协议。
此时,在第六实施例中的节点冗余协议中,与第四实施例相同,主节点10、10a、备份节点20、20a将用于区分从主节点10、备份节点20发送的Hello消息以及Flush消息和从主节点10a、备份节点20a发送的Hello消息以及Flush消息的ID保存在Hello消息以及Flush消息中。
节点50、60、70、80、90、100为与已有的STP对应的节点,由于不能确认Hello消息,因此存在各节点所属的STP网中,对Hello消息广播传输的问题。
为了解决该问题,在第六实施例中的节点冗余协议中,如第三实施例所说明那样,主节点10、10a、备份节点20、20a不向节点冗余协议的成员端口中、包括在STP成员端口中的端口(P3、P4)发送Hello消息。
此外,如第五实施例所说明那样,由于在文献1所述的STP网中,参照FDB而不传输帧,因此不需要对Aware节点50、60、90、100发送Flush消息。因此,在第六实施例中,主节点10、10a、备份节点20、20a,不向节点冗余协议的成员端口中的包括在STP的成员端口中的端口(P3、P4)发送Flush消息。
在STP网1以及STP网2不是文献1所述的STP网,而是进行通常的帧传输的STP网时,如第三实施例所说明那样,也可对节点冗余协议的成员端口中的、包括在STP的成员端口中的端口(P3、P4)使用建立了Topology Change标志位的BPDU来作为Flush消息。
如上所述,能对将基于文献1提出的数据提出方式的STP网之间相互连接的部分应用节点冗余协议。
但是,有产生以下所述的问题的可能性。
在图36所示的网络系统中,在同时切断主节点10和备份节点20a间的链路以及备份节点20和主节点10a间的链路时,在被冗余化的两个节点对(主节点10和备份节点20、主节点10a和备份节点20a)之间,不可能进行Hello消息以及Flush消息的收发,因此处于备份模式的节点(备份节点20、20a)由于Hello消息未到达而切换为主模式。
因此,如图37所示,会产生主节点10、主节点10a、备份节点20、备份节点20a的动作状态全部处于主模式的状态。
此外,在主节点10和主模式10a间的链路以及备份节点20和备份节点20a之间的链路被同时切断的情况下,也会产生主节点10、主节点10a、备份节点20、备份节点20a的动作状态全部处于主模式的状态。
在上述的状态中,会有在STP网1和STP网2之间不传送帧的可能性。
以下,参照图37,对在STP网1和STP网2之间不能传输帧的理由进行说明。
由于主节点10和备份节点20均为主模式,因此节点50、60在端口P1、P2,接收具有由STP成员端口接收的BPDU中优先级最高的桥接器ID,并且具有相同的路由路径开销的BPDU。
同样,由于主节点10a和备份节点20a均为主模式,因此节点90在端口P1、P2,节点100在端口P2、P3,接收具有由STP成员端口接收的BPDU中优先级最高的桥接器ID,并且具有相同的路由路径开销的BPDU。
在不同的端口接收桥接器ID以及路由路径开销相同的BPDU时,节点50、60、90、100仅由桥接器ID以及路由路径开销的优先级不能决定路由端口以及代替端口,因此采用桥接器ID以及路由路径开销以外的参数(例如发送BPDU的端口的端口号或接收BPDU的端口的端口号等)的优先级,来决定路由端口以及代替端口。
以下,对将接收BPDU端口中、端口号最小的端口选择为路由端口,将第二小的端口选择为代替端口的情况进行说明。
由于节点50、60在端口P1、P2,接收具有优先级最高的桥接器ID、且具有相同的路由路径开销的BPDU,因此选择端口号最小的端口P1作为路由端口,选择端口P2作为代替端口。
同样,节点90选择端口P1作为路由端口,选择端口P2为代替端口,节点100选择端口P2作为路由端口,选择端口P3为代替端口。
如以上所说明那样,在节点30、40、50、60选择连接主节点10以及主节点10a的端口作为路由端口时,切断主节点10和主节点10a之间的链路,因此产生在STP网1和STP网2之间不能传输帧的问题。
以下,对在图36的主节点10、10a、备份节点20、20a中的节点冗余协议的动作状态全部处于主模式时,也能传输帧的方法进行说明。
在第六实施例中的节点冗余协议中,如图38所示,构成为对主节点10、10a、备份节点20、20a设定优先级,并且根据节点冗余协议的动作状态来变更路由路径开销。
在图38的例子中,分别将主节点10的优先级设定为“High”,将备份节点20的优先级设定为“Low”,将主节点10a和备份节点20a的优先级设定为“Etc”。
High、Low、Etc的优先级,High的优先级最高,Low的优先级居中,Etc的优先级最低。
再有,将主节点10的主模式时的路由路径开销设为“0”,将备份模式时的路由路径成本的值设为“3”,将备份节点20的主模式时的路由路径开销的值设为“1”,将备份模式时的路由路径开销的值设为“3”。
此外,将STP网2侧的主节点10a和备份节点20a处于备份模式时的路由路径开销的值设为“3”,对于主模式时的路由路径开销的值,在与优先级为“High”的节点连接的端口链接激活时设为“1”,在链接断开时设定为“2”。
另外,图38中所示的设定内容为一例,将一方的STP网内的节点对的优先级设定为“High”或“Low”,将另一方的STP网内的节点对的优先级设定为“Etc”,将优先级“High”的节点的路由路径开销的值设定为比优先级“Low”的节点的路由路径开销的值小,并且对于优先级“Etc”的节点,能自由地变更设定内容,只要遵守使与优先级为“High”的节点连接的端口链接激活时的节点的路由路径成本的值比端口链接断开时的节点的路由路径开销的值小的规则即可。
如上所述,通过基于图38的设定内容,设定各个优先级和路由路径开销的值,从而在例如STP网1侧的主节点10和备份节点20、STP网2侧的主节点10a和备份节点20a的动作状态全部处于主模式时,针对STP网1的主节点10和备份节点20,选择路由路径开销的值小且与主节点10连接的端口P1作为路由端口,针对STP网2的主节点10a和备份节点20a,由于与优先级“High”的主节点10连接的端口链接激活时的主节点10a的路由路径开销的值比备份节点20a的路由路径开销的值小,因此选择与主节点10a连接的端口(节点90时为端口P1,节点100时为端口P2)为路由端口。
从而,由于节点50、60、90、100选择与主节点10、10a、备份节点20、备份节点20a中、将这些节点相互连接的链路为有效的节点(在上述情况下,为主节点10和主节点10a)连接的端口作为路由端口,因此即使在主节点10、10a、备份节点20、备份节点20a全部为主模式时也能传输数据帧。
如上所述通过第六实施例,可解决下述问题在将基于特愿2003-041838号(特开2004-140777号文献1)提出的数据传输方式的STP网之间相互连接的网络系统中,即使相互连接部分的主节点和备份节点全部处于主模式也存在有可能不能传输数据帧的问题,从而能够实现可进行可靠性高的节点冗余的网络系统。
此外,实现STP网的路由节点的节点冗余,尤其能够有效抑制在故障恢复时需要时间的路由节点的故障的发生。
另外,关于上述各实施例的节点冗余网络系统中的、主节点10、备份节点20以及节点50、60、30、40的各功能,当然可由硬件实现,也可通过在构成各节点的计算机处理装置上执行具有上述各功能的节点冗余控制程序来实现。
该节点冗余控制程序,被保存在磁盘、半导体存储器以及其他记录介质中,从该记录介质被加载到计算机处理装置中,通过控制计算机处理装置的动作,来实现上述各功能。
以上述优选实施例对本发明进行了说明,但本发明并不必须限于省市实施例,在其技术的思想范围内可实施各种变形。
通过本发明的节点冗余网络系统,能够实现以下所述的有益效果。
第一,端口的管理状态不会竞争,可将节点冗余协议应用于采用其他协议的网络内的节点。
第二,在将节点冗余协议应用于应用其他协议的网络内的节点时,解决了在切换主模式和备份模式时,采用其他协议的网络侧的节点的FDB对象换出之前不能通信的问题。
第三,能够实现相互连接STP网之间且进行可靠性高的节点冗余的网络系统。
第四,能够实现STP网的路由节点的节点冗余,尤其能有效地抑制在故障恢复时需要时间的路由节点的故障的产生。
权利要求
1.一种网络系统,使采用节点冗余协议的网络和采用进行端口的状态管理的其他协议的网络共存,上述网络系统构成为对于属于主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述其他协议的管理下的端口的状态,采用上述其他协议进行管理,其中上述主节点和备份节点构成了采用上述其他协议的网络。
2.根据权利要求1所述的网络系统,其特征在于,上述主节点或备份节点,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于进行节点和链路的监视的控制帧。
3.根据权利要求1或2所述的网络系统,其特征在于,上述主节点或备份节点,在向主模式切换时,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于改写转发数据库的控制帧。
4.根据权利要求2或3所述的网络系统,其特征在于,上述主节点和上述备份节点,将在与上述主节点和上述备份节点连接的节点中确认为unknown的目的地地址记载在上述控制帧中,与上述主节点和上述备份节点连接的节点,对上述控制帧进行广播。
5.根据权利要求2~4中任一项所述的网络系统,其特征在于,在上述主节点或上述备份节点发送的、用于进行上述节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存识别信息,该识别信息用于区分发送控制帧的上述主节点和备份节点,而且当上述主节点和备份节点的对存在多对的情况下,用于区分上述主节点和备份节点的对。
6.根据权利要求1~5中任一项所述的网络系统,其特征在于,采用上述其他协议的网络为采用VLAN的网络,上述主节点和上述备份节点按每个VLAN管理端口的状态。
7.根据权利要求6所述的网络系统,其特征在于,在上述主模式的上述主节点或上述备份节点发送的、用于进行节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存用于识别上述VLAN的识别信息。
8.根据权利要求3所述的网络系统,其特征在于,上述主节点和上述备份节点,向属于上述主节点和上述备份节点、而且处于上述节点冗余协议的管理下且处于作为上述其他协议的STP协议的管理下的端口,发送BPDU帧作为用于改写上述转发数据库的控制帧,该BPDU帧树立了基于上述STP协议的Topology Change标志位。
9.根据权利要求2~8中任一项所述的网络系统,其特征在于,上述主节点和上述备份节点,具有对处于上述节点冗余协议的管理下的端口进行管理的管理表;和对处于上述其他协议的管理下的端口进行管理的管理表,通过参照对处于上述节点冗余协议的管理下的端口进行管理的管理表和对处于上述其他协议的管理下的端口进行管理的管理表,发送上述控制帧。
10.根据权利要求2~9中任一项所述的网络系统,其特征在于,上述主节点和上述备份节点具有在所接收的帧为BPDU帧时,对上述BPDU帧的解析和从处于上述其他协议的管理下的端口发送BPDU帧进行控制的模块;和在所接收的帧为用于进行节点和链路的监视的控制帧或用于改写转发数据库的控制帧时,对上述控制帧的解析和从处于上述节点冗余协议的管理下的端口发送上述控制帧进行控制的模块。
11.根据权利要求10所述的网络系统,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的模块,对控制上述BPDU帧的发送的模块指示,向处于上述其他协议的管理下的端口,发送赋予了基于上述STP协议的Topology Change标志位的BPDU帧,其中上述控制帧用于改写上述主节点或上述备份节点的上述转发数据库。
12.根据权利要求11所述的网络系统,其特征在于,上述主节点和上述备份节点具备对控制上述BPDU帧的发送的模块所发送的BPDU帧,赋予TopologyChange标志位的模块。
13.根据权利要求12所述的网络系统,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的模块,对将Topology Change标志位赋予给上述BPDU帧的模块指示,针对在控制上述BPDU帧的发送的模块中,由属于上述主节点和上述备份节点、而且处于上述节点冗余协议的管理下且处于上述STP协议的管理下的端口发送的BPDU帧,赋予基于上述STP协议的Topology Change标志位,其中上述控制帧用于改写上述主节点或上述备份节点的上述转发数据库。
14.根据权利要求2~10中任一项所述的网络系统,其特征在于,与上述主节点和上述备份节点连接的节点,具备将所接收的上述控制帧向上述主节点或上述备份节点发送的模块;和通过接收用于改写上述转发数据库的控制帧,对上述转发数据库进行改写的模块。
15.根据权利要求1~14中任一项所述的网络系统,其特征在于,具有将上述主节点和上述备份节点设为采用了作为上述其他协议的STP协议的网络的路由节点的网络结构,上述主节点和上述备份节点中,将处于主模式下的节点的路由路径开销的值设定为比处于备份模式下的节点小。
16.根据权利要求1~14中任一项所述的网络系统,其特征在于,具有在对构成上述网络的上述主节点和上述备份节点进行双重化的部分中,使采用了作为上述其他协议的STP协议的网络间相互连接的网络结构,对属于一方的上述网络的上述主节点和上述备份节点设定优先级,上述主节点和上述备份节点中,将设定了高优先级的节点的主模式下的路由路径开销的值设定为比设定了低优先级的节点小,并且,当与设定了上述高优先级的节点连接的端口为激活的情况下,将属于另一方的上述网络的上述主节点和上述备份节点的主模式下的路由路径开销的值设定为小于不是激活的情况下的值。
17.根据权利要求16所述的网络系统,其特征在于,采用上述其他协议的网络,为具有下述结构的网络通过将上述网络的各边缘节点设为路由节点的多个生成树来设定多个传输路径,利用通过将连接有帧的传输目标方的边缘节点设为路由节点的生成树来设定的路径,进行帧传输。
18.一种节点,是使采用节点冗余协议的网络和采用进行端口的状态管理的其他协议的网络共存的网络系统的节点,构成为对于属于具有主模式和备份模式的节点、而且处于上述节点冗余协议的管理下且处于上述其他协议的管理下的端口的状态,采用上述其他协议进行管理,其中上述节点构成了采用上述其他协议的网络。
19.根据权利要求18所述的节点,其特征在于,上述主模式或备份模式的节点,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于进行节点和链路的监视的控制帧。
20.根据权利要求18或19所述的节点,其特征在于,在向主模式切换时,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于改写转发数据库的控制帧。
21.根据权利要求19或20所述的节点,其特征在于,上述主模式的节点和上述备份模式的节点,将在与上述主模式的节点和上述备份模式的节点连接的节点中确认为unknown的目的地地址记载在上述控制帧中,与上述主模式的节点和上述备份模式的节点连接的节点,对上述控制帧进行广播。
22.根据权利要求19~21中任一项所述的节点,其特征在于,在上述主模式的节点或上述备份模式的节点发送的、用于进行上述节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存识别信息,该识别信息用于区分发送控制帧的上述主节点和备份节点,而且当上述主节点和备份节点的对存在多对的情况下,用于区分上述主节点和备份节点的对。
23.根据权利要求18~22中任一项所述的节点,其特征在于,采用上述其他协议的网络为采用VLAN的网络,上述主模式的节点和上述备份模式的节点按每个VLAN管理端口的状态。
24.根据权利要求23所述的节点,其特征在于,在上述主模式的节点发送的、用于进行节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存用于识别上述VLAN的识别信息。
25.根据权利要求20所述的节点,其特征在于,上述主模式的节点和上述备份模式的节点,向属于上述主模式的节点和上述备份模式的节点、而且处于上述节点冗余协议的管理下且处于作为上述其他协议的STP协议的管理下的端口,发送BPDU帧作为用于改写上述转发数据库的控制帧,该BPDU帧树立了基于上述STP协议的Topology Change标志位。
26.根据权利要求19~25中任一项所述的节点,其特征在于,上述主模式的节点和上述备份模式的节点,具有对处于上述节点冗余协议的管理下的端口进行管理的管理表;和对处于上述其他协议的管理下的端口进行管理的管理表,通过参照对处于上述节点冗余协议的管理下的端口进行管理的管理表和对处于上述其他协议的管理下的端口进行管理的管理表,发送上述控制帧。
27.根据权利要求19~26中任一项所述的节点,其特征在于,上述主模式的节点和上述备份模式的节点具有在所接收的帧为BPDU帧时,对上述该BPDU帧的解析和从处于上述其他协议的管理下的端口发送BPDU帧进行控制的模块;和在所接收的帧为用于进行节点和链路的监视的控制帧或用于改写转发数据库的控制帧时,对上述控制帧的解析和从处于上述节点冗余协议的管理下的端口发送控制帧进行控制的模块。
28.根据权利要求27所述的节点,其特征在于,在上述主模式和备份模式的模式切换时,对上述控制帧的发送进行控制的模块,对控制上述BPDU帧的发送的模块指示,向处于上述其他协议的管理下的端口,发送赋予了基于上述STP协议的Topology Change标志位的BPDU帧,其中上述控制帧用于改写上述主模式的节点或上述备份模式的节点的上述转发数据库。
29.根据权利要求28所述的节点,其特征在于,上述主模式的节点和上述备份模式的节点具备对控制上述BPDU帧的发送的模块所发送的BPDU帧,赋予TopologyChange标志位的模块。
30.根据权利要求29所述的节点,其特征在于,在上述主模式和备份模式的模式切换时,对上述控制帧的发送进行控制的模块,对将Topology Change标志位赋予给上述BPDU帧的模块指示,针对在控制上述BPDU帧的发送的模块中,由属于上述主模式的节点和上述备份模式的节点、而且处于上述节点冗余协议的管理下且处于上述STP协议的管理下的端口发送的BPDU帧,赋予基于上述STP协议的Topology Change标志位,其中上述控制帧用于改写上述主模式的节点或上述备份模式的节点的上述转发数据库。
31.根据权利要求19~27中任一项所述的节点,其特征在于,与上述主模式的节点或上述备份模式的节点连接的节点,具备将所接收的上述控制帧向上述主模式的节点或上述备份模式的节点发送的模块;和通过接收用于改写上述转发数据库的控制帧,对上述转发数据库进行改写的模块。
32.一种节点控制程序,在使采用节点冗余协议的网络和采用进行端口的状态管理的其他协议的网络共存的节点冗余网络系统中的主节点和备份节点上执行,进行节点冗余的控制,上述节点控制程序具有下述功能对于属于主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述其他协议的管理下的端口的状态,采用上述其他协议进行管理,其中上述主节点和备份节点构成了采用上述其他协议的网络。
33.根据权利要求32所述的节点控制程序,其特征在于,具有下述功能上述主节点或备份节点,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于进行节点和链路的监视的控制帧。
34.根据权利要求32或33所述的节点控制程序,其特征在于,具有下述功能在向主模式切换时,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于改写转发数据库的控制帧。
35.根据权利要求33或34所述的节点控制程序,其特征在于,上述主节点和上述备份节点具有将在与上述主节点和上述备份节点连接的节点中确认为unknown的目的地地址记载在上述控制帧中的功能,与上述主模式的节点和上述备份模式的节点连接的节点具有对上述控制帧进行广播的功能。
36.根据权利要求33~35中任一项所述的节点控制程序,其特征在于,具有下述功能在上述主节点或上述备份节点发送的、用于进行上述节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存识别信息,该识别信息用于区分发送控制帧的上述主节点和备份节点,而且当上述主节点和备份节点的对存在多对的情况下,用于区分上述主节点和备份节点的对。
37.根据权利要求32~36中任一项所述的节点控制程序,其特征在于,采用上述其他协议的网络为采用VLAN的网络,具有上述主节点和上述备份节点按每个VLAN管理端口的状态的功能。
38.根据权利要求37所述的节点控制程序,其特征在于,具有下述功能在上述主节点发送的、用于进行节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存用于识别上述VLAN的识别信息。
39.根据权利要求34所述的节点控制程序,其特征在于,具有下述功能上述主节点和上述备份节点,向属于上述主节点和上述备份节点、而且处于上述节点冗余协议的管理下且处于上述其他协议即STP协议的管理下的端口,发送BPDU帧作为用于改写上述转发数据库的控制帧,该BPDU帧被赋予了基于上述STP协议的Topology Change标志位。
40.根据权利要求33~39中任一项所述的节点控制程序,其特征在于,上述主节点和上述备份节点,具有对处于上述节点冗余协议的管理下的端口进行管理的管理表;和对处于上述其他协议的管理下的端口进行管理的管理表,具备对处于上述节点冗余协议的管理下的端口进行管理的管理表,具有下述功能通过参照对处于上述其他协议的管理下的端口进行管理的管理表,发送上述控制帧。
41.根据权利要求33~40中任一项所述的节点控制程序,其特征在于,上述主节点和上述备份节点具有在所接收的帧为BPDU帧时,对上述BPDU帧的解析和从处于上述其他协议的管理下的端口发送BPDU帧进行控制的功能;和在所接收的帧为用于进行节点和链路的监视的控制帧或用于改写转发数据库的控制帧时,对上述控制帧的解析和从处于上述节点冗余协议的管理下的端口发送控制帧进行控制的功能。
42.根据权利要求41所述的节点控制程序,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的功能,对用于控制上述BPDU帧的发送的功能指示,向处于上述其他协议的管理下的端口,发送赋予了基于上述STP协议的Topology Change标志位的BPDU帧,其中上述控制帧用于改写上述主模式的节点或上述备份模式的节点的上述转发数据库。
43.根据权利要求42所述的节点控制程序,其特征在于,上述主节点和上述备份节点具有对控制上述BPDU帧的发送的模块所发送的BPDU帧,赋予TopologyChange标志位的功能。
44.根据权利要求43所述的节点控制程序,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的功能,对将Topology Change标志位赋予给上述BPDU帧的功能指示,针对在控制上述BPDU帧的发送的功能中,从属于上述主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述STP协议的管理下的端口发送的BPDU帧,赋予基于上述STP协议的Topology Change标志位,其中上述控制帧用于改写上述主节点或上述备份节点的上述转发数据库。
45.根据权利要求33~41中任一项所述的节点控制程序,其特征在于,与上述主节点或上述备份节点连接的节点,具备将所接收的上述控制帧向上述主节点或上述备份节点发送的功能;和通过接收用于改写转发数据库的控制帧,对转发数据库进行改写的功能。
46.一种网络控制方法,在使采用节点冗余协议的网络和采用进行端口的状态管理的其他协议的网络共存的节点冗余网络系统中进行节点冗余的控制,上述网络控制方法具有下述步骤对于属于主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述其他协议的管理下的端口的状态,采用上述其他协议进行管理,其中上述主节点和备份节点构成了采用上述其他协议的网络。
47.根据权利要求46所述的网络控制方法,其特征在于,具有下述步骤上述主节点或备份节点中,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于进行节点和链路的监视的控制帧。
48.根据权利要求46或47所述的网络控制方法,其特征在于,具有下述步骤在向主模式切换时,向与处于上述节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于改写转发数据库的控制帧。
49.根据权利要求47或48所述的网络控制方法,其特征在于,具有在上述主节点和上述备份节点中,将在与上述主节点和上述备份节点连接的节点中确认为unknown的目的地地址记载在上述控制帧中的步骤;和在与上述主模式的节点和上述备份模式的节点连接的节点中,对上述控制帧进行广播的步骤。
50.根据权利要求47~49中任一项所述的网络控制方法,其特征在于,具有下述步骤在上述主节点或上述备份节点发送的、用于进行上述节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存识别信息,该识别信息用于区分发送控制帧的上述主节点和备份节点,而且当上述主节点和备份节点的对存在多对的情况下,用于区分上述主节点和备份节点的对。
51.根据权利要求46~50中任一项所述的网络控制方法,其特征在于,采用上述其他协议的网络为采用VLAN的网络,具有在上述主节点和上述备份节点中,按每个VLAN管理端口的状态的步骤。
52.根据权利要求51所述的网络控制方法,其特征在于,具有在上述主节点发送的、用于进行节点和链路的监视的控制帧和用于改写上述转发数据库的控制帧中,保存用于识别上述VLAN的识别信息的步骤。
53.根据权利要求48所述的网络控制方法,其特征在于,具有下述步骤在上述主节点和上述备份节点中,向属于上述主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述其他协议即STP协议的管理下的端口,发送BPDU帧作为用于改写上述转发数据库的控制帧,该BPDU帧被赋予基于上述STP协议的Topology Change标志位。
54.根据权利要求47~53中任一项所述的网络控制方法,其特征在于,在上述主节点和上述备份节点中,具有对处于上述节点冗余协议的管理下的端口进行管理的管理表和对处于上述其他协议的管理下的端口进行管理的管理表,具备对处于上述节点冗余协议的管理下的端口进行管理的管理表,具有如下步骤通过参照对处于上述其他协议的管理下的端口进行管理的管理表,发送上述控制帧。
55.根据权利要求47~54中任一项所述的网络控制方法,其特征在于,具有在上述主节点和上述备份节点中,在所接收的帧为BPDU帧时,对上述该BPDU帧的解析和从处于上述其他协议的管理下的端口发送BPDU帧进行控制的步骤;和在上述主节点和上述备份节点中,在所接收的帧为用于进行节点和链路的监视的控制帧或用于改写转发数据库的控制帧时,对上述控制帧的解析和从处于上述节点冗余协议的管理下的端口发送控制帧进行控制的步骤。
56.根据权利要求55所述的网络控制方法,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的步骤,对用于控制上述BPDU帧的发送的步骤指示,向处于上述其他协议的管理下的端口,发送赋予了基于上述STP协议的Topology Change标志位的BPDU帧,其中上述控制帧用于改写上述主模式的节点或上述备份模式的节点的上述转发数据库。
57.根据权利要求56所述的网络控制方法,其特征在于,具有在上述主节点和上述备份节点中,对控制上述BPDU帧的发送的模块所发送的BPDU帧,赋予Topology Change标志位的步骤。
58.根据权利要求57所述的网络控制方法,其特征在于,在上述主节点和备份节点的模式切换时,对上述控制帧的发送进行控制的步骤,对将Topology Change标志位赋予给上述BPDU帧的步骤指示,针对在控制上述BPDU帧的发送的步骤中,从属于上述主节点和备份节点、而且处于上述节点冗余协议的管理下且处于上述STP协议的管理下的端口发送的BPDU帧,赋予基于上述STP协议的Topology Change标志位,其中上述控制帧用于改写上述主节点或上述备份节点的上述转发数据库。
59.根据权利要求47~55中任一项所述的网络控制方法,其特征在于,具有在与上述主节点或上述备份节点连接的节点中,将所接收的上述控制帧向上述主节点或上述备份节点发送的步骤;和通过接收用于改写转发数据库的控制帧,对转发数据库进行改写的步骤。
60.根据权利要求46~59中任一项所述的网络控制方法,其特征在于,构成了将上述主节点和上述备份节点设为采用了作为上述其他协议的STP协议的网络的路由节点的网络结构,上述主节点和上述备份节点中,将处于主模式下的节点的路由路径开销的值设定为比处于备份模式下的节点小。
61.根据权利要求46~59中任一项所述的网络控制方法,其特征在于,构成了在对构成上述网络的上述主节点和上述备份节点进行双重化的部分中,使采用了作为上述其他协议的STP协议的网络间相互连接的网络结构,对属于一方的上述网络的上述主节点和上述备份节点设定优先级,上述主节点和上述备份节点中,将设定了高优先级的节点的主模式下的路由路径开销的值设定为比设定了低优先级的节点小,并且,当与设定上述高优先级的节点连接的端口为激活的情况下,将属于另一方的上述网络的上述主节点和上述备份节点的主模式下的路由路径开销的值设定为小于不是激活的情况下的值。
62.根据权利要求60或61所述的网络控制方法,其特征在于,采用上述其他协议的网络,为具有下述结构的网络通过将上述网络的各边缘节点设为路由节点的多个生成树来设定多个传输路径,利用通过将连接有帧的传输目标方的边缘节点设为路由节点的生成树来设定的路径,进行帧传输。
全文摘要
一种网络系统,使采用节点冗余协议的网络和采用进行端口的状态管理的其他协议即STP协议的网络共存,上述网络系统构成为对于属于主节点(10)和备份节点(20)、而且处于节点冗余协议的管理下且处于STP协议的管理下的端口的状态,采用其他协议即STP协议进行管理,其中上述主节点(10)和备份节点(20)构成了采用STP协议的网络。主节点(10)或备份节点(20),向与处于节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于进行节点以及链路的监视的控制帧即Hello消息,并且在向主模式切换时,向与处于节点冗余协议的管理下的端口连接的节点的全部或一部分,发送用于改写转发数据库的控制帧即Flush消息。
文档编号H04L12/56GK101032137SQ20058003336
公开日2007年9月5日 申请日期2005年7月29日 优先权日2004年7月30日
发明者小笠原大作, 榎本敦之, 沟口肇, 砂田圭一, 厩桥正树, 飞鹰洋一, 岩田淳 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1