一种配置下发故障定位方法、设备及程序产品与流程
本发明属于网络通信与分布式配置管理,具体涉及一种配置下发故障定位方法、设备及程序产品。
背景技术:
1、在卫星网络、大型路由集群或软件定义网络(software defined network, sdn)控制器中,控制中心需要频繁向大量远端设备(如卫星节点、路由器)下发配置信息,例如引流表项、分段路由(segment routing, sr)路径表项、转发表项等。由于配置数量庞大,单次下发可能包含成百上千条表项,而网络链路带宽有限,因此通常采用以下批量配置步骤:1、分片发送:将一个卫星的配置表项拆分成多个分片报文,每个报文携带若干条表项。2、异步并发:同时向多个卫星发送配置报文,使用多线程或异步框架提升下发效率。3、确认机制:每个配置报文要求远端设备返回ack确认报文,其中包含整体处理结果(成功/失败),若失败则可能携带失败表项的索引列表及对应的错误码。
2、现有批量配置方案存在以下缺陷:
3、1、信息断层:控制中心从ack报文中只能获得失败表项在分片报文中的索引(例如第3条表项失败)以及错误码,但无法知道该索引对应的业务含义——例如该表项对应哪个隧道id、哪个目的网段、哪条sr标签路径等。上层业务(如路径计算模块、隧道管理模块)收到失败结果后,无法直接定位到具体是哪条业务配置出了问题。
4、2、重试粒度粗糙:由于无法精确识别失败表项,运维人员或自动化重试机制往往只能对整颗卫星的所有配置进行全量重发,或者对整个分片进行重发,导致大量冗余传输和处理开销。
技术实现思路
1、本发明目的在于提供一种配置下发故障定位方法、设备及程序产品,旨在解决现有技术中控制中心向远端设备批量下发配置的场景下失败时信息断层、重试粒度粗糙等问题,提升配置管理的精细度和运维效率。
2、为实现上述发明目的,第一方面,本发明提供一种配置下发故障定位方法,包括以下步骤:
3、对于每个包含若干条具有索引的配置表项的分片报文,根据其中配置表项的业务内容生成与各索引对应的业务标识,建立分片报文内的索引与业务标识的映射关系,并将所述映射关系与用于标识分片报文的第一信息关联存储于缓存;
4、将所述分片报文异步发送至目标远端设备;
5、接收并解析远端设备返回的确认报文,在所述确认报文携带至少一个失败表项的索引时,依据确认报文失败表项的索引查询所述映射关系得到对应的业务标识,生成包含业务标识的失败详情,所述失败详情用于确定重传的配置表项。
6、进一步地,所述第一信息由远端设备标识和分片报文序号组合而成;所述依据确认报文失败表项的索引查询所述映射关系得到对应的业务标识,包括:
7、从确认报文中解析出所述远端设备标识和分片报文序号,组合构成所述第一信息,并依据所述第一信息从缓存中获取对应的映射关系,查询所述映射关系将所述确认报文中各失败表项的索引转换为对应的业务标识。
8、进一步地,依据所述第一信息从缓存中获取对应的映射关系之后,从所述缓存中删除与所述第一信息对应的映射关系。
9、进一步地,对于每个分片报文,根据其中配置表项的业务内容生成与各索引对应的业务标识,包括:根据配置表项类型,提取配置表项中的业务字段并拼接成具有业务含义的字符串作为所述业务标识。
10、进一步地,所述生成包含业务标识的失败详情,包括:为每个失败索引创建第一失败详情对象,所述第一失败详情对象包括业务标识、失败索引以及确认报文中携带的对应错误码。
11、进一步地,对于每个分片报文,根据其中配置表项的业务内容生成与各索引对应的业务标识,包括:将配置表项的所有业务字段序列化为统一格式的字符串作为所述业务标识。
12、进一步地,所述生成包含业务标识的失败详情,包括:为确认报文中每个用于确定配置表项类型的应答类型创建第二失败详情对象,所述第二失败详情对象包括所述应答类型,以及与所述应答类型关联的各失败索引及对应的业务标识和确认报文中携带的对应错误码。
13、进一步地,所述配置下发故障定位方法还包括:将同一目标远端设备,同一配置批次下所有分片报文生成的失败详情进行聚合并返回给上层业务。
14、第二方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序/指令,所述计算机程序/指令被处理器执行时实现第一方面所述的配置下发故障定位方法的步骤。
15、第三方面,本发明提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现第一方面所述的配置下发故障定位方法的步骤。
16、与现有技术相比,本发明具有如下有益效果:
17、1、精准定位失败表项:本发明方法中,通过在发送前建立分片报文内的索引与业务标识的映射关系,并将所述映射关系与用于标识分片报文的第一信息关联存储于缓存,在收到确认报文后,依据确认报文失败表项的索引查询所述映射关系,将无业务含义的失败索引转换为业务标识,能够直接获得失败配置项的具体业务信息,无需再通过索引反向查询业务数据库或日志,解决了信息断层问题,提升了故障定位效率。
18、2、精细化重试:本发明方法中,将确认报文中各失败表项的索引转换为对应的业务标识,生成包含业务标识的失败详情,用于确定重传的配置表项,能够有效支撑精细化重试,可根据失败详情,仅对失败的表项进行重发,避免了因无法定位失败表项而全量或全分片重发带来的网络带宽和计算资源浪费,在链路带宽珍贵的卫星网络中效果尤为显著。
19、3、协议无关,对远端透明:本发明方法中,映射关系的建立、缓存、查询及索引到业务标识的转换操作均在控制中心侧实现,不修改与远端设备之间的通信协议,确认报文格式保持不变,远端设备无需任何升级改造,兼容现有系统。
20、4、本发明所提供的电子设备以及程序产品与所提供的配置下发故障定位方法具有相同效果。
1.一种配置下发故障定位方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的配置下发故障定位方法,其特征在于,所述第一信息由远端设备标识和分片报文序号组合而成;所述依据确认报文失败表项的索引查询所述映射关系得到对应的业务标识,包括:
3.根据权利要求2所述的配置下发故障定位方法,其特征在于,依据所述第一信息从缓存中获取对应的映射关系之后,从所述缓存中删除与所述第一信息对应的映射关系。
4.根据权利要求1所述的配置下发故障定位方法,其特征在于,对于每个分片报文,根据其中配置表项的业务内容生成与各索引对应的业务标识,包括:根据配置表项类型,提取配置表项中的业务字段并拼接成具有业务含义的字符串作为所述业务标识。
5.根据权利要求4所述的配置下发故障定位方法,其特征在于,所述生成包含业务标识的失败详情,包括:为每个失败索引创建第一失败详情对象,所述第一失败详情对象包括业务标识、失败索引以及确认报文中携带的对应错误码。
6.根据权利要求1所述的配置下发故障定位方法,其特征在于,对于每个分片报文,根据其中配置表项的业务内容生成与各索引对应的业务标识,包括:将配置表项的所有业务字段序列化为统一格式的字符串作为所述业务标识。
7.根据权利要求6所述的配置下发故障定位方法,其特征在于,所述生成包含业务标识的失败详情,包括:为确认报文中每个用于确定配置表项类型的应答类型创建第二失败详情对象,所述第二失败详情对象包括所述应答类型,以及与所述应答类型关联的各失败索引及对应的业务标识和确认报文中携带的对应错误码。
8.根据权利要求1所述的配置下发故障定位方法,其特征在于,还包括:将同一目标远端设备,同一配置批次下所有分片报文生成的失败详情进行聚合并返回给上层业务。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现根据权利要求1-8任一项所述的配置下发故障定位方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现根据权利要求1-8任一项所述的配置下发故障定位方法的步骤。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com