多端口网卡配置原子提交回滚方法及系统与流程
本发明涉及网络通信,尤其涉及多端口网卡配置原子提交回滚方法及系统。
背景技术:
1、在多端口网卡配置管理领域,通常依赖单次全量提交或逐端口顺序配置的方式实现配置变更。常规做法是由管理员或自动化脚本一次性向所有待配置端口下发完整配置参数,待所有端口配置完成后统一检测整体状态是否与预期一致。另一种常见做法是按照端口编号或预设顺序依次执行配置操作,每完成一个端口即进行局部验证,直至所有端口配置完毕。
2、当多端口之间存在通信依赖关系时,一次过提交所有配置可能导致依赖链路中断,若某一端口配置失败,已配置成功的端口可能已处于错误工作状态,且难以精准定位失败根源,必须回滚全部配置才能恢复系统稳定。逐端口顺序配置方式虽能跟踪单个端口状态,但若后端配置依赖关系复杂,顺序操作无法并行处理无依赖的端口,导致配置效率低下,且回滚时需反向逐端口恢复,无法跳过已成功且独立的配置步骤,造成不必要的配置扰动和性能开销。
3、此外,现有技术整体缺乏对端口间依赖关系的结构化建模,也无法将配置操作按依赖层级进行分层约束,致使一旦配置过程中出现部分失败,系统往往采取全量回滚或基于简单顺序的局部回滚,回滚范围控制粗放,恢复时间显著延长,这些局限制约了数据中心或高可用网络中网卡配置的灵活性与可靠性。
技术实现思路
1、本发明实施例提供多端口网卡配置原子提交回滚方法及系统,能够解决现有技术中的问题。
2、本发明实施例的第一方面,提供多端口网卡配置原子提交回滚方法,包括:
3、获取多端口网卡的配置变更请求,解析所述配置变更请求以识别需变更的端口集合与对应的配置参数,并根据所述端口集合之间的通信依赖关系构建端口拓扑模型;
4、基于所述端口拓扑模型生成分层配置方案,所述分层配置方案将配置操作划分为互不依赖的并行层与存在依赖的串行层,并为每个配置层设置检查点,所述检查点记录各配置层执行前的全局端口状态;
5、按照所述分层配置方案的层级顺序执行配置操作,在每个配置层的所有配置操作完成后进行一致性验证,所述一致性验证通过比对实际配置结果与预期配置结果判断各配置层是否成功;
6、当任一配置层的一致性验证失败时,立即触发分层回滚机制,从失败配置层对应的检查点获取全局端口状态,并仅对失败配置层及其后续配置层涉及的端口执行状态恢复;
7、完成状态恢复后释放所述检查点占用的存储空间,并生成包含失败配置层标识与端口状态差异的回滚报告。
8、解析所述配置变更请求以识别需变更的端口集合与对应的配置参数,并根据所述端口集合之间的通信依赖关系构建端口拓扑模型,包括:
9、从所述配置变更请求中提取端口标识与配置参数,将配置参数按照端口功能分类为流量控制参数与链路状态参数,并建立端口标识与配置参数的映射关系;
10、遍历端口集合以提取各网络端口之间的报文转发规则,根据报文转发规则识别端口间的上下游关系,上下游关系定义为上游端口的输出流量作为下游端口的输入流量,并基于上下游关系构建端口间的有向依赖链;
11、分析配置参数中是否包含聚合配置标识,当检测到聚合配置标识时,将聚合组内的端口标记为协同端口,在协同端口之间建立同步依赖关系;
12、将端口集合映射为拓扑节点集合,将有向依赖链映射为拓扑路径,将同步依赖关系映射为拓扑簇,拓扑簇内的拓扑节点共享配置执行时序,形成包含拓扑节点集合、拓扑路径与拓扑簇的端口拓扑模型。
13、基于所述端口拓扑模型生成分层配置方案,所述分层配置方案将配置操作划分为互不依赖的并行层与存在依赖的串行层,并为每个配置层设置检查点,所述检查点记录各配置层执行前的全局端口状态,包括:
14、从所述端口拓扑模型中提取拓扑路径,沿拓扑路径追踪各拓扑节点的可达性关系,根据可达性关系为各拓扑节点分配传播距离,传播距离表征配置变更从源节点传播到各拓扑节点所需经过的拓扑跨度;
15、识别所述端口拓扑模型中的拓扑簇,将拓扑簇视为单一配置单元,拓扑簇的传播距离取簇内各节点传播距离的最大值,并在拓扑簇内建立配置同步标记以约束簇内节点在同一配置层完成配置;
16、按照传播距离对拓扑节点分层,传播距离相同的拓扑节点归入同一配置层,并根据配置层间的传播距离差值建立依赖深度关系;
17、分析各配置层之间的拓扑路径连通性,存在直接连接则建立直接串行关系,通过中间层连接则建立传递串行关系,无连接则标记为独立并行关系,按照传播距离递增顺序组织配置层,形成包含三种执行关系的分层配置方案;
18、为各配置层创建层级检查点,层级检查点记录各配置层的端口状态快照及其前置配置层的检查点引用关系,形成跨配置层的检查点依赖链。
19、为各配置层创建层级检查点,层级检查点记录各配置层的端口状态快照及其前置配置层的检查点引用关系,形成跨配置层的检查点依赖链,包括:
20、遍历所述分层配置方案中的各配置层,提取各配置层所包含的拓扑节点,采集各拓扑节点对应端口的配置参数与链路状态,生成端口状态快照;
21、查询所述依赖深度关系识别各配置层的前置配置层,检测各配置层与各前置配置层之间是否存在直接拓扑路径连接,存在直接连接的标记为直接依赖层,通过中间配置层连接的标记为间接依赖层;
22、为各配置层的检查点与各直接依赖层的检查点建立直接引用关系,直接引用关系记录直接依赖层的检查点标识与连接拓扑路径;
23、为各配置层的检查点与各间接依赖层的检查点建立间接引用关系,间接引用关系记录间接依赖层的检查点标识及中间配置层的检查点标识序列;
24、将端口状态快照、直接引用关系与间接引用关系封装为层级检查点,按传播距离递增顺序创建各配置层的层级检查点,通过直接引用关系与间接引用关系形成检查点依赖链。
25、按照所述分层配置方案的层级顺序执行配置操作,在每个配置层的所有配置操作完成后进行一致性验证,所述一致性验证通过比对实际配置结果与预期配置结果判断各配置层是否成功,包括:
26、按层级顺序选取当前配置层并向各拓扑节点下发配置指令,当配置指令执行完成后采集各拓扑节点对应端口的配置参数与链路状态,建立端口标识与配置参数的实际映射关系作为实际配置结果,从所述分层配置方案中提取预期端口配置参数与预期链路状态建立预期映射关系作为预期配置结果;
27、遍历实际映射关系与预期映射关系中相同端口标识对应的配置参数进行比对,将比对不一致的端口标识记录为异常端口并构建异常端口集合,同时记录异常端口对应的实际配置参数与预期配置参数形成配置差异记录;
28、根据所述端口拓扑模型追溯异常端口集合中各端口在配置层执行前的拓扑位置,从对应检查点读取各异常端口在配置执行前的端口状态,将配置执行前端口状态与当前端口状态进行对比提取状态变化量;
29、当异常端口集合为空时标记当前配置层为成功状态并继续执行下一配置层,当异常端口集合不为空时标记当前配置层为失败状态,将异常端口集合与状态变化量传递给分层回滚机制。
30、当任一配置层的一致性验证失败时,立即触发分层回滚机制,从失败配置层对应的检查点获取全局端口状态,并仅对失败配置层及其后续配置层涉及的端口执行状态恢复,包括:
31、接收一致性验证传递的异常端口集合与状态变化量,从失败配置层对应的检查点读取全局端口状态,根据状态变化量确定异常端口集合中各端口的回滚目标状态;
32、根据所述分层配置方案的层级顺序识别失败配置层的后续配置层,沿所述端口拓扑模型的拓扑路径从异常端口集合向下游追踪后续配置层涉及的端口,按照层级顺序将异常端口集合与后续配置层涉及的端口进行分层分组构建分层回滚集合;
33、遍历分层回滚集合中各端口提取当前配置参数与链路状态,对异常端口集合中的端口直接使用回滚目标状态,对后续配置层涉及的端口从全局端口状态提取历史状态进行对比,将对比结果按照配置参数差异与链路状态差异进行分类,分别构建参数回退指令与链路重置指令;
34、按照层级顺序的逆向顺序处理分层回滚集合中各分层分组,在各分层分组内先下发参数回退指令后下发链路重置指令,当分层回滚集合中所有端口状态恢复后完成状态恢复。
35、按照层级顺序的逆向顺序处理分层回滚集合中各分层分组,在各分层分组内先下发参数回退指令后下发链路重置指令,当分层回滚集合中所有端口状态恢复后完成状态恢复,包括:
36、将分层回滚集合中各分层分组按照层级序号逆向排列形成处理队列,从处理队列依次提取分层分组执行状态恢复,当前分层分组完成前阻塞后续分层分组;
37、对当前分层分组进入参数回退阶段,提取当前分层分组内各端口的参数回退指令按照配置项生效优先级排序后依次下发,读取端口实际配置状态与参数回退指令中目标配置状态进行校验,校验失败时终止当前分层分组状态恢复,当前分层分组内所有端口校验通过后进入链路重置阶段;
38、在链路重置阶段提取当前分层分组内各端口的链路重置指令按照端口在拓扑路径中位置顺序排序后依次下发,读取端口实际链路状态与链路重置指令中目标链路状态进行校验,校验失败时终止当前分层分组状态恢复,当前分层分组内所有端口校验通过后解除阻塞并触发下一个分层分组状态恢复,直至处理队列中所有分层分组完成状态恢复。
39、本发明实施例的第二方面,提供一种多端口网卡配置原子提交回滚系统,包括:
40、拓扑建模单元,用于获取多端口网卡的配置变更请求,解析所述配置变更请求以识别需变更的端口集合与对应的配置参数,并根据所述端口集合之间的通信依赖关系构建端口拓扑模型;
41、分层配置单元,用于基于所述端口拓扑模型生成分层配置方案,所述分层配置方案将配置操作划分为互不依赖的并行层与存在依赖的串行层,并为每个配置层设置检查点,所述检查点记录各配置层执行前的全局端口状态;
42、一致性验证单元,用于按照所述分层配置方案的层级顺序执行配置操作,在每个配置层的所有配置操作完成后进行一致性验证,所述一致性验证通过比对实际配置结果与预期配置结果判断各配置层是否成功;
43、回滚恢复单元,用于当任一配置层的一致性验证失败时,立即触发分层回滚机制,从失败配置层对应的检查点获取全局端口状态,并仅对失败配置层及其后续配置层涉及的端口执行状态恢复;
44、回滚报告单元,用于完成状态恢复后释放所述检查点占用的存储空间,并生成包含失败配置层标识与端口状态差异的回滚报告。
45、本发明实施例的第三方面,提供一种电子设备,包括:
46、处理器;
47、用于存储处理器可执行指令的存储器;
48、其中,所述处理器被配置为调用所述存储器存储的指令,以执行前述所述的方法。
49、本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述所述的方法。
50、本发明的多端口网卡配置原子提交回滚方法显著提升了网络设备配置变更的可靠性与执行效率。通过分析端口间的通信依赖关系构建拓扑模型,并生成包含并行层与串行层的分层配置方案,能够将无关端口配置并发处理,大幅缩短整体配置耗时,同时确保存在依赖关系的端口配置按顺序执行,避免因配置顺序错误导致的网络中断或端口冲突。在每个配置层设置检查点并记录全局端口状态,使得配置过程具备精确的状态追溯能力,有效降低了配置失败后的人工排查难度。
51、一致性验证机制在每层配置完成后立即比对实际与预期结果,能够在配置故障发生的早期阶段精准定位失败层,避免故障扩散至后续未执行配置层。分层回滚机制借助检查点仅恢复失败层及其后续层涉及的端口状态,无需回滚整个配置流程,显著减少了回滚操作对正常服务端口的影响范围。
52、配置变更失败后自动生成包含失败层标识和端口状态差异的回滚报告,为运维人员提供清晰的故障定位依据,无需手动比对配置日志即可快速识别异常端口集合,本方法在提升配置操作成功率的同时,降低了因配置错误引发的生产事故风险。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com