SRv6SID动态压缩编排方法、系统、交换装置、介质及设备与流程

文档序号:37150941发布日期:2024-02-26 17:04阅读:19来源:国知局
SRv6 SID动态压缩编排方法、系统、交换装置、介质及设备与流程

本发明涉及计算机,具体地说是一种srv6 sid动态压缩编排方法、系统、交换装置、介质及设备。


背景技术:

1、srv6采用ipv6标准规范中定义的路由扩展报头,新定义了一种ipv6的扩展报头—srh(segment routing header),该扩展头指定一个ipv6的显式路径,存储的是ipv6的segment list信息,其作用与sr-mpls里的标签类似,头节点在ipv6报文中增加一个srh扩展头,中间srv6节点就可以按照srh里包含的路径信息进行处理和转发,而非srv6节点只需要按照标准的目的ipv6进行传统转发即可。

2、当前,srv6方案基于srh,其sid长度为128bit segment id,具有可路由属性。在大规模网络中(例如5g承载网,流量需要穿过城域网以及ip骨干网),需要逐跳指定转发路径,节点数量较多,使用的srv6sid数量可能超过5个,甚至达到10个。当使用10个srv6 sid时,ipv6 报文头合计长度将超过200字节,但报文的总长度是有限的,过长的报文头会带来更多的传输开销,导致srv6报文里ipv6载荷占比下降,影响转发效率,同时现有的设备由于硬件的限制,只能够读取有限的栈深。

3、在处理srv6报文时,需要读取完整的srh,即获取到全部sid信息再按照要求进行基于sid的转发,sid层数越多,对现网设备的芯片处理能力要求越高,8层sid就达到了128byte的srh长度,对于多层数sid的操作将大大增加芯片复杂度,影响设备性能,增加处理时延。

4、为了解决这一问题,人们提出了g-sid方案和micro-sid方案。

5、g-sid方案提出将sid list中sid的公共前缀移除,仅携带变化的压缩sid,称为g-sid。在替换目的地址时,通过将压缩sid和当前ipv6目的地址之中的公共前缀拼接形成新的sid,继续查表转发,从而实现srv6的压缩。该方案不具备动态压缩属性,为了保留公共前缀,不能对第一条sid进行压缩,影响压缩效率。

6、micro-sid方案的基本思想是,srv6包的每个16字节指令(sid)可以携带一个微程序,该程序由称为micro-sid的标识符表示的微指令组成。当需要在一个srv6数据包中传输多个段(sid)时,这种方法可以大大节省数据包的开销。最常见的配置,micro-sid用2个字节表示,最多6个micro-sid可以用一个常规的16个字节的sid携带。例如,一个5跳的sr路径需要16*5=80字节表示为一个规则的“sr路径”,常规sid需要5个,而用micro-sid方案只需要携带5个micro-sid序列的一个常规的16个字节sid即可。该方案不具备动态压缩属性,且需要建立新的ip地址与micro-sid的映射关系。


技术实现思路

1、为此,本发明所要解决的技术问题在于提供一种srv6 sid动态压缩编排方法、系统、交换装置、介质及设备,可以大大减少段列表的长度,提高sid压缩的灵活性与多场景适用性。

2、为解决上述技术问题,本发明提供如下技术方案:

3、srv6 sid动态压缩编排方法,将srh扩展头中的srv6 sid的位置标识、功能标识和参数细化为前缀映射字段和动态压缩编排字段,然后建立前缀映射字段与节点srv6sid相映射的前缀映射表,并在前缀映射表中引入sl字段和表示在压缩的128位srv6 sid中每个压缩id的横坐标索引的dl字段,且在每个节点均存储有所有节点的前缀映射表,其中,前缀映射字段包括公共前缀、域id和节点id,动态压缩编排字段包括opcode和参数,sl字段表示为剩余分段数;当srh扩展头中srv6 sid层数q超过阈值n,则利用m个动态压缩编排字段组成长度小于或等于128个字节的d-sid,再将组成的d-sid填充至srh扩展头中的segmentlist中,q、n和m均为大于或等于1的自然数;若m个动态压缩编排字段总长度小于128个字节时,则对由m个动态压缩编排字段组成的d-sid进行补0,直至补0后的d-sid长度为128个字节。其中,阈值n通常为4,也可以根据需要进行设定。

4、上述srv6 sid动态压缩编排方法,具体包括如下步骤:

5、s1)判断srv6 sid的层数q是否超过了阈值n,如果超过阈值,则跳转至步骤s2)继续执行,反之,则不对srv6 sid进行压缩;

6、s2)按照srv6 sid在srh扩展头中的顺序以留存动态压缩编排字段的方式对srv6sid进行重新编排,并利用m个动态压缩编排字段组成长度小于或等于128个字节的d-sid,再用d-sid填充至shr扩展头中的segment list中。

7、上述srv6 sid动态压缩编排方法,设置补0用的index参数指引表;在index参数指引表中,参数名称indexj与调取值x相对应,其中,j为大于或等于0的整数,调取值x为需要补0的数量;当利用动态压缩编排字段组成d-sid且所使用的动态压缩编排字段总长度小于128个字节时,自动定向调取index参数指引表中的参数indexj,然后补充相应数量的0。

8、上述srv6 sid动态压缩编排方法,当公共前缀、域id和节点id中任意一个发生变化时,前缀映射表也做相应调整。

9、利用上述srv6 sid动态压缩编排方法进行srv6 sid动态压缩编排的系统,包括:

10、判别单元,用于获取srh扩展头中srv6 sid信息并对srh扩展头中srv6sid数量是否超过阈值n进行判别;

11、数据提取单元,用于提取srv6 sid中的前缀映射字段和动态压缩编排字段;

12、压缩编排单元,用于利用多个动态压缩编排字段重新编排组成d-sid;其中,当m个动态压缩编排字段总长度小于128个字节且m+1个动态压缩编排字段总长度大于128个字节时,利用m个动态压缩编排字段组成d-sid并对d-sid进行补0,直至补0后的d-sid长度为128个字节;

13、前缀映射表生成单元,用于根据前缀映射字段和节点srv6 sid生成前缀映射表;

14、前缀映射表,用于载录前缀映射字段与节点srv6 sid之间的映射关系;

15、srv6 sid复原单元,用于根据d-sid中的动态压缩编排字段和前缀映射表中的前缀映射字段组合复原srv6 sid;

16、判别单元与数据提取单元通信连接,数据提取单元分别与压缩编排单元和前缀映射表生成单元通信连接,压缩编排单元与srv6报文封装单元通信连接;srv6 sid复原单元分别与前缀映射表和srv6报文解析单元通信连接。

17、上述系统,还包括补0用的index参数指引表;在index参数指引表中,参数名称indexj与调取值x相对应,其中,j为大于或等于0的整数,调取值x为需要补0的数量;当利用动态压缩编排字段组成d-sid且所使用的动态压缩编排字段总长度小于128个字节时,自动定向调取index参数指引表中的参数indexj,然后补充相应数量的0。

18、上述系统,前缀映射表生成单元中设置有用于对前缀映射字段进行监测的更新监测模块;当监测到前缀映射字段发生变化时,前缀映射表生成单元则根据变化后的前缀映射字段生成新的前缀映射表,然后将新的前缀映射表发送至进行srv6报文转发的各个节点。

19、交换装置,利用上述srv6 sid动态压缩编排方法对srh扩展头中的srv6 sid进行动态压缩并对srv6报文进行转发。

20、计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法。

21、计算机设备,包括可读存储介质、处理器以及存储在可读存储介质上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法。

22、本发明的技术方案取得了如下有益的技术效果:

23、本发明可以大大减少段列表的长度,提高sid压缩的灵活性与多场景适用性,在一些可能需要在ipv6数据报头中携带大量的字段的srv6服务场景,减少数据报头开销的大小有助于尽量减少对mtu(最大传输单元)的影响,降低长报头对在处理能力有限的遗留硬件设备上启用srv6的影响。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1