【技术实现步骤摘要】
报文传输方法、代理节点及存储介质
本申请涉及通信
,特别涉及一种报文传输方法、代理节点及存储介质。
技术介绍
分段路由(英文:segmentrouting,简称:SR)是基于源路由的理念来转发报文的技术,基于互联网协议第6版(英文:internetprotocolversion6,简称:IPv6)的分段路由(简称:SRv6)是一种将SR技术与IPv6协议结合起来的技术。具体来讲,SRv6报文会在携带IPv6头(英文:IPv6header)的基础上,还携带分段路由头(英文:segmentroutingheader,简称:SRH)。SRH包括段标识(英文:segmentID,简称:SID,也称segment)列表(英文:SIDlist,也称SegmentsList)以及剩余段数量(英文:segmentleft,简称:SL)等信息。段列表中包含一个或多个依次排列的SID,每个SID在形式上是一个128比特的IPv6地址,每个SID在实质上能够表示拓扑、指令或服务。SL相当于指针,是个不小于0的数值,会指向段列表中的活跃SID(英文:activeSID),该活跃SID为IPv6头中的目的地址。当支持SRv6的节点接收到报文时,会读取报文的目的地址,根据目的地址查询本地SID表(英文:localSIDtable),当目的地址为本地SID表中的SID时,将报文识别为SRv6报文,基于该SID对应的拓扑、指令或服务,来执行相应的操作。业务功能链(英文:servicefunctionchain,简称:SFC,也称业务链 ...
【技术保护点】
1.一种报文传输方法,其特征在于,应用于第一代理节点,所述方法包括:/n从业务功能节点接收第一报文;/n查询所述第一代理节点的缓存,未得到所述第一报文对应的分段路由头SRH;/n根据所述第一报文和对应于第二代理节点的第一绕行段标识SID,生成第二报文,所述第二代理节点与所述第一代理节点连接到同一个业务功能节点,所述第二报文包括所述第一绕行SID、第一控制信息和所述第一报文的载荷,所述第一绕行SID用于标识所述第二报文的目的节点为所述第二代理节点,所述第一控制信息用于指示所述第二代理节点恢复所述第一报文对应的SRH;/n向所述第二代理节点发送所述第二报文。/n
【技术特征摘要】
1.一种报文传输方法,其特征在于,应用于第一代理节点,所述方法包括:
从业务功能节点接收第一报文;
查询所述第一代理节点的缓存,未得到所述第一报文对应的分段路由头SRH;
根据所述第一报文和对应于第二代理节点的第一绕行段标识SID,生成第二报文,所述第二代理节点与所述第一代理节点连接到同一个业务功能节点,所述第二报文包括所述第一绕行SID、第一控制信息和所述第一报文的载荷,所述第一绕行SID用于标识所述第二报文的目的节点为所述第二代理节点,所述第一控制信息用于指示所述第二代理节点恢复所述第一报文对应的SRH;
向所述第二代理节点发送所述第二报文。
2.根据权利要求1所述的方法,其特征在于,所述第二报文包括互联网协议IP头,所述IP头的目的地址为所述第一绕行SID。
3.根据权利要求1所述的方法,其特征在于,所述第二报文包括IP头和第二报文的SRH,所述IP头的目的地址为一个或多个目标SID中对应于下一个分段路由SR节点的SID,所述一个或多个目标SID用于指示目标转发路径,所述目标转发路径为所述第一代理节点至所述第二代理节点之间的路径,所述第二报文的SRH包括所述第一绕行SID和所述一个或多个目标SID。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述第一报文和对应于第二代理节点的第一绕行段标识SID,生成第二报文,包括:
生成所述第二报文的IP头;
向所述第一报文封装所述第二报文的IP头。
5.根据权利要求2或3所述的方法,其特征在于,所述根据所述第一报文和对应于第二代理节点的第一绕行段标识SID,生成第二报文,包括:
将所述第一报文的IP头更新为所述第二报文的IP头。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述第二报文还包括第二控制信息,所述第二控制信息用于指示所述第一代理节点与所述第二代理节点之间的中间节点对所述第二报文的合法性进行校验。
7.根据权利要求6所述的方法,其特征在于,
所述第二控制信息携带在所述第二报文的SRH的类型长度值TLV中;或者,
所述第二控制信息携带在所述第二报文的IP头中。
8.根据权利要求1至7中任一项所述的方法,其特征在于,
所述第一控制信息携带在所述第二报文的扩展头中;或者,
所述第一控制信息携带在所述第一绕行SID中;或者,
所述第一控制信息携带在所述第二报文的IP头中;或者,
所述第一控制信息携带在所述第二报文的SRH中的TLV中。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述第一报文由来自所述第二代理节点的报文经过业务功能处理后得到,所述第一报文包括第二缓存表项的标识,所述第二缓存表项为所述第二代理节点存储所述第一报文对应的SRH的缓存表项;
所述第二报文还包括所述第二缓存表项的标识,所述第一控制信息还用于指示所述第二代理节点以所述第二缓存表项的标识为索引查询所述第一报文对应的SRH。
10.根据权利要求1至8中任一项所述的方法,其特征在于,所述第一报文由来自所述第一代理节点的报文经过业务功能处理后得到,所述第一报文包括第一缓存表项的标识,所述第一缓存表项为所述第一代理节点历史存储所述第一报文对应的SRH的缓存表项;
所述第二报文包括所述第一缓存表项的标识,所述第一控制信息还用于指示所述第二代理节点以所述第一缓存表项的标识相映射的第二缓存表项的标识为索引,查询所述第一报文对应的SRH。
11.根据权利要求1至10中任一项所述的方法,其特征在于,
所述第一代理节点通过第一链路与所述第二代理节点相连,所述向所述第二代理节点发送所述第二报文,包括:通过对应于所述第一链路的第一出接口,向所述第二代理节点发送所述第二报文;或者,
所述第一代理节点通过第二链路与路由节点相连,所述路由节点通过第三链路与所述第二代理节点相连,所述向所述第二代理节点发送所述第二报文,包括:通过对应于所述第二链路的第二出接口,向路由节点发送所述第二报文,所述第二报文由所述路由节点通过所述第三链路转发至所述第二代理节点。
12.根据权利要求11所述的方法,其特征在于,所述向所述第二代理节点发送所述第二报文,包括:
对所述第一链路的状态进行检测;
如果所述第一链路处于可用状态,通过对应于所述第一链路的第一出接口,向所述第二代理节点发送所述第二报文;或者,
如果所述第一链路处于不可用状态,通过对应于所述第二链路的第二出接口,向路由节点发送所述第二报文。
13.一种报文传输方法,其特征在于,应用于第二代理节点,所述方法包括:
从第一代理节点接收第二报文,所述第一代理节点与所述第二代理节点连接到同一个业务功能节点,所述第二报文包括对应于所述第二代理节点的第一绕行段标识SID、第一控制信息和第一报文的载荷,所述第一绕行SID用于标识所述第二报文的目的节点为所述第二代理节点,所述第一报文为所述第一代理节点从所述业务功能节点接收的报文;
确定所述第一控制信息指示所述第二代理节点恢复所述第一报文对应的分段路由头SRH;
根据所述第二报文,查询所述第二代理节点的缓存,得到所述第一报文对应的SRH;
根据所述第二报文和所述第一报文对应的SRH,生成第三报文,所述第三报文包括所述第一报文对应的SRH和所述第一报文的载荷;
发送所述第三报文。
14.根据权利要求13所述的方法,其特征在于,所述第二报文包括互联网协议IP头,所述IP头的目的地址为所述第一绕行SID。
15.根据权利要求13所述的方法,其特征在于,所述第二报文包括IP头和第二报文的SRH,所述IP头的目的地址为一个或多个目标SID中对应于下一个分段路由SR节点的SID,所述一个或多个目标SID用于指示目标转发路径,所述目标转发路径为所述第一代理节点至所述第二代理节点之间的路径,所述第二报文的SRH包括所述第一绕行SID和所述一个或多个目标SID。
16.根据权利要求14或15所述的方法,其特征在于,所述根据所述第二报文和所述第一报文对应的SRH,生成第三报文,包括:
从所述第二报文剥离所述第二报文的IP头,封装所述第一报文对应的SRH,得到所述第三报文。
17.根据权利要求14或15所述的方法,其特征在于,所述根据所述第二报文和所述第一报文对应的SRH,生成第三报文,包括:
将所述第二报文的IP头更新为所述第一报文的IP头,封装所述第一报文对应的SRH,得到所述第三报文。
18.根据权利要求13至17中任一项所述的方法,其特征在于,所述第二报文还包括第二控制信息,所述第二控制信息用于指示所述第一代理节点与所述第二代理节点之间的中间节点对所述第二报文的合法性进行校验。
19.根据权利要求18所述的方法,其特征在于,
所述第二控制信息携带在所述第二报文的SRH的类型长度值TLV中;或者,
所述第二控制信息携带在所述第二报文的IP头中。
20.根据权利要求13至19中任一项所述的方法,其特征在于,
所述第一控制信息携带在所述第二报文的扩展头中;或者,
所述第一控制信息携带在所述第一绕行SID中;或者,
所述第一控制信息携带在所述第二报文的IP头中;或者,
所述第一控制信息携带在所述第二报文的SRH中的TLV中。
21.根据权利要求13至20中任一项所述的方法,其特征在于,所述第二报文还包括第二缓存表项的标识,所述根据所述第二报文,查询所述第二代理节点的缓存,得到所述第一报文对应的SRH,包括:
确定所述第一控制信息还指示以所述第二缓存表项的标识为索引查询所述第一报文对应的SRH;
以所述第二缓存表项的标识为索引,查询所述第二代理节点的缓存,从所述第二缓存表项得到所述第一报文对应的SRH。
22.根据权利要求13至20中任一项所述的方法,其特征在于,所述第二报文还包括第一缓存表项的标识,所述第一缓存表项为所述第一代理节点历史存储所述第一报文对应的SRH的缓存表项,所述根据所述第二报文,查询所述第二代理节点的缓存,得到所述第一报文对应的SRH,包括:
确定所述第一控制信息还指示以所述第一缓存表项的标识相映射的第二缓存表项的标识为索引查询所述第一报文对应的SRH;
根据所述第一缓存表项的标识,查询第一缓存表项的标识与第二缓存表项的标识之间的映射关系,得到所述第二缓存表项的标识;
以所述第二缓存表项的标识为索引,查询所述第二代理节点的缓存,从所述第二缓存表项得到所述第一报文对应的SRH。
23.根据权利要求21或22所述的方法,其特征在于,所述以所述第二缓存表项的标识为索引,查询所述第二代理节点的缓存之前,所述方法还包括:
确定所述业务功能节点的业务功能包括对流标识进行修改。
24.根据权利要求13至20中任一项所述的方法,其特征在于,所述第二报文对应的流标识为所述第一报文对应的流标识,所述根据所述第二报文,查询所述第二代理节点的缓存,得到所述第一报文对应的SRH,包括:
以所述第一报文对应的流标识和所述业务功能节点对应的端点动态代理SID为索引,查询所述第二代理节点的缓存,得到所述第一报文对应的SRH。
25.根据权利要求24所述的方法,其特征在于,所述第二报文包括所述业务功能节点所属的虚拟专用网络VPN的VPN标识,所述以所述第一报文对应的流标识和所述业务功能节点对应的端点动态代理SID为索引,查询所述第二代理节点的缓存之前,所述方法还包括:
根据所述VPN标识,查询端点动态代理SID与VPN标识之间的映射关系,得到所述VPN标识对应的所述端点动态代理SID。
26.根据权利要求25所述的方法,其特征在于,所述根据所述VPN标识,查询端点动态代理SID与VPN标识之间的映射关系之前,所述方法还包括:
接收配置指令,所述配置指令包括每个VPN中的业务功能节点对应的端点动态代理SID;
根据所述配置指令,存储所述端点动态代理SID与VPN标识之间的映射关系。
27.根据权利要求24所述的方法,其特征在于,所述以所述第一报文对应的流标识和所述业务功能节点对应的端点动态代理SID为索引,查询所述第二代理节点的缓存之前,所述方法还包括:
接收第四报文,所述第四报文包括所述第一报文对应的SRH,所述第四报文的目的地址为所述端点动态代理SID,所述第四报文对应的流标识为所述第一报文对应的流标识;
以所述第一报文对应的流标识和所述端点动态代理SID为索引,在第二缓存表项中存储所述第一报文对应的SRH。
28.根据权利要求13至27中任一项所述的方法,其特征在于,
所述第二代理节点通过第一链路与所述第一代理节点相连,所述从第一代理节点接收第二报文,包括:通过对应于所述第一链路的第一入接口,从所述第一代理节点接收所述第二报文;或者,
所述第二代理节点通过第三链路与路由节点相连,所述路由节点通过第二链路与所述第一代理节点相连,所述从第一代理节点接收第二报文,包括:通过对应于所述第三链路的第二入接口,从所述路由节点接收所述第二报文,所述第二报文由所述第一代理节点通过所述第二链路发送至所述路由节点。
29.一种第一代理节点,其特征在于,所述第一代理节点包括:
接收模块,用于从业务功能节点接收...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。