CN106470171A - 组播转发表项的下发方法及装置 - Google Patents
组播转发表项的下发方法及装置 Download PDFInfo
- Publication number
- CN106470171A CN106470171A CN201610826870.3A CN201610826870A CN106470171A CN 106470171 A CN106470171 A CN 106470171A CN 201610826870 A CN201610826870 A CN 201610826870A CN 106470171 A CN106470171 A CN 106470171A
- Authority
- CN
- China
- Prior art keywords
- list item
- interface
- multicast
- board
- identify
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/806—Broadcast or multicast traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
Abstract
本申请提供一种组播转发表项的下发方法及装置,方法包括:接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;若记录有,则根据预设规则判断所述组播报文是否为跨板转发报文;若是,则将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;若否,则将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。本申请对于跨板转发和非跨板转发的情况,针对与本组播转发表项无关的接口板或主控板的转发芯片,不会再下发本组播转发表项,从而可以降低转发芯片资源的浪费,并且也可以缩短框式设备的转发时延。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种组播转发表项的下发方法及装置。
背景技术
目前,通常利用框式设备实现组播技术,框式设备包含的每个槽位中可以插有板卡(板卡包括主控板和接口板)。组播技术是通过组播转发表项实现的组播报文转发,为了提高组播报文的转发效率,通常将组播转发表项下发到板卡的转发芯片中以实现组播报文的快速转发,并且组播转发表项有多个出接口,当这些出接口在一个接口板上时,在一个接口板上即可实现组播报文的转发,即非跨板转发,当这些出接口在多个接口板上时,需要在主控板和每个出接口所在接口板上实现组播报文的转发,即跨板转发。然而,无论是跨板转发还是非跨板转发,框式设备均会遍历所有槽位,并向在位的所有板卡的转发芯片下发组播转发表项,这样会浪费大量的转发芯片资源。
发明内容
有鉴于此,本申请提供一种组播转发表项的下发方法及装置,以解决现有下发方式浪费转发芯片资源的问题。
根据本申请实施例的第一方面,提供一种组播转发表项的下发方法,所述方法应用在框式设备的处理器上,所述框式设备包括主控板和至少一个接口板,所述主控板和所述接口板均包含有转发芯片,所述方法包括:
接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;
若记录有,则根据预设规则判断所述组播报文是否为跨板转发报文;
若是,则将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;其中,所述组播转发表项还记录有入接口;
若否,则将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。
根据本申请实施例的第二方面,提供一种组播转发表项的下发装置,所述装置应用在框式设备的处理器上,所述框式设备包括主控板和至少一个接口板,所述主控板和所述接口板均包含有转发芯片,所述装置包括:
接收及获取模块,用于接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;
判断模块,用于当判断结果为有时,根据预设规则判断所述组播报文是否为跨板转发报文;
第一下发模块,用于在判断结果为是时,将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;其中,所述组播转发表项还记录有入接口;
第二下发模块,用于在判断结果为否时,将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。
应用本申请实施例,框式设备的处理器在接收到组播报文时,获取对应的组播转发表项,并判断该组播转发表项中是否记录有出接口;若记录有,则根据预设规则判断组播报文是否为跨板转发报文;若是,则将该组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上;若否,则将该组播转发表项下发至出接口所在接口板的转发芯片上。基于上述实现方式,对于跨板转发,框式设备的处理器只将组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上,而不是将组播转发表项下发至所有接口板的转发芯片上,因此,与本组播转发表项无关的接口板的转发芯片,不会再下发本组播转发表项;对于非跨板转发,只将组播转发表项下发至出接口所在接口板的转发芯片上,而不是将组播转发表项下发至主控板和所有接口板上,因此,与本组播转发表项无关的接口板和主控板的转发芯片,不会再下发本组播转发表项。无论是跨板转发还是非跨板转发,均可以降低转发芯片资源的浪费,并且也可以缩短框式设备的转发时延。
附图说明
图1A和图1B分别为一种示例性的跨板转发和非跨板转发的过程图;
图2为本申请根据一示例性实施例示出的一种组播转发表项的下发应用场景图;
图3为本申请根据一示例性实施例示出的一种组播转发表项的下发方法的实施例流程图;
图4为本申请根据一示例性实施例示出的一种框式设备的硬件结构图;
图5为本申请根据一示例性实施例示出的一种组播转发表项的下发装置的实施例结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1A和图1B分别为一种示例性的跨板转发和非跨板转发的过程图,如图1A所示的跨板转发,由于组播报文1对应的组播转发表项中的入接口在接口板1上,出接口分别在接口板1上和接口板2上,因此,组播报文1从入接口进入到接口板1的转发芯片上之后,接口板1的转发芯片根据组播转发表项中的接口板1的出接口转发组播报文1,由于组播转发表项中的接口板2的出接口与入接口不在同一个接口板上,因此再将组播报文1通过板卡通道发送至主控板的转发芯片,主控板的转发芯片再通过板卡通道将组播报文1发送至接口板2的转发芯片上,接口板2的转发芯片根据组播转发表项中的接口板2的出接口转发组播报文1。如图1B所示的非跨板转发,由于组播报文2对应的组播转发表项中入接口在接口板1上,出接口也在接口板1上,因此,组播报文2从入接口进入到接口板1的转发芯片上,接口板1的转发芯片根据组播转发表项中的接口板1的出接口转发组播报文1。
由图1A与图1B所示的两种转发过程图,假设框式设备中槽位1的主控板、槽位2的接口板1、槽位3的接口板2以及槽位4的接口板3的转发芯片分别支持存储1K、1K、2K、4K的组播转发表项,由于跨板转发的组播报文需要经过主控板的转发芯片,因此该框式设备的跨板转发规格为1K,对于非跨板转发规格最大为4K。然而按照现有的组播转发表项的下发方式,非跨板转发的组播转发表项也会下发到主控板的转发芯片中,占用主控板的转发芯片资源,因此该框式设备的跨板转发规格实际小于1K,跨板转发的组播转发表项可能无法下发到主控板的转发芯片中,而导致跨板转发失败。
图2为本申请根据一示例性实施例示出的一种组播转发表项的下发应用场景图,图2中的框式设备可以是框式交换机,也可以是框式路由器,该框式设备上有多个槽位,每个槽位对应有槽位标识,并且每个槽位上可以插板卡,通常插在槽位上的板卡包括一个主控板和多个接口板(图2中示出了4个接口板),并且主控板和多个接口板上均设置有转发芯片,接口板上通常包含有入接口和出接口,该框式设备上还有处理器,其中,主控板的转发芯片用于存储跨板转发的组播转发表项,并利用组播转发表项将组播报文发送到其它接口板的转发芯片,该转发过程为板卡通道之间的通信交互;接口板的转发芯片用于存储跨板转发的组播转发表项和非跨板转发的组播转发表项,并利用组播转发表项转发组播报文,该转发过程为将组播报文转发到其它框式设备或者客户端中,处理器用于利用组播路由表生成组播转发表项,并将组播转发表项下发至对应的接口板或主控板的转发芯片上。
图3为本申请根据一示例性实施例示出的一种组播转发表项的下发方法的实施例流程图,该实施例应用在框式设备的处理器上,以下将接口板所在槽位的槽位标识称为第一槽位标识,且同一个接口板上的入接口和出接口具有相同的第一槽位标识,主控板所在槽位的槽位标识称为第二槽位标识,如图3所示,该实施例包括以下步骤:
步骤301:接收组播报文,并获取对应的组播转发表项。
在执行步骤301之前,框式设备的某一接口板的转发芯片在接收到组播报文时,在转发芯片中,先利用组播报文的源地址和目的地址查找已有的组播转发表项,该目的地址为组播地址;若查找到对应的组播转发表项,则获取该组播转发表项,并根据该组播转发表项转发组播报文;若未查找到对应的组播转发表项,则将该组播报文上送至框式设备的处理器。
其中,组播转发表项包括源地址和组播地址,如果在已有的组播转发表项中能够查找到对应的组播转发表项,则表示该组播报文非数据流量的首包,可以在转发芯片利用已有的组播转发表项转发组播报文,如果在已有的组播转发表项中未查找到对应的组播转发表项,则表示该组播报文是数据流量的首包,需要将组播报文上送至处理器进行处理。
针对获取对应的组播转发表项的过程,框式设备的处理器可以利用组播报文的源地址和目的地址查找组播路由表,获取对应的组播路由表项,并从该组播路由表项中获取入接口和出接口,并将该源地址、该目的地址、该入接口以及该出接口确定为组播报文对应的组播转发表项。
步骤302:判断该组播转发表项中是否记录有出接口,若未记录,则执行步骤303,否则,执行步骤304。
如果框式设备刚刚启动,可能没有组播成员访问业务,因此由组播路由表生成的组播转发表项可能没有出接口,需要先判断获取到的组播转发表项中有没有记录出接口。
步骤303:将该组播转发表项下发至入接口所在接口板的转发芯片上。
如果组播转发表项中没有记录出接口,则可以将组播转发表项直接下发至入接口所在接口板的转发芯片上,以使该转发芯片在接收到选中该组播转发表项的组播报文时,将该组播报文丢弃。
步骤304:根据预设规则判断组播报文是否为跨板转发报文,若是,则执行步骤305,若否,则执行步骤306。
具体地,框式设备的处理器先判断组播转发表项中的出接口的数量,若只有一个出接口,则判断入接口所在接口板的第一槽位标识与出接口所在接口板的第一槽位标识是否一致,若一致,则确定组播报文为非跨板转发报文,若不一致,则确定组播报文为跨板转发报文;若有多个出接口,则判断入接口所在接口板的第一槽位标识分别与每个出接口所在接口板的第一槽位标识是否一致,若均一致,则确定组播报文为非跨板转发报文,否则,则确定组播报文为跨板转发报文。
其中,由于组播转发表项中的入接口为组播报文进入接口板的转发芯片的接口,如果入接口所在接口板与每个出接口所在接口板均不相同,则表示该组播报文从入接口进入到该入接口所在接口板的转发芯片之后,还需要该接口板的转发芯片将组播报文通过板卡通道将组播报文发送至主控板的转发芯片,并由主控板的转发芯片再通过板卡通道将组播报文发送至除该接口板之外的其它出接口所在接口板的转发芯片上,可以确定组播报文为跨板转发报文;如果入接口所在接口板与每个出接口所在接口板均相同,则表示该组播报文从入接口进入到该入接口所在接口板的转发芯片上之后,转发芯片从该接口板的出接口即可转发组播报文,可以确定组播报文为非跨板转发报文。
表1为一种示例性的组播转发表项的格式,结合图1A与图1B所示,下面以一个例子进行说明。
组播地址 | 源地址 | 入接口 | 出接口 |
表1
例如,组播报文1对应的组播转发表项为:239.0.0.1192.168.2.1Port1Port3Port4,入接口Port3在接口板1上,两个出接口Port3和Port4分别在接口板1和接口板2上,可以确定组播报文1为跨板转发报文;组播报文2对应的组播转发表项为:239.0.0.1 192.168.2.1Port1Port2Port3,入接口Port1在接口板1上,两个出接口Port2和Port3均在接口板1上,可以确定组播报文2为非跨板转发报文。
步骤305:将该组播转发表项下发至出接口所在接口板、入接口所在接口板以及主控板的转发芯片上。
在确定组播报文为跨板转发报文之后,由于组播报文在转发过程中,只会在主控板的转发芯片上入接口所在接口板、出接口所在接口板的转发芯片上用到组播转发表项,因此框式设备可以只将组播转发表项下发至出接口所在接口板、入接口所在接口板以及主控板的转发芯片上,而不是将该组播转发表项下发至所有接口板的转发芯片上,从而可以降低转发芯片资源的浪费,提高每个接口板的转发芯片的资源利用率。
在执行步骤305之前,框式设备的处理器可以将出接口所在接口板的第一槽位标识、入接口所在接口板的第一槽位标识以及主控板的第二槽位标识添加到组播转发表项中,并为该组播转发表项创建一个计数器,并将该出接口的数量设置为计数器的计数值;在接收到删除出接口的第一命令时,将第一命令携带的出接口和该出接口所在接口板的第一槽位标识从该组播转发表项中删除,得到更新后的组播转发表项,并将计数值减1,然后再判断更新后的组播转发表项中是否存在该出接口所在接口板的第一槽位标识,若不存在,则向该出接口所在接口板的转发芯片发送删除该组播转发表项通知,否则,判断计数值是否为零;若是,则将更新后的组播转发表项中的第二槽位标识删除,并向主控板的转发芯片发送删除该组播转发表项通知,并将该更新后的组播转发表项下发至入接口所在接口板的转发芯片上,若否,则根据更新后的组播转发表项中的第一槽位标识和第二槽位标识将更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上。
其中,通过该组播转发表项对应的计数器记录出接口的数量,因此,删除一个出接口,对应的计数值可以减1,直到计数值减为0时,表示该组播转发表项中出接口和出接口所在接口板的第一槽位标识全部删除,只剩下入接口和主控板的第二槽位标识,此时便可以向主控板的转发芯片发送删除该组播转发表项通知,以节省转发芯片资源。此外,第一命令中还携带有该组播转发表项中的源地址和组播地址,用于确定要删除哪个组播转发表项上的出接口。
进一步地,对于跨板转发的组播转发表项,框式设备的处理器也可以接收添加出接口的第二命令,并将第二命令携带的出接口和该出接口所在接口板的第一槽位标识添加到该组播转发表项中,得到更新后的组播转发表项,并将计数值加1,并判断入接口所在接口板的第一槽位标识与该出接口所在接口板的第一槽位标识是否一致;若不一致且更新后的组播转发表项中未记录有主控板的第二槽位标识,则将第二槽位标识添加到更新后的组播转发表项中,并根据该更新后的组播转发表项中的第一槽位标识和第二槽位标识将该更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上;否则,则根据该更新后的组播转发表项中的第一槽位标识将该更新后的组播转发表项下发至对应的接口板的转发芯片上。
步骤306:将该组播转发表项下发至出接口所在接口板的转发芯片上。
在确定组播报文为非跨板转发报文之后,由于组播报文在转发过程中,只会在出接口所在接口板的转发芯片上用到组播转发表项,并且入接口所在接口板与出接口所在接口板均一致,因此框式设备可以只将组播转发表项下发至出接口所在接口板的转发芯片上,而不是将该组播转发表项下发至主控板和所有接口板的转发芯片上,同样也可以降低转发芯片资源的浪费,提高主控板和每个接口板的转发芯片的资源利用率。
在执行步骤306之前,框式设备的处理器可以将出接口所在接口板的第一槽位标识添加到该组播转发表项中,并为该组播转发表项创建一个计数器,并将出接口的数量设置为计数器的计数值;在接收到添加出接口的第二命令时,将该第二命令携带的出接口和该出接口所在接口板的第一槽位标识添加到该组播转发表项中,得到更新后的组播转发表项,并将计数值加1,并判断入接口所在接口板的第一槽位标识与该出接口所在接口板的第一槽位标识是否一致;若不一致且更新后的组播转发表项中未记录有主控板的第二槽位标识,则将第二槽位标识添加到更新后的组播转发表项中,并根据该更新后的组播转发表项中的第一槽位标识和第二槽位标识将该更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上;否则,则根据该更新后的组播转发表项中的第一槽位标识将该更新后的组播转发表项下发至对应的接口板的转发芯片上。
其中,通过该组播转发表项对应的计数器记录出接口的数量,因此,每添加一个出接口,对应的计数值加1,并判断入接口所在接口板的第一槽位标识与添加的出接口所在接口板的第一槽位标识是否一致,如果不一致,则表示更新后的组播转发表项转发的组播报文为跨板转发报文,需要将主控板的第二槽位标识添加到更新后的组播转发表项中。此外,第二命令中还携带有该组播转发表项中的源地址和组播地址,用于确定要向哪个组播转发表项添加出接口。
进一步地,对于非跨板转发的组播转发表项,框式设备的处理器也可以接收删除出接口的第一命令,并将第一命令携带的出接口和该出接口所在接口板的第一槽位标识从组播转发表项中删除,得到更新后的组播转发表项,并将计数值减1,然后再判断计数值是否为零;若是,则将更新后的组播转发表项中的第二槽位标识删除,并将该更新后的组播转发表项下发至入接口所在接口板的转发芯片上,若否,则根据更新后的组播转发表项中的第一槽位标识将更新后的组播转发表项下发至对应的接口板的转发芯片上。
结合步骤305和步骤306所述,由于非跨板转发的组播转发表项不会下发至主控板的转发芯片,所以跨板转发的组播转发表项可以均下发至主控板的转发芯片中,从而提高了框式设备的实际跨板转发规格。如图1A所示的跨板转发过程图,如果槽位1的主控板、槽位2的接口板1、槽位3的接口板2以及槽位4的接口板3的转发芯片分别支持存储1K、1K、2K、4K的组播转发表项,则该框式设备的跨板转发规格实际即为1K;如图1B所示的非跨板转发过程图,如果槽位1的主控板、槽位2的接口板1、槽位3的接口板2以及槽位4的接口板3的转发芯片分别支持存储1K、1K、2K、4K的组播转发表项,则该框式设备的非跨板转发规格最大可达到4K。
结合步骤305和步骤306的描述可知,框式设备的处理器会对组播转发表项进行维护,即对于跨板转发,框式设备的处理器将出接口所在接口板的第一槽位标识、入接口所在接口板的第一槽位标识以及主控板的第二槽位标识添加到组播转发表项之后,通过计数器记录出接口的数量,如果有出接口删除,计数值减1,直到计数值减为0时,向主控板和所有接口板的转发芯片发送删除该组播转发表项通知,以节省转发芯片资源。对于非跨板转发,框式设备的处理器将出接口所在接口板的第一槽位标识添加到组播转发表项中之后,同样会通过计数器记录出接口的数量,如果有出接口添加,计数值加1,并判断入接口所在接口板的第一槽位标识与添加的出接口所在接口板的第一槽位标识是否一致,如果不一致,将主控板的第二槽位标识添加到更新后的组播转发表项中,以用于跨板转发。
由上述实施例可知,框式设备的处理器在接收到组播报文时,获取对应的组播转发表项,并判断该组播转发表项中是否记录有出接口;若记录有,则根据预设规则判断组播报文是否为跨板转发报文;若是,则将该组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上;若否,则将该组播转发表项下发至出接口所在接口板的转发芯片上。基于上述实现方式,对于跨板转发,框式设备的处理器只将组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上,而不是将组播转发表项下发至所有接口板的转发芯片上,因此,与本组播转发表项无关的接口板的转发芯片,不会再下发本组播转发表项;对于非跨板转发,只将组播转发表项下发至出接口所在接口板的转发芯片上,而不是将组播转发表项下发至主控板和所有接口板上,因此,与本组播转发表项无关的接口板和主控板的转发芯片,不会再下发本组播转发表项。无论是跨板转发还是非跨板转发,均可以降低转发芯片资源的浪费,并且也可以缩短框式设备的转发时延。
与前述组播转发表项的下发方法的实施例相对应,本申请还提供了组播转发表项的下发装置的实施例。
本申请组播转发表项的下发装置的实施例可以应用在框式设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请根据一示例性实施例示出的一种框式设备的硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,对此不再赘述。
图5为本申请根据一示例性实施例示出的一种组播转发表项的下发装置的实施例结构图,该实施例应用在框式设备上,以下将接口板所在槽位的槽位标识称为第一槽位标识,且同一个接口板上的入接口和出接口具有相同的第一槽位标识,主控板所在槽位的槽位标识称为第二槽位标识,如图5所示,该装置包括:接收及获取模块510、判断模块520、第一下发模块530、第二下发模块540。
其中,接收及获取模块510,用于接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;
判断模块520,用于当判断结果为有时,根据预设规则判断所述组播报文是否为跨板转发报文;
第一下发模块530,用于在判断结果为是时,将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;其中,所述组播转发表项还记录有入接口;
第二下发模块540,用于在判断结果为否时,将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。
在一个可选的实现方式中,所述判断模块520,具体用于若所述出接口只有一个,则判断所述入接口所在接口板的第一槽位标识与所述出接口所在接口板的第一槽位标识是否一致,若一致,则确定所述组播报文为非跨板转发报文,若不一致,则确定所述组播报文为跨板转发报文;若所述出接口有多个,则判断所述入接口所在接口板的第一槽位标识分别与每个出接口所在接口板的第一槽位标识是否一致,若均一致,则确定所述组播报文为非跨板转发报文,否则,则确定所述组播报文为跨板转发报文。
在另一个可选的实现方式中,所述装置还包括(图5中未示出):
第三下发模块,用于在所述接收及获取模块510判断所述组播转发表项中是否记录有出接口之后,若未记录,则将所述组播转发表项下发至所述入接口所在接口板的转发芯片上。
在另一个可选的实现方式中,所述装置还包括(图5中未示出):
第一维护模块,用于在所述第一下发模块将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上之前,将所述出接口所在接口板的第一槽位标识、所述入接口所在接口板的第一槽位标识以及所述主控板的第二槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;在接收到删除出接口的第一命令时,将所述第一命令携带的出接口和该出接口所在接口板的第一槽位标识从所述组播转发表项中删除,得到更新后的组播转发表项,并将所述计数值减1;判断所述更新后的组播转发表项中是否存在该出接口所在接口板的第一槽位标识,若不存在,则向该出接口所在接口板的转发芯片发送删除所述组播转发表项通知,否则,判断所述计数值是否为零;若是,则将所述更新后的组播转发表项中的第二槽位标识删除,并向所述主控板的转发芯片发送删除所述组播转发表项通知,并将所述更新后的组播转发表项下发至所述入接口所在接口板的转发芯片上,若否,则根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上。
在另一个可选的实现方式中,所述装置还包括(图5中未示出):
第二维护模块,用于在所述第二下发模块将所述组播转发表项下发至所述出接口所在接口板的转发芯片上之前,将所述出接口所在接口板的第一槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;在接收到添加出接口的第二命令时,将所述第二命令携带的出接口和该出接口所在接口板的第一槽位标识添加到所述组播转发表项中,得到更新后的组播转发表项,并将所述计数值加1;判断所述入接口所在接口板的第一槽位标识与该出接口所在接口板的第一槽位标识是否一致;若不一致且更新后的组播转发表项中未记录有所述主控板的第二槽位标识,则将所述第二槽位标识添加到所述更新后的组播转发表项中,并根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上;否则,则根据所述更新后的组播转发表项中的第一槽位标识将所述更新后的组播转发表项下发至对应的接口板的转发芯片上。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可知,框式设备的处理器在接收到组播报文时,获取对应的组播转发表项,并判断该组播转发表项中是否记录有出接口;若记录有,则根据预设规则判断组播报文是否为跨板转发报文;若是,则将该组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上;若否,则将该组播转发表项下发至出接口所在接口板的转发芯片上。基于上述实现方式,对于跨板转发,框式设备的处理器只将组播转发表项下发至出接口所在接口板、所述入接口所在接口板以及主控板的转发芯片上,而不是将组播转发表项下发至所有接口板的转发芯片上,因此,与本组播转发表项无关的接口板的转发芯片,不会再下发本组播转发表项;对于非跨板转发,只将组播转发表项下发至出接口所在接口板的转发芯片上,而不是将组播转发表项下发至主控板和所有接口板上,因此,与本组播转发表项无关的接口板和主控板的转发芯片,不会再下发本组播转发表项。无论是跨板转发还是非跨板转发,均可以降低转发芯片资源的浪费,并且也可以缩短框式设备的转发时延。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种组播转发表项的下发方法,其特征在于,所述方法应用在框式设备的处理器上,所述框式设备包括主控板和至少一个接口板,所述主控板和所述接口板均包含有转发芯片,所述方法包括:
接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;
若记录有,则根据预设规则判断所述组播报文是否为跨板转发报文;
若是,则将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;其中,所述组播转发表项还记录有入接口;
若否,则将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。
2.根据权利要求1所述的方法,其特征在于,所述接口板有入接口和出接口,且同一个接口板上的入接口和出接口具有相同的第一槽位标识,所述根据预设规则判断所述组播报文是否为跨板转发报文的过程,具体包括:
若所述出接口只有一个,则判断所述入接口所在接口板的第一槽位标识与所述出接口所在接口板的第一槽位标识是否一致,若一致,则确定所述组播报文为非跨板转发报文,若不一致,则确定所述组播报文为跨板转发报文;
若所述出接口有多个,则判断所述入接口所在接口板的第一槽位标识分别与每个出接口所在接口板的第一槽位标识是否一致,若均一致,则确定所述组播报文为非跨板转发报文,否则,则确定所述组播报文为跨板转发报文。
3.根据权利要求1所述的方法,其特征在于,所述判断所述组播转发表项中是否记录有出接口之后,所述方法还包括:
若未记录,则将所述组播转发表项下发至所述入接口所在接口板的转发芯片上。
4.根据权利要求1所述的方法,其特征在于,所述主控板具有第二槽位标识,所述将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上之前,所述方法还包括:
将所述出接口所在接口板的第一槽位标识、所述入接口所在接口板的第一槽位标识以及所述主控板的第二槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;
在接收到删除出接口的第一命令时,将所述第一命令携带的出接口和该出接口所在接口板的第一槽位标识从所述组播转发表项中删除,得到更新后的组播转发表项,并将所述计数值减1;
判断所述更新后的组播转发表项中是否存在该出接口所在接口板的第一槽位标识,若不存在,则向该出接口所在接口板的转发芯片发送删除所述组播转发表项通知,否则,判断所述计数值是否为零;若是,则将所述更新后的组播转发表项中的第二槽位标识删除,并向所述主控板的转发芯片发送删除所述组播转发表项通知,并将所述更新后的组播转发表项下发至所述入接口所在接口板的转发芯片上,若否,则根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上。
5.根据权利要求1所述的方法,其特征在于,所述将所述组播转发表项下发至所述出接口所在接口板的转发芯片上之前,所述方法还包括:
将所述出接口所在接口板的第一槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;
在接收到添加出接口的第二命令时,将所述第二命令携带的出接口和该出接口所在接口板的第一槽位标识添加到所述组播转发表项中,得到更新后的组播转发表项,并将所述计数值加1;
判断所述入接口所在接口板的第一槽位标识与该出接口所在接口板的第一槽位标识是否一致;
若不一致且更新后的组播转发表项中未记录有所述主控板的第二槽位标识,则将所述第二槽位标识添加到所述更新后的组播转发表项中,并根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上;
否则,则根据所述更新后的组播转发表项中的第一槽位标识将所述更新后的组播转发表项下发至对应的接口板的转发芯片上。
6.一种组播转发表项的下发装置,其特征在于,所述装置应用在框式设备的处理器上,所述框式设备包括主控板和至少一个接口板,所述主控板和所述接口板均包含有转发芯片,所述装置包括:
接收及获取模块,用于接收组播报文,并获取对应的组播转发表项,并判断所述组播转发表项中是否记录有出接口;
判断模块,用于当判断结果为有时,根据预设规则判断所述组播报文是否为跨板转发报文;
第一下发模块,用于在判断结果为是时,将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上;其中,所述组播转发表项还记录有入接口;
第二下发模块,用于在判断结果为否时,将所述组播转发表项下发至所述出接口所在接口板的转发芯片上。
7.根据权利要求6所述的装置,其特征在于,所述接口板有入接口和出接口,且同一个接口板上的入接口和出接口具有相同的第一槽位标识,
所述判断模块,具体用于若所述出接口只有一个,则判断所述入接口所在接口板的第一槽位标识与所述出接口所在接口板的第一槽位标识是否一致,若一致,则确定所述组播报文为非跨板转发报文,若不一致,则确定所述组播报文为跨板转发报文;若所述出接口有多个,则判断所述入接口所在接口板的第一槽位标识分别与每个出接口所在接口板的第一槽位标识是否一致,若均一致,则确定所述组播报文为非跨板转发报文,否则,则确定所述组播报文为跨板转发报文。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三下发模块,用于在所述接收及获取模块判断所述组播转发表项中是否记录有出接口之后,若未记录,则将所述组播转发表项下发至所述入接口所在接口板的转发芯片上。
9.根据权利要求6所述的装置,其特征在于,所述主控板具有第二槽位标识,所述装置还包括:
第一维护模块,用于在所述第一下发模块将所述组播转发表项下发至所述出接口所在接口板、所述入接口所在接口板以及所述主控板的转发芯片上之前,将所述出接口所在接口板的第一槽位标识、所述入接口所在接口板的第一槽位标识以及所述主控板的第二槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;在接收到删除出接口的第一命令时,将所述第一命令携带的出接口和该出接口所在接口板的第一槽位标识从所述组播转发表项中删除,得到更新后的组播转发表项,并将所述计数值减1;判断所述更新后的组播转发表项中是否存在该出接口所在接口板的第一槽位标识,若不存在,则向该出接口所在接口板的转发芯片发送删除所述组播转发表项通知,否则,判断所述计数值是否为零;若是,则将所述更新后的组播转发表项中的第二槽位标识删除,并向所述主控板的转发芯片发送删除所述组播转发表项通知,并将所述更新后的组播转发表项下发至所述入接口所在接口板的转发芯片上,若否,则根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二维护模块,用于在所述第二下发模块将所述组播转发表项下发至所述出接口所在接口板的转发芯片上之前,将所述出接口所在接口板的第一槽位标识添加到所述组播转发表项中,并为所述组播转发表项创建一个计数器,并将所述出接口的数量设置为所述计数器的计数值;在接收到添加出接口的第二命令时,将所述第二命令携带的出接口和该出接口所在接口板的第一槽位标识添加到所述组播转发表项中,得到更新后的组播转发表项,并将所述计数值加1;判断所述入接口所在接口板的第一槽位标识与该出接口所在接口板的第一槽位标识是否一致;若不一致且更新后的组播转发表项中未记录有所述主控板的第二槽位标识,则将所述第二槽位标识添加到所述更新后的组播转发表项中,并根据所述更新后的组播转发表项中的第一槽位标识和第二槽位标识将所述更新后的组播转发表项下发至对应的主控板和接口板的转发芯片上;否则,则根据所述更新后的组播转发表项中的第一槽位标识将所述更新后的组播转发表项下发至对应的接口板的转发芯片上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610826870.3A CN106470171B (zh) | 2016-09-18 | 2016-09-18 | 组播转发表项的下发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610826870.3A CN106470171B (zh) | 2016-09-18 | 2016-09-18 | 组播转发表项的下发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106470171A true CN106470171A (zh) | 2017-03-01 |
CN106470171B CN106470171B (zh) | 2019-09-17 |
Family
ID=58230516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610826870.3A Active CN106470171B (zh) | 2016-09-18 | 2016-09-18 | 组播转发表项的下发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106470171B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107947950A (zh) * | 2017-11-22 | 2018-04-20 | 新华三技术有限公司 | 一种硬件组播出接口表项的下发方法和np线卡板 |
CN109617821A (zh) * | 2019-01-11 | 2019-04-12 | 新华三技术有限公司 | 一种组播报文的传输方法、主控板及设备 |
CN112769693A (zh) * | 2020-12-24 | 2021-05-07 | 杭州迪普信息技术有限公司 | 一种维护组播组的方法及装置 |
CN113490162A (zh) * | 2021-07-04 | 2021-10-08 | 芯河半导体科技(无锡)有限公司 | 一种组播数据流转发的优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020126671A1 (en) * | 2001-03-06 | 2002-09-12 | Ellis Steven Clay | Method and apparatus for distributing routing instructions over multiple interfaces of a data router |
CN1547363A (zh) * | 2003-12-12 | 2004-11-17 | 港湾网络有限公司 | 组播跨板转发的控制方法 |
CN101330466A (zh) * | 2008-07-24 | 2008-12-24 | 华为技术有限公司 | 一种组播报文的转发方法及装置 |
CN101374113A (zh) * | 2008-10-07 | 2009-02-25 | 中兴通讯股份有限公司 | 一种基于组索引的组播跨板转发控制方法 |
CN103338152A (zh) * | 2013-05-24 | 2013-10-02 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和主控板 |
-
2016
- 2016-09-18 CN CN201610826870.3A patent/CN106470171B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020126671A1 (en) * | 2001-03-06 | 2002-09-12 | Ellis Steven Clay | Method and apparatus for distributing routing instructions over multiple interfaces of a data router |
CN1547363A (zh) * | 2003-12-12 | 2004-11-17 | 港湾网络有限公司 | 组播跨板转发的控制方法 |
CN101330466A (zh) * | 2008-07-24 | 2008-12-24 | 华为技术有限公司 | 一种组播报文的转发方法及装置 |
CN101374113A (zh) * | 2008-10-07 | 2009-02-25 | 中兴通讯股份有限公司 | 一种基于组索引的组播跨板转发控制方法 |
CN103338152A (zh) * | 2013-05-24 | 2013-10-02 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和主控板 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107947950A (zh) * | 2017-11-22 | 2018-04-20 | 新华三技术有限公司 | 一种硬件组播出接口表项的下发方法和np线卡板 |
CN107947950B (zh) * | 2017-11-22 | 2020-09-08 | 新华三技术有限公司 | 一种硬件组播出接口表项的下发方法和np线卡板 |
CN109617821A (zh) * | 2019-01-11 | 2019-04-12 | 新华三技术有限公司 | 一种组播报文的传输方法、主控板及设备 |
CN109617821B (zh) * | 2019-01-11 | 2021-04-27 | 新华三技术有限公司 | 一种组播报文的传输方法、主控板及设备 |
CN112769693A (zh) * | 2020-12-24 | 2021-05-07 | 杭州迪普信息技术有限公司 | 一种维护组播组的方法及装置 |
CN113490162A (zh) * | 2021-07-04 | 2021-10-08 | 芯河半导体科技(无锡)有限公司 | 一种组播数据流转发的优化方法 |
CN113490162B (zh) * | 2021-07-04 | 2022-05-17 | 芯河半导体科技(无锡)有限公司 | 一种组播数据流转发的优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106470171B (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106470171A (zh) | 组播转发表项的下发方法及装置 | |
JP6055009B2 (ja) | パケット処理方法、装置及びシステム | |
CN100579034C (zh) | 上报设备信息的方法、获取设备信息的系统和设备 | |
CN101789900B (zh) | 组播转发路径的查询方法、中间节点和管理节点 | |
CN109714239B (zh) | 一种管理消息的下发方法、vnfm设备和服务器 | |
US20120317213A1 (en) | Transmitting instant messages | |
CN104823428A (zh) | 存储系统中操作请求处理方法和装置 | |
CN101330466B (zh) | 一种组播报文的转发方法及装置 | |
CN107241270A (zh) | 报文处理方法及装置 | |
CN103560959B (zh) | 一种选择静态路由的方法及装置 | |
CN112887229B (zh) | 一种会话信息同步方法及装置 | |
CN105591997A (zh) | 一种url分类过滤方法及装置 | |
CN105939324A (zh) | 转发报文的方法及装置 | |
CN108040134A (zh) | 一种dns透明代理的方法及装置 | |
CN106209557A (zh) | 报文转发方法及装置 | |
CN107547364A (zh) | 路由下发方法、装置和网络设备 | |
CN104780103A (zh) | 报文转发方法及装置 | |
CN107800627A (zh) | 三态内容寻址存储器tcam表的写入方法及装置 | |
CN107947950A (zh) | 一种硬件组播出接口表项的下发方法和np线卡板 | |
CN106330553A (zh) | 报文转发方法及装置 | |
CN107547400B (zh) | 一种虚拟机迁移方法和装置 | |
CN104734986A (zh) | 一种报文转发方法和装置 | |
CN108667735B (zh) | 一种组播数据的转发方法和装置 | |
CN114257545B (zh) | 一种报文转发方法及装置 | |
CN108965093B (zh) | 一种vlan分配方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |