芯片中BPE跨端口扩展设备实现链路聚合的方法与流程

文档序号:12134147阅读:1579来源:国知局
芯片中BPE跨端口扩展设备实现链路聚合的方法与流程

本发明涉及一种端口扩展技术,尤其是涉及一种芯片中BPE(Bridge port extension,桥接端口扩展)跨端口扩展设备实现链路聚合的方法。



背景技术:

VM(Virtual Machine,虚拟设备)及其迁移驱动着数据中心大规模二层网络的发展,随着网络规模的扩大,网络设备数量随之增大,网络管理成为数据中心基础设施管理中的一个棘手问题。同时,现代大数据中心对网络提供给服务器的端口密度也提出了更高的要求,例如万台服务器的规模已是互联网数据中心现实中的普遍需求。端口扩展技术作为提高接入设备端口密度的一种有效手段逐渐成熟并获得了业界的认可。VCF纵向虚拟化技术(Vertical Converged Framework,纵向融合框架,以下简称VCF)即是该技术的一种实现方式,满足数据中心虚拟化高密接入并可以简化管理。

VCF在纵向维度上支持对系统进行异构扩展,即在形成一台逻辑虚拟设备的基础上,把一台盒式设备作为一块远程接口板加入主设备系统,以达到扩展I/O端口能力和进行集中控制管理的目的。

对于VCF来说,设备按角色分为CB(Controlling Bridge,控制设备)和PE(Port Extender,端口扩展设备)两种。在网络芯片BPE使用的场景中,同一个PE下的两个PORT(端口)可以支持LAG(Link Aggregation,链路聚合),上行方向的时候加上同一个ETAG(Extension VLAN Tag,扩展虚拟局域网标签),这样可以达到备份和增加带宽的目的,当某个PORT link(端口链接)down(关闭)后,还能继续提供服务。

上述是现有芯片BPE在同一个PE下实现LAG,可以解决PORT link down后,备份的目的。但是,这里存在一个严重的问题,当PE link down后,连接这个PE的所有VM都不能工作了。即现有技术方案只支持在同一个PE上支持LAG(Link Aggregation-链路聚合),不能支持在不同PE上的LAG,这样导致PE down后,没有备份VM可以使用。



技术实现要素:

本发明的目的在于克服现有技术的缺陷,提供一种芯片中BPE跨端口扩展设备实现链路聚合的方法,通过链路聚合以实现跨PE的VM可以实现互为备份。

为实现上述目的,本发明提出如下技术方案:一种芯片中BPE跨端口扩展设备实现链路聚合的方法,包括:

S1,将从不同的端口扩展设备端口上行的报文,均插入相同的E-TAG,所述E-TAG标识报文来自同一个链路聚合组;

S2,控制设备收到所述报文,根据所述E-TAG映射出相应的所述链路聚合组后,删除所述E-TAG并进行网桥学习,同时解析所述报文根据转发表进行报文转发;

S3,当有报文需转发到所述链路聚合组,控制设备将报文插入对应的所述E-TAG,并选择相应的端口扩展设备,由选择的端口扩展设备将报文转发到其端口上,并删除所述E-TAG;

S4,若选择的端口扩展设备与控制设备间的链路关闭,控制设备则将报文从组成链路聚合组的其他端口扩展设备的端口转发出去。

本发明还提出了另外一种技术方案:一种芯片中BPE跨端口扩展设备实现链路聚合的方法,包括:

S1′,将从不同的端口扩展设备端口上行的报文,均插入相同的第一E-TAG,所述第一E-TAG标识报文来自同一个链路聚合组;

S2′,控制设备收到所述报文,根据所述第一E-TAG映射出相应的所述链路聚合组后,删除所述第一E-TAG并进行网桥学习,同时解析所述报文根据转发表进行报文转发;

S3′,若报文转发的目的端口扩展设备为非链路聚合组的成员,控制设备则将报文插入报文目的端口扩展设备对应的第二E-TAG后,将报文发往相应的目的端口扩展设备,所述目的端口扩展设备将报文转发到其端口上并删除所述E-TAG。

优选地,所述E-TAG内的E-CID一部分字节预留给跨端口扩展设备的链路聚合使用,剩余部分字节表示链路聚合组ID。

优选地,所述E-TAG内的E-CID为12比特,其高5个比特为全1标识,预留给跨端口扩展设备的链路聚合使用;低7比特表示链路聚合组ID。

优选地,步骤S2中,控制设备根据报文的MAC目的地址查找转发表,根据查找到的转发出口对报文进行转发。

优选地,步骤S3中,控制设备通过哈希算法选择相应的端口扩展设备。

优选地,所述第二E-TAG内的E-CID标识报文转发的目的端口扩展设备。

优选地,步骤S2′中,控制设备根据报文的MAC目的地址查找转发表,根据查找到的转发出口对报文进行转发。

与现有技术相比,本发明的有益效果是:本发明通过将跨PE间的报文加上标识来自同一个链路聚合组的E-TAG,实现了跨PE的链路聚合,从而支持跨PE的VM互为备份。

附图说明

图1是本发明实施例1的流程示意图;

图2是本发明实施例2的流程示意图;

图3是本发明实施例1或2的原理示意图。

具体实施方式

下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。

本发明所揭示的一种芯片中BPE跨端口扩展设备实现链路聚合的方法,用于端口扩展技术,尤其是用于VCF纵向虚拟化技术,通过将跨PE间的报文加上标识来自同一个链路聚合组的E-TAG,实现了跨PE的链路聚合,从而支持跨PE的VM互为备份。

具体地,如图1所示,本发明所揭示的一种芯片中BPE跨端口扩展设备实现链路聚合的方法,包括:

S1,将从不同的端口扩展设备端口上行的报文,均插入相同的E-TAG,E-TAG标识报文来自同一个链路聚合组;

S2,控制设备收到报文,根据E-TAG映射出相应的链路聚合组后,删除E-TAG并进行网桥学习,同时解析报文根据转发表进行报文转发;

S3,当有报文需转发到链路聚合组,控制设备将报文插入对应的E-TAG,并选择相应的端口扩展设备,由选择的端口扩展设备将报文转发到其端口上,并删除E-TAG;

S4,若选择的端口扩展设备与控制设备间的链路关闭,控制设备则将报文从组成链路聚合组的其他端口扩展设备的端口转发出去。

下面以一具体实施例1来解释上述技术方案:

结合图3所示,将PE1的P1端口和PE2的P2端口进行LAG绑定,为了便于描述,以下将PE1的P1端口简称为PE1-P1,PE2的P2端口简称为PE2-P2。

将从PE1-P1和PE2-P2上行的报文,都插入相同的E-TAG,用于标识报文来自同一个链路聚合组。本实施例1将字长为12比特(bit)的E-CID(E-CID是E-TAG里面的一个字段,用来表示VLAN ID的)赋值为0xF81,其中高5个bit为全1标识,预留给跨PE链路聚合使用,低7bit表示链路聚合组ID,这里定义PE1-P1和PE2-P2绑定形成链路聚合组1,即低7bit赋值为0x1。

控制设备(CB)收到这样的报文(高5bit为1),标识为一个链路聚合组,组ID为1,映射一个Global PORT ID(交换机外部物理口在交换机内部的一个虚拟ID),并且删除ETAG进行网桥学习(Bridge learning),同时解析报文的MAC目的地址(MACDA)做正常的网桥转发(Bridge Fowarding)。

当有报文需要转发到这个跨PE的链路聚合组的时候,CB对这个报文进行编辑,插入对应的ETAG,E-CID为0xF81;在CB进行链路聚合哈希选择聚合成员端口(PE1-P1or PE2-P2),假如选择的成员端口为PE1-P1,那么就由PE1转发报文到P1端口,并且删掉ETAG,完成整个转发行为。假如PE1和CB之间的链路关闭(down)了,CB将会始终选择PE2-P2作为链路聚合组1的转发目的地,从而达到备份的目的。

结合图3所示,当有报文从虚拟机3(VM3)发送到虚拟机2(VM2)或虚拟机1(VM1)时,即从VM3发送过来的报文的MAC目的地址为链路聚合组1,该报文从PE3的上行端口P3进入PE3后,PE3将报文插入VM3对应的ETAG,ECID为0x3,插入后,报文格式如下:

CB从其上行端口P3收到上述格式的报文,根据ETAG映射出端口3并做网桥学习,并且删除ETAG。CB根据转发表,查出是发往链路聚合组1的,根据哈希算法(hash)选择发往VM1或VM2,若选择发往VM1,则插入LAG group1对应的ETAG,ECID为0xF81,从CB的下行端口P1发往PE1,由PE1将报文删除ETAG后发往VM1,如此完成了VM3到链路聚合组1的通信。其中,CB的端口P1发往PE1的报文格式如下:

如图2所示,本发明还揭示了另外一种技术方案:一种芯片中BPE跨端口扩展设备实现链路聚合的方法,包括:

S1′,将从不同的端口扩展设备端口上行的报文,均插入相同的第一E-TAG,所述第一E-TAG标识报文来自同一个链路聚合组;

S2′,控制设备收到报文,根据第一E-TAG映射出相应的链路聚合组后,删除第一E-TAG并进行网桥学习,同时解析报文根据转发表进行报文转发;

S3′,若报文转发的目的端口扩展设备为非链路聚合组的成员,控制设备则将报文插入报文目的端口扩展设备对应的第二E-TAG后,将报文发往相应的目的端口扩展设备,所述目的端口扩展设备将报文转发到其端口上并删除所述E-TAG。

下面以一具体实施例2来解释上述技术方案:

结合图3所示,将PE1的P1端口和PE2的P2端口进行LAG绑定,为了便于描述,以下将PE1的P1端口简称为PE1-P1,PE2的P2端口简称为PE2-P2。

将从PE1-P1和PE2-P2上行的报文,都插入相同的E-TAG,用于标识报文来自同一个链路聚合组。本实施例1将字长为12比特(bit)的E-CID赋值为0xF81,其中高5个bit为全1标识,预留给跨PE链路聚合使用,低7bit表示链路聚合组ID,这里定义PE1-P1和PE2-P2绑定形成链路聚合组1,即低7bit赋值为0x1。

控制设备(CB)收到这样的报文(高5bit为1),标识为一个LAG group,group ID为1,映射一个Global PORT ID,并且删除ETAG进行网桥学习(Bridge learning),同时解析报文的MAC目的地址(MACDA)做正常的网桥转发(Bridge Fowarding)。

若报文转发的目的端口扩展设备为非链路聚合组的成员,结合图3所示,若有VM1的报文发往VM3,即VM1的报文的MACDA为VM3,这里VM3非链路聚合组的成员。

报文从PE1的上行端口P1进入PE1后,在PE1内会插入ETAG,E-CID为0xF81,插入后的报文格式如下:

CB从其上行P1端口收到该报文,根据ETAG映射出链路聚合组1,做网桥学习,并且删除ETAG(ECID 0xF81),然后根据转发表将报文转发到PE3下面的VM3:从CB的P3端口发往PE3,在PE3内需要插入VM3对应的ETAG,ECID为0x3,由PE3删除ETAG发往VM3,如此,完成了VM1到VM3的通信。其中CB的P3端口发往PE3的报文格式如下:

当然,也可扩展到三个以上PE之间实现的跨PE链路聚合,其原理参照实施例1和实施例2的具体描述。

本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。

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