CN102195710B - 主交换机重选举方法和系统 - Google Patents
主交换机重选举方法和系统 Download PDFInfo
- Publication number
- CN102195710B CN102195710B CN201010127165.7A CN201010127165A CN102195710B CN 102195710 B CN102195710 B CN 102195710B CN 201010127165 A CN201010127165 A CN 201010127165A CN 102195710 B CN102195710 B CN 102195710B
- Authority
- CN
- China
- Prior art keywords
- switch
- priority
- message
- name
- machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种主交换机重选举方法、一种可重新选举主交换机的系统。本发明无需通过BF重配置使每台交换机所记录的主交换机优先级和主交换机名变更为本机的优先级和交换机名,而且,只需要发起重选举的交换机、以及优先级和交换机名优于该交换机的其它部分交换机参与,而并不要求所有交换机都必须参与重选举,因而除了跳过BF重配置的操作之外,还减少了重选举所涉及的各交换机之间的交互,从而能够缩短主交换机重选举的时间,进而能够尽可能避免交换机系统在较长时间内无法传输数据、甚至丢失数据,提高了交换机系统的可靠性。
Description
技术领域
本发明涉及链路恢复技术,特别涉及主要应用于光纤通道(FibreChannel,FC)网络的一种主交换机重选举方法、一种可重新选举主交换机的系统。
背景技术
随着互联网(Internet)应用的不断增长,网络服务器需要存储的数据也越来越多,这就导致网络服务器的存储容量不断增长。当网络服务器的内部的存储容量无法满足需求时,就需要将网络服务器的存储“外部化”。
为了解决这一问题,现有技术提出了存储网络(Storage Area Networks,SAN)的概念,用于为网络服务器提供专用的外部存储环境,充分利用新的存储硬件技术和网络技术,满足对大容量高可靠数据的存储、访问和备份等需求,而FC就是存储网络中应用最广泛的一种协议,其能够提供比以太网和TCP/IP协议更高速、高效的大数据传输性能。
在FC网络初始化时,网络中的所有交换机会利用交换光纤参数(Exchange Fabric Parameters,EFP)报文来选举出一个主交换机。如图1所示,现有EFP报文中包括:
1字节的命令代码(Command Code),用于标识该报文为EFP报文;
N(N为大于等于0的整数、通常取16的整数倍)字节的域标识列表(Domain_ID_List),其用于在FC网络合并时检测Domain_ID是否冲突,Domain_ID_List中包含若干条记录有发送该EFP报文的交换机所知晓的其它交换机名及域标识(Domain_ID)的表项;实际应用中,在初始化的第一次选举时的Domain_ID_List通常为空,交换机名通常采用全球唯一标识(World Wide Name,WWN);
1字节的记录长度(Record Length),表示Domain_ID_List中每条记录的长度;
3字节的保留域(Reserved);
1字节的主交换机优先级(Principal Switch_Priority),其为发送该EFP报文的交换机所记录的主交换机优先级;
8字节的主交换机名(Principal Switch_Name),其为发送该EFP报文的交换机所记录的主交换机名;
以及,2字节的负载长度(Payload Length),表示该EFP报文的负载长度,其必然大于等于16(Domain_ID_List通常为空时等于16),且通常小于65532。
基于上述EFP报文,每台交换机最初始记录的主交换机优先级和主交换机名通常为本机的优先级和交换机名,因而最初始发送给其它交换机的EFP报文中,Principal Switch_Priority和Principal Switch_Name均为本机的优先级和交换机名;
然后在2倍的光纤稳定时间(Fabric_Stabible_Timeout,F_S_TOV,通常为5秒左右)的定时器计时到达之前,各交换机分别将本机的优先级和交换机名与接收到的EFP报文中的Principal Switch_Priority和PrincipalSwitch_Name进行比较后,如果EFP报文中的Principal Switch_Priority高于本机优先级、或者EFP报文中的Principal Switch_Priority与本机相同但Principal Switch_Name小于本机的交换机名,则将接收到的EFP报文中的Principal Switch_Priority和Principal Switch_Name更新为本机所记录的主交换机优先级和主交换机名,即将更优的优先级和交换机名更新为本机所记录的主交换机优先级和主交换机名;
当2F_S_TOV的定时器计时到达时,如果有交换机发现其接收到的EFP报文中Principal Switch_Priority和Principal Switch_Name均与本机的优先级和交换机名一致,则该交换机成为主交换机、其它所有交换机成为从交换机,并由主交换机为本机、以及其它所有从交换机统一分配一个Domain_ID,然后通过EFP报文通告其它所有从交换机,此时的EFP报文中的Domain_ID_List包含记录有所有从交换机的交换机名、及Domain_ID的若干表项,如图2所示,每一表项包括:
1字节的记录类型(Record_Type),标识该表项属于Domain_ID_List;
1字节的Domain_ID;
一个2字节的Reserved域、以及另一个4字节的Reserved域;
8字节的交换机名(Switch_Name for Domain_ID),表示该表项内的Domain_ID所对应的一台交换机的交换机名。
基于包含有若干如图2所示表项的Domain_ID_List,FC网络中的每台交换机均知晓该FC网络中所有其它交换机的交换机名、及Domain_ID。
此后,选举出的主交换机及所有从交换机均可以根据Domain_ID,为相连的网络服务器和磁盘设备分配FC地址,进而实现网络服务器与磁盘设备之间的数据存储。
实际应用中,如果用于从交换机与主交换机通讯的主链路失效,无论该主链路失效是否导致FC网络的分裂,则均需要重新选举主交换机,以使每台从交换机均可通过主链路与重新选举的主交换机通讯。
在重新选举主交换机时,首先需要发起重选举的交换机触发其所在FC网络中所有交换机的建立光纤(Build Fibre,BF)重配置,BF重配置的时间通常为F_S_TOV,经过BF重配置后,每台交换机所记录的主交换机优先级和主交换机名,由重选举之前的主交换机变更为本机的优先级和交换机名,然后各交换机之间再按照与第一次选举相同的方式交互EFP报文,经过2F_S_TOV之后即可重新选举得到新的主交换机,并依据新的主交换机通告的EFP报文中的Domain_ID_List,更新本机记录的FC网络中所有其它交换机的交换机名、及Domain_ID。
如上可见,现有技术中虽然能够实现由于主链路失效而导致的主交换机重选举,但由于现有重选举的方式要求所有交换机都必须参与,因而重选举的时间至少需要3F_S_TOV、即15秒左右,从而导致交换机系统在较长时间内无法传输数据、甚至丢失数据,进而使得交换机系统的可靠性不高。
发明内容
有鉴于此,本发明提供了一种主交换机重选举方法、一种可重新选举主交换机的系统,能够缩短主交换机重选举的时间。
本发明提供的一种主交换机重选举方法,每台交换机通过上一次主交换机选举过程记录有其所在FC网络中所有交换机的交换机名和优先级,且任一台交换机可按照如下步骤发起当前的主交换机重选举:
如果发起重选举的交换机记录有优于本机的优先级和交换机名,则发起重选举的交换机分别向优先级和交换机名优于本机的其它交换机发送携带有本机优先级和交换机名的第一报文、并同时启动一时长小于3F_S_TOV的定时器;在定时器计时到达时,如果发起重选举的交换机已接收到至少一个所述其它交换机回应的交换机应答SW_ACC报文,则从已回应SW_ACC报文的所述其它交换机中选取优先级和交换机名最优的一个确定为重新选举出的主交换机、并更新本机所记录的主交换机的优先级和交换机名,然后向所有交换机发送携带有重新选举出的主交换机的优先级和交换机名的第二报文,以使所述优先级和交换机名最优的交换机变更为主交换机、其余的交换机更新记录的主交换机的优先级和交换机名,否则,发起重选举的交换机确定本机为重新选举出的主交换机,并向所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
如果发起重选举的交换机的优先级和交换机名优于本机所记录的所有交换机,则发起重选举的交换机直接确定本机为重新选举出的主交换机,并向FC网络中所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名。
每次选举出的主交换机利用交换光纤参数EFP报文为FC网络中的所有交换机分配域ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机。
所述EFP报文中,域ID列表的每个表项包括:
标识该表项属于域ID列表的记录类型;
域ID;
该表项内的域ID所对应的一台交换机的优先级;
该表项内的域ID所对应的一台交换机的交换机名。
发起重选举的交换机发送所述第一报文之后,该方法进一步包括:接收到所述第一报文、但判断出所述第一报文中携带的优先级和交换机名优于本机优先级和交换机名的每台所述其它交换机,分别向发起重选举的交换机返回交换机拒绝SW_RJT报文。
所述定时器的时长为2F_S_TOV。
所述第一报文为交换机光纤交互连接服务SW_ILS协议的报文,并包括:
标识该报文为第一报文三命令代码;
发送该第一报文的交换机的本机优先级;
发送该第一报文的交换机的本机交换机名。
所述第二报文为SW_ILS协议的报文,并包括:
标识该报文为第二报文的命令代码;
重新选举出的主交换机的优先级;
重新选举出的主交换机的交换机名。
本发明提供的一种可重新选举主交换机的系统,包括FC网络中的若干交换机,每台交换机通过上一次主交换机选举过程记录有其所在FC网络中所有交换机的交换机名和优先级,且任一台交换机可发起主交换机的重选举,其中,
如果发起重选举的交换机记录有优于本机的优先级和交换机名,则发起重选举的交换机分别向优先级和交换机名优于本机的其它交换机发送携带有本机优先级和交换机名的第一报文、并同时启动一时长小于3F_S_TOV的定时器;在定时器计时到达时,如果发起重选举的交换机已接收到至少一个所述其它交换机回应的交换机应答SW_ACC报文,则从已回应SW_ACC报文的所述其它交换机中选取优先级和交换机名最优的一个确定为重新选举出的主交换机、并更新本机所记录的主交换机的优先级和交换机名,然后向所有交换机发送携带有重新选举出的主交换机的优先级和交换机名的第二报文,以使所述优先级和交换机名最优的交换机变更为主交换机、其余的交换机更新记录的主交换机的优先级和交换机名,否则,发起重选举的交换机确定本机为重新选举出的主交换机,并向所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
如果发起重选举的交换机的优先级和交换机名优于本机所记录的所有交换机,则发起重选举的交换机直接确定本机为重新选举出的主交换机,并向FC网络中所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名。
每次选举出的主交换机进一步利用交换光纤参数EFP报文为FC网络中的所有交换机分配域ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机。
所述EFP报文中,域ID列表的每个表项包括:
标识该表项属于域ID列表的记录类型;
域ID;
该表项内的域ID所对应的一台交换机的优先级;
该表项内的域ID所对应的一台交换机的交换机名。
接收到所述第一报文、但判断出所述第一报文中携带的优先级和交换机名优于本机优先级和交换机名的每台所述其它交换机,进一步向发起重选举的交换机返回交换机拒绝SW_RJT报文。
所述定时器的时长为2F_S_TOV。
所述第一报文为交换机光纤交互连接服务SW_ILS协议的报文,并包括:
标识该报文为第一报文三命令代码;
发送该第一报文的交换机的本机优先级;
发送该第一报文的交换机的本机交换机名。
所述第二报文为SW_ILS协议的报文,并包括:
标识该报文为第二报文的命令代码;
重新选举出的主交换机的优先级;
重新选举出的主交换机的交换机名。
由上述技术方案可见,本发明无需通过BF重配置使每台交换机所记录的主交换机优先级和主交换机名变更为本机的优先级和交换机名,而且,只需要发起重选举的交换机、以及优先级和交换机名优于该交换机的其它部分交换机参与,而并不要求所有交换机都必须参与重选举,因而除了跳过BF重配置的操作之外,还减少了重选举所涉及的各交换机之间的交互,从而能够缩短主交换机重选举的时间,进而能够尽可能避免交换机系统在较长时间内无法传输数据、甚至丢失数据,提高了交换机系统的可靠性。
附图说明
图1为现有EFP报文格式的示意图;
图2为现有Domain_ID_List中每一表项的示意图;
图3为本发明实施例中Domain_ID_List中每一表项的示意图;
图4为本发明实施例中主交换机重选举方法流程示意图;
图5为本发明实施例中所采用的一种报文格式的示意图;
图6为本发明实施例中所采用的另一种报文格式的示意图;
图7为本发明实施例中所列举的实例一至四所基于的系统结构示意图;
图8为本发明实施例中所列举的实例五至六所基于的系统结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
为了简化描述,本实施例中将FC网络中发起重新选举的交换机称为发起交换机,将发起交换机所属FC网络中除发起交换机之外的所有其它交换机均称为响应交换机。
下面,先对本发明实施例中的主交换机重选举方法进行详细说明。
本实施例中的主交换机重选举方法,需要发起交换机中记录有其它交换机的优先级和交换机名,如果发起交换机中的记录为空,则只能够按照背景技术部分所述的现有方式进行重选举。
其中:
对于主链路失效未导致FC网络分裂而发起重选举的情况,发起交换机中所记录的优先级和交换机名,就是该FC网络上一次选举主交换机时Domain_ID_List中的所有交换机的优先级和交换机名,也即发起交换机所在FC网络中当前所包含的所有交换机的优先级和交换机名;
对于主链路失效已导致FC网络分裂而发起重选举的情况,发起交换机中所记录的优先级和交换机名,虽然也是该FC网络上一次选举主交换机时Domain_ID_List中的所有交换机的优先级和交换机名,但其中的部分交换机已不在发起交换机所在的该FC网络中。
进一步说,在当前重选举之前的上一次主交换机选举过程中,FC网络各交换机之间所交互的EFP报文中,可以在Domain_ID_List的每一表项进一步携带交换机的优先级(Switch_Priority for Domain_ID),表示该表项内的Domain_ID所对应的一台交换机的优先级,以使得每台交换机经过上一次选举主交换机的过程,除了知晓其所在FC网络中所有其它交换机的交换机名、及Domain_ID之外,还进一步知晓其所在FC网络中所有其它交换机的优先级。
参见图3并对比图2,在Domain_ID_List的每一表项进一步携带交换机的优先级可以利用现有Domain_ID_List表项中一个2字节的Reserved域,较佳地,只需要该Reserved域的1字节,并将剩余的1字节合并至另外一个4字节的Reserved域、使之变为5字节。
如此一来,无论哪一台交换机在重选举时作为发起交换机,其内部均记录有其所在FC网络中的所有交换机的优先级和交换机名。而在主链路失效而导致主交换机需要重选举时,究竟由哪一台交换机作为发起交换机,现有技术已给出了多种选择方式,在此不再一一列举。
图4为本发明实施例中主交换机重选举方法流程示意图。如图4所示,对于任一台交换机作为发起交换机的情况,均可以按照如下步骤实现主交换机的重选举:
步骤401,发起交换机依据本机所记录的其它交换机的优先级和交换机名、即其它响应交换机的优先级和交换机名,分别向优先级和交换机名优于本机(即优先级高于本机、或优先级与本机相同但交换机名小于本机)的每台响应交换机发送交换机光纤交互连接服务(Switch Fabric Internal LinkService,SW_ILS)协议的主交换机探测(Principal Switch Detect,PSD)报文,用以探测这些响应交换机与发起交换机之间是否存在正常的链路(例如前文所列举的FC网络分裂的情况)、以及这些响应交换机的优先级和交换机名是否确实优于发起交换机。其中,该PSD报文中携带有发起交换机本机的优先级和交换机名,而且,在发送PSD报文的同时还启动一2F_S_TOV的定时器(定时器的设置并不限于此,只要时长小于3F_S_TOV即可)。
当然,如果发起交换机本机的优先级和交换机名,优于本机所记录的所有其它交换机的优先级和交换机名、即其它响应交换机的优先级和交换机名,则无需执行本步骤即可直接跳转至步骤404。
该PSD报文的一种较佳结构如图5所示,具体包括:
1字节的Command Code,用于标识该报文为PSD报文,可以设置为0x71h;
2字节的Reserved域;
1字节的本机优先级(Local Switch_Priority),表示发送该PSD报文的发起交换机的优先级;
以及,8字节的本机交换机名(Local Switch_Name),表示发送该PSD报文的发起交换机的交换机名。
在步骤401之后:
由于发起交换机中记录的其它响应交换机的优先级和交换机名有可能与响应交换机实际的优先级和交换机名不全相符,例如,某响应交换机的优先级和交换机名被重新设置、且在重选举之前未能被通告至发起交换机,因此,就需要接收到PSD报文的每台响应交换机,分别判断本机的优先级和交换机名是否确实优于PSD报文中携带的优先级和交换机名;
然后,接收到PSD报文、且判断出本机优先级和交换机名确实优于PSD报文中携带的优先级和交换机名的每台响应交换机,分别向发起交换机返回SW_ILS协议的交换机应答(SW_ACC)报文;而接收到PSD报文、但判断出PSD报文中携带的优先级和交换机名优于本机优先级和交换机名的每台响应交换机,则分别向发起交换机返回SW_ILS协议的交换机拒绝(SW_RJT)报文。
步骤402,发起交换机在2F_S_TOV的定时器计时到达时,判断是否已收到SW_ACC报文,如果已有优先级和交换机名优于本机的响应交换机回应了SW_ACC报文,则执行步骤403,否则(即未从优先级和交换机名优于本机的响应交换机收到任何回应、或仅从优先级和交换机名优于本机的响应交换机收到SW_RJT报文),执行步骤404。
步骤403,发起交换机从已回应了的SW_ACC报文的响应交换机中选取优先级和交换机名最优的一个(即优先级最高的一个、或优先级最高的多个之中交换机名最小的一个)确定为重新选举出的主交换机,并更新本机所记录的主交换机的优先级和交换机名,然后执行步骤405。
步骤404,发起将本机确定为重新选举出的主交换机,然后执行步骤405。
步骤405,发起交换机向其所在FC网络中的所有交换机发送SW_ILS协议的主交换机通告(Principal Switch Announce,PSA)报文、用以将本机确定的重新选举出的主交换机通告给FC网络中的所有响应交换机,该PSA报文中携带重新选举出的主交换机的优先级和交换机名。
该PSA报文的一种较佳结构如图6所示,具体包括:
1字节的Command Code,用于标识该报文为PSA报文,可以设置为0x72h;
2字节的Reserved域;
1字节的主交换机优先级(Principal Switch_Priority),表示发起交换机所确定的重新选举出的主交换机的优先级;
以及,8字节的主交换机的交换机名(Principal Switch_Name),表示发起交换机所确定的重新选举出的主交换机的交换机名。
在步骤405之后:
由于所有响应交换机均不知晓发起交换机所确定的重新选举出的主交换机是否为本机,因此,每台接收到PSA报文的响应交换机,还需要判断其接收到的PSA报文中携带的重新选举出的主交换机机优先级和交换机名是否与本机一致;
然后,接收到PSA报文、且判断出本机优先级和交换机名与PSA报文中携带的相一致的响应交换机,将本机设置为主交换机、并利用如图3所示的EFP报文为其所在FC网络的所有交换机分配Domain_ID;而接收到PSA报文、但判断出本机优先级和交换机名与PSA报文中携带的不一致的响应交换机,则仅利用PSA报文更新本机所记录的主交换机优先级和交换机名,并等待接收重新选举出的主交换机所发送的EFP报文。
至此,上述流程结束。
由上述流程可见,本实施例中的主交换机重选举方法,无需通过BF重配置使每台交换机所记录的主交换机优先级和主交换机名变更为本机的优先级和交换机名,而且,只需要发起交换机、以及优先级和交换机名由于发起交换机的部分响应交换机参与,而并不要求发起交换机、及所有响应交换机都必须参与重选举,因而除了跳过BF重配置的操作之外,还减少了重选举所涉及的各交换机之间的交互,从而能够缩短主交换机重选举的时间,进而能够尽可能避免交换机系统在较长时间内无法传输数据、甚至丢失数据,提高了交换机系统的可靠性。
以上,是对本实施例中主交换机重选举方法的说明。下面,再对本实施例中可重新选举主交换机的系统进行详细说明。
本实施例中可重新选举主交换机的系统,包括FC网络中的若干交换机,其中,每台交换机通过上一次主交换机选举过程记录有其所在FC网络中所有交换机的交换机名和优先级,而且,任一台交换机可发起主交换机的重选举。具体说:
发起交换机,依据本机所记录的其它交换机的优先级和交换机名、即其它响应交换机的优先级和交换机名,分别向优先级和交换机名优于本机(即优先级高于本机、或优先级与本机相同但交换机名小于本机)的每台响应交换机发送SW_ILS协议的PSD报文,用以探测这些响应交换机与发起交换机之间是否存在正常的链路(例如前文所列举的FC网络分裂的情况)、以及这些响应交换机的优先级和交换机名是否确实优于发起交换机。其中,该PSD报文中携带有发起交换机本机的优先级和交换机名,PSD报文可以为如图5所示的格式,而且,在发送PSD报文的同时还启动一2F_S_TOV的定时器。
响应交换机,由于其实际的优先级和交换机名可能与发起交换机中记录的不全相符,例如,某响应交换机的优先级和交换机名被重新设置、且在重选举之前未能被通告至发起交换机,因此,就需要在接收到PSD报文之后,判断本机的优先级和交换机名是否确实优于PSD报文中携带的优先级和交换机名;如果是,则向发起交换机返回SW_ILS协议的SW_ACC报文;否则,向发起交换机返回SW_ILS协议的SW_RJT报文。
此后,发起交换机在2F_S_TOV的定时器计时到达时,判断是否已收到SW_ACC报文;
如果已有优先级和交换机名优于本机的响应交换机回应了SW_ACC报文,则从已回应了的SW_ACC报文的响应交换机中选取优先级和交换机名最优的一个(即优先级最高的一个、或优先级最高的多个之中交换机名最小的一个)确定为重新选举出的主交换机,并更新本机所记录的主交换机的优先级和交换机名,然后向其所在FC网络中的所有交换机发送SW_ILS协议的PSA报文、用以将本机确定的重新选举出的主交换机通告给FC网络中的所有响应交换机,该PSA报文中携带重新选举出的主交换机的优先级和交换机名、即已回应SW_ACC报文的响应交换机中最优的优先级和交换机名,PSA报文可以为如图6所示的格式;
否则(即未从优先级和交换机名优于本机的响应交换机收到任何回应、或仅从优先级和交换机名优于本机的响应交换机收到SW_RJT报文),发起将本机确定为重新选举出的主交换机,然后向其所在FC网络中的所有交换机发送SW_ILS协议的PSA报文、用以将本机确定的重新选举出的主交换机通告给FC网络中的所有响应交换机,该PSA报文中携带重新选举出的主交换机的优先级和交换机名、即发起交换机的优先级和交换机名,PSA报文可以为如图6所示的格式。
然后,各台响应交换机由于并不知晓发起交换机所确定的重新选举出的主交换机是否为本机,因此,每台接收到PSA报文的响应交换机,还需要判断其接收到的PSA报文中携带的重新选举出的主交换机机优先级和交换机名是否与本机一致;
如果一致,则将本机设置为主交换机、并利用如图3所示的EFP报文为其所在FC网络的所有交换机分配Domain_ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机记录;
如果不一致,则仅利用PSA报文更新本机所记录的主交换机优先级和交换机名,并等待接收重新选举出的主交换机所发送的EFP报文。
当然,如果发起交换机的优先级和交换机名优于本机所记录的所有交换机,则发起交换机无需再发送PSD报文、也无需启动定时期,而是直接确定本机为重新选举的主交换机,并向FC网络中所有交换机发送所述PSA报文即可,用以将本机确定的重新选举出的主交换机通告给FC网络中的所有响应交换机,该PSA报文中携带重新选举出的主交换机的优先级和交换机名、即发起交换机的优先级和交换机名,最后再按照前述方式利用EFP报文分配Domain_ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机记录。
可见,本实施例中可重选举主交换机的系统中,无需通过BF重配置使每台交换机所记录的主交换机优先级和主交换机名变更为本机的优先级和交换机名,而且,只需要发起交换机、以及优先级和交换机名由于发起交换机的部分响应交换机参与,而并不要求发起交换机、及所有响应交换机都必须参与重选举,因而除了跳过BF重配置的操作之外,还减少了重选举所涉及的各交换机之间的交互,从而能够缩短主交换机重选举的时间,进而能够尽可能避免交换机系统在较长时间内无法传输数据、甚至丢失数据,提高了交换机系统的可靠性。
最后,再结合几个实例,对本实施例中主交换机重选举方法、以及可重新选举主交换机的系统进行进一步说明。
实例一~实例四的系统结构如图7所示,包括交换机1~6,其中,交换机1为主交换机;交换机1与交换机2之间的链路ISL1、交换机2与交换机3之间的链路ISL2、交换机1与交换机4之间的链路ISL3、交换机4与交换机5之间的链路ISL4、以及交换机5与交换机6之间的链路ISL5均为主链路,交换机5与交换机2之间还具有作为非主链路的链路ISL6。
且,在图7中,交换机4与交换机5之间作为主链路的链路ISL4失效,但由于作为非主链路的链路ISL6存在,因而不会导致FC网络的分裂,此时,可以由交换机5发起主交换机的重选举。
实例一:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现交换机1的优先级高于本机优先级、交换机2的优先级与本机相同但交换机2的交换机名小于本机,因而只向优先级和交换机名优于本机的交换机1和2发送PSD报文,并在PSD报文中携带有本机的优先级和交换机名,同时还启动2F_S_TOV的定时器。其中,发送给交换机1的PSD报文,其目的地址为交换机1,因而其它交换机接收到该PSD报文后即向交换机1转发;发送给交换机2的PSD报文,其目的地址为交换机2,因而其它交换机接收到该PSD报文后即向交换机2转发。
当交换机1接收到PSD报文后,判断出本机的优先级确实高于PSD报文中所携带的交换机5的优先级,即判断出本机的优先级和交换机名优于交换机5,因而向交换机5回应SW_ACC报文;
当交换机2接收到PSD报文后,判断出本机的优先级与PSD报文中所携带的交换机5的优先级相同、且本机的交换机名确实小于PSD报文中所携带的交换机5的交换机名,即判断出本机的优先级和交换机名优于PSD报文中所携带的交换机5的优先级和交换机名,因而向交换机5回应SW_ACC报文。
2F_S_TOV的定时器计时到达时,交换机5已收到交换机1和交换机2回应的SW_ACC报文,但由于交换机1的优先级高于交换机2,即交换机1的优先级和交换机名最优,因而将交换机1确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为交换机1的优先级和交换机名,并通过本机所有端口发送携带有交换机5的优先级和交换机名的PSA报文,该PSA报文可被交换机1~4、以及交换机6收到。
然后,交换机1在接收到PSA报文后,将本机设置为主交换机;交换机2~4、以及交换机6接收到PSA报文后,将本机所记录的主交换机优先级和交换机名更新为交换机1的优先级和交换机名。
最后,交换机1为交换机1~6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机2~6记录。
实例二:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现交换机1的优先级高于本机优先级、交换机2的优先级与本机相同但交换机2的交换机名小于本机,因而只向优先级和交换机名优于本机的交换机1和2发送PSD报文,并在PSD报文中携带有本机的优先级和交换机名,同时还启动2F_S_TOV的定时器。其中,发送给交换机1的PSD报文,其目的地址为交换机1,因而其它交换机接收到该PSD报文后即向交换机1转发;发送给交换机2的PSD报文,其目的地址为交换机2,因而其它交换机接收到该PSD报文后即向交换机2转发。
当交换机1接收到PSD报文后,判断出本机的优先级已被修改并低于PSD报文中所携带的交换机5的优先级,即判断出交换机5的优先级和交换机名优于本机,因而向交换机5回应SW_RJT报文;
当交换机2接收到PSD报文后,判断出本机的优先级与PSD报文中所携带的交换机5的优先级相同、且本机的交换机名确实小于PSD报文中所携带的交换机5的交换机名,即判断出本机的优先级和交换机名优于PSD报文中所携带的交换机5的优先级和交换机名,因而向交换机5回应SW_ACC报文。
2F_S_TOV的定时器计时到达时,交换机5已收到交换机2回应的SW_ACC报文,因而将交换机2确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为交换机2的优先级和交换机名,并通过本机所有端口发送携带有交换机5的优先级和交换机名的PSA报文,该PSA报文可被交换机1~4、以及交换机6收到。
然后,交换机2在接收到PSA报文后,将本机设置为主交换机;交换机1、3、4、6接收到PSA报文后,将本机所记录的主交换机优先级和交换机名更新为交换机2的优先级和交换机名。
最后,交换机2为交换机1~6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机1、3~6记录。
实例三:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现交换机1的优先级高于本机优先级、交换机2的优先级与本机相同但交换机2的交换机名小于本机,因而只向优先级和交换机名优于本机的交换机1和2发送PSD报文,并在PSD报文中携带有本机的优先级和交换机名,同时还启动2F_S_TOV的定时器。其中,发送给交换机1的PSD报文,其目的地址为交换机1,因而其它交换机接收到该PSD报文后即向交换机1转发;发送给交换机2的PSD报文,其目的地址为交换机2,因而其它交换机接收到该PSD报文后即向交换机2转发。
当交换机1接收到PSD报文后,判断出本机的优先级已被修改并低于PSD报文中所携带的交换机5的优先级,即判断出交换机5的优先级和交换机名优于本机,因而向交换机5回应SW_RJT报文;
当交换机2接收到PSD报文后,判断出本机的优先级与PSD报文中所携带的交换机5的优先级相同、且本机的交换机已被修改并大于PSD报文中所携带的交换机5的交换机名,即判断出PSD报文中所携带的交换机5的优先级和交换机名优于本机,因而向交换机5回应SW_RJT报文。
2F_S_TOV的定时器计时到达时,交换机5仅收到了交换机1和2回应的SW_RJT报文,而未能收到交换机1和2回应的SW_ACC报文,因而将本机确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为本机的优先级和交换机名,并通过本机所有端口发送携带有交换机5的优先级和交换机名的PSA报文,该PSA报文可被交换机1~4、以及交换机6收到。
然后,交换机1~4、6接收到PSA报文后,将本机所记录的主交换机优先级和交换机名更新为交换机5的优先级和交换机名。
最后,交换机5为交换机1~6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机1~4、6记录。
实例四:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现本机的优先级和交换机名优于交换机1~4、以及6,因而直接将本机确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为本机的优先级和交换机名,并通过本机所有端口发送携带有交换机5的优先级和交换机名的PSA报文,该PSA报文可被交换机1~4、以及交换机6收到。
然后,交换机1~4、6接收到PSA报文后,将本机所记录的主交换机优先级和交换机名更新为交换机5的优先级和交换机名。
最后,交换机5为交换机1~6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机1~4、6记录。
实例五~实例六的系统结构如图8所示,包括交换机1~6,其中,交换机1为主交换机;交换机1与交换机2之间的链路ISL1、交换机2与交换机3之间的链路ISL2、交换机1与交换机4之间的链路ISL3、交换机4与交换机5之间的链路ISL4、以及交换机5与交换机6之间的链路ISL5均为主链路,但与图7的不同之处在于,图8中的交换机5与交换机2之间不具有任何链路。
因而在图8中,交换机4与交换机5之间作为主链路的链路ISL4失效,会导致FC网络的分裂,此时,仅以分裂后的交换机5和交换机6的部分FC网络为例进行说明,可以由交换机5发起主交换机的重选举。
实例五:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现交换机1的优先级高于本机优先级、交换机2的优先级与本机相同但交换机2的交换机名小于本机,因而只向优先级和交换机名优于本机的交换机1和2发送PSD报文,并在PSD报文中携带有本机的优先级和交换机名,同时还启动2F_S_TOV的定时器。
但是,由于交换机5所在FC网络,与交换机1和2所在FC网络已分裂,因而交换机1和2无法收到交换机5所发送的PSD报文。
因此,2F_S_TOV的定时器计时到达时,交换机5既未收到交换机1和2回应的SW_ACC报文、也未收到交换机1和2回应的SW_RJT报文,从而将本机确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为本机的优先级和交换机名,并通过其所有端口发送携带有交换机5的优先级和交换机名的PSA报文,但该PSA报文只有交换机6能够收到。
然后,交换机6接收到PSA报文后,将本机所记录的主交换机优先级和交换机名更新为交换机5的优先级和交换机名。
最后,交换机5为交换机5和6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机6记录。
实例六:
交换机5查找其本机记录的交换机1~4、以及交换机6的优先级和交换机名,发现交换机1的优先级高于本机优先级、交换机6的优先级与本机相同但交换机6的交换机名小于本机,因而只向优先级和交换机名优于本机的交换机1和6发送PSD报文,并在PSD报文中携带有本机的优先级和交换机名,同时还启动2F_S_TOV的定时器。
但是,由于交换机5所在FC网络,与交换机1和2所在FC网络已分裂,因而交换机1无法收到交换机5所发送的PSD报文,只有交换机6能够收到该PSD报文。
当交换机6接收到PSD报文后,判断出本机的优先级与PSD报文中所携带的交换机5的优先级相同、且本机的交换机名确实小于PSD报文中所携带的交换机5的交换机名,即判断出本机的优先级和交换机名优于PSD报文中所携带的交换机5的优先级和交换机名,因而向交换机5回应SW_ACC报文。
2F_S_TOV的定时器计时到达时,交换机5已收到交换机6回应的SW_ACC报文,因而将交换机6确定为重新选举出的主交换机,将本机所记录的主交换机优先级和交换机名更新为交换机6的优先级和交换机名,并通过本机所有端口发送携带有交换机6的优先级和交换机名的PSA报文,该PSA报文只能够被交换机6收到。
然后,交换机6在接收到PSA报文后将本机设置为主交换机,再为交换机5~6分配Domain_ID、并利用EFP报文分配将Domain_ID、以及FC网络中所有交换机的交换机名和优先级通告给交换机5记录。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种主交换机重选举方法,其特征在于,每台交换机通过上一次主交换机选举过程记录有其所在FC网络中所有交换机的交换机名和优先级,且任一台交换机可按照如下步骤发起当前的主交换机重选举:
如果发起重选举的交换机记录有优于本机的优先级和交换机名,则发起重选举的交换机分别向优先级和交换机名优于本机的其它交换机发送携带有本机优先级和交换机名的第一报文、并同时启动一时长小于3F_S_TOV的定时器;在定时器计时到达时,如果发起重选举的交换机已接收到至少一个所述其它交换机回应的交换机应答SW_ACC报文,则从已回应SW_ACC报文的所述其它交换机中选取优先级和交换机名最优的一个确定为重新选举出的主交换机、并更新本机所记录的主交换机的优先级和交换机名,然后向所有交换机发送携带有重新选举出的主交换机的优先级和交换机名的第二报文,以使所述优先级和交换机名最优的交换机变更为主交换机、其余的交换机更新记录的主交换机的优先级和交换机名,否则,发起重选举的交换机确定本机为重新选举出的主交换机,并向所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
如果发起重选举的交换机的优先级和交换机名优于本机所记录的所有交换机,则发起重选举的交换机直接确定本机为重新选举出的主交换机,并向FC网络中所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
其中F_S_TOV表示光纤稳定时间。
2.如权利要求1所述的主交换机重选举方法,其特征在于,每次选举出的主交换机利用交换光纤参数EFP报文为FC网络中的所有交换机分配域ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机。
3.如权利要求2所述的主交换机重选举方法,其特征在于,所述EFP报文中,域ID列表的每个表项包括:
标识该表项属于域ID列表的记录类型;
域ID;
该表项内的域ID所对应的一台交换机的优先级;
该表项内的域ID所对应的一台交换机的交换机名。
4.如权利要求1至3中任一项所述的主交换机重选举方法,其特征在于,发起重选举的交换机发送所述第一报文之后,该方法进一步包括:接收到所述第一报文、但判断出所述第一报文中携带的优先级和交换机名优于本机优先级和交换机名的每台所述其它交换机,分别向发起重选举的交换机返回交换机拒绝SW_RJT报文。
5.如权利要求1至3中任一项所述的主交换机重选举方法,其特征在于,所述定时器的时长为2F_S_TOV。
6.如权利要求1至3中任一项所述的主交换机重选举方法,其特征在于,所述第一报文为交换机光纤交互连接服务SW_ILS协议的报文,并包括:
标识该报文为第一报文的命令代码;
发送该第一报文的交换机的本机优先级;
发送该第一报文的交换机的本机交换机名。
7.如权利要求1至3中任一项所述的主交换机重选举方法,其特征在于,所述第二报文为SW_ILS协议的报文,并包括:
标识该报文为第二报文的命令代码;
重新选举出的主交换机的优先级;
重新选举出的主交换机的交换机名。
8.一种可重新选举主交换机的系统,其特征在于,包括FC网络中的若干交换机,每台交换机通过上一次主交换机选举过程记录有其所在FC网络中所有交换机的交换机名和优先级,且任一台交换机可发起主交换机的重选举,其中,
如果发起重选举的交换机记录有优于本机的优先级和交换机名,则发起重选举的交换机分别向优先级和交换机名优于本机的其它交换机发送携带有本机优先级和交换机名的第一报文、并同时启动一时长小于3F_S_TOV的定时器;在定时器计时到达时,如果发起重选举的交换机已接收到至少一个所述其它交换机回应的交换机应答SW_ACC报文,则从已回应SW_ACC报文的所述其它交换机中选取优先级和交换机名最优的一个确定为重新选举出的主交换机、并更新本机所记录的主交换机的优先级和交换机名,然后向所有交换机发送携带有重新选举出的主交换机的优先级和交换机名的第二报文,以使所述优先级和交换机名最优的交换机变更为主交换机、其余的交换机更新记录的主交换机的优先级和交换机名,否则,发起重选举的交换机确定本机为重新选举出的主交换机,并向所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
如果发起重选举的交换机的优先级和交换机名优于本机所记录的所有交换机,则发起重选举的交换机直接确定本机为重新选举出的主交换机,并向FC网络中所有交换机发送所述第二报文,以使所有交换机更新记录的主交换机的优先级和交换机名;
其中F_S_TOV表示光纤稳定时间。
9.如权利要求8所述的系统,其特征在于,每次选举出的主交换机进一步利用交换光纤参数EFP报文为FC网络中的所有交换机分配域ID、并将FC网络中所有交换机的交换机名和优先级通告给每台交换机。
10.如权利要求9所述的系统,其特征在于,所述EFP报文中,域ID列表的每个表项包括:
标识该表项属于域ID列表的记录类型;
域ID;
该表项内的域ID所对应的一台交换机的优先级;
该表项内的域ID所对应的一台交换机的交换机名。
11.如权利要求8至10中任一项所述的系统,其特征在于,接收到所述第一报文、但判断出所述第一报文中携带的优先级和交换机名优于本机优先级和交换机名的每台所述其它交换机,进一步向发起重选举的交换机返回交换机拒绝SW_RJT报文。
12.如权利要求8至10中任一项所述的系统,其特征在于,所述定时器的时长为2F_S_TOV。
13.如权利要求8至10中任一项所述的系统,其特征在于,所述第一报文为交换机光纤交互连接服务SW_ILS协议的报文,并包括:
标识该报文为第一报文的命令代码;
发送该第一报文的交换机的本机优先级;
发送该第一报文的交换机的本机交换机名。
14.如权利要求8至10中任一项所述的系统,其特征在于,所述第二报文为SW_ILS协议的报文,并包括:
标识该报文为第二报文的命令代码;
重新选举出的主交换机的优先级;
重新选举出的主交换机的交换机名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010127165.7A CN102195710B (zh) | 2010-03-16 | 2010-03-16 | 主交换机重选举方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010127165.7A CN102195710B (zh) | 2010-03-16 | 2010-03-16 | 主交换机重选举方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102195710A CN102195710A (zh) | 2011-09-21 |
CN102195710B true CN102195710B (zh) | 2014-02-05 |
Family
ID=44603155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010127165.7A Active CN102195710B (zh) | 2010-03-16 | 2010-03-16 | 主交换机重选举方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102195710B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051568B (zh) * | 2013-01-06 | 2016-03-30 | 福建星网锐捷网络有限公司 | 报文发送方法、装置和交换机 |
CN103368855B (zh) * | 2013-07-26 | 2016-08-10 | 杭州华三通信技术有限公司 | 光纤通道网络架构网络的区域合并方法及边缘设备 |
CN107395531A (zh) * | 2016-05-16 | 2017-11-24 | 中兴通讯股份有限公司 | 一种地址分配方法和装置、及交换机 |
CN106656715A (zh) * | 2016-11-11 | 2017-05-10 | 安徽维德工业自动化有限公司 | 一种工业以太网交换机冗余环技术 |
CN114827003B (zh) * | 2022-03-21 | 2024-05-14 | 浪潮思科网络科技有限公司 | 一种分布式系统的拓扑选举方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1889501A (zh) * | 2006-07-25 | 2007-01-03 | 杭州华为三康技术有限公司 | 决定桥角色的方法和系统 |
CN101056254A (zh) * | 2007-06-06 | 2007-10-17 | 杭州华三通信技术有限公司 | 一种网络存储设备的扩展方法、系统及其装置 |
CN101610182A (zh) * | 2009-06-26 | 2009-12-23 | 杭州华三通信技术有限公司 | 堆叠中多主用设备冲突检测方法及堆叠成员设备 |
-
2010
- 2010-03-16 CN CN201010127165.7A patent/CN102195710B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1889501A (zh) * | 2006-07-25 | 2007-01-03 | 杭州华为三康技术有限公司 | 决定桥角色的方法和系统 |
CN101056254A (zh) * | 2007-06-06 | 2007-10-17 | 杭州华三通信技术有限公司 | 一种网络存储设备的扩展方法、系统及其装置 |
CN101610182A (zh) * | 2009-06-26 | 2009-12-23 | 杭州华三通信技术有限公司 | 堆叠中多主用设备冲突检测方法及堆叠成员设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102195710A (zh) | 2011-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7619987B2 (en) | Node device | |
CN102195710B (zh) | 主交换机重选举方法和系统 | |
CN103583063B (zh) | 用于地理冗余网关处的故障恢复的系统和方法 | |
US10404571B2 (en) | Communication among network controllers | |
CN102098354B (zh) | 动态主机配置协议地址分配方法及服务器 | |
US20140254347A1 (en) | Ethernet Ring Protection Switching Method, Node, and System | |
CN103117876B (zh) | 用户状态信息的同步方法及装置 | |
CN101827039B (zh) | 一种负载分担的方法和设备 | |
CN101179463A (zh) | 提供网络信息的设备和方法 | |
CN106302569A (zh) | 处理虚拟机集群的方法和计算机系统 | |
MX2014014462A (es) | Metodo y sistema de conmutacion de nodo de servicio. | |
CN102710438B (zh) | 一种节点管理方法、装置及系统 | |
CN111935314B (zh) | 区块链系统、消息传输方法及装置 | |
CN104769896A (zh) | 用于虚拟机架系统中的直通模式的系统和方法 | |
CN102684966B (zh) | 设备入网方法、装置及系统 | |
CN114844912B (zh) | 数据链路分配方法、装置及分布式块存储系统 | |
CN102088642A (zh) | 光纤通道架构合并方法、系统及交换机 | |
CN103262470B (zh) | FCoE网络链接管理方法、设备和系统 | |
CN107046474B (zh) | 一种服务集群 | |
CN103944824A (zh) | 通信系统及网络中继装置 | |
CN102316018A (zh) | 一种网络节点设备中路由表的更新方法以及网络节点设备 | |
CN108199986B (zh) | 一种数据传输方法、堆叠设备及堆叠系统 | |
CN102123085B (zh) | 上行链路的切换控制方法以及切换控制装置 | |
CN107431634A (zh) | 一种建立vnfm之间的接口的方法、装置及系统 | |
CN111954102B (zh) | 一种dhcpv6 pd场景下的路由控制方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |