首页> 中国专利> 一种以太网堆叠系统中管理报文的方法及交换机装置

一种以太网堆叠系统中管理报文的方法及交换机装置

摘要

本发明公开了一种以太网堆叠系统中管理报文的方法,包括如下步骤:步骤一、根据报文中的目的设备号和端口号,分别统计出发往各个目的设备的端口数;步骤二、判断报文发往的目的设备是主设备还是从设备,根据目的设备的不同将报文信息填充到报文格式中,当主设备向同一从设备且同一局域网网号的多个端口发送报文时,采用压缩部分报文信息的方式填充报文格式,封装报文;步骤三、启动发送报文;步骤四、目的设备接收报文并转发到端口。采用本发明所述管理报文的方法和装置,在主设备发送大量相同内容的报文时,减少了主设备和从设备之间信息传输的次数和信息量,提高了带宽利用率和网络的可靠性。

著录项

  • 公开/公告号CN101355501A

    专利类型发明专利

  • 公开/公告日2009-01-28

    原文格式PDF

  • 申请/专利权人 中兴通讯股份有限公司;

    申请/专利号CN200810146544.3

  • 发明设计人 赵颢;周建国;许溟;

    申请日2008-09-02

  • 分类号H04L12/56;H04L12/28;H04L29/06;

  • 代理机构信息产业部电子专利中心;

  • 代理人梁军

  • 地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦

  • 入库时间 2023-12-17 21:23:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-03-16

    授权

    授权

  • 2009-03-25

    实质审查的生效

    实质审查的生效

  • 2009-01-28

    公开

    公开

说明书

技术领域

本发明涉及网络通信领域,尤其涉及一种以太网堆叠系统中管理报文的方法及交换机装置。

背景技术

以太网堆叠是目前常用的一种扩展端口的方法,堆叠技术最大的优点是提供了简化的本地管理,即将一组交换机设备作为一个对象来管理。堆叠系统通常由一个主设备和多个从设备构成,每个设备包括管理单元和交换单元,主设备和从设备之间通过相对高速的端口连接,其中主设备承担整个系统的管理及协议的运行。

堆叠系统的组网拓扑结构最常见的为链型和环型,环型拓扑可以转化为链式拓扑。以链型的堆叠系统为例,如图1所示:第一交换机A为主设备,第二交换机B和第三交换机C为从设备,第一交换机A包括第一管理单元CPUA和第一交换单元SWITCHA,第二交换机B包括第二管理单元CPUB和第二交换单元SWITCHB,第三交换机C包括第三管理单元CPUC和第三交换单元SWITCHC,与设备连接的端口包括第一端口P1、第二端口P2、……、第一百四十四端口P144。在整个堆叠系统中,主设备管理的报文包括以下两类:一类为主设备与从设备之间发送的报文,报文格式为CPU TO CPU,如图1中虚线所示,这种报文要跨越不同的主机进行转发;另一类为仅在本主设备内发送的发文,报文格式为FROM CPU TAG,如图1中点划线所示。

当堆叠系统开启某种协议功能,如STP(Spanning Tree Protocol)协议时,由于第一交换机A为主设备,第一管理单元CPUA就要向所有连接的端口发送管理报文。第一管理单元CPUA发往第一端口P1的报文只须运用FROMCPU TAG报文格式在本地设备转发即可。第一管理单元CPUA发往第四十九端口P49的报文则须经过以下两个步骤来完成:首先第一管理单元CPUA运用CPUTO CPU TAG报文格式将报文通过第一交换机A和第二交换接B之间的管理通道,中继到第二交换机B的第二管理单元CPUB,然后由第二管理单元CPUB运用FROM CPU TAG报文格式将报文转发到第四十九端口P49。

报文格式均包含以下报文信息:设备号devid,局域网网号vlanid,端口号portid,报文的属性tag。第一管理单元CPUA运用FROM CPU TAG报文格式发往本地的主设备端口的报文,通常需要携带以下四种报文信息:主设备号localdevid、本地的端口号local portid、局域网网号vlanid、报文的属性tag,FROM CPUTAG报文格式如图2所示。第一管理单元CPUA发往远端的从设备端口的报文,运用CPU TO CPU报文格式,需要携带以下四种报文信息:从设备号remotedevid、远端的端口号remote portid、局域网网号vlanid、报文的属性tag,CPU TOCPU TAG报文格式在目前的大部分堆叠系统中通常如图3所示。

采用上述格式封装报文,如果发往远端的从设备的端口数目比较少,其性能的劣势表现的还不是很明显,但是假定一台从设备中的端口数目较多且都需要接收相同的报文,比如从设备中的端口数为N,主设备的管理单元就需要发送N个报文,同时管理通道也要将所述报文转发N次,这将给主设备的管理单元带来巨大的负担,系统开销比较大,降低了协议的收敛和计算速度,同时也严重影响了该管理通道的吞吐量,容易引起管理通道的拥塞,降低了该通道的可靠性和性能,对带宽也是一种巨大的浪费。

中国专利申请CN200710187279.9公开了一种交换机堆叠系统中报文处理的方法,首先在接到输入报文时,将报文按照发送和接收设备的不同分为三类:第一类为堆叠系统成员设备之间交互的报文,第二类为堆叠系统成员设备与堆叠系统之外的外接设备交互的报文,第三类为堆叠系统之外的外界设备之间交互的报文,并且为三类报文设置优先级。然后进行报文输出时,按照报文优先级从高到低的顺序输出报文。这项专利申请使得堆叠系统在网络拥塞时也能正常工作。但是并没有从根本上解决主设备向端口发送大量相同报文时,容易引起的管理通道拥塞的问题。

发明内容

本发明解决的技术问题是,提供一种以太网堆叠系统中管理报文的方法及交换机装置,在主设备向大量端口发送相同内容的报文时,减少了主设备和从设备之间信息传输的次数和信息量,提高了带宽利用率和网络的可靠性,从而提高硬件性能。

本发明采用的技术方案是,所述以太网堆叠系统中管理报文的方法,包括如下步骤:

步骤一、根据报文中的目的设备号和端口号,分别统计出发往各个目的设备的端口数;

步骤二、判断报文发往的目的设备是主设备还是从设备,根据目的设备的不同将报文信息填充到报文格式中,当主设备向同一从设备且同一局域网网号的多个端口发送报文时,采用压缩部分报文信息的方式填充报文格式,封装报文;

步骤三、启动发送报文;

步骤四、目的设备接收报文并转发到端口。

本发明还提供一种交换机装置,该装置包括:

输入单元,用于根据报文中的目的设备号和端口号,分别统计出发往各个目的设备的端口数;

判断单元,用于判断报文发往的目的设备是主设备还是从设备,根据目的设备的不同将报文信息填充到报文格式中,当主设备向同一从设备且同一局域网网号的多个端口发送报文时,采用压缩部分报文信息的方式填充报文格式,封装报文;

启动单元,用于启动发送报文;

接收单元,用于接收报文并转发到端口。

采用上述技术方案,本发明至少具有下列优点:

本发明所述以太网堆叠系统中管理报文的方法,在充分利用现有的网络硬件资源的条件下,根据实际的业务需要,针对报文发送的目的设备号、目的端口号和局域网网号,动态的选择FROM CPU TAG或CPU TO CPU TAG报文格式,并且当主设备向同一从设备且同一局域网网号的多个端口发送报文时,通过采用采用压缩部分报文信息的方式填充报文格式来发送报文,在主设备向大量端口发送大量相同报文时,极大的减少了主设备和从设备间信息传输的次数和信息量,提高了带宽利用率和网络的可靠性,从而提高硬件性能。

附图说明

图1为堆叠系统中管理报文在主从设备间转发的流向图;

图2为FROM CPU TAG报文格式;

图3为现有的CPU TO CPU TAG报文格式;

图4为本发明当主设备向同一从设备且同一局域网网号的多个端口发送报文时采用的CPU TO CPU TAG报文格式;

图5为本发明所述管理报文的方法流程图;

图6为目的设备对报文的判断解析流程图。

具体实施方式

为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及实施例,对本发明提出的所述以太网堆叠系统中管理报文的方法,详细说明如后。

本发明所述管理报文的方法流程如图5所示。

步骤501,根据发送报文的目的设备号devid,对于发送的报文,构建二元组:<目的设备号devid,端口号portid>,根据目的设备号devid分别统计出属于同一设备的第一端口数,并用变量msdevid记录主机设备号;

步骤502,提取二元组中的目的设备号devid,并与主机设备号msdevid进行比较;

步骤503,如果目的设备号devid与主机设备号msdevid相同,则获取发往目的设备的第一端口数,在所述二元组的基础上,构建三元组:<局域网网号vlanid,端口号portid,报文属性tag>;

步骤504,从该三元组中提取含有的局域网网号、端口号、报文tag属性三项报文信息填充FROM CPU TAG报文格式;

步骤505,启动发送报文到主机设备的端口;

步骤506,如果目的设备号devid与主机设备号msdevid不同,则在所述二元组的基础上,构建第一四元组:<目的设备号devid,端口号portid,局域网网号vlanid,报文属性tag>;

步骤507,在第一四元组的基础上,基于报文发往的局域网网号vlanid和目的设备号分别统计出发往同一局域网且同一设备的第二端口数,记为变量n0、n1、……、ni……;

步骤508,判断第二端口数ni是否小于等于1;

步骤509,如果第二端口数ni大于1,则在所述二元组的基础上,重新构建第二四元组:<目的设备号devid,端口号位图portmap,局域网网号vlanid,报文属性位图tagmap>,如图4所示;

步骤510,从第二四元组中提取目的设备号devid,端口号位图portmap,局域网网号vlanid,报文属性位图tagmap填充CPU TO CPU TAG报文格式,并在报文中增加一个堆叠系统约定标识mapflag;

步骤511,如果第二端口数ni等于1,则从第一四元组中提取目的设备号devid,端口号portid,局域网网号vlanid,报文属性tag填充CPU TO CPU TAG报文格式;

步骤512,主设备启动发送报文到从设备;

步骤513,从设备的管理单元收到报文后,根据约定标识mapflag对报文进行判断,如果收到的报文格式不是采用压缩部分报文信息方式填充的,用FROMCPU TAG报文格式把报文转发到该从设备的端口;如果收到的报文格式是采用压缩部分报文信息方式填充的,那么从设备在收到此报文格式之后,需要先解压缩,得到实际需要发送报文的端口,将端口号portid、局域网网号vlanid、报文属性tag填充FROM CPU TAG报文格式并发送到该从设备的端口。

下面以主设备向堆叠系统中同一局域网且同一从设备上的8个端口发送相同内容的报文为例,说明位图在本发明中的使用过程,同时比较了现有技术与本发明的差别。8个端口分别为第四十九端口P49、第五十端口P50、……、第五十六端口P56,主设备向这8个端口发送的8个报文的目的设备号devid=2,局域网网号vlanid=1,报文属性tag如下:

P49----------->tag=1

P50----------->tag=0

P51----------->tag=0

P52----------->tag=1

P53----------->tag=1

P54----------->tag=0

P55----------->tag=1

P56----------->tag=1

若采用现有技术发送8个报文,创建八个四元组<remote devid,remoteportid,vlanid,tag flag>填充CPU TO CPU TAG报文格式如下:

发往P49报文的四元组-----------><2,0,1,1>

发往P 50报文的四元组-----------><2,1,1,0>

发往P51报文的四元组-----------><2,2,1,0>

发往P52报文的四元组-----------><2,3,1,1>

发往P53报文的四元组-----------><2,4,1,1>

发往P54报文的四元组-----------><2,5,1,0>

发往P55报文的四元组-----------><2,6,1,1>

发往P56报文的四元组-----------><2,7,1,1>

主设备向8个端口转发报文时需要发送8个报文,同时管理通道也要将所述报文转发8次,这将给主设备的管理单元带来巨大的负担,系统开销比较大。

若采用本发明位图压缩的方式,构建端口号位图portmap和报文属性位图tagmap,则主设备管理通道只需要发送一次报文,具体过程如下:

首先,把需要接收报文的端口对应的二进制位置为1,不需要接收报文的端口对应的二进制位置为0,根据端口号从大到小顺序排列的二进制数转换成十六进制数,即得到portmap的数值,由于此处连续端口号的8个端口均需要接收报文,因此其对应的二进制位均置为1,那么portmap=0XFF。同理,往同一局域网所包含的端口发送TAG报文时,则把报文属性tag对应的二进制位置为1,否则置为0,根据端口号从大到小顺序排列的二进制数转换成十六进制数,即得到tagmap的数值,tagmap=0XD9;

然后,用四元组<目的设备号devid,端口号位图portmap,局域网网号vlanid,报文属性位图tagmap>填充CPU TO CPU TAG报文格式并发送到目的从设备,该四元组的数值为<2,0XFF,1,0XD9>;

当目的从设备收到报文后,需要判断报文中携带的是端口号portid还是端口号位图portmap,来实现报文的进一步本地分发,为此在报文内容中增加一个堆叠系统约定标识mapflag,如可用两个字节表示mapflag=0X55AA,目的设备判断解析的流程如图6所示,从设备在报文内容中查找到约定标识mapflag的数值之后,对其进行判断,若约定标识mapflag=0X55AA,则说明报文承载的是端口号位图portmap,随后采用算术移位操作解析出端口号,将局域网网号vlanid、端口号portid、报文属性tag填充到FROM CPU TAG报文格式,分别发送到所述目的设备的端口;若约定标识mapflag不等于0X55AA,则说明报文承载的是端口portid,将局域网网号vlanid、端口号portid、报文属性tag填充到FROM CPU TAG报文格式,发送到所述目的设备的端口。

本发明的第二实施例,一种交换机装置,该装置包括:

输入单元,用于根据报文中的目的设备号和端口号,分别统计出发往各个目的设备的端口数;

判断单元,用于判断报文发往的目的设备是主设备还是从设备,根据目的设备的不同将报文信息填充到报文格式中,当主设备向同一从设备且同一局域网网号的多个端口发送报文时,采用压缩部分报文信息的方式填充报文格式,封装报文;

启动单元,用于启动发送报文。

接收单元,用于接收报文并转发到端口。

通过具体实施方式的说明,当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号