一种报文转发方法及设备的制作方法

文档序号:7554090阅读:164来源:国知局
专利名称:一种报文转发方法及设备的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种报文转发方法及设备。
背景技术
数据中心中,千兆设备和万兆设备混合接入是当前组网方式之一。通过虚拟化接入网的方式实现单一管理域,减少网络层次,扁平化管理是当前数据中心技术的一个发展趋势。为了满足数据中心的需求,目前提出了二级堆叠的CB (Core Backbone,核心骨干设备)-PE (Port Extender,端口扩展设备)组网方案,其组网架构如图1所示。各PE设备连接在CB设备上,PE设备之间不通过堆叠链路连接。在实际应用中,在CB设备上配置链接PE设备的特殊级联端口,连接到这些端口上的设备即为PE设备。在上述拓扑中,PE设备为CB设备提供端口扩展功能。CB设备完成MAC (MediaAccess Control,媒体接入控制)地址学习以及查表转发处理。在CB-PE方案中,所有设备组成一个虚拟系统(或称虚拟设备,也称堆叠设备),其中,一个成员设备中可以包含一个或多个单板,每个单板上会包含一个或多个芯片。其中,CB设备可以是框式设备,包含多个单板,每个单板包含一个或多个芯片;PE设备一般是盒式设备,包含一个或两个芯片。成员设备中的芯片之间可以互通。PE设备和CB设备间交互的报文都封装了转发头(forwarding header),用于在虚拟系统中进行转发,比如,转发头可以是HG头。转发头中包含源Mod、目的Mod等信息,其中,源Mod和目的Mod都是芯片标识,整个虚拟系统内(包括CB设备和PE设备),所有芯片的芯片标识都不同。但是PE设备只支持64个芯片,可识别的芯片标识范围是
(即表示O 63,包括O和63,以下表达方式类似)。因此,系统内CB和PE所有设备的芯片总数不能超过64个。可见,芯片标识的取值范围受虚拟系统中性能和规格最低的设备所支持的芯片数量的限制,导致虚拟系统的规模也因此受限。比如,每个CB设备可识别的芯片标识范围是
,每个PE设备可识别的芯片标识范围是
。实际系统中,每个CB设备中包含2个芯片,每个PE设备中包含4个芯片,这样,如果10个CB设备堆叠,则最多可连接的PE设备数量为:(PE设备可识别的芯片标识数量一 10个CB设备的芯片数量)/2= (64-40)/2=12。如果有16个CB设备堆叠,则将无法再连接PE设备。这样就大大限制了 CB-PE的组网规模,使得CB设备所连接的PE设备数量比较少,CB-PE方案的优势将大大减弱。

发明内容
本发明实施例提供了一种报文转发方法及设备,用以增加虚拟系统的容量。本发明实施例提供的报文转发方法,应用于包含有CB设备和PE设备的堆叠设备,其中,CB设备通过一级堆叠端口与其它CB设备连接,通过二级堆叠端口与PE设备连接,各CB设备上配置有各PE设备中各芯片的芯片标识,所述芯片标识包括本地标识和全局标识,其中,每个本地标识在每个PE设备中唯一标识该PE设备的一个芯片,全局标识在堆叠设备中唯一标识一个芯片,该方法包括:CB设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文后,根据所述源PE设备的芯片的本地标识和全局标识,将所述转发头中的源芯片标识从相应芯片的本地标识映射为该芯片的全局标识,并根据映射后的源芯片标识进行转发表项学习;所述CB设备根据所述以太网报文的目的地址匹配到对应的转发表项后,根据匹配到的转发表项中的芯片标识更新所述转发头中的目的芯片标识,并根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆叠端口发送封装了更新后的转发头的以太网报文。本发明实施例提供的网络设备,作为核心骨干CB设备应用于包含有CB设备和端口扩展PE设备的虚拟系统,所述网络设备包括:存储模块,用于存储各PE设备中各芯片的芯片标识,所述芯片标识包括本地标识和全局标识,其中,每个本地标识在每个PE设备中唯一标识该PE设备的一个芯片,全局标识在堆叠设备中唯一标识一个芯片;映射模块,用于在本设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文后,根据所述源PE设备的芯片的本地标识和全局标识,将所述转发头中的源芯片标识从相应芯片的本地标识映射为该芯片的全局标识;以及,根据所述转发模块的指示进行芯片标识映射;学习模块,用于在本设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文并进行源芯片标识映射后,根据映射后的源芯片标识进行转发表项学习;转发模块,用于根据所述以太网报文的目的地址匹配对应的转发表项,根据匹配到的转发表项中的芯片标识更新所述转发头中的目的芯片标识,并根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则指示所述映射模块将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆叠端口发送封装了更新后的转发头的以太网报文。本发明的上述实施例,通过为PE设备中的芯片分配本地标识和全局标识,并在报文转发过程中,在CB设备上进行本地标识和全局标识的映射,从而避免了虚拟系统中各芯片的标识受虚拟系统中性能和规格低的PE设备的限制,进而提高了虚拟系统的容量。


图1为现有技术中的二级堆叠组网示意图;图2为本发明实施例中基于图1所示组网的报文转发流程示意图之一;图3为本发明实施例中基于图1所示组网的报文转发流程示意图之二 ;图4为本发明实施例提供的CB设备的结构示意图。
具体实施例方式针对现有技术存在的问题,本发明实施例中,PE设备中的芯片分配有本地标识(以下表示为Local Unit ID)和全局标识(以下表示为Global Unit ID), CB设备记录了 LocalUnit ID和Global Unit ID的映射关系,CB设备接收到PE设备发送的封装了转发头的以太网报文后,将转发头(如HG头)中的源Mod从Local Unit ID映射为对应的Global UnitID,CB设备向PE设备发送封装了转发头的以太网报文时,将转发头中的目的Mod从GlobalUnit ID映射为对应的Local Unit ID,从而避免了虚拟系统的组网规模受虚拟系统中性能和规格最低的设备所支持的芯片数量的限制,进而提高了虚拟系统的容量。下面以图1所示的CB-PE组网架构为例,对本发明实施例进行详细描述。如图1所示,CB设备上配置连接PE设备的级联端口,PE设备接入到这些级联端口上。CB设备之间通过堆叠链路连接。为描述方便起见,本实施例中,将CB设备上连接其它CB设备的端口称为一级堆叠端口,将CB设备连接PE设备的端口称为二级堆叠端口。PE设备的每个上行端口(即连接CB设备的端口)与CB的一个二级堆叠端口(也即下行端口)相连。每个PE设备可通过多个上行端口与一个CB设备的多个二级堆叠端口连接,PE设备将连接所有CB设备的上行端口绑定为一个链路聚合组(Link AggregationGroup, LAG)。该CB-PE组网中,每个CB设备中有4个芯片,每个PE设备中有2个芯片。在CB-PE组网初始化阶段,该组网中的各CB设备选举主设备,选举结果为CBl选举为主设备。本发明实施例将已有主设备选举机制应用于此。CB之间可以是链形堆叠或唤
醒堆叠。CBl为包括自身在内的每个CB设备中的芯片分配Global Unit ID,并为每个PE设备中的芯片分配Local Unit ID和Global Unit ID,PE设备中的每个芯片分配得到一个Local Unit ID 和一个 Global Unit ID。Local Unit ID 用于在 PE 设备本地对该 PE 设备中的每个芯片进行唯一标识,该Local Unit ID的取值范围依据该PE设备可支持的芯片数量而定,比如,若PE设备可支持64个芯片,则该PE设备的Local Unit ID的取值范围可以是
。一个PE设备上的不同芯片分配有不同的Local Unit ID,不同PE设备的LocalUnit ID可以重用。Global Unit ID用于在虚拟系统中对每个芯片进行唯一标识,其取值范围依据CB设备可支持的芯片数量而定,比如,CB设备可支持256个芯片,则Global UnitID的取值范围可以是
。CBl 分配Local Unit ID和 Global Unit ID后,将为各 CB 设备分配的 Global UnitID配置给相应CB设备,将为各PE设备分配的Local Unit ID配置给相应PE设备。CBl根据为各PE设备中各芯片分配的Local Unit ID和Global Unit ID,建立Local Unit ID和Global Unit ID的对应关系,并将该对应关系信息发送给其它CB设备。以Global Unit ID从O开始顺序分配为例,CBl为CBl CB3中的各芯片(共12个芯片)所分配的Global Unit ID为O 11,为了保证Global Unit ID在该CB-PE组网中的唯一性,CBl为各PE设备中的芯片所分配的Global Unit ID的取值在[12,255]范围之内。本实施例中,CBl从129开始依次为PEl PE4中的各芯片分配Global Unit ID,即,为PEl中的两个芯片分配值为129和130的Global Unit ID,为PE2中的两个芯片分配值为131和132的Global Unit ID,为PE3中的两个芯片分配值为133和134的Global UnitID,为PE4中的两个芯片分配值为135和136的Global Unit ID。CBl为各PE设备中的芯片分配Local Unit ID时,只要保证在一个PE设备中唯一,并且取值范围在
之内即可。这里,CBl为PEl中的两个芯片分配值为O和I的Local Unit ID,为PE2中的两个芯片分配值为O和I的Local Unit ID,为PE3中的两个芯片分配值为O和I的Local Unit ID,为PE4中的两个芯片分配值为O和I的Local UnitID。根据以上分配规则,各PE设备中的芯片的Local Unit ID和Global Unit ID的对应关系可如表I所示。表I
权利要求
1.一种报文转发方法,应用于包含有核心骨干CB设备和端口扩展PE设备的堆叠设备,其中,CB设备通过一级堆叠端口与其它CB设备连接,通过二级堆叠端口与PE设备连接,其特征在于,各CB设备上配置有各PE设备中各芯片的芯片标识,所述芯片标识包括本地标识和全局标识,其中,每个本地标识在每个PE设备中唯一标识该PE设备的一个芯片,全局标识在堆叠设备中唯一标识一个芯片,该方法包括: CB设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文后,根据所述源PE设备的芯片的本地标识和全局标识,将所述转发头中的源芯片标识从相应芯片的本地标识映射为该芯片的全局标识,并根据映射后的源芯片标识进行转发表项学习; 所述CB设备根据所述以太网报文的目的地址匹配到对应的转发表项后,根据匹配到的转发表项中的芯片标识更新所述转发头中的目的芯片标识,并根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆叠端口发送封装了有更新后的转发头的以太网报文。
2.如权利要求1所述的方法,其特征在于,所述方法还包括: 若所述CB设备确定出本CB设备未与所述目标PE设备连接,则将封装了转发头的以太网报文通过一级堆叠端口转发给与所述目标PE设备连接的CB设备,其中,所述转发头中的目的芯片标识是根据匹配到的转发表项中的芯片标识确定的; 若所述CB设备从一级堆叠端口收到其它CB设备发来的封装了转发头的以太网报文,则根据所述以太网报文的目的地址匹配对应的转发表项,根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆 叠端口发送转发头更新后的以太网报文。
3.如权利要求1所述的方法,其特征在于,所述方法还包括: 若所述CB设备根据所述以太网报文的目的地址未匹配到对应的转发表项,则从本设备的各一级堆叠端口和二级堆叠端口转发封装了转发头的以太网报文,以及通过本设备的外部端口转发所述以太网报文。
4.如权利要求1所述的方法,其特征在于,所述根据映射后的源芯片标识进行转发表项学习,具体包括: 所述CB设备根据所述以太网报文的源MAC地址和所述以太网报文的转发头中映射后的源芯片标识查询相应的MAC地址表项,如果查询到相应的MAC地址表项,则更新该MAC地址表项的老化时间,如果未查询到相应的MAC地址表项,则生成所述目的MAC地址的MAC地址表项,所生成的MAC地址表项中的芯片标识为所述映射后的源芯片标识,出端口为所述转发头中的源端口,所述源端口为发送所述以太网报文的PE设备上的端口。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:所述CB设备将学习到的转发表项同步给其它CB设备。
6.如权利要求1所述的方法,其特征在于,所述封装了转发头的以太网报文,发送到CB设备的过程,具体包括:PE设备从本设备的外部端口接收到以太网报文后,对该以太网报文进行转发头封装,并根据该以太网报文匹配预设的报文重定向规则;其中,所述转发头中的源芯片标识为所述以太网报文的接收端口所在的芯片的本地标识, 若与预设的报文重定向规则匹配,则将所述转发头中的目的芯片标识和目的端口设置为CB设备的代理端口,并通过本设备的上行端口向CB设备发送转发头更新后的以太网报文。
7.如权利要求1-6之一所述的方法,其特征在于,所述方法还包括: 若所述CB设备选举为堆叠设备中的主设备,则为各PE设备中的各芯片分配全局标识和本地标识,并将为各PE设备中的各芯片分配的全局标识和本地标识发送给其它各CB设备,将为PE设备中的各芯片分配的本地标识发送给相应的PE设备。
8.—种网络设备,作为核心骨干CB设备应用于包含有CB设备和端口扩展PE设备的虚拟系统,其特征在于,所述网络设备包括: 存储模块,用于存储各PE设备中各芯片的芯片标识,所述芯片标识包括本地标识和全局标识,其中,每个本地标识 在每个PE设备中唯一标识该PE设备的一个芯片,全局标识在堆叠设备中唯一标识一个芯片; 映射模块,用于在本设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文后,根据所述源PE设备的芯片的本地标识和全局标识,将所述转发头中的源芯片标识从相应芯片的本地标识映射为该芯片的全局标识;以及,根据所述转发模块的指示进行芯片标识映射; 学习模块,用于在本设备从二级堆叠端口接收到源PE设备发送来的封装了转发头的以太网报文并进行源芯片标识映射后,根据映射后的源芯片标识进行转发表项学习; 转发模块,用于根据所述以太网报文的目的地址匹配对应的转发表项,根据匹配到的转发表项中的芯片标识更新所述转发头中的目的芯片标识,并根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则指示所述映射模块将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆叠端口发送封装了更新后的转发头的以太网报文。
9.如权利要求8所述的网络设备,其特征在于,所述转发模块还用于,若确定出本CB设备未与所述目标PE设备连接,则将封装了转发头的以太网报文通过一级堆叠端口转发给与所述目标PE设备连接的CB设备,其中,所述转发头中的目的芯片标识是根据匹配到的转发表项中的芯片标识更新得到的; 若本设备从一级堆叠端口收到其它CB设备发来的封装了转发头的以太网报文,则根据所述以太网报文的目的地址匹配对应的转发表项,根据匹配到的转发表项中的芯片标识确定对应的目标PE设备;若所述CB设备确定出本设备与该目标PE设备连接,则指示所述映射模块将所述转发头中的目的芯片标识从相应芯片的全局标识映射为该芯片的本地标识,将所述转发头中的源芯片标识从相应芯片的全局标识映射为芯片本地标识取值范围内的值,并从连接所述目标PE设备的二级堆叠端口发送转发头更新后的报文。
10.如权利要求8所述的网络设备,其特征在于,所述转发模块还用于,若根据所述以太网报文的目的地址未匹配到对应的转发表项,则从本设备的各一级堆叠端口和二级堆叠端口转发封装了转发头的以太网报文,以及通过本设备的外部端口转发所述以太网报文。
11.如权利要求8所述的网络设备,其特征在于,所述学习模块具体用于,根据所述以太网报文的源MAC地址和映射后的源芯片标识查询相应的MAC地址表项,如果查询到相应的MAC地址表项,则更新该MAC地址表项的老化时间,如果未查询到相应的MAC地址表项,则生成所述目的MAC地址的MAC地址表项,所生成的MAC地址表项中的芯片标识为所述映射后的源芯片标识,出端口为所述转发头中的源端口,所述源端口为发送所述以太网报文的PE设备上的端口。
12.如权利要求8所述的网络设备,其特征在于,所述学习模块还用于,将学习到的转发表项同步给其它CB设备。
13.如权利要求8-12之一所述的网络设备,其特征在于,还包括: 配置模块,用于在本设备选举为堆叠设备中的主设备后,为各PE设备中的各芯片分配全局标识和本地标识,并将为各PE设备中的各芯片分配的全局标识和本地标识发送给其它各CB设备,将为PE设备中的各芯片 分配的本地标识发送给相应的PE设备。
全文摘要
本发明公开了一种报文转发方法及设备,应用于包含有CB设备和PE设备的虚拟系统,各CB设备上配置有各PE设备标识,以及各PE设备中芯片的本地标识和全局标识,其中,本地标识在相应PE设备中唯一标识该PE设备中的芯片,全局标识在虚拟系统中唯一标识芯片,该方法包括CB设备从其下行端口接收到PE设备重定向来的报文后,将报文中的源芯片标识从本地标识映射为对应的全局标识,并根据该全局标识进行转发表项学习;在从其下行端口向PE设备转发报文时,将报文中的目的芯片标识从全局标识映射为本地标识。采用本发明可增加虚拟系统的容量。
文档编号H04L29/12GK103166874SQ20131009894
公开日2013年6月19日 申请日期2013年3月25日 优先权日2013年3月25日
发明者王明辉, 祁正林 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1