一种组播转发表查找方法和装置的制作方法

文档序号:7691829阅读:245来源:国知局
专利名称:一种组播转发表查找方法和装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种组播转发表查找方法和装置。
技术背景随着网际协议(IP, International Protocol)网络的发展,网络应用也越来 越丰富。出现了会议电视、电子白板等一类新型应用,这些应用与传统IP应 用相比,数据量较大,并且每个发送点存在多个接收点,但又不是所有的网 络节点。在这样的需求背景下,产生了IP多播技术,IP多4番,也称为多址广 播或组播,是一种允许一台或多台主机作为多播源, 一次性地、同时向多台 主机发送单一数据包的传输控制协议(TCP, Transfer Control Protocol) /IP网 络技术。组播需要完成的功能是让发送端向一个组发送数据。与重复点对点 通信方式和广播方式相比,在组播应用中,使用单一的数据流替代多个数据 流,能够实现点到多点的通信同时避免不必要的带宽与处理时间浪费,从而 在有限的网络资源上满足多播应用需求。以下通过在以太网中的应用,来说明组播在交换设备中的具体处理过程在以太网交换设备中, 一般包含多个快速转发单元(EFU, Express Forwarding Unit)和流量管理器(TM, Traffic Manager), EFU由EFU上行单 元和EFU下行单元组成。EFU与设备端口交互,负责转发动作执行;TM分 割转发的上下行数据,从EFU接收流量,负责流量的调度复制并将流量发送 回EFU。为简便起见,以网络交换设备包含1个EFU和1个TM来简要说明 网络交换设备的流量处理过程,参照图1,为现有技术中网络交换设备结构示 意图,Pl、 P2、 P3为i殳备端口号以下结合图1,分三步简要阐述交换设备中的组播处理过程第一步,快速转发单元(EFU, Express Forwarding Unit)上行单元处理 EFU与设备端口交互,接收线路上过来的流量。首先假设P2、 P3端口侧用户 加入了某一个组播组G。当组播报文从PI端口进入后,会去查找组播i某体访问控制(MAC, Media Access Control)表,根据数据报文的目的mac地址查 找到组播MAC表后,返回一个多播标识(MID, Multicast Identification ),将 该MID封装在帧头发送到TM;第二步,TM处理TM预先保存一个MID的出端口号和复制份数的链 表,来管理TM芯片的表项,它具有对报文进行复制的功能。EFU将封装MID 后的报文发送到TM后,TM会根据该MID得到对应的出端口号和该端口的 复制份数,然后向该端口复制多份报文依次发送到EFU的下行,每一份复制 后的数据报文对应 一 个复制份数序号;第三步,EFU下行单元处理TM按照MID对应的端口号和复制份数, 对才艮文进行复制后重新发回到EFU; EFU下行会根据MID,对应端口号和复 制后的每一个数据报文对应的复制份数序号去查找下行链接表(ELB, Egress Link Block),从而得到该报文的转发信息。通常,假设交换设备可支持8K个MID, 64个端口,每个端口对应一个 端口号,每个端口的最大复制能力为128份,则在EFU下行,根据MID、端 口号和复制份数序号去查找ELB表,则该ELB的规格就是8K*64*128=64M条表项。由于ELB相对较大,达到十兆级的容量,将其放在三态存储器(TCAM, Ternary Content Addressable Memory)中无法满足要求,只能i文在有较大存储 容量的"t争态随才几存卡者器(SRAM, Synchronous Random Access Memory)和动 态随机存储器(DRAM, Dynamic Content Addressable Memory)中。乂人成本 上考虑, 一般将该表放在比较廉价的DRAM中。参照图2,为现有技术中ELB 示意图,查找该ELB的关键字由MID、端口号、复制份数序号构成。在对现有技术的研究和实践过程中,发明人发现现有技术中,将ELB作 为线性表存放在DRAM中,需要很大的存储空间,成本较高;同时,在进行 组播大规格表项查找时,釆用上述线性查找方法耗时较大,且很难维护。并 且,即使MID或者PORT有一个增大的话,ELB的空间则会呈128的倍数增 长,因此,可通用性和可扩展性差。而如果将ELB作为非线性表,通:^7合希 算法并采用二叉树的方法查找的话,则会大大增加微码操作的复杂度,尤其对于指令空间非常紧张的网络处理器(NP, Network Processor ),很难实现。 发明内容本发明实施例提供一种组播转发表查找方法和装置,能够节约存储空间, 减少查找时间,提高可扩展性和可通用性。为解决上述技术问题,本发明所提供的组播转发表查找方法和装置实施 例是通过以下技术方案实现的本发明实施例提供了一种组播转发表查找方法,该方法包括从所接收的数据报文帧头中获取至少两个关键字,所述关键字至少包括 第 一级关键字和第二级关键字;根据所述第一级关键字,查找第一级组播转发表,从所述第一级组4番转 发表中查找获得与所述第 一级关键字对应的第二级组播转发表的地址索引;根据所述第二级组播转发表的地址索引和所述第二级关键字,查找第二 级组播转发表,从所述第二级组播转发表中查找获得与所述第二级组播转发 表的地址索引和所述第二级关键字对应的表项内容。本发明实施例提供了 一种组播转发表查找装置,该装置包括关键字获取单元,用于从所接收的数据报文帧头中获取至少两个关键字, 所述关键字至少包括第一级关键字和第二级关键字;第一查找单元,用于根据所述第一级关键字,查找第一级组播转发表, 从所述第 一级组播转发表中查找获得与所述第 一级关^:字对应第二级组4番转 发表的地址索引;第二查找单元,用于根据所述第二级组播转发表的地址索引和所述第二 级关键字,查找第二级组播转发表,从所述第二级组播转发表中查找获得所 述第二级组播转发表的地址索引以及第二级关键字对应的表项内容。本发明实施例还提供了一种交换设备,该交换设备包括TM单元和EFU 下行单元,所述EFU下行单元与TM单元进行数据交互,所述EFU下行单元 包括关键字获取单元,用于从所接收的数据报文帧头中获取至少两个关4建字,所述关键字至少包括第一级关键字和第二级关键字;第一查找单元,用于根据所述第一级关键字查找第一级组播转发表,从 所述第 一级组播转发表中查找获得与所述第 一级关键字对应的第二级组^"转发表的地址索引;第二查找单元,用于根据所述第二级组播转发表的地址索引和所述第二 级关键字查找第二级组播转发表,从所述第二级组播转发表中查找获得所述 第二级组播转发表的地址索引和第二级关键字所对应的表项内容。本发明实施例的技术方案通过获取至少两个关键字,且所述关键字至少 包括第一级关键字和第二级关键字,根据所述第一级关键字查找第一级组播 转发表,获取第二级组播转发表的地址索引,根据获取的第二级组播转发表 的地址索引和所述第二级关键字,查找第二级组播转发表,获取所述第二级 组播转发表的地址索引和第二级关键字对应的表项内容;由于上述技术方案 中的组播转发表查找是通过将组播转发表分级实现的,将所查找的关键字分 在至少两个组播转发表中并通过地址索引来表示其中的映射关系,对于大规 格的组播转发表,通过分级表表示后,可以根据业务需要灵活分配除第一级 组播转发表外的各级组播转发表中的关键字的数目,不需要所有关键字的数 目都按照最大规格设置,因此可以节约存储空间,降低成本;同时,由于可 以灵活配置组播转发表中关键字对应的个数,组播转发表的规格大大减小, 因此可以极大地节约查找时间,而且不需要很大的微码操作复杂度,可以节 约指令空间,适合于指令空间较紧张的网络处理器;并且,由于每个组播转 发表都较小,因此易于维护,而且,根据实际需要分配各级组播转发表中所 支持的关键字的个数,具有更好的通用性和可扩展性。


图1为现有技术中网络交换设备结构示意图;图2为现有技术中ELB示意图;图3为本发明实施例中组播转发表查找方法流程图;图4a为本发明实施例中第一级组播转发表查找示意图;图4b为本发明实施例中第二级组播转发表查找示意图; 图5为本发明实施例中组播转发表查找装置实施例一结构示意图; 图6为本发明实施例中组播转发表查找装置实施例二结构示意图; 图7为本发明实施例中交换设备实施例一结构示意图; 图8为本发明实施例中交换设备实施例二结构示意图。
具体实施方式
本发明实施例提供了 一种组播转发表查找方法和装置,该组播转发表查 找方法中,通过获取至少两个关键字,所述关键字至少包括第一级关键字和 第二级关键字;根据获取的第一级关键字,查找第一级组播转发表,从第一 级组播转发表中查找获得与第一级关键字对应的地址索引;然后根据所获取 的地址索引和已获取的第二级关键字,查找第二级组播转发表,从第二级组 播转发表中查找获得与所述地址索引和第二级关键字对应的表项内容;当所 述表项内容为所述第二级组播转发表的下一级组播转发表的地址索引时,依 照上述查找所述第二级组播转发表的方式从所述第二级组播转发表的下一级 组播转发表开始,逐级向下查找所述第二级组播转发表后的各级组播转发表, 直至查找获得组播转发信息。这种组播转发表查找方法可以节约存储空间, 减少查找时间,提高可扩展性和可通用性。为使本发明实施例的目的、技术方案及优点更加清楚明了,以下参照附 图,以应用在交换网设备中组播转发表的查找和转发为例进行详细说明参照图3,为本发明实施例中组播转发表查找方法实施例流程图,以下通 过具体步骤进行详细说明步骤31、从对数据报文进行封装的帧头中获取MID、端口号和复制份数序号;应用在交换网设备时,组播数据净艮文进入EFU上行单元后,可以通过查 找组播MAC表来获得与所述组播数据才艮文的目的MAC地址对应的MID,然 后将该MID封装在帧头中发送到TM, TM根据该MID获取到对应的端口号 和复制份数序号后封装在帧头中发送到EFU下行单元。EFU下行单元解析该帧头获取MID、端口号和复制份数序号。帧头通常是在数据报文进入交换设备后在数据报文的前边添加的一定字 节的信息,所添加的信息为交换设备所私有的信息,用以标志报文在处理时 的一些信息,如该报文的出端口号,报文为单播还是组播等私有标志,只在 交换设备内部有效。在报文被处理完毕后从交换设备发出时,该信息被删除。步骤32、根据获取的MID和端口号,查找第一级组播转发表,获取所述 MID和端口号对应的地址索引;将获得的MID和端口号作为第一级关键字,查找第一级组播转发表,从 所述第 一级组播转发表中查找获取该MID和端口号所对应的第二级组播转发 表的地址索引,参照图4a,为本发明实施例中第一级组播转发表查找示意图, 根据MID和端口号PORT,查找到对应的下行链路表偏移地址ELB Offset Address;步骤33、根据获取的地址索引以及已获取的复制份数序号,查找第二级 组播转发表,从第二级组播转发表中查找获取该地址索引和复制份数序号所 对应的表项内容。利用从第 一级组播转发表中获取的地址索引以及之前获取的复制份数序 号查找第二级组播转发表,参照图4b,为本发明实施例中第二级组播转发表 查找示意图,复制份数序号作为第二级关键字,根据ELB Offset Address和复 制份数序号,可以查找到对应的ELB数据,获取到报文的处理内容。该表项包含该报文从该交换设备发送出去时的一些转发信息,如该报文 是普通二层转发还是入虚拟私有网络月良务(VPLS, Virtual Private LAN Service ) 及从该设备出去时封装的是虚拟网络标识vlanID或是链路转换协议(LSP, Link Switching Protocol)标识等。假设MID个数有8K,仍支持64个端口 ,那么第 一级组播转发表的规格 为8K*64=512K,而对于第二级组播转发表,可以根据设备实际需求来设置 ELB表的规格,例如在实际环境中,并不需要所有的端口都复制128份,则 可以通过第一级组播转发表中的ELB Offset Address值与第二级组播转发表中 表项的映射关系以及复制份数序号来配置第二级组播转发表,实现第二级组播转发表的动态分配。例如,设备支持8K个MID, 64个端口,所以第一级 组播转发表的规格就是8K*64 = 512K条表项,即多播标识与端口号对应关系 有512K种,而实际场景中假设只要支持512K中的72K就足够了,假设在场 景中仅有部分端口要求复制128份,其他端口最大支持复制8份,其中复制 128份的最大需求是8K,复制8份的最大需求是64K,那么ELB表的规格为 8K*128 + 64*8=1536K条表项,与单一线性ELB表的64M相比,从容量上来 说减少了近40倍的存储空间。可见,对于一个交换设备,在实际应用中,虽 然它支持8K个组〗番标识,但可能并不要求每一个组纟番标识都对应64个端口 且每个端口都复制128份,因此,采用分级组播转发表进行查找,可以节约 存储空间,减少查找时间消耗。可见,通过获取的MID和端口号,查找第一级组播转发表,获取该MID 和端口号对应的地址索引,并根据获取的地址索引及已获取的复制份数序号,查找第二级组播转发表,获取该多播标识、端口号和复制份数序号所对应的 表项内容,并可以根据表项内容对数据报文进行处理。这种组播转发表查找 方法是通过两级表实现的,由于将所查找的关键字分在两个表中并通过地址 索引来表示其中的映射关系,对于大规格的组播转发表,通过两级表表示后, 可以灵活分配除第 一级组播转发表外的各级组播转发表中相应关键字的个 数,因此,除第一级组播转发表外的各级组播转发表都不需要用最大规格表 示,使得组播转发表总体规格大大减小,因此可以节约存储空间,降低成本; 同时,由于组播转发表的规格大大减小,因此可以极大地节约查找时间,而 且不需要很大的微码操作复杂度,可以节约指令空间,适合于指令空间较紧 缺的网络处理器;而且,根据实际需要灵活分配第一级组播转发表中所支持 的端口数和第二级组播转发表所支持的复制份数,具有更好的通用性和可扩 展性。可以理解的是,对于两个关键字的情况,这两个关键字将被划分为两级, 分别作为第一级关键字和第二级关键字,假设这两个关键字为A、 B,则可将 A定义为第一级关键字,而B定主义为第二级关键字,也可将B定义为第一 级关键字,而A定义为第二级关键字。根据所述第一级关键字,查找第一级 组播转发表,获取发表中获取的地址索引和第二级关键字,查找第二级组播转发表,从第二级 组播转发表中查找获取所述第二级组播转发表的地址索引和第二级关键字对 应的表项内容。可以根据需要设置第二级组播转发表中每个地址索引对应的 第二级关键字的数目,因此可以减小组播转发表的规格,节约存储空间和查 找时间,并提高所述组播转发表的通用性和可扩展性。同样,对于三个以上关键字的情况,也可以将所述关键字划分为两级,假设所述关键字包括Al、 Bl、 Cl、 Dl,则可根据实际需要将这四个关键字 划分为两级,例如可以将A1、或A1和B1、 Cl、 Dl中的任一个或两个作为 第一级关键字,剩下的关键字则作为第二级关键字;当然,也可选择A1、或 A1和B1、 Cl、 Dl中的任一个或两个作为第二级关键字,剩下的关键字则作 为第一级关键字。根据所述第一级关键字,查找第一级组播转发表,获取第 二级组播转发表的地址索引;然后根据从第一级组播转发表中获取的所述第 二级组播转发表的地址索引和第二级关键字,查找第二级组播转发表,从第 二级组播转发表中查找获取所述第二级组播转发表的地址索引和第二级关键 字对应的表项内容,可以根据需要设置第二级组播转发表中每个地址索引对 应的第二级关键字的数目,因此可以减小组播转发表的规格,节约存储空间 和查找时间,并提高所述组播转发表的通用性和可扩展性。可以理解的是,当关键字数目较多时,也可以按照上述组播转发表查找 方法查找,首先获取关键字,这些关键字被划分为至少三级,例如,当有三 级组播转发表时,每级组播转发表对应的关键字依次可以用第 一级关键字、 第二级关键字、第三级关键字表示,当有四级组播转发表时,每级组播转发 表对应的关键字依次可以用第一级关键字、第二级关键字、第三级关键字、 第四级关键字,对应的,组播转发表可称为第一级组播转发表、第二级组播 转发表、第三级组播转发表、第四级组播转发表,依此类推。例如,对于三级组播转发表的情况,可以根据获取的第一级关键字,查 找第一级组播转发表,从第 一级组播转发表中查找获取第二级组播转发表的 地址索引;然后根据所述第二级组播转发表的地址索引和第二级关键字,查 找第二级组播转发表,从所述第二级组播转发表中查找获取第三级组^^转发 表的地址索引;根据所述第三级组播转发表的地址索引和第三级关键字,查找第三级组播转发表,从所述第三级组播转发表中查找获取对应的表项内容, 所述表项内容为组播转发信息。对于四级组播转发表的情况,则从上述第三 级组播转发表中查找获取的不是组播转发信息,而是第四级组播转发表的地 址索引,根据所述第四级组播转发表的地址索引和第四级关键字,继续查找 第四级组播转发表,最后从所述第四级组播转发表中查找获取对应的表项内 容,即组播转发信息。因此,对于ELB等较大规格的组播转发表,可以分为两级或两级以上的 组播转发表来表示,第一级组播转发表存放第二级组播转发表的地址索引, 依次类推,通过查找上一级组播转发表获取本级组播转发表的地址索引,才艮 据从上一级组播转发表获取的地址索引和本级关键字,查找本级组播转发表, 从而获得本级具体的表项内容,当从本级组播转发表中查找获得的表项内容 为本级组播转发表的下一级组播转发表的地址索引,而不是组播转发信息时, 则可依照上述查找本级组播转发表的方式从本级组播转发表的下一级组播转 发表开始,逐级向下查找本级组播转发表后的各级组播转发表,直至查找获 得组播转发信息。由于可以灵活分配除第 一级组播转发表外的各级组播转发 表中相应级关键字的个数,决定各级组播转发表的规格,使得组播转发表总 的规格大大减小,进而可以节约存储空间和查找时间,并提高所述组播转发 表的通用性和可扩展性。以上对本发明实施例所采用的组播转发表查找方法进行了详细描述,为 使本领域技术人员更好地理解和实现本发明实施例,以下对上述方法中所采 用的装置进行对应描述。参照图5,为本发明实施例中组播转发表查找装置实施例一结构示意图, 该装置包括关键字获取单元51,用于从所接收的数据报文帧头中获取至少两个关键 字,所述关键字至少包括第一级关键字和第二级关键字;第一查找单元52,用于根据关键字获取单元51获取的第一级关键字,查 找第一级组播转发表,从所述第 一级组播转发表中查找获取与所述第一级关 键字对应的第二级组播转发表的地址索引;第二查找单元53,用于根据第一查找单元52获取的地址索引和第二级关 键字,查找第二级组播转发表,从所述第二级组播转发表中查找获取所述第 二级组播转发表的地址索引和第二级关键字对应的表项内容。此外,本发明实施例的组播转发表查找装置,还可以包括第三查找单元, 用于在上述表项内容为所述第二级组播转发表的下一级组播转发表的地址索 引时,依照上述查找所述第二级组播转发表的方式从所述第二级组播转发表 的下一级组播转发表开始,逐级向下查找所述第二级组播转发表后的各级组 播转发表,直至查找获得组播转发信息。所述关键字获取单元51所获取的第一级关键字可以为MID、端口号,第 二级关键字可以为复制份数序号。该组播转发表查找装置由于可以根据获取的第 一级关键字查找第 一级组 播转发表,获取第二级组播转发表的地址索引,并根据获取的第二级组播转 发表的地址索引和已获取的第二级关键字,查找第二级组播转发表,获取所 述第二级组播转发表的地址索引和第二级关键字对应的表项内容。由于通过 分级查找,可以根据业务需要灵活分配第二级组播转发表中相应关键字的个 数,只要满足业务需要即可,不需要每个关键字的数目都按照最大规格设置, 因此可以节约存储空间,降低成本;同时,由于组播转发表的规格大大減小, 可以极大地节约查找时间,而且不需要很大的微码操作复杂度,可以节约指 令空间,适合于指令空间较紧张的网络处理器;并且,由于每个组播转发表 都较小,因此易于维护,而且,根据实际需要分配各级组播转发表中所应用 的关键字的个数,具有更好的通用性和可扩展性。参照图6,为本发明实施例中组播转发表查找装置实施例二结构示意图, 该装置包括关键字获取单元61,用于获取至少三个关键字,所述关键字至少包括第 一级关键字、第二级关键字和第三级关键字;第一查找单元62,用于根据关键字获取单元61获取的第一级关键字,查 找第一级组播转发表,从所述第一级组播转发表中查找获取与所述第一级关 键字对应的第二级组播转发表的地址索引;第二查找单元63,用于根据第一查找单元62获取的地址索引和关键字获 取单元61获取的第二级关键字,查找第二级组播转发表,从所述第二级组播转发表中查找获取与所述第二级组播转发表的地址索引和第二级关键字对应 的第三级组播转发表的地址索引;第三查找单元64,用于根据第二查找单元63获取的第三级组播转发表的 地址索引和关键字获取单元61获取的第三级关键字,查找第三级组播转发表, 从所述第三级组播转发表中查找获取与所述第三级组播转发表的地址索引以 及第三级关键字对应的表项内容,所述表项内容为组播转发信息。可以看出,在该组播转发表查找装置中,根据不同的关键字将组播转发 表分级表示,对于除第一级组播转发表之外的各级组播转发表,可以根据需 要设置各级关键字的数目,不需要将所有的关键字都按照最大数目设置,因 此,可以大大减小组播转发表的规格,进而可以节约存储空间,降低成本; 同时,由于组播转发表的规格大大减小,可以极大地节约查找时间,而且不 需要很大的微码操作复杂度,可以节约指令空间,适合于指令空间较紧张的 网络处理器;并且,由于每个組播转发表都较小,因此易于维护,而且,根 据实际需要分配各级组播转发表中所支持的关键字的个数,具有更好的通用 性和可扩展性。参照图7,为本发明实施例中交换设备实施例一结构示意图,该交换设备 包括TM单元71和EFU下行单元72, EFU下行单元72和TM单元71进 行数据交互,其中,EFU下行单元72包括关键字获取单元721,用于从来自TM的数据报文帧头中获取至少两个关 键字,所述关键字至少包括第一级关键字和第二级关键字; '一般,通过对数据报文帕头解析可获得MID、端口号和复制份数序号等 三个关键字。在本发明实施例中,所述MID和端口号为第一级关键字,所述 复制份数序号为第二级关键字。第一查找单元722,用于根据关键字获取单元721所获取的MID和端口 号查找第一级组播转发表,从所述第一级组播转发表中查找获取所述MID和 端口号对应的地址索引;第二查找单元723,用于根据第一查找单元722所获取的地址索引和关键 字获取单元721所获取的复制份数序号,查找第二级组播转发表,从所述第 二级组播转发表中查找获取所述地址索SI和复制份数序号所对应的表项内 容,即组播转发信息。可见,该交换设备通过获取的第一级关键字,查找第一级组播转发表, 从所述第一级组播转发表中查找获取第二级组播转发表的地址索引,并根据 获取的地址索引以及第二级关键字,查找第二级组播转发表,从所述第二级 组播转发表中查找获取对应的表项内容,用于处理数据报文的转发。由此可 知,本发明实施例的交换设备查找组播转发信息的方法是通过分级组播转发 表实现的,由于将所查找的关键字分在两级组播转发表中并通过地址索引来 表示其中的映射关系,对于大规格的组播转发表,通过分级表表示后,由于 可以灵活分配第二级组播转发表中相应关键字的个数,使得组播转发表规格 大大减小,因此可以节约存储空间,降低成本;同时,由于组播转发表的规 格大大减小,因此可以极大地节约查找时间,而且不需要很大的微码操作复 杂度,可以节约指令空间,适合于指令空间较紧缺的网络处理器;并且,由 于每个组播转发表都较小,因此易于维护,还可以根据实际需要扩展组播转 发表中所支持的多播标识个数和端口数,具有更好的通用性和可扩展性。以下对 一种支持三级及三级以上的组播转发表查找的交换设备通过具体 实施例进行详细描述参照图8,为本发明实施例中交换设备实施例二结构示意图,该交换设备 包括TM单元81和EFU下行单元82,所述EFU下行单元82与TM单元81 进行数据交互,其特征在于,所述EFU下4于单元82包括关4定字获取单元821,用于从来自TM单元81的数据报文帧头中获取至 少三个关键字,所述关键字至少包括第一级关键字、第二级关键字和第三级 关键字;第一查找单元822,用于根据关键字获取单元821获取的第一级关键字, 查找第一级组播转发表,从所述第一级组播转发表中查找获取与所述第一级 关键字对庆的第二级组播转发表的地址索引;第二查找单元823,用于根据第一查找单元822获取的地址索引和关键字 获取单元821获取的第二级关键字,查找第二级组播转发表,从所述第二级 组播转发表中查找获取与所述第二级组播转发表的地址索引和第二级关键字 对应的第三级组播转发表的地址索引;第三查找单元824,用于根据第二查找单元823获取的第三级组播转发表 的地址索引和关键字获取单元821获取的第三级关键字,查找第三级组播转 发表,从所述第三级组播转发表中查找获取与所述第三级组播转发表的地址 索引以及第三级关键字对应的表项内容,所述表项内容为组播转发信息。由上可知,对于三级以上的组播转发表查找情况,本发明实施例交换设 备的第三查找单元,用于在第二查找单元查找获得的表项内容为所述第二级 组播转发表的下一级组播转发表的地址索引时,依照上述查找所述第二级组 播转发表的方式从所述第二级组播转发表的下一级组播转发表开始,逐级向 下查找所述第二级组播转发表后的各级组播转发表,直至查找获得组播转发 信息。是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机 可读存储介质中,该程序在执行时,包括如下步骤从来自TM的数据报文帧头中获取至少两个关键字,所述关键字至少包 括第 一级关键字和第二级关键字;根据所述第一级关键字,查找第一级组播转发表,从所述第一级组播转 发表中查找获取与所述第 一级关键字对应的第二级组播转发表的地址索引;根据所第二级组播转发表的地址索引和所述第二级关键字,查找第二级 组播转发表,从所述第二级组播转发表中查找获取所述第二级组播转发表的 地址索引和所述第二级关键字对应的表项内容;当所述表项内容为所述第二级组播转发表的下一级组播转发表的地址索 引时,依照上述查找所述第二级组播转发表的方式从所述第二级组播转发表 的下一级组播转发表开始,逐级向下查找所述第二级组播转发表后的各级组 播转发表,直至查找获得组播转发信息。上述提到的存储介质可以是只读存储器,磁盘或光盘等(-贝是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括如下步骤从来自TM的数据报文帧头中获取至少三个关键字,所述关键字至少包 括第一级关键字、第二级关键字和第三级关键字;根据获取的第一级关键字,查找第一级组播转发表,从所述第一级组播 转发表中查找获取与所述第一级关键字对应的第二级组播转发表的地址索 引;根据所述第二级组播转发表的地址索引和第二级关键字,查找第二级组 播转发表,从所述第二级组播转发表中查找获取与所述第二级组播转发表的 地址索51和第二级关键字对应的第三级组播转发表的地址索引;根据所获取的第三级组播转发表的地址索引和第三级关键字,查找第三 级组播转发表,从所述第三级组播转发表中查找获取与所述第三级组播转发 表的地址索引以及第三级关键字对应的表项内容,所述表项内容为组播转发4吕息。上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上对本发明所提供的一种组播转发表查找方法和装置进行了详细介 绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方 式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本 发明的限制。
权利要求
1、一种组播转发表查找方法,其特征在于,包括从所接收的数据报文帧头中获取至少两个关键字,所述关键字至少包括第一级关键字和第二级关键字;根据所述第一级关键字,查找第一级组播转发表,从所述第一级组播转发表中查找获得与所述第一级关键字对应的第二级组播转发表的地址索引;根据所述第二级组播转发表的地址索引和所述第二级关键字,查找第二级组播转发表,从所述第二级组播转发表中查找获得与所述第二级组播转发表的地址索引和所述第二级关键字对应的表项内容。
2、 如权利要求1所述的组播转发表查找方法,其特征在于,所述方法还 包括当所述表项内容为所述第二级组播转发表的下一级组播转发表的地址 索引时,依照上述查找所述第二级组播转发表的方式从所述第二级组播转发 表的下一级组播转发表开始,逐级向下查找所述第二级组播转发表后的各级 组播转发表,直至查找获得组播转发信息。
3、 如权利要求2所述的组播转发表查找方法,其特征在于,当所述关键 字至少包括第一级关键字、第二级关键字和第三级关键字时,所述组播转发 表查找方法具体为从来自流量管理器TM的数据报文帧头中获取所述第一级关键字、第二 级关键字和第三级关键字;根据所述第一级关键字,查找第一级组播转发表,从所述第一级组播转 发表中查找获得与所述第一级关键字对应的第二级组播转发表的地址索引;根据所述第二级组播转发表的地址索引和所述第二级关键字,查找第二 级组播转发表,从所述第二级组播转发表中查找获得与所述第二级组播转发 表的地址索引和所述第二级关键字对应的第三级组播转发表的地址索引;根据所述第三级组播转发表的地址索引和所述第三级关键字,查找第三 级组播转发表,从所述第三级组播转发表中查找获得与所述第三级组播转发 表的地址索引和所述第三级关键字对应的所述组播转发信息。
4、 如权利要求1或2所述的组播转发表查找方法,其特征在于,当所述关键字包括多播标识、端口号和复制份数序号时,所述组播转发表查找方法具体为从来自TM的数据报文帧头中获取所述多播标识、所述端口号和所述复 制份数序号,所述多播标识和端口号为所述第一级关键字,所述复制份数序 号为所述第二级关键字;根据所述多播标识和端口号,查找第一级组播转发表,从所述第一级组 播转发表中查找获得与所述多播标识和端口号对应的第二级组播转发表的地 址索引;根据所述第二级组播转发表的地址索引和所述复制份数序号,查找第二 级组播转发表,从所述第二级组播转发表中查找获得与所述复制份数序号对 应的组播转发信息。
5、 一种组播转发表查找装置,其特征在于,包括关键字获取单元,用于从所接收的数据报文帧头中获取至少两个关键字, 所述关键字至少包括第一级关键字和第二级关键字;第一查找单元,用于根据所述第一级关键字,查找第一级组播转发表, 从所述第 一级组播转发表中查找获得与所述第 一级关键字对应的第二级组播 转发表的地址索引;第二查找单元,用于根据所述第二级组播转发表的地址索引和所述第二 级关键字,查找第二级组播转发表,从所述第二级组播转发表中查找获得所 述第二级组播转发表的地址索引以及第二级关键字对应的表项内容。
6、 如权利要求5所述的组播转发表查找装置,其特征在于,所述装置还 包括第三查找单元,用于在所述表项内容为所述第二级组播转发表的下一级 组播转发表的地址索引时,依照上述查找所述第二级组播转发表的方式从所 述第二级组播转发表的下一级组播转发表开始,逐级向下查找所述第二级组 播转发表后的各级组播转发表,直至查找获得组播转发信息。
7、 如权利要求5或6所述的组播转发表查找装置,其特征在于,所述关 键字获取单元用于从所接收的数据报文帧头中获取三个所述关键字,所述三个关键字分别为多播标识、端口号和复制份数序号,其中所述多播标识和端口号为所述第一级关键字,所述复制份数序号为所述第二级关键字;所述第二查找单元,用于根据所述第二级组播转发表的地址索引和所述第二级关键 字,从所述第二级组播转发表中查找获得所述第二级组播转发表的地址索引 以及第二级关键字对应的组播转发信息。
8、 一种交换设备,包括流量管理器TM单元,其特征在于,还包括与所 包括关键字获取单元,用于从所接收的数据报文帧头中获取至少两个关键字, 所述关键字至少包括第一级关键字和第二级关键字;第一查找单元,用于根据所述第一级关键字,查找第一级组播转发表, 从所述第 一级组播转发表中查找获得与所述第 一级关键字对应的第二级组播 转发表的地址索引;第二查找单元,用于根据所述第二级组播转发表的地址索引和所述第二 级关键字,查找第二级组播转发表,从所述第二级组播转发表中查找获得所 述第二级组播转发表的地址索引以及第二级关键字对应的表项内容。
9、 如权利要求8所述的交换设备,其特征在于,所述EFU下行单元还包 括第三查找单元,用于在所述表项内容为所述第二级组播转发表的下一级组 播转发表的地址索引时,依照上述查找所述第二级组播转发表的方式从所述 第二级组播转发表的下一级组播转发表开始,逐级向下查找所述第二级组播 转发表后的各级组播转发表,直至查找获得组播转发信息。
10、 如权利要求8或9所述的交换设备,其特征在于,所述关键字获取 单元用于从所接收的数据报文帧头中获取三个所述关键字,所述三个关键字 分别为多播标识、端口号和复制份数序号,其中所述多播标识和端口号为所 述第一级关键字,所述复制份数序号为所述第二级关键字;所述第二查找单 元,用于根据所述第二级组播转发表的地址索引和所述第二级关键字,从所 述第二级组播转发表中查找获得所述第二级组播转发表的地址索引以及第二 级关键字对应的组播转发信息。
全文摘要
本发明实施例公开了一种组播转发表查找方法和装置,主要是从所接收的数据报文帧头中获取至少两个关键字,所述关键字至少包括第一级关键字和第二级关键字;根据所述第一级关键字,从第一级组播转发表中查找获得与第一级关键字对应的第二级组播转发表的地址索引;根据第二级组播转发表的地址索引和第二级关键字,从第二级组播转发表中查找获得与所述第二级组播转发表的地址索引和所述第二级关键字对应的表项内容。采用上述技术方案,可以节约存储空间,减少查找时间,并具有更好的通用性和可扩展性。
文档编号H04L12/56GK101267331SQ20081009502
公开日2008年9月17日 申请日期2008年4月23日 优先权日2008年4月23日
发明者磊 李 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1