System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 报文转发方法、节点设备以及SRv6网络技术_技高网

报文转发方法、节点设备以及SRv6网络技术

技术编号:44753078 阅读:9 留言:0更新日期:2025-03-26 12:39
本申请提供了一种报文转发方法、节点设备以及SRv6网络,其中,该方法包括:通过将转发芯片与CPU融合,实现对SRv6报文的转发,由转发芯片执行业务路由表项查询以及ACL报文特征匹配,利用CPU查找SRv6TE Policy、Segment List等信息进行SRH封装,转发芯片和CPU配合,共同完成SRv6封装转发。相比于软件转发方案,本申请降低了CPU的负担,提升了CPU的工作性能,相比于硬件转发方案,本申请降低了转发芯片的实现难度和实现成本,具有较高的灵活性。

【技术实现步骤摘要】

本申请涉及网络通信,具体而言,涉及一种报文转发方法、节点设备以及srv6网络。


技术介绍

1、sr(segment routing,段路由)是基于源路由理念而设计的在网络上转发数据包的一种技术。srv6 te(srv6traffic engineering,srv6流量工程)是以srv6为基础的te隧道技术。业界通常使用srv6 te policy(srv6流量策略)来定义一个srv6 te隧道。srv6 te策略一般使用color(隧道颜色标识)和endpoint(隧道尾节点地址)作为关键字,一个srv6te policy包含一个或多个segment list(段列表),段列表包含多个sid(segmentidentification,段标识),segment list也称为sid链表或sid地址栈,每个sid对应报文转发路径中的一个节点或者链路。srv6隧道头节点基于srv6te policy中的segment list和路由表项的业务sid来封装srh(segment routing header,段路由头),基于segment list中的第一个sid对应的转发信息将报文转发给下一跳设备,从而实现srv6隧道封装转发。

2、目前srv6隧道封装转发有两种实现方案。第一种是基于cpu实现的软件转发方案。在软件层面创建软件路由表项和srv6隧道等表项,通过运行于cpu的软件程序来处理数据报文,根据报文目的地址或五元组信息查找相应的路由表项、流策略表项、srv6 tepolicy、segment list、首段下一跳等信息,封装srh并将报文转发给下一跳。第二种方案是基于转发芯片实现的硬件转发方案。在转发芯片中安装硬件路由表项和硬件隧道表项,依靠硬件实现srv6隧道封装和转发。

3、但是,第一种方案需要cpu执行多次查表和报文特征匹配等动作,cpu负担较重,转发性能较差。由于srv6对报文的处理非常灵活,同时srv6封装的sid个数较多,封装报文头较长,因此第二种方案实现难度和成本较高,且灵活性较差。


技术实现思路

1、本申请的目的在于,针对上述现有技术中的不足,提供一种报文转发方法、节点设备以及srv6网络,以解决现有技术中基于cpu转发报文时cpu负担较重,转发性能较差,基于转发芯片转发报文时实现难度和成本较高,且灵活性较差的问题。

2、为实现上述目的,本申请采用的技术方案如下:

3、第一方面,本申请提供了一种报文转发方法,应用于srv6网络中的头节点设备,所述头节点设备包括转发芯片以及cpu,所述方法包括:

4、所述转发芯片根据预先安装的硬件转发表确定数据报文的转发标识信息,并将所述数据报文以及所述转发标识信息上送所述cpu;

5、所述cpu根据所述转发标识信息以及软件转发表,确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识;

6、所述cpu根据srv6 te policy转发表、隧道尾节点地址以及隧道颜色标识,确定所述数据报文的段列表segment list;

7、所述cpu根据所述业务sid以及segment list对所述数据报文进行封装,得到封装后报文,并将所述封装后报文发送给所述转发芯片;

8、所述转发芯片对所述封装后报文进行转发。

9、可选地,所述硬件转发表包括路由表;

10、所述转发芯片根据预先安装的硬件转发表确定数据报文的转发标识信息,并将所述数据报文以及所述转发标识信息发送给所述cpu的步骤,包括:

11、根据所述数据报文的目的ip地址查询所述路由表,确定与所述数据报文匹配的隧道标识,并判断所述硬件转发表中是否存在访问控制列表;

12、若存在所述访问控制列表且查找到与所述数据报文匹配的表项时,获取与所述数据报文匹配的流规则标识,并将所述隧道标识和所述流规则标识作为所述转发标识信息和所述数据报文一起上送所述cpu;

13、若不存在所述访问控制列表或者在所述访问控制列表中未查找到与所述数据报文匹配的表项时,依据所述路由表将所述隧道标识作为所述转发标识信息和所述数据报文一起上送所述cpu。

14、可选地,所述软件转发表包括srv6隧道封装信息表和流策略规则表;

15、所述cpu根据所述转发标识信息以及软件转发表,确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识,包括:

16、对所述隧道标识查找所述srv6隧道封装信息表,确定与所述隧道标识匹配的隧道封装信息表项,获取所述隧道封装信息表项中的业务sid、隧道尾节点地址以及隧道颜色标识;

17、若所述转发标识信息中不包括所述流规则标识,则将所述隧道封装信息表项中的业务sid、隧道尾节点地址以及隧道颜色标识作为所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识;

18、若所述转发标识信息包括流规则标识,则查找所述流策略规则表,确定与所述流规则标识匹配的流策略规则表项,获取所述流策略规则表项中的业务sid、隧道尾节点地址以及隧道颜色标识,并根据所述隧道封装信息表项和所述流策略规则表项确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识。

19、可选地,所述根据所述隧道封装信息表项和所述流策略规则表项确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识的步骤,包括:

20、若所述隧道封装信息表项中的业务sid、隧道尾节点地址以及隧道颜色标识与所述流策略规则表项中的业务sid、隧道尾节点地址以及隧道颜色标识不同,则将所述流策略规则表项中的业务sid、隧道尾节点地址以及隧道颜色标识作为所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识,或者,若所述流策略规则表项中包含隧道颜色标识,则根据所述流策略规则表项中的隧道颜色标识和所述隧道封装信息表项中的业务sid和隧道尾节点地址,确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识。

21、可选地,所述cpu根据srv6 te policy转发表、隧道尾节点地址以及隧道颜色标识,确定所述数据报文的segment list,包括:

22、所述cpu根据所述隧道尾节点地址以及隧道颜色标识在所述srv6 te policy转发表中查找,确定与所述隧道尾节点地址以及隧道颜色标识匹配的srv6 te policy表项,将所述srv6 te policy表项中的segment list作为所述数据报文的segment list。

23、可选地,所述转发芯片对所述封装后报文进行转发,包括:

24、转发芯片确定所述封装后报文的下一跳信息,基于所述下一跳信息对所述封装后报文进行以太头编辑,并将编辑后的封装后报文转发给下一节点设备。

25、第二方面,本申请提供了一种报文转发方法,应用于srv6网络中的其他节点设备,所述其他节点设备包括:中间节点设备或尾节点设备,所述本文档来自技高网...

【技术保护点】

1.一种报文转发方法,其特征在于,应用于SRv6网络中的头节点设备,所述头节点设备包括转发芯片以及CPU,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述硬件转发表包括路由表;

3.根据权利要求2所述的方法,其特征在于,所述软件转发表包括SRv6隧道封装信息表和流策略规则表;

4.根据权利要求3所述的方法,其特征在于,所述根据所述隧道封装信息表项和所述流策略规则表项确定所述数据报文的业务SID、隧道尾节点地址以及隧道颜色标识的步骤,包括:

5.根据权利要求1所述的方法,其特征在于,所述CPU根据SRv6 TE Policy转发表、隧道尾节点地址以及隧道颜色标识,确定所述数据报文的段列表Segment List,包括:

6.根据权利要求1所述的方法,其特征在于,所述转发芯片对所述封装后报文进行转发的步骤,包括:

7.一种报文转发方法,其特征在于,应用于SRv6网络中的其他节点设备,所述其他节点设备包括:中间节点设备或尾节点设备,所述其他节点设备包括:转发芯片以及CPU,所述方法包括:

8.根据权利要求7所述的方法,其特征在于,若所述其他节点设备为尾节点设备,所述CPU根据所述SID表项中的处理动作对所述封装后报文进行处理,得到数据报文,包括:

9.一种节点设备,其特征在于,所述节点设备为所述SRv6网络中的头节点设备或中间节点设备或尾节点设备;

10.一种SRv6网络,其特征在于,包括执行如权利要求1-6任一项所述的报文转发方法的头节点设备,还包括执行如权利要求7或8所述的报文转发方法的中间节点设备以及尾节点设备。

...

【技术特征摘要】

1.一种报文转发方法,其特征在于,应用于srv6网络中的头节点设备,所述头节点设备包括转发芯片以及cpu,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述硬件转发表包括路由表;

3.根据权利要求2所述的方法,其特征在于,所述软件转发表包括srv6隧道封装信息表和流策略规则表;

4.根据权利要求3所述的方法,其特征在于,所述根据所述隧道封装信息表项和所述流策略规则表项确定所述数据报文的业务sid、隧道尾节点地址以及隧道颜色标识的步骤,包括:

5.根据权利要求1所述的方法,其特征在于,所述cpu根据srv6 te policy转发表、隧道尾节点地址以及隧道颜色标识,确定所述数据报文的段列表segment list,包括:

6.根据权利要求1所述的方法...

【专利技术属性】
技术研发人员:唐勇
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:

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

1