CN116132384A - 跨芯片流程处理单元的组播复制方法和装置 - Google Patents

跨芯片流程处理单元的组播复制方法和装置 Download PDF

Info

Publication number
CN116132384A
CN116132384A CN202211702118.XA CN202211702118A CN116132384A CN 116132384 A CN116132384 A CN 116132384A CN 202211702118 A CN202211702118 A CN 202211702118A CN 116132384 A CN116132384 A CN 116132384A
Authority
CN
China
Prior art keywords
multicast
processing unit
flow processing
message
chip flow
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.)
Pending
Application number
CN202211702118.XA
Other languages
English (en)
Inventor
王力
栾冬梅
张国颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Shengke Communication Co ltd
Original Assignee
Nanjing Shengke Communication Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Shengke Communication Co ltd filed Critical Nanjing Shengke Communication Co ltd
Priority to CN202211702118.XA priority Critical patent/CN116132384A/zh
Publication of CN116132384A publication Critical patent/CN116132384A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种跨芯片流程处理单元的组播复制方法和装置,其中,所述方法包括:源端芯片流程处理单元接收到组播报文;源端芯片流程处理单元中的预复制引擎,根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;源端芯片流程处理单元中的预复制引擎,根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。通过所述方法和装置,可以解决在LAG场景下,多PP并发设计存在的复制带宽浪费的问题。

Description

跨芯片流程处理单元的组播复制方法和装置
技术领域
本发明涉及计算机网络通信技术,特别是涉及一种跨芯片流程处理单元的组播复制方法和装置。
背景技术
组播通信在很多大型网络中,例如运营商、企业网、工业网等网络,都有大规模的应用,但是对于多Slice设计的高带宽芯片,组播应用主要集中在运营商网络中。
随着互联网发展,当前单颗交换芯片带宽已经能达到51.2Tbps。交换芯片带宽之所以能做到如此之大,得益于多芯片流程处理单元(Processer Pipeline,PP)的并发架构。一般的,每个PP都有其带宽处理的上限,这个上限取决于芯片工艺的主频。而当前最先进的网络交换芯片的主频也就在1.4GHz左右,其所能带来的每个PP的带宽是3.2Tbps,导致如果想要通过提高芯片主频来提升交换芯片带宽,研发进展会非常缓慢。因此当前提升交换芯片带宽的主要方式,还多是依靠多PP的并发设计来实现。
这种方案无论从性能还是代价上看都比较优秀,但是在具体应用中还是会存在一些问题。例如,对于应用了聚合端口(Link Aggregate,LAG)的场景,对于用户来说,从整体上芯片转发出去的复制报文,有时看上去无法达到预期的交换芯片带宽处理能力。
发明内容
本发明实施例所要解决的技术问题是如何解决在LAG场景下,多PP并发设计存在的复制带宽浪费的问题。
为了解决上述问题,本发明实施例提供的技术方案如下:一种跨芯片流程处理单元的组播复制方法,其中,应用于聚合端口场景下,包括:源端芯片流程处理单元接收到组播报文;源端芯片流程处理单元中的预复制引擎,根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;源端芯片流程处理单元中的预复制引擎,根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。
可选的,上述的跨芯片流程处理单元的组播复制方法,其中,所述组播报文的组播信息包括组播Group值;所述报文特征信息包括组播报文Hash值;所述根据组播报文的组播信息以及报文特征信息生成索引项包括:取组播报文中,高10位位宽的组播Group值,以及低8位的Hash值,生成Index索引项。
可选的,上述的跨芯片流程处理单元的组播复制方法,其中,于所述发往对应的目的端芯片流程处理单元中的组播表项模块之后,还包括:目的端芯片流程处理单元中的组播表项模块复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
可选的,上述的跨芯片流程处理单元的组播复制方法,其特征在于,所述聚合端口场景为:仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。
可选的,上述的跨芯片流程处理单元的组播复制方法,其中,所述上层系统为软件开发工具包软件。
为了解决上述的技术问题,本发明实施例还公开了一种跨芯片流程处理单元的组播复制装置,其中,应用于聚合端口场景下,包括:接收单元,设于源端芯片流程处理单元,用于接收组播报文;处理单元,设于源端芯片流程处理单元中的预复制引擎,用于根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;第一转发单元,设于源端芯片流程处理单元中的预复制引擎,用于根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。
可选的,上述的跨芯片流程处理单元的组播复制装置,其中,所述组播报文的组播信息包括组播Group值;所述报文特征信息包括组播报文Hash值;所述处理单元取组播报文中,高10位位宽的组播Group值,以及低8位的Hash值,生成Index索引项。
可选的,上述的跨芯片流程处理单元的组播复制装置,其中,还包括:第二转发单元,设置于目的端芯片流程处理单元中的组播表项模块,用于复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
可选的,上述的跨芯片流程处理单元的组播复制装置,其中,所述聚合端口场景为:仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。
可选的,上述的跨芯片流程处理单元的组播复制装置,其中,所述上层系统为软件开发工具包软件。
与现有技术相比,本发明的技术方案具有以下优点:
本发明实施例在多PP架构以及LAG场景下,通过在源端PP的预复制引擎(Pre-Multicast Expansion Table,Pre Met)根据组播报文中的组播信息和报文信息作为索引,去判断目的PP是否确实存在对该组播报文的复制后转发的需求,提前处理选路策略,再决定是否复制到对应的PP上,从而可以基于预复制判断LAG成员出口的方式,避免复制带宽浪费的问题,达到带宽的高效利用。
附图说明
图1是现有多PP场景下对组播报文处理,所应用的网络拓扑环境示意图;
图2是现有多PP场景下对组播报文处理遇到的困境,所应用的网络拓扑环境示意图;
图3是本发明实施例中一种跨PP的组播复制方法的流程图;
图4是本发明实施例中一种跨PP的组播复制方法中复制表的示意图;
图5是本发明实施例中一种跨PP的组播复制方法的逻辑示意图;
图6是本发明实施例中一种跨PP的组播复制装置的结构示意图。
具体实施方式
当前提升交换芯片带宽的主要方式,多是依靠多PP的并发设计来实现。这种方案无论从性能还是代价上看都比较优秀,但是在具体应用中还是会存在一些问题。例如,对于应用了LAG的场景,对于用户来说,从整体上芯片转发出去的复制报文,有时看上去无法达到预期的交换芯片带宽处理能力。
如图1所示,是一种12.8Tbps芯片的4PP架构。可以看到除了PP以外,主要负责报文复制的Met(Multicast Expansion Table,组播表项模块),其复制能力也一样收到限制,只有四分之一,3.2Tbps。如果想要达到12.8Tbps的复制能力,就需要每个PP都有独立的复制引擎,以及为其配套的预复制引擎(Pre-Multicast Expansion Table,Pre Met)。
当组播报文需要进行复制的端口出现在不同的PP上时,源端的Pre Met会先复制到出口对应的PP上,然后再由每个PP中的Met各自复制本地的组播组成员。如图1所示中的PP1有报文需要复制到PP2的8、9端口,以及PP3上的13、15端口,那么需要PP1上的Pre Met1先复制两份报文分别到PP2和PP3,再由PP2的Met2和PP3的Met3各自复制两份报文到本地对应端口转发出去。
这种解决方案从性能或是代价上看都很优秀,但是在一些场景下,如处理LAG这种端口的时候,就会存在问题。如图2所示:假设端口7和端口13组成了一个LAG口,那么复制到这个LAG口的报文就只能通过Hash值选择一个口出去,但由于Pre Met无法分辨出Hash值选择哪个出口,所以就遇到了问题。
为了解决上述组播复制到跨PP LAG中出现的问题,可以在各自目的PP的Met后计算Hash值,并判断Hash选择的端口是否在本地,如果是在本地,那么就进行转发;如果不是,那么需要进行丢弃。然而由于每个Met是在复制报文完成后才能判断成员的出口是否在本地,那么不在本地而被丢弃的那份其实已经占用了Met的复制带宽。所以在用户看来,整体芯片出去的复制报文无法达到预期的12.8Tbps能力。
为了解决上述的技术问题,本实施例公开了一种跨PP的组播复制方法,其应用于聚合端口LAG场景下。为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。如图3所示,所述跨PP的组播复制方法可包括:
步骤S101,源端PP接收到组播报文;
仍以图2所示拓扑图为例,本实施例中,多Slice设计的高带宽交换机芯片,PP个数为4,此时作为源PP端的PP1接收到组播报文,需要发送到目的PP,并通过PP2的8、9端口以及PP3的13、15端口发送出去。通过聚合端口LAG,将端口8,9,13,15绑定成一个口,可以避免产生二层环路等问题。本领域技术人员可以理解的是,多Slice设计的高带宽交换机芯片的PP数量可以不是4个,而是其他任意数量,其均属于本实施例的范围内。
步骤S102,根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;
在具体实施中,源PP端的Pre Met将组播报文的组播Group作为上述的组播信息,以及将Hash值作为报文特征信息,一起组成索引项,读取一预设的复制表,进而判定组播报文中有效成员,也即LAG端口在各PP中的分布。
因为上层系统在创建组播和LAG组的时候,即可以得到组播和LAG组之间的对应关系,所以上层系统根据组播Group的成员分布在哪几个PP上,而在芯片中预设置一复制表,由此也可以将每个设置的索引项与PP上成员的对应关系,进一步在该复制表中定义,这样就能准确控制每个报文复制到跨PP LAG的有效成员上,避免浪费。在具体实施中,所述上层系统为软件开发工具包软件(Software Development Kit,SDK)。
上述的Hash值可以是根据报文内容进行计算得到,例如通过报文的五元组(源IP地址,源端口,目的IP地址,目的端口和传输层协议)。五元组能够区分不同会话,并且对应的会话是唯一的,因此能够确定固定的Hash值。而组播Group是通过路由表或者其他表,如转发信息表(Forward Information dataBase,FIB)查找得到,属于在正常转发流程中即可获得的信息。在源PP端的PreMet前就能得到上述的相关信息。
在上述实施方式中,可以设置常规组播Group是10bits,Hash值是8bits,Group放在高位取高10位,hash值放在低位取低8位进行查找。例如如图4所示,1K Group和256bits的Hash,可以组成18位的索引项index[17:0]=[17:8][7:0],并通过这个索引去进行查表,读取复制表中相应的Valid表项内容。以本实施例的4个PP场景下为例,上述复制表中的每一项都是4bits,分别对应于本实施例中是否需要复制报文到四个PP。例如,如果是不需要复制给PP1,需要复制给PP2,需要复制给PP3,不需要复制给PP4,则对应于Index的Valid值为0110,这样就能判定组播报文有效成员分布于PP2和PP3。
在具体实施中,聚合端口场景可以是,仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。本实施例解决了报文复制到跨PP LAG时,复制资源浪费情况,但在上述实施方式中,以Hash值和组播Group值组合起来的索引有时候可能会比较庞大。如上所述,常规Hash值是8个bits,即28,有256种,而组播Group最大可以达到210,即1M,那么在应用于4个PP的架构下,增加的复制表就需要包括256×1M×4=1G bits的表项,这对于网络交换芯片将会是非常大的开销。所以本实施例在使用的时候,对组播Group需求小或者只有部分组播Group的场景下,有非常高的应用价值。例如在做OTN设备的Fabric芯片时,可以将Fabric芯片规划成只有一个组播组存在跨PP LAG的情况,这样所述复制表表项只需要256bits的消耗。
步骤S103,源端PP的Pre Met选择复制组播报文,并发往对应的目的端PP的Met。
如上述步骤S102所述,源端PP的Pre Met,可根据索引项匹配复制表,得到的所述组播报文有效成员,在各PP端的分布信息,随后选择性地就行报文复制,将组播报文发往需要的目的PP的Met。
步骤S104,目的端PP的Met复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
上述步骤S103中源端PP的Pre Met的复制报文是将组播报文复制到对应的PP,复制对象是PP。本步骤S104中的复制是将组播报文复制到本地对应的组播成员,从而形成两级复制。
目的端Met复制出相应数量报文后,根据报文的Hash值,进行LAG口的选路计算,在本PP对应的组播成员的端口进行转发,在不是组播成员的端口,则丢弃。
通过本实施例的一种跨芯片流程处理单元的组播复制方法方法,可以在多PP架构,需要复制到跨PP Lag的场景下,解决复制带宽浪费的问题,达到带宽的高效利用。同时本实施例还兼顾考虑到所带来表项开销,进一步在使用时选择应用场景的切合度进行应用,具有极高的应用价值。
为了解决上述的技术问题,本发明实施例还公开了一种跨芯片流程处理单元的组播复制的装置,可应用于聚合端口的网络场景下,如图6所示,所述跨芯片流程处理单元的组播复制的装置可包括:接收单元,设于源端芯片流程处理单元,用于接收组播报文;处理单元,设于源端芯片流程处理单元中的预复制引擎,用于根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;第一转发单元,设于源端芯片流程处理单元中的预复制引擎,用于根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。
在具体实施中,所述组播报文的组播信息包括组播Group值;所述报文特征信息包括组播报文Hash值;所述处理单元取组播报文中,高10位位宽的组播Group值,以及低8位的Hash值,生成Index索引项。
在具体实施中,所述跨芯片流程处理单元的组播复制装置还可包括:第二转发单元,设置于目的端芯片流程处理单元中的组播表项模块,用于复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
在具体实施中,所述聚合端口场景可以是,仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。
在具体实施中,所述上层系统可以是软件开发工具包软件。
由于本发明实施例与第一实施例为基于同一发明构思,因此关于本实施例的具体方案,可以参照第一实施例的相应内容,此处不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (10)

1.一种跨芯片流程处理单元的组播复制方法,其特征在于,应用于聚合端口场景下,包括:
源端芯片流程处理单元接收到组播报文;
源端芯片流程处理单元中的预复制引擎,根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;
源端芯片流程处理单元中的预复制引擎,根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。
2.如权利要求1所述的跨芯片流程处理单元的组播复制方法,其特征在于,
所述组播报文的组播信息包括组播Group值;所述报文特征信息包括组播报文Hash值;
所述根据组播报文的组播信息以及报文特征信息生成索引项包括:取组播报文中,高10位位宽的组播Group值,以及低8位的Hash值,生成Index索引项。
3.如权利要求1所述的跨芯片流程处理单元的组播复制方法,其特征在于,于所述发往对应的目的端芯片流程处理单元中的组播表项模块之后,还包括:
目的端芯片流程处理单元中的组播表项模块复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
4.如权利要求1所述的跨芯片流程处理单元的组播复制方法,其特征在于,所述聚合端口场景为:仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。
5.如权利要求1所述的跨芯片流程处理单元的组播复制方法,其特征在于,所述上层系统为软件开发工具包软件。
6.一种跨芯片流程处理单元的组播复制装置,其特征在于,应用于聚合端口场景下,包括:
接收单元,设于源端芯片流程处理单元,用于接收组播报文;
处理单元,设于源端芯片流程处理单元中的预复制引擎,用于根据组播报文的组播信息以及报文特征信息生成索引项,并匹配一预设复制表,以判定组播报文有效成员的分布;所述复制表,由上层系统根据组播组成员于各芯片流程处理单元中的分布以及聚合端口的成员信息,预设置在芯片中;
第一转发单元,设于源端芯片流程处理单元中的预复制引擎,用于根据所述有效成员的分布信息,选择复制组播报文,并发往对应的目的端芯片流程处理单元中的组播表项模块。
7.如权利要求6所述的跨芯片流程处理单元的组播复制装置,其特征在于,
所述组播报文的组播信息包括组播Group值;所述报文特征信息包括组播报文Hash值;
所述处理单元取组播报文中,高10位位宽的组播Group值,以及低8位的Hash值,生成Index索引项。
8.如权利要求6所述的跨芯片流程处理单元的组播复制装置,其特征在于,还包括:
第二转发单元,设置于目的端芯片流程处理单元中的组播表项模块,用于复制组播报文到本地的组播组成员,进而从对应端口转发组播报文。
9.如权利要求6所述的跨芯片流程处理单元的组播复制装置,其特征在于,所述聚合端口场景为:仅有一个组播组存在于跨芯片流程处理单元的聚合端口中。
10.如权利要求6所述的跨芯片流程处理单元的组播复制装置,其特征在于:所述上层系统为软件开发工具包软件。
CN202211702118.XA 2022-12-28 2022-12-28 跨芯片流程处理单元的组播复制方法和装置 Pending CN116132384A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211702118.XA CN116132384A (zh) 2022-12-28 2022-12-28 跨芯片流程处理单元的组播复制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211702118.XA CN116132384A (zh) 2022-12-28 2022-12-28 跨芯片流程处理单元的组播复制方法和装置

Publications (1)

Publication Number Publication Date
CN116132384A true CN116132384A (zh) 2023-05-16

Family

ID=86298582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211702118.XA Pending CN116132384A (zh) 2022-12-28 2022-12-28 跨芯片流程处理单元的组播复制方法和装置

Country Status (1)

Country Link
CN (1) CN116132384A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117411738A (zh) * 2023-12-15 2024-01-16 格创通信(浙江)有限公司 组播复制方法、装置、电子设备和存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117411738A (zh) * 2023-12-15 2024-01-16 格创通信(浙江)有限公司 组播复制方法、装置、电子设备和存储介质
CN117411738B (zh) * 2023-12-15 2024-03-08 格创通信(浙江)有限公司 组播复制方法、装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
US7864769B1 (en) Multicast packet replication
CN104811387B (zh) 具有位索引显式复制的等价多路径
US11838361B2 (en) Reducing distributed storage operation latency using segment routing techniques
US20190116220A1 (en) Neighbor Discovery for IPV6 Switching Systems
CN103117931B (zh) 基于哈希表和tcam表的mac地址硬件学习方法及系统
CN103905311B (zh) 流表匹配方法和装置以及交换机
EP1692801B1 (en) Distributing relevant routing information base updates to subscribing clients in a device
CN109639579B (zh) 组播报文的处理方法及装置、存储介质、处理器
US20040100969A1 (en) Method and system for synchronizing a standby route distributor in a distributed routing platform
CN101267331A (zh) 一种组播转发表查找方法和装置
WO2010115373A1 (zh) 基于对等网络的资源信息备份操作方法及对等网络
CN107947950B (zh) 一种硬件组播出接口表项的下发方法和np线卡板
CN116132384A (zh) 跨芯片流程处理单元的组播复制方法和装置
CN111277612B (zh) 一种网络报文处理策略生成方法、系统及介质
US20140029614A1 (en) Forwarding a multicast message
US10742545B2 (en) Multicasting system
CN112615778A (zh) 报文转发方法、装置、路由器、存储介质及系统
US8514696B2 (en) Multicast tree state replication
CN112437027A (zh) 交换芯片、交换设备、堆叠系统及转发报文的方法
CN113453262B (zh) 一种双向转发检测bfd方法及装置
CN102014065A (zh) 报文包头的解析方法、包头解析预处理装置和网络处理器
CN101510837A (zh) 以太网桥设备、迁移聚合口地址的方法及装置
JP2005020492A (ja) ネットワーク中継装置
CN110971526B (zh) 一种混合交换机fdb资源的流表扩展方法及装置
CN112769704B (zh) 一种基于hash表的高速可扩展IP路由查找硬件装置

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