本发明涉及数据传输,尤其涉及一种srv6报文处理实例的确定方法、装置、电子设备及存储介质。
背景技术:
1、在基于第六版互联网协议的分段路由(segment routing overinternetprotocol version 6,srv6)报文转发场景中,尽管应用服务(service function,sf)节点能够识别处理srv6报文,但是sf无法识别报文的虚拟专用网(virtual privatenetwork,vpn)信息。以防火墙服务为例,防火墙由很多提供服务的实例(虚拟防火墙)组成,收到租户报文后,防火墙需要将租户报文关联到实例,为租户提供相应的服务。相关技术中,防火墙对外只发布一个段标识(segment identifier,sid),访问防火墙服务的租户会把该sid编排到路径列表中,报文按照路径列表进行转发,当防火墙收到报文时,无法识别该报文来自哪个租户,也无法将该报文关联到具体的实例进行处理。
技术实现思路
1、有鉴于此,本发明实施例提供了一种srv6报文处理实例的确定方法、装置、电子设备及存储介质,能够准确识别srv6报文的处理实例。
2、本发明实施例的技术方案是这样实现的:
3、第一方面,本发明实施例提供了一种srv6报文处理实例的确定方法,应用于应用服务sf节点,该方法包括:
4、接收租户通过电子设备发送的srv6报文;
5、获取所述srv6报文中的所述sf节点为所述租户发布的段标识sid;所述sid中的预设操作表征所述srv6报文中的目标虚拟专用网的段标识vpn sid值的获取位置;
6、根据所述sid中的预设操作,获取所述srv6报文中的对应位置的目标vpn sid值;
7、根据所述目标vpn sid值查询预设映射表,确定所述srv6报文对应的目标处理实例;所述预设映射表表征多个vpn sid值与每个vpn sid值对应的处理实例的映射关系,所述多个vpn sid值包括所述目标vpn sid值。
8、在上述方案中,所述获取所述srv6报文中的所述sf节点为所述租户发布的sid,包括:
9、根据所述srv6报文中的目的地址字段,获取所述sf节点为所述租户发布的sid。
10、在上述方案中,所述预设操作包括第一业务链操作、第二业务链操作和第三业务链操作;
11、所述根据所述sid中的预设操作,获取所述srv6报文中的对应位置的目标vpn sid值,包括:
12、若所述预设操作为所述第一业务链操作,则将所述srv6报文中的源地址字段中的源vpn sid的值确定为所述目标vpn sid值;
13、若所述预设操作为所述第二业务链操作,则将所述srv6报文的段标识列表中的第一个目的vpn sid确定为所述目标vpn sid值;
14、若所述预设操作为所述第三业务链操作,则将所述源vpn sid的值和所述目的vpnsid的值确定为所述目标vpn sid值。
15、在上述方案中,所述根据所述目标vpn sid值查询预设映射表,确定所述srv6报文对应的目标处理实例,包括:
16、若所述预设操作为所述第一业务链操作,则以所述源vpn sid的值作为索引,查询所述预设映射表中所述srv6报文对应的目标处理实例;
17、若所述预设操作为所述第二业务链操作,则以所述目的vpn sid的值作为索引,查询所述预设映射表中所述srv6报文对应的目标处理实例;
18、若所述预设操作为所述第三业务链操作,则以所述源vpn sid的值和所述目的vpnsid的值作为索引,查询所述预设映射表中所述srv6报文对应的目标处理实例。
19、在上述方案中,所述方法还包括:
20、将所述srv6报文转发给所述目标处理实例。
21、在上述方案中,所述方法还包括:
22、在接收到所述租户的服务购买请求时,根据所述服务购买请求确定发布给所述租户的sid中的预设操作;
23、根据所述预设操作,生成发布给所述租户的sid。
24、在上述方案中,所述方法还包括:
25、在所述预设映射表中存储所述预设操作对应的所述目标vpn sid值与所述目标处理实例的映射关系。
26、第二方面,本发明实施例提供了一种srv6报文处理实例的确定装置,该装置包括:
27、接收模块,用于接收租户通过电子设备发送的srv6报文;
28、第一获取模块,用于获取所述srv6报文中的所述sf节点为所述租户发布的sid;所述sid中的预设操作表征所述srv6报文中的目标vpn sid值的获取位置;
29、第二获取模块,用于根据所述sid中的预设操作,获取所述srv6报文中的对应位置的目标vpn sid值;
30、查询模块,用于根据所述目标vpn sid值查询预设映射表,确定所述srv6报文对应的目标处理实例;所述预设映射表表征多个vpn sid值与每个vpn sid值对应的处理实例的映射关系,所述多个vpn sid值包括所述目标vpn sid值。
31、第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行本发明实施例第一方面提供的srv6报文处理实例的确定方法的步骤。
32、第四方面,本发明实施例提供了一种计算机可读存储介质,包括:所述计算机可读存储介质存储有计算机程序。所述计算机程序被处理器执行时实现如本发明实施例第一方面提供的srv6报文处理实例的确定方法的步骤。
33、本申请实施例中的sf节点在接收到租户通过电子设备发送的srv6报文后,获取srv6报文中的sf节点为租户发布的sid,然后根据sid中的预设操作,获取srv6报文中的对应位置的目标vpn sid值。最后根据目标vpn sid值查询预设映射表,确定srv6报文对应的目标处理实例。其中,sid中的预设操作表征srv6报文中的目标vpn sid值的获取位置,预设映射表表征多个vpn sid值与每个vpn sid值对应的处理实例的映射关系,多个vpn sid值包括目标vpn sid值。本申请实施例通过在为租户发布的sid中内置预设操作,使得sf节点可以根据sid中携带的预设操作从srv6报文中获取到目标vpn sid值,再根据目标vpn sid值查询预设映射表,获取srv6报文的目标处理实例。本申请实施例可以准确确定srv6报文的处理实例,并且租户并不需要对报文进行改造,所以没有增加租户的报文开销。
1.一种srv6报文处理实例的确定方法,应用于应用服务sf节点,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述获取所述srv6报文中的所述sf节点为所述租户发布的sid,包括:
3.根据权利要求1所述的方法,其特征在于,所述预设操作包括第一业务链操作、第二业务链操作和第三业务链操作;
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标vpn sid值查询预设映射表,确定所述srv6报文对应的目标处理实例,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种srv6报文处理实例的确定装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7所述的srv6报文处理实例的确定方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1至7所述的srv6报文处理实例的确定方法。