一种报文处理的方法及相关装置制造方法及图纸

技术编号:34002454 阅读:17 留言:0更新日期:2022-07-02 12:30
本申请实施例提供了一种报文处理的方法及相关装置。本申请实施提供的方法能够根据报文中的预设标识解析当前SID的下一个SID的格式,并根据下一个SID的格式更新报文头的目标地址DA字段,实现绕开该故障中间节点,并进行代理转发,实现SRv6 TE FRR。FRR。FRR。

【技术实现步骤摘要】
一种报文处理的方法及相关装置


[0001]本申请实施例涉及通信
,尤其涉及一种报文处理的方法及相关装置。

技术介绍

[0002]在基于互联网协议第6版(Internet Protocol Version 6,IPv6)的段路由流量工程策略(Segment Routing Traffic Engineering Policy,SR

TE Policy)中,中间节点(Midpoint)的上游节点可以代替中间节点完成转发报文的处理,这种上游节点可以称为代理转发(Proxy Forwarding)节点。
[0003]图1为中间节点发生故障的通信系统的示意图。在该通信系统中,正常情况下,报文从节点A发出,依次经过节点B、节点D和节点E,到达节点F,如图1中虚线箭头所示。然而,在某次事故或突发情况下,中间节点D发生了故障。此时中间节点D的上游节点B(代理转发节点)可以感知到报文的下一跳(中间节点D)接口故障,则该节点B修改报文中的参数,使得报文绕过故障节点D,经过节点C和节点E,到达节点F,如图1中实线箭头所示。上述方案称为基于Ipv6的段路由流量工程中间节点保护(Segment Routing IPv6Traffic Engineering Fast reroute,SRv6 TE FRR)。
[0004]其中,节点B修改报文中的参数时需要将报文中节点D的下一跳的段标识(segment identifier,SID)更新到报文头中。当前,SID存在两种类型,一种是非压缩SID,另一种是压缩SID。而当包含多个SID的报文采用了非压缩SID和压缩SID混编时,节点B无法从报文中得知节点D的下一跳SID具体是非压缩SID还是压缩SID,导致了节点B无法将节点D的下一跳SID更新到报文头中,无法实现SRv6 TE FRR。

技术实现思路

[0005]本申请实施例提供了一种报文处理的方法及相关装置,能够根据报文中的预设标识解析当前SID的下一个SID的格式,并根据下一个SID的格式更新报文头的目标地址DA字段,实现绕开该故障中间节点,并进行代理转发,实现SRv6 TE FRR。
[0006]第一方面,本申请实施例提供一种报文处理的方法,包括:获取报文;若当前段标识SID对应节点为故障的中间节点,则执行以下步骤:根据报文中的预设标识,解析当前SID的下一个SID的格式,报文中的预设标识包含该报文中所有SID的压缩信息,下一个SID的格式包括压缩格式和非压缩格式;根据下一个SID的格式,更新报文头的目标地址DA字段;根据更新后的DA字段转发报文。本申请实施提供的方法能够根据报文中的预设标识解析当前SID的下一个SID的格式,并根据下一个SID的格式更新报文头的目标地址DA字段,实现绕开该故障中间节点,并进行代理转发,实现SRv6 TE FRR。
[0007]结合第一方面,在本申请实施例的一种实现方式中,获取报文之后,方法还包括:若当前段标识SID对应节点不为故障的中间节点,则按照既定规则转发报文。在该实现方式中,如没有出现故障,则可以按照正常流程转发该报文。
[0008]结合第一方面,在本申请实施例的一种实现方式中,根据报文中的预设标识,解析
当前SID的下一个SID的格式包括:从报文头的DA字段中读取当前SID的继续压缩COC标记,COC标记用于下一个SID的格式为压缩格式或非压缩格式;根据当前SID的COC标记确定下一个SID的格式。在该实现方式中,通过COC标记来确定下一个SID的格式,简单方便。
[0009]结合第一方面,在本申请实施例的一种实现方式中,根据报文中的预设标识,解析当前SID的下一个SID的格式包括:从报文头的源地址SA字段中读取第一标识取值,第一标识取值为第一预设值表示报文头的DA字段中包括第二标识,第一标识取值为第二预设值表示报文头的DA字段中不包括第二标识,第二标识用于表示剩余压缩SID的行数;若第一标识取值为第二预设值,则确定下一个SID的格式为非压缩格式。在该实现方式中,通过第一标识可以确定DA字段中是否包括表示剩余压缩SID行数的第二标识,若没有第二标识,则可以直接判断下一个SID的格式为非压缩格式。
[0010]结合第一方面,在本申请实施例的一种实现方式中,从报文头的源地址SA字段中读取第一标识取值之后,方法还包括:若第一标识取值为第一预设值,则从报文头的DA字段中读取第二标识的取值;若第二标识的取值大于0,则确定下一个SID的格式为压缩格式。在该实现方式中,若第二标识的取值大于0,说明剩余还有至少一行压缩SID,则可以直接判断下一个SID的格式为压缩格式。
[0011]结合第一方面,在本申请实施例的一种实现方式中,从报文头的DA字段中读取第二标识的取值之后,方法还包括:若第二标识的取值等于0,则从报文头的DA字段中读取SID索引参数的取值,SID索引参数用于指示压缩SID的位置;若SID索引参数的取值为0,则确定下一个SID的位置在下一行,且下一个SID的格式为非压缩格式。在该实现方式中,当第二标识的取值等于0时,说明当前SID的同一行SID均为最后一行压缩SID,下一行SID为非压缩SID,进一步通过SID索引参数确定当前SID是否为该行最后一个SID。当SID索引参数的取值为0时,当前SID为该行最后一个SID,则下一个SID处于下一行,则下一个SID为非压缩SID。
[0012]结合第一方面,在本申请实施例的一种实现方式中,从报文头的DA字段中读取SID索引参数的取值之后,方法还包括:若SID索引参数的取值大于0,则判断SID索引参数减一的位置是否有SID;若SID索引参数减一的位置有SID,则确定SID索引参数减一的位置的SID为下一个SID,且下一个SID的格式为压缩格式;若SID索引参数减一的位置没有SID,则确定下一个SID的位置在下一行,且下一个SID的格式为非压缩格式。在该实现方式中,SID索引参数的取值大于0说明当前SID不处于该行的最后一个位置,则进一步确定当前SID的下一个位置是否有SID,若有则该SID为压缩SID,若没有,则说明下一个SID处于下一行,则下一个SID为非压缩SID。
[0013]结合第一方面,在本申请实施例的一种实现方式中,根据下一个SID的格式,更新报文头的目标地址DA字段包括:从报文头的SA字段中读取第三标识的取值,第三标识用于指示下一个压缩头SID对应的段剩余SL参数取值;若下一个SID对应的SL取值与第三标识相同,则确定下一个SID为压缩头SID,并将压缩头SID中的第二标识的预设值更新到报文头的DA字段,将压缩头SID中的第三标识的预设值更新到报文头的SA字段,根据DA字段中第二标识的更新情况确定第一标识的取值。在该实现方式中,由于压缩头中存储有第二标识和第三标识的信息,因此当下一个SID为压缩头SID时,可以根据该压缩头中第二标识和第三标识的信息更新到报文头中的SA字段和DA字段,并DA字段中第二标识的更新情况确定第一标识的取值。通过第一标识、第二标本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种报文处理的方法,其特征在于,包括:获取报文;若当前段标识SID对应节点为故障的中间节点,则执行以下步骤:根据所述报文中的预设标识,解析所述当前SID的下一个SID的格式,所述报文中的预设标识包含该报文中所有SID的压缩信息,所述下一个SID的格式包括压缩格式和非压缩格式;根据所述下一个SID的格式,更新报文头的目标地址DA字段;根据更新后的所述DA字段转发所述报文。2.根据权利要求1所述的方法,其特征在于,所述获取报文之后,所述方法还包括:若当前段标识SID对应节点不为故障的中间节点,则按照既定规则转发所述报文。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述报文中的预设标识,解析所述当前SID的下一个SID的格式包括:从所述报文头的DA字段中读取所述当前SID的继续压缩COC标记,所述COC标记用于下一个SID的格式为压缩格式或非压缩格式;根据所述当前SID的COC标记确定所述下一个SID的格式。4.根据权利要求1或2所述的方法,其特征在于,所述根据所述报文中的预设标识,解析所述当前SID的下一个SID的格式包括:从所述报文头的源地址SA字段中读取第一标识取值,所述第一标识取值为第一预设值表示所述报文头的DA字段中包括第二标识,所述第一标识取值为第二预设值表示所述报文头的DA字段中不包括所述第二标识,所述第二标识用于表示剩余压缩SID的行数;若所述第一标识取值为第二预设值,则确定所述下一个SID的格式为非压缩格式。5.根据权利要求4所述的方法,其特征在于,所述从所述报文头的源地址SA字段中读取第一标识取值之后,所述方法还包括:若所述第一标识取值为第一预设值,则从所述报文头的DA字段中读取所述第二标识的取值;若所述第二标识的取值大于0,则确定所述下一个SID的格式为压缩格式。6.根据权利要求5所述的方法,其特征在于,所述从所述报文头的DA字段中读取所述第二标识的取值之后,所述方法还包括:若所述第二标识的取值等于0,则从所述报文头的DA字段中读取SID索引参数的取值,所述SID索引参数用于指示压缩SID的位置;若所述SID索引参数的取值为0,则确定所述下一个SID的位置在下一行,且所述下一个SID的格式为非压缩格式。7.根据权利要求6所述的方法,其特征在于,所述从所述报文头的DA字段中读取SID索引参数的取值之后,所述方法还包括:若所述SID索引参数的取值大于0,则判断所述SID索引参数减一的位置是否有SID;若所述SID索引参数减一的位置有SID,则确定所述SID索引参数减一的位置的SID为下一个SID,且所述下一个SID的格式为压缩格式;若所述SID索引参数减一的位置没有SID,则确定所述下一个SID的位置在下一行,且所述下一个SID的格式为非压缩格式。
8.根据权利要求4所述的方法,其特征在于,所述根据所述下一个SID的格式,更新报文头的目标地址DA字段包括:从所述报文头的SA字段中读取第三标识的取值,所述第三标识用于指示下一个压缩头SID对应的段剩余SL参数取值;若所述下一个SID对应的SL取值与所述第三标识相同,则确定所述下一个SID为压缩头SID,并将所述压缩头SID中的所述第二标识的预设值更新到所述报文头的DA字段,将所述压缩头SID中的所述第三标识的预设值更新到所述报文头的SA字段,根据所述DA字段中所述第二标识的更新情况确定所述第一标识的取值。9.根据权利要求8所述的方法,其特征在于,所述根据所述下一个SID的格式,更新报文头的目标地址DA字段还包括:在所述下一个SID对应的SL取值与所述第三标识不相同,且SL减一的情况下,将SL减一时根据所述第二标识的取值情况更新所述第二标识,包括:若所述第二标识没有取值,则不更新所述第二标识;若所述第二标识取值为0,则删除所述第二标识,使得所述第二标识没有取值;若所述第二标识大于0,则将所述第二标识减一。10.根据权利要求1或2所述的方法,其特征在于,所述根据所述报文中的预设标识,解析所述当前SID的下一个SID的格式包括:获取所述报文中预设的压缩标记数组,所述压缩标记数组包括至少一个压缩标记,所述压缩标记为第三预设值表示SL对应的行为非压缩格式,所述压缩标记为第四预设值表示SL对应的行...

【专利技术属性】
技术研发人员:平善明张永康于树松王其华
申请(专利权)人:北京华为数字技术有限公司
类型:发明
国别省市:

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

1