System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 报文转发方法、装置、设备及芯片系统制造方法及图纸_技高网

报文转发方法、装置、设备及芯片系统制造方法及图纸

技术编号:40178231 阅读:11 留言:0更新日期:2024-01-26 23:45
公开了一种报文转发方法、装置、设备及芯片系统,涉及通信技术领域。该方法应用于包括处理器和协处理器的报文转发设备。该方法包括:报文转发设备接收第一报文,并根据第一报文携带的流标识信息查询流表。在流表中存在与第一报文携带的流标识信息匹配的目标流表项时,报文转发设备的协处理器根据目标流表项对第一报文进行转发。其中,流表包括至少一个流表项,流表项为报文转发设备的处理器根据接收到的任意流的流标识信息所创建的会话表项,目标流表项为报文转发设备的处理器根据第一报文所在的第一流的流标识信息所创建的会话表项。

【技术实现步骤摘要】

本申请涉及通信,尤其涉及一种报文转发方法、装置、设备及芯片系统


技术介绍

1、网关设备是数据通信领域中一种最为常见的设备类型,通常具备报文交换、路由和业务处理等功能。网关设备的处理器(如中央处理单元(central processing unit,cpu))具备通用计算能力,但计算特定业务(如安全加密(security,sec)算法、报文转发等)的效率并不高。因此一般会考虑使用专用的硬件单元实现这些特定业务,也就是将这部分特定业务的计算从处理器卸载到专用硬件单元上,以提高业务的计算效率。例如,将sec业务的计算从处理器卸载到专用的sec单元上。又例如,将流的一部分报文转发业务的计算从处理器卸载到加速器(dispatch)上。

2、其中,网关设备在转发报文时,一般会先基于接收到的报文查询会话表(或称为流表),以确定当前报文所在会话的链路状态,并根据确定的链路状态对该报文进行相应处理(如转发处理)。其中,会话表是网关设备根据某一条流中的首个报文创建的,会话表一般记录有该流所在链路的链路状态,以及可以用于指示对该流中的报文进行相应处理。

3、然而,对于将流的一部分报文转发业务的计算从处理器卸载到加速器的网关设备而言,网关设备的处理器和加速器需要各自创建并维护一个会话表(即网关设备共创建维护两个会话表)来实现对报文的转发处理,而这样会造成网关设备的内存资源以及计算资源的浪费。


技术实现思路

1、本申请提供了一种报文转发方法、装置、设备及芯片系统,通过该方法,报文转发设备只需创建并维护一个流表即可,从而节省了报文转发设备的存储资源和计算资源。

2、为达上述目的,本申请提供如下技术方案:

3、第一方面,本申请提供了一种报文转发方法,该方法应用于包括处理器和协处理器的报文转发设备。该方法包括:报文转发设备接收第一报文,并根据第一报文携带的流标识信息查询流表。在流表中存在与第一报文携带的流标识信息匹配的目标流表项时,报文转发设备的协处理器根据目标流表项对第一报文进行转发。其中,流表包括至少一个流表项,流表项为报文转发设备的处理器根据接收到的任意流的流标识信息创建的会话表项,目标流表项为报文转发设备的处理器根据第一报文所在的第一流的流标识信息创建的会话表项。

4、通过本申请提供的方法,报文转发设备协处理器通过访问处理器创建的流表即可实现对报文的转发。可见,本申请提供的方法只需报文转发设备创建并维护一个流表即可。相比报文转发设备需创建并维护用于指示转发报文的软表和硬表,本申请方案能够节省报文转发设备的存储资源和计算资源。

5、在一种可能的设计方式中,在上述流表中不存在目标流表项时,第一报文携带的流标识信息用于报文转发设备的处理器创建目标流表项。

6、通过该可能的设计,报文转发设备的处理器可以根据接收到的流的第一个或前几个报文创建对应的流表项。

7、在另一种可能的设计方式中,上述报文转发设备的协处理器为网络处理器(network processor,np),上述报文转发设备的处理器为中央处理单元(centralprocessing unit,cpu)或应用处理器(application processor,ap)。

8、通过该可能的设计,本申请中的协处理器和处理器可以具有多种实现形式,从而提高了本申请方案应用的灵活性。

9、在另一种可能的设计方式中,上述方法还包括:报文转发设备通过协处理器确定需要对目标流表项进行老化,以及通过协处理器向处理器上报目标流表项的老化信息。其中,目标流表项的老化信息用于指示处理器对目标流表项执行删除处理。

10、在另一种可能的设计方式中,上述的通过协处理器确定需要对目标流表项进行老化包括:报文转发设备通过协处理器轮询流表中的流表项,以确定在老化时长内是否接收到第二报文,第二报文携带有与目标流表项匹配的流标识信息;以及,当确定在老化时长内未接收到第二报文,报文转发设备的协处理器确定需要对目标流表项进行老化。

11、通过上述两种可能的设计,可以实现对流表中流表项的老化处理。这样可以及时根据报文流传输情况的变化更新流表(例如及时将小流的流表项予以删除),从而能够提高流表的利用率,并提高报文转发设备转发报文的转发效率。并且,先由报文转发设备的协处理器对流表进行轮询以确定是否需要对流表项进行老化处理,再由报文转发设备的处理器根据协处理器确定出的老化信息对目标流表项执行删除处理,这样可以节省报文转发设备处理器的计算资源。

12、在另一种可能的设计方式中,报文转发设备的存储器包括环形存储队列,环形存储队列包括多个环状分布的存储单元,环形存储队列中的一个存储单元用于存储一个流表项的老化信息,报文转发设备的处理器用于读取环形存储队列中读指针所指向的存储单元存储的老化信息;上述通过协处理器向处理器上报目标流表项的老化信息包括:报文转发设备通过协处理器在环形存储队列中写指针指向的存储单元中写入目标流表项的老化信息,写指针用于指向环形存储队列中为空的存储单元。

13、通过该可能的设计,相比协处理器对信息进行压缩打包并以报文/数据包的形式发送至处理器,该设计可以提高协处理器向处理器上送信息的效率。

14、在另一种可能的设计方式中,报文转发设备的协处理器包括用于轮询流表的多个线程,上述目标流表项的老化信息为该多个线程中的一个线程轮询流表中的目标流表项后确定的老化信息,则上述的报文转发设备通过协处理器在环形存储队列中写指针指向的存储单元中写入目标流表项的老化信息包括:通过第一调度器以第一预设策略对上述多个线程进行调度,以使该多个线程按照第一预设策略指示的顺序,依次向环形存储队列的存储单元写入各自确定出的老化信息。

15、通过该可能的设计,可以避免报文转发设备的协处理器通过多个线程轮询流表时,该多个线程同时向环形存储队列中写入老化信息时发生的写冲突或写溢出。

16、在另一种可能的设计方式中,上述的目标流表项包括第一指针,第一指针用于指向存储第一信息的存储空间,第一信息包括第一流的流标识信息和第一流的转发信息,第一流的转发信息用于指示第一流的转发类型和/或转发动作。

17、在另一种可能的设计方式中,上述的第一信息还包括第二指针,第二指针用于指向存储第二信息的存储空间,第二信息包括最新接收到的第一流中的报文的关联数据,关联数据包括用于统计第一流的流信息的数据,第一流的流信息用于在第一流的传输发生异常时的定位异常位置;在流表中存在与第一报文携带的流标识信息匹配的目标流表项时,上述方法还包括:报文转发设备通过协处理器更新第二信息,更新后的第二信息包括第一报文的关联数据。

18、在另一种可能的设计方式中,上述的第一信息还包括第三指针,第三指针用于指向存储第三信息的存储空间,第三信息包括报文转发设备的处理器中用于处理第一流的进程的控制参数。

19、通过上述几种可能的设计,通过将不同信息(如第一信息、第二信息、本文档来自技高网...

【技术保护点】

1.一种报文转发方法,其特征在于,应用于报文转发设备,所述报文转发设备包括处理器和协处理器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在所述流表中不存在所述目标流表项时,所述第一报文携带的流标识信息用于所述处理器创建所述目标流表项。

3.根据权利要求1或2所述的方法,其特征在于,所述协处理器为网络处理器NP,所述处理器为中央处理单元CPU或应用处理器AP。

4.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述通过所述协处理器确定需要对所述目标流表项进行老化包括:

6.根据权利要求4或5所述的方法,其特征在于,所述报文转发设备的存储器包括环形存储队列,所述环形存储队列包括多个环状分布的存储单元,所述环形存储队列中的一个存储单元用于存储一个流表项的老化信息,所述处理器用于读取所述环形存储队列中读指针所指向的存储单元存储的老化信息;所述通过所述协处理器向所述处理器上报所述目标流表项的老化信息包括:

7.根据权利要求1-6中任一项所述的方法,其特征在于,所述目标流表项包括第一指针,所述第一指针用于指向存储第一信息的存储空间,所述第一信息包括所述第一流的流标识信息和所述第一流的转发信息,所述第一流的转发信息用于指示所述第一流的转发类型和/或转发动作。

8.根据权利要求7所述的方法,其特征在于,所述第一信息还包括第二指针,所述第二指针用于指向存储第二信息的存储空间,所述第二信息包括最新接收到的所述第一流中的报文的关联数据,所述关联数据包括用于统计所述第一流的流信息的数据,所述流信息用于在所述第一流的传输发生异常时的定位异常位置;在所述流表中存在与所述第一报文携带的流标识信息匹配的目标流表项时,所述方法还包括:

9.根据权利要求7或8所述的方法,其特征在于,所述第一信息还包括第三指针,所述第三指针用于指向存储第三信息的存储空间,所述第三信息包括所述处理器中用于处理所述第一流的进程的控制参数。

10.根据权利要求9所述的方法,其特征在于,所述流表中的流表项存储于预设的存储空间,所述第一信息、所述第二信息以及所述第三信息存储于所述处理器在创建所述目标流表项时从地址池中申请的存储空间。

11.根据权利要求1-10中任一项所述的方法,其特征在于,所述流标识信息包括流的源地址信息和目的地址信息。

12.一种报文转发装置,其特征在于,所述装置包括处理单元和协处理单元,所述装置还包括:

13.根据权利要求12所述的装置,其特征在于,在所述流表中不存在所述目标流表项时,所述第一报文携带的流标识信息用于所述处理单元创建所述目标流表项。

14.根据权利要求12或13所述的装置,其特征在于,所述协处理单元为网络处理器NP,所述处理单元为中央处理单元CPU或应用处理器AP。

15.根据权利要求12-14中任一项所述的装置,其特征在于,

16.根据权利要求15所述的装置,其特征在于,所述协处理单元具体用于:

17.根据权利要求15或16所述的装置,其特征在于,所述报文转发装置的存储器包括环形存储队列,所述环形存储队列包括多个环状分布的存储单元,所述环形存储队列中的一个存储单元用于存储一个流表项的老化信息,所述处理单元用于读取所述环形存储队列中读指针所指向的存储单元存储的老化信息;

18.根据权利要求12-17中任一项所述的装置,其特征在于,所述目标流表项包括第一指针,所述第一指针用于指向存储第一信息的存储空间,所述第一信息包括所述第一流的流标识信息和所述第一流的转发信息,所述第一流的转发信息用于指示所述第一流的转发类型和/或转发动作。

19.根据权利要求18所述的装置,其特征在于,所述第一信息还包括第二指针,所述第二指针用于指向存储第二信息的存储空间,所述第二信息包括最新接收到的所述第一流中的报文的关联数据,所述关联数据包括用于统计所述第一流的流信息的数据,所述流信息用于在所述第一流的传输发生异常时的定位异常位置;所述协处理单元还用于:

20.根据权利要求18或19所述的装置,其特征在于,所述第一信息还包括第三指针,所述第三指针用于指向存储第三信息的存储空间,所述第三信息包括所述处理单元中用于处理所述第一流的进程的控制参数。

21.根据权利要求20所述的装置,其特征在于,所述流表中的流表项存储于预设的存储空间,所述第一信息、所述第二信息以及所述第三信息存储于所述处理单元在创建所述目标流表项时从地址池中申请的存储空间。

22.根据权利...

【技术特征摘要】

1.一种报文转发方法,其特征在于,应用于报文转发设备,所述报文转发设备包括处理器和协处理器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在所述流表中不存在所述目标流表项时,所述第一报文携带的流标识信息用于所述处理器创建所述目标流表项。

3.根据权利要求1或2所述的方法,其特征在于,所述协处理器为网络处理器np,所述处理器为中央处理单元cpu或应用处理器ap。

4.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述通过所述协处理器确定需要对所述目标流表项进行老化包括:

6.根据权利要求4或5所述的方法,其特征在于,所述报文转发设备的存储器包括环形存储队列,所述环形存储队列包括多个环状分布的存储单元,所述环形存储队列中的一个存储单元用于存储一个流表项的老化信息,所述处理器用于读取所述环形存储队列中读指针所指向的存储单元存储的老化信息;所述通过所述协处理器向所述处理器上报所述目标流表项的老化信息包括:

7.根据权利要求1-6中任一项所述的方法,其特征在于,所述目标流表项包括第一指针,所述第一指针用于指向存储第一信息的存储空间,所述第一信息包括所述第一流的流标识信息和所述第一流的转发信息,所述第一流的转发信息用于指示所述第一流的转发类型和/或转发动作。

8.根据权利要求7所述的方法,其特征在于,所述第一信息还包括第二指针,所述第二指针用于指向存储第二信息的存储空间,所述第二信息包括最新接收到的所述第一流中的报文的关联数据,所述关联数据包括用于统计所述第一流的流信息的数据,所述流信息用于在所述第一流的传输发生异常时的定位异常位置;在所述流表中存在与所述第一报文携带的流标识信息匹配的目标流表项时,所述方法还包括:

9.根据权利要求7或8所述的方法,其特征在于,所述第一信息还包括第三指针,所述第三指针用于指向存储第三信息的存储空间,所述第三信息包括所述处理器中用于处理所述第一流的进程的控制参数。

10.根据权利要求9所述的方法,其特征在于,所述流表中的流表项存储于预设的存储空间,所述第一信息、所述第二信息以及所述第三信息存储于所述处理器在创建所述目标流表项时从地址池中申请的存储空间。

11.根据权利要求1-10中任一项所述的方法,其特征在于,所述流标识信息包括流的源地址信息和目的地址信息。

<...

【专利技术属性】
技术研发人员:胡容国莫大明李昶于颀熊鹰
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1