一种cpu间报文传输方法及装置的制作方法

文档序号:7925534阅读:138来源:国知局
专利名称:一种cpu间报文传输方法及装置的制作方法
技术领域
本发明实施例涉及数据传输技术,尤其涉及一种CPU间报文传输方法及装置。
背景技术
随着通信技术的高速发展,功能单一化的产品逐步被多功能产品所取代,这样,就对CPU (Central Processing Unit中央处理器)性能有较高的要求,进而产生一种是采用分布式硬件架构实现集中式管理的产品。这种产品一般会有多种不同独立运行的子系统 CPU在运行,这些子系统CPU都统一受控于主系统CPU,通常,子系统CPU与主系统CPU之间通过交换芯片来连接,如图1所示。从图1中可以看出,每个子系统占用交换芯片的一个端口,交换芯片的端口决定该系统支持的子系统格式,这种架构非常便于扩展,因此,该架构目前广泛的应用于分布式系统中。在采用这种架构进行业务流传输时,如图2所示,所有的业务是在用户端口和上联端口之间的通路上来传递的,而主系统CPU也需要对子系统进行管理。主系统CPU要实现对子系统CPU的控制和管理,必然要借助交换芯片来实现管理通信,而用户端口和上联端口之间也是通过交换芯片来传输业务流的,所以业务流和管理流都需要经过交换芯片, 且对于主系统CPU与子系统CPU3来说,业务流通路与管理流通路是完全一样的。目前,交换芯片对管理报文与业务报文的处理方式是一样的,所以业务报文势必会对管理报文造成冲击,如果特意构造一个业务报文流从上联端口进入,这样会有大量的报文进入CPU,造成正常管理通信中断,甚至造成CPU死机。

发明内容
本发明实施例提供一种CPU间报文传输方法及装置,以实现分离CPU间的业务流通路与管理流通路。一种CPU间报文传输方法,包括从子系统中央处理器CPU接收到管理报文后,将所述管理报文发送到管理端口 ;所述管理端口通过为管理报文设置的专用虚拟局域网VLAN将所述管理报文转发至主系统CPU。一种CPU间报文传输装置,包括第一转发单元,用于从子系统CPU接收到管理报文后,将所述管理报文发送到管理端口 ;第二转发单元,用于从管理端口通过为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU。一种CPU间报文传输方法,包括从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口;
所述管理端口将所述管理报文转发至相应的子系统CPU。一种CPU间报文传输装置,包括第三转发单元,用于从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口 ;第四转发单元,用于将所述管理报文从所述管理端口转发至相应的子系统CPU。本发明实施例提供一种CPU间报文传输方法及装置,通过由管理端口转发管理报文以及为管理报文设置专用VLAN(Virtual LAN,虚拟局域网,LocalArea Network,局域网) 的方式,将管理报文和业务报文分开传输,从而实现分离CPU间的业务流通路与管理流通路,避免了业务报文的传输对管理报文传输的影响。


图1为现有技术中分布式硬件结构示意图;图2为现有技术中分布式硬件结构中报文传输示意图;图3为本发明实施例提供的CPU间报文传输方法流程图之一;图4为本发明实施例提供的CPU间报文传输方法流程图之二 ;图5为本发明实施例提供的CPU间报文传输路径示意图;图6为本发明实施例提供的管理报文格式示意图;图7为本发明实施例提供的CPU间管理报文传输路径示意图;图8为本发明实施例提供的CPU间管理报文格式变化示意图;图9为本发明实施例提供的较具体的CPU间管理报文传输方法流程图;图10为本发明实施例提供的CPU间报文传输装置结构示意图之一;图11为本发明实施例提供的CPU间报文传输装置结构示意图之二。
具体实施例方式本发明实施例提供一种CPU间报文传输方法及装置,通过由管理端口转发管理报文以及为管理报文设置专用VLAN的方式,将管理报文和业务报文分开传输,从而实现分离 CPU间的业务流通路与管理流通路,避免了业务报文的传输对管理报文传输的影响。如图3所示,当从子系统CPU向主系统CPU发送管理报文时,本发明实施例提供的 CPU间报文传输方法包括步骤S301、从子系统CPU接收到管理报文后,将管理报文发送到管理端口 ;步骤S302、管理端口通过为管理报文设置的专用VLAN将管理报文转发至主系统 CPU。由于管理端口通过为管理报文设置的专用VLAN来转发管理报文,所以在连接主系统CPU和各子系统CPU的交换芯片中,管理报文的传输和业务报文的传输是通过不同的传输通路进行的,因此,业务报文的传输不再会对管理报文的传输造成影响,提高了系统的安全性,同时不影响系统的可扩展性。在本发明实施例中,管理报文包括了用于进行系统管理的报文,还可以包括特定协议中用于进行主系统CPU和子系统CPU通信的协议报文。例如,在进行生成树协议时,子系统CPU就都需要向主系统CPU发送协议报文,使得主系统CPU根据协议报文进行生成树计算,此时,该协议报文也可以作为管理报文处理。具体哪些具有与主系统CPU通信需要的协议报文需要按照管理报文处理,可以由管理者进行预先设置。具体的,若发送至主系统CPU在步骤S301中,交换芯片从子系统CPU接收到报文后,可以通过该管理报文中的目的地址来确定该报文是否为管理报文,当确定报文的目的地址是主系统CPU后,将该报文发送到管理端口。由于有些管理报文中没有标识管理报文的源地址,所以在将管理报文发送到管理端口后,可以在管理报文中添加携带管理报文源端口标识的管理标签。由于管理报文经过多个端口的转发,所以即使对于具有源地址的管理报文,在管理报文中携带源端口后,也便于主系统CPU识别该管理报文的源端口。为了便于进行VLAN设置和管理报文的转发,步骤S302可以具体包括管理端口通过环路连接将管理报文发送至用于转发管理报文的中转端口,中转端口的VLAN设置即为管理报文的专用VLAN ;中转端口通过为管理报文设置的专用VLAN将管理报文转发至主系统CPU。由于管理端口和中转端口通过环路连接,所以发送至管理端口的管理报文必然会被发送至中转端口,中转端口根据自身的VLAN设置,即可直接通过为管理报文设置的专用 VLAN将管理报文转发至主系统CPU。为了便于管理报文在该专用VLAN中传输,中转端口在接收到管理报文后,可以根据自身的VLAN设置,为管理报文添加标识为管理报文设置的专用VLAN的VLAN标签。为避免与其它VLAN冲突,该为管理报文设置的专用VLAN可以设置为802. IVLAN 标准中规定保留的VLAN4095,而其它业务报文则正常使用VLANl VLAN4094中的任意 VLAN,从而实现业务报文和管理报文的隔离。当从主系统CPU向子系统CPU发送管理报文时,如图4所示,本发明实施例提供的 CPU间报文传输方法还包括步骤S401、从主系统CPU接收到管理报文后,通过为管理报文设置的专用VLAN将管理报文转发至管理端口;步骤S402、管理端口将管理报文转发至相应的子系统CPU。事实上,从主系统CPU向子系统CPU发送管理报文是从子系统CPU向主系统CPU 发送管理报文的逆过程,所以根据从子系统CPU向主系统CPU发送管理报文的过程可知在步骤S401中,从主系统CPU接收到管理报文后,通过为管理报文设置的专用 VLAN将管理报文转发至管理端口,具体包括从主系统CPU接收到管理报文后,根据管理报文中标识为管理报文设置的专用 VLAN的VLAN标签,通过为管理报文设置的专用VLAN将管理报文转发至用于转发管理报文的中转端口,中转端口的VLAN设置为管理报文的专用VLAN ;中转端口通过环路连接将管理报文发送至管理端口。同时,中转端口通过环路连接将管理报文发送至管理端口前,还可以先去除管理报文中标识为管理报文设置的专用VLAN的VLAN标签。在步骤S402中,管理端口可以根据管理报文中的管理标签确定目的端口,并根据目的端口转发该报文,此时,步骤S402具体包括管理端口根据管理报文中携带管理报文目的端口标识的管理标签确定管理报文
7的目的端口;管理端口根据管理报文的目的端口,将管理报文转发至相应的子系统CPU。进一步,在管理端口将管理报文转发至相应的子系统CPU前,也可以先去除管理报文中携带管理报文目的端口标识的管理标签。下面以具体的实施例对本发明实施例提供的CPU间报文传输方法进行说明。本发明实施例主要是借助于交换芯片的两个功能特性来实现的,一是利用了交换芯片的管理端口,二是利用了 VLAN的特点。如图5所示,虚线为某一路业务报文的路径,箭头方向代表用户端口到上联端口的上行路径,下行方向则是个逆向的过程,图5中没有表示出来;实线则代表的是管理报文的路径,箭头方向代表的是CPUl发往CPU4的管理报文的数据流向,反之也是一个逆向的过程。从图5中可以看出,除了 P0RT4到CPU4之间的物理通路仍为业务流和管理流共用外,在交换芯片内部业务流和管理流已经隔离开来了。隔离的主要方法之一是P0RT5和管理端口(IMP PORT)之间的环路,即P0RT5和交换芯片的管理端口通过物理的方式连接起来了。接下来主要描述本发明实施例中进行从CPUl到CPU4之间的管理报文的传输所需要进行的设置工作。首先需要定义CPUl和CPU4之间通信的管理报文格式,为了保证管理报文终结在设备内部,且不影响业务,需要为CPUl和CPU4分别分配两个专门的合法的MAC 地址,为了表述方便,这里定义CPUl的对内管理MAC地址为MAC1,CPU4的对内管理MAC地址为MAC2,管理报文的协议类型可以定义为MGMT Type,该MGMT只是一个名称,该协议类型也可以采用其它名称,只需保证MGMT Type是私有协议类型,不占用公用的报文类型且不与其他私有协议类型冲突即可。这样CPUl发往CPU4的二层以太网管理报文格式如图6所示, 反之,CPU4发往CPUl的报文则是源目的MAC交换即可。图7是简化后的管理报文传输路径图,由于在第( 步中管理流和业务流仍旧走的是同一个物理通路,为了保证第(5)步的传输能与业务流隔离开来,则需要借助于VLAN 来进行隔离。在进行管理报文的专用VLAN设置时,如果选用合法的VLAN ID,则会限制用户对VLAN的选择,导致VLAN应用不方便。因此,本发明实施例中可以利用交换芯片的保留 VLAN4095来作为管理报文的专用VLAN,该VLAN4095可以跟VLAN1-4094 —样进行设置。具体的,在802. IQ VLAN标准中,规定VLAN1-4094是可使用的VLAN范围,VLANO和VLAN4095 是保留VLAN,不允许用户使用,而VLAN4095是能够进行设置和使用的,所以这里将管理报文划分到VLAN4095中,而业务流正常使用VLAN1-4094的任意VLAN,从而实现管理报文和业务报文的隔离。 为了保证管理报文能够按如图7所示的路径传输,且VLAN4095不会对业务流造成影响,则在此路径上,管理报文可以进一步按下图8的方式进行变化。即在路径(1)和(2) 上报文没有变化,在路径(3)开始前添加了交换芯片的管理TAG (标签),在路径(4)开始前在管理报文中添加了 VLAN 4095的TAG(标签)。其中,管理TAG中携带了报文的源端口, 在某些特殊应用上该源端口信息是很有用的,例如,在生成树协议运算时,生成树协议报文从哪个端口接收到这个信息对于主CPU系统进行生成树计算是比较重要的,所以当生成树报文是从交换芯片没有连接CPU的端口发送出来时,在该协议报文中携带源端口则比较重要。 具体的,如图9所示,管理报文从CPU4传输至CPUl的传输过程包括
步骤S901、CPU4按私有通信协议构造正确的管理报文发到P0RT4 ;步骤S902、P0CT4将管理报文发送至IMP PORT ;为了保证P0CT4收到的管理报文只被IMP PORT收到,可以利用交换芯片上交报文给IMP PORT的特性预先进行设置,比如可通过配置静态MAC地址表项来实现,即配置MACl在P0RT4的PVID中的转发端口为IMP PORT, 这样当P0rt4确定报文的目的地址为MACl时,就会将该报文发送至IMP PORT ;步骤S903、IMP PORT将管理报文发送至P0RT5 ;由于IMP PORT在物理上与P0RT5 形成环路,管理报文自然能够传输至P0RT5,此时进入P0RT5的管理报文仍旧是UNTAG (未标签)报文,即未添加VLAN标签,为了保证进入CPUl的报文是与业务报文隔离的,则需要预先将P0RT5的PVID设置为VLAN4095,则报文在到达P0RT5后,则可以根据P0RT5的PVID 设置来为管理报文添加VLAN标签。步骤S904、P0RT5通过为管理报文设置的专用VLAN,即VLAN4095,将该管理报文发送至P0RT1 ;当然,为实现该转发,P0RT1也是加入在VLAN4095中的。步骤S905、P0RT1将管理报文发送至CPUl ;从P0RT1发出的报文则不再改变,仍旧是带着VLAN4095的TAG,从而与P0RT1转发的业务流区分开来发往CPU1,同时CPUl所在的主系统中预先设置了将目的MAC为自己的对内MAC的报文上交CPU,所以管理报文发送至 CPUl后,CPUl直接进行处理。反之,CPUl发往CPU4的报文转换是个逆向的过程,即首先CPUl需构造出图8中的报文3发出,只是管理标签中的源端口改变为目的端口,到达P0RT1时因仍旧是报文3的格式,转发到P0RT5后,根据PVID属性,将VLAN4095的TAG剥除,形成报文2格式的报文, 通过环路发到IMP PORT, IMP PORT收到报文2后,将管理标签(SWITCH TAG)剥除,形成报文1格式的报文,同时根据SWITCH TAG中的目的端口发往P0RT4,再进一步传输管理报文至 CPU4。本发明实施例还相应提供一种CPU间报文传输装置,该装置可以具体为交换芯片,当实现从子系统CPU向主系统CPU发送管理报文时,如图10所示,该装置包括第一转发单元1001,用于从子系统CPU接收到管理报文后,将管理报文发送到管理端口 ;第二转发单元1002,用于从管理端口通过为管理报文设置的专用VLAN将管理报文转发至主系统CPU。当通过管理报文的目的地址来确定是否通过管理报文路径传输时,第一转发单元 1001具体用于从子系统CPU接收管理报文;确定管理报文的目的地址是主系统CPU后,将管理报文发送到管理端口。为便于交换芯片识别管理报文的源端口,第一转发单元1001还用于在将管理报文发送到管理端口后,在管理报文中添加携带管理报文源端口标识的
管理标签。当通过与管理端口进行环路连接的中转端口来实现转发时,第二转发单元1002 具体用于从管理端口通过环路连接将管理报文发送至用于转发管理报文的中转端口,中转端口的VLAN设置为管理报文的专用VLAN ;
中转端口通过为管理报文设置的专用VLAN将管理报文转发至主系统CPU。为了便于通过专用VLAN进行转发,第二转发单元1002还用于 在中转端口通过为管理报文设置的专用VLAN将管理报文转发至主系统CPU前,在管理报文中添加标识为管理报文设置的专用VLAN的VLAN标签。当实现从主系统CPU向子系统CPU发送管理报文时,如图11所示,装置中还包括第三转发单元1101,用于从主系统CPU接收到管理报文后,通过为管理报文设置的专用VLAN将管理报文转发至管理端口 ;第四转发单元1102,用于将管理报文从管理端口转发至相应的子系统CPU。其中,第三转发单元1101具体用于从主系统CPU接收到管理报文后,根据管理报文中标识为管理报文设置的专用 VLAN的VLAN标签,通过为管理报文设置的专用VLAN将管理报文转发至用于转发管理报文的中转端口,中转端口的VLAN设置为管理报文的专用VLAN ;中转端口通过环路连接将管理报文发送至管理端口。第三转发单元1101还可以用于在中转端口通过环路连接将管理报文发送至管理端口前,去除管理报文中标识为管理报文设置的专用VLAN的VLAN标签。第四转发单元1102具体用于根据管理报文中携带管理报文目的端口标识的管理标签确定管理报文的目的端口; 根据管理报文的目的端口,将管理报文转发至相应的子系统CPU。第四转发单元1102还用于在管理端口将管理报文转发至相应的子系统CPU前,去除管理报文中携带管理报文目的端口标识的管理标签。针对从主系统CPU向子系统CPU发送管理报文的情况,本发明实施例还提供一种 CPU间报文传输方法,该方法包括从主系统CPU接收到管理报文后,通过UE地址信息为管理报文设置的专用VLAN 将UE地址信息管理报文转发至管理端口 ;UE地址信息管理端口将UE地址信息管理报文转发至相应的子系统CPU。相应的一种CPU间报文传输装置包括第三转发单元,用于从主系统CPU接收到管理报文后,通过UE地址信息为管理报文设置的专用VLAN将UE地址信息管理报文转发至管理端口 ;第四转发单元,用于将UE地址信息管理报文从UE地址信息管理端口转发至相应的子系统CPU。本发明实施例提供一种CPU间报文传输方法及装置,通过由管理端口转发管理报文以及为管理报文设置专用VLAN的方式,将管理报文和业务报文分开传输,从而实现分离 CPU间的业务流通路与管理流通路,避免了业务报文的传输对管理报文传输的影响。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种CPU间报文传输方法,其特征在于,包括从子系统中央处理器CPU接收到管理报文后,将所述管理报文发送到管理端口 ; 所述管理端口通过为管理报文设置的专用虚拟局域网VLAN将所述管理报文转发至主系统CPU。
2.如权利要求1所述的方法,其特征在于,所述管理报文具体为 目的地址是主系统CPU的报文。
3.如权利要求1所述的方法,其特征在于,所述将所述管理报文发送到管理端口后,还包括在所述管理报文中添加携带所述管理报文源端口标识的管理标签。
4.如权利要求1所述的方法,其特征在于,所述管理端口通过为管理报文设置的专用 VLAN将所述管理报文转发至主系统CPU,具体包括所述管理端口通过环路连接将所述管理报文发送至用于转发管理报文的中转端口,所述中转端口的VLAN设置为管理报文的专用VLAN ;所述中转端口通过所述为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU。
5.如权利要求4所述的方法,其特征在于,在所述中转端口通过所述为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU前,还包括在所述管理报文中添加标识所述为管理报文设置的专用VLAN的VLAN标签。
6.如权利要求1所述的方法,其特征在于,还包括从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口;所述管理端口将所述管理报文转发至相应的子系统CPU。
7.如权利要求6所述的方法,其特征在于,所述从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口,具体包括从主系统CPU接收到管理报文后,根据所述管理报文中标识所述为管理报文设置的专用VLAN的VLAN标签,通过所述为管理报文设置的专用VLAN将所述管理报文转发至用于转发管理报文的中转端口,所述中转端口的VLAN设置为管理报文的专用VLAN ; 所述中转端口通过环路连接将所述管理报文发送至所述管理端口。
8.如权利要求7所述的方法,其特征在于,所述中转端口通过环路连接将所述管理报文发送至所述管理端口前,还包括去除所述管理报文中标识所述为管理报文设置的专用VLAN的VLAN标签。
9.如权利要求6所述的方法,其特征在于,所述管理端口将所述管理报文转发至相应的子系统CPU,具体包括所述管理端口根据所述管理报文中携带所述管理报文目的端口标识的管理标签确定所述管理报文的目的端口;所述管理端口根据所述管理报文的目的端口,将所述管理报文转发至相应的子系统CPU。
10.如权利要求9所述的方法,其特征在于,所述管理端口将所述管理报文转发至相应的子系统CPU前,还包括去除所述管理报文中携带所述管理报文目的端口标识的管理标签。
11.如权利要求1-10任一所述的方法,其特征在于,所述管理报文具体包括 用于进行系统管理的报文,以及特定协议中用于进行主系统CPU和子系统CPU通信的 协议报文。
12.如权利要求1-10任一所述的方法,其特征在于,所述专用VLAN的VLAN标识具体为VLAN4095。
13.—种CPU间报文传输装置,其特征在于,包括第一转发单元,用于从子系统CPU接收到管理报文后,将所述管理报文发送到管理端Π ;第二转发单元,用于从管理端口通过为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU。
14.如权利要求13所述的装置,其特征在于,所述第一转发单元还用于 确定所述目的地址是主系统CPU的报文为管理报文。
15.如权利要求13所述的装置,其特征在于,所述第一转发单元还用于在将所述管理报文发送到管理端口后,在所述管理报文中添加携带所述管理报文源端口标识的管理标签。
16.如权利要求13所述的装置,其特征在于,所述第二转发单元具体用于从管理端口通过环路连接将所述管理报文发送至用于转发管理报文的中转端口,所述中转端口的VLAN设置为管理报文的专用VLAN ;所述中转端口通过所述为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU。
17.如权利要求16所述的装置,其特征在于,所述第二转发单元还用于在中转端口通过所述为管理报文设置的专用VLAN将所述管理报文转发至主系统CPU 前,在所述管理报文中添加标识所述为管理报文设置的专用VLAN的VLAN标签。
18.如权利要求13所述的装置,其特征在于,还包括第三转发单元,用于从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口 ;第四转发单元,用于将所述管理报文从所述管理端口转发至相应的子系统CPU。
19.如权利要求18所述的装置,其特征在于,所述第三转发单元具体用于从主系统CPU接收到管理报文后,根据所述管理报文中标识所述为管理报文设置的专用VLAN的VLAN标签,通过所述为管理报文设置的专用VLAN将所述管理报文转发至用于转发管理报文的中转端口,所述中转端口的VLAN设置为管理报文的专用VLAN ; 所述中转端口通过环路连接将所述管理报文发送至所述管理端口。
20.如权利要求19所述的装置,其特征在于,所述第三转发单元还用于在所述中转端口通过环路连接将所述管理报文发送至所述管理端口前,去除所述管理报文中标识所述为管理报文设置的专用VLAN的VLAN标签。
21.如权利要求18所述的装置,其特征在于,所述第四转发单元具体用于根据所述管理报文中携带所述管理报文目的端口标识的管理标签确定所述管理报文的目的端口;根据所述管理报文的目的端口,将所述管理报文转发至相应的子系统CPU。
22.如权利要求21所述的装置,其特征在于,所述第四转发单元还用于在所述管理端口将所述管理报文转发至相应的子系统CPU前,去除所述管理报文中携带所述管理报文目的端口标识的管理标签。
23.—种CPU间报文传输方法,其特征在于,包括从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口;所述管理端口将所述管理报文转发至相应的子系统CPU。
24.一种CPU间报文传输装置,其特征在于,包括第三转发单元,用于从主系统CPU接收到管理报文后,通过所述为管理报文设置的专用VLAN将所述管理报文转发至管理端口 ;第四转发单元,用于将所述管理报文从所述管理端口转发至相应的子系统CPU。
全文摘要
本发明公开了一种CPU间报文传输方法及装置,涉及数据传输技术,本发明实施例提供的CPU间报文传输方法,通过由管理端口转发管理报文以及为管理报文设置专用VLAN的方式,将管理报文和业务报文分开传输,从而实现分离CPU间的业务流通路与管理流通路,避免了业务报文的传输对管理报文传输的影响。
文档编号H04L12/56GK102355415SQ201110294839
公开日2012年2月15日 申请日期2011年9月27日 优先权日2011年9月27日
发明者郭瑞, 雷丽琴 申请人:瑞斯康达科技发展股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1