一种用于虚拟交换机系统的拓扑发现方法

文档序号:8499912阅读:268来源:国知局
一种用于虚拟交换机系统的拓扑发现方法
【技术领域】
[0001]本发明涉及一种网络通信技术,具体涉及一种用于虚拟交换机系统的拓扑发现方法。
【背景技术】
[0002]当前,数据中心的数据访问量越来越大,并且,对数据中心网络的可靠性要求越来越高,传统的数据中心网络已经无法满足要求。而交换机设备使用虚拟化技术组合成的虚拟交换机系统可以实现数据中心的大量数据转发和提高网络可靠性。
[0003]另外,有些用户希望将成本低廉的盒式交换机设备虚拟化成一台虚拟交换机设备,使盒式设备之间互相冗余备份,提高网络的可靠性,简化网络的管理。这也需要使用虚拟化技术来将盒式交换机设备组合成虚拟交换机系统。
[0004]虚拟化技术就是将两台或多台交换机通过虚拟化链路连接起来,从逻辑上组合成一个虚拟的交换机系统。用户对这个虚拟交换机系统进行管理,来实现对虚拟交换机系统中的所有物理设备的管理。
[0005]虚拟交换机系统中的每台设备最多可以有两个虚拟化端口(Pa和Pb)与其它设备通过虚拟化链路相连。
[0006]参见图1,其所示为由4台交换机设备组成的线形虚拟交换机系统。
[0007]参见图2,其所示为由4台交换机设备组成的环形虚拟交换机系统。
[0008]而将两台或多台设备组合成一台虚拟交换机系统时,需要获知虚拟交换机系统中由虚拟化链路构成的网络拓扑,以便于计算虚拟交换机系统中的物理设备间的路由,在虚拟交换机系统中的物理设备间有效地转发报文及避免环路,但目前尚无公开的资料给出虚拟交换机系统中的拓扑发现方法。
[0009]由此可见,提供一种用于虚拟交换机系统的拓扑发现方法是本领域亟需解决的问题。

【发明内容】

[0010]本发明针对现有技术中尚未实现虚拟交换机系统中的拓扑发现的问题,提供一种实现虚拟交换机系统的拓扑发现方法,通过本方案能够具体实现虚拟交换机系统中的拓扑发现,并且能够保证整个拓扑发现的准确性。
[0011]为了达到上述目的,本发明采用如下的技术方案:
[0012]一种用于虚拟交换机系统的拓扑发现方法,所述方法基于邻居发现报文、邻居应答报文、端口状态故障报文、链路恢复通知报文以及链路恢复应答报文,使得虚拟交换机系统中的每台成员设备都知道虚拟交换机系统中的拓扑信息。
[0013]在一具体方案中,所述方法使用邻居发现报文在虚拟交换机系统中传播拓扑信息,使用邻居应答报文对收到的邻居发现报文进行确认。
[0014]进一步的,所述邻居发现报文是单跳多播报文,邻居收到该报文后不再转发,但如果收到该报文后引起拓扑数据库变化,则可以生成一个新的邻居发现报文向另外一个虚拟化端口发送。
[0015]进一步的,所述邻居发现报文的格式为(S,P,(dm,…,如),Seq),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,(dm,一,dn)表示发送方设备上的另一个虚拟化端口(不是P)到达各个设备的距离,Seq是发送邻居发现报文的虚拟化端口所维护的拓扑序号。
[0016]进一步的,设备从某虚拟化端口收到邻居发现报文后,要立即从该虚拟化端口向对端设备发送一个邻居应答报文。
[0017]进一步的,所述邻居应答报文的格式为(S,P,Seq),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,Seq是发送端口所收到的邻居发现报文中所带的拓扑序号。
[0018]再进一步的,从一个端口发送的邻居应答报文中的Seq要与从该端口收到的邻居发现报文中的Seq—致。
[0019]在另一具体方案中,所述方法使用端口状态故障报文来将虚拟化端口的故障信息快速地通知到虚拟交换机系统中的各成员设备。
[0020]进一步的,设备的一个虚拟化端口状态由正常变为故障的时候,需要立即从另一个虚拟化端口发送端口状态故障报文。
[0021]进一步的,所述端口状态故障报文是多跳多播报文,邻居收到该报文后会向另一个虚拟化端口转发,转发时不能改变报文内的信息。
[0022]进一步的,所述端口状态故障报文的格式为(S,P,Pf),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,Pf表示发送方设备上发生故障的虚拟化端口。
[0023]在另一具体方案中,虚拟交换机系统中的设备检测到虚拟化链路构成的网络拓扑由线形拓扑变成环形拓扑时,需要向虚拟交换机系统中的各台设备发送链路恢复通知报文,虚拟交换机系统中的各台设备收到报文后根据各自维护的拓扑信息进行路由切换,以保证各台设备的切换步调一致。
[0024]进一步的,链路恢复通知报文是单跳报文,仅在直连的邻居间发送,但如果邻居收到该报文后需要向别的设备发送链路恢复通知报文,则可以生成一个新的链路恢复通知报文向另外一个虚拟化端口发送。
[0025]进一步的,链路恢复通知报文的格式为(S,P,N),其中,S表示发送方设备,P表示发送方设备上链路恢复正常的虚拟化端口,N表示邻居设备。
[0026]进一步的,发送链路恢复通知报文的设备在从发送报文的虚拟化端口收到链路恢复应答报文之前,会定期重复发送链路恢复通知报文。
[0027]进一步的,所述链路恢复应答报文是链路恢复通知报文的应答报文,其是单跳报文,仅在直连的邻居间发送。
[0028]进一步的,所述链路恢复应答报文的格式为(S,P,N),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,N表示邻居设备。
[0029]利用上述方案,可在由两台或多台交换机设备组成的线形或环形虚拟交换机系统中,准确有效地进行拓扑发现。
【附图说明】
[0030]以下结合附图和【具体实施方式】来进一步说明本发明。
[0031]图1为由4台交换机设备组成的线形虚拟交换机系统的示意图。
[0032]图2为由4台交换机设备组成的环形虚拟交换机系统的示意图。
【具体实施方式】
[0033]为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
[0034]本实例用到的状态机说明:
[0035]本实例使用了一个拓扑发现状态机,该状态机有三个状态:发现状态,等待状态,稳定状态。发现状态表示当前正处于拓扑发现过程中,拓扑尚未收敛;等待状态表示拓扑即将收敛,作为向稳定状态的过渡;稳定状态表示拓扑已经稳定。
[0036]本实例用到的报文说明:
[0037](I)邻居发现报文
[0038]邻居发现报文是单跳多播报文,邻居收到该报文后不再转发,但如果收到该报文后引起拓扑数据库变化,则可以生成一个新的邻居发现报文向另外一个虚拟化端口发送。
[0039]邻居发现报文的格式为(S,P,(dm,-,dn), Seq),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,(dm,…,dn)表示发送方设备上的另一个虚拟化端口(不是P)到达各个设备的距离,Seq是发送邻居发现报文的虚拟化端口所维护的拓扑序号。
[0040](2)邻居应答报文
[0041]设备从某虚拟化端口收到邻居发现报文后,要从该虚拟化端口向对端设备发送一个邻居应答报文。
[0042]邻居应答报文的格式为(S,P,Seq),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,Seq是发送端口所收到的邻居发现报文中所带的拓扑序号。
[0043]每从一个虚拟化端口收到一个邻居发现报文,都要立即从该虚拟化端口回应一个邻居应答报文。从一个端口发送的邻居应答报文中的Seq要与从该端口收到的邻居发现报文中的Seq—致。
[0044](3)端口状态故障报文
[0045]设备的一个虚拟化端口状态由正常变为故障的时候,需要立即从另一个虚拟化端口发送端口状态故障报文。端口状态故障报文是多跳多播报文,邻居收到该报文后会向另一个虚拟化端口转发,转发时不能改变报文内的信息。
[0046]端口状态故障报文的格式为(S,P,Pf),其中,S表示发送方设备,P表示发送方设备上发送报文的虚拟化端口,Pf表示发送方设备上发生故障的虚拟化端口。
[0047](4)链路恢复通知报文
[0048]虚拟交换机系统中的设备检测到虚拟化链路构成的网络拓扑由线形拓扑变成环形拓扑时,需要向虚拟交换机
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1