理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖( 四 )


文章图片
在命令互关系级层面 , NAssimValidator利用配置手册的配置样例推理出配置命令间的层级关系 。 设备配置模型的配置命令通常为树状结构 , 但许多配置手册并未显式展示配置层级结构的信息 。 然而 , 解析配置语料中的配置样例部分却隐式包含了层级结构的信息 。 配置样例通常是当前配置命令模版的实例化片段 , 片段中也包含当前配置命令的父命令 。 因此通过配置实例和配置模版的匹配 , 可以推导出配置命令模版之间的层级关系 , 如下图所示 。
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
要实现配置命令层级关系的推导 , 需要一个基础算法能力:确定一个配置实例是否和一个配置命令模版匹配 。 因此研究者分别设计了“配置命令图模型构造算法”和“基于配置命令图模型的配置实例-模版匹配算法”(如下图) , 高效支撑基于配置样例的配置命令层级结构的推理算法 。
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
由于配置手册中存在的歧义性错误 , 上述配置命令层级结构推理算法有时无法完全保证构建出完整层级结构 。 如下图7所示 , 两个工作视图共享一个配置样例 , 因此无法完全确定msdp命令是进入第一个视图的父命令、或是进入第二个视图或者两者皆可 。 因此 , 研究者进一步设计了针对每个层级视图的推理的可靠性的衡量步骤 , 并记录可能存在歧义的推理 , 交由运维工程师进行针对性审阅 。
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
在命令片段级 , NAssimValidator进一步利用现网配置文件 , 对设备配置模型进行校验 。 相比于配置手册中的信息 , 现网配置文件具有正确性保障 。 如下图8所示 , 对于每个配置文件中的每行配置实例和其上层配置命令 , 检查它们是否能在给予配置手册构建的设备配置模型中找到对应的配置模版 , 并构成正确层级关系 。
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
经过解析器框架和校验器 , NAssim系统从配置手册中提取出了富含语义信息的精确可靠的设备配置模型 。
在配置模型映射阶段 , NAssim的目标是将设备原生配置模型和控制器的统一配置模型进行语义映射 。 如下图9所示 , 配置模型映射阶段的核心设计是映射器(Mapper) 。
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
文章图片
NAssim映射器(Mapper)
理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖】前述的解析器框架+校验器生成了富含语义信息的设备配置模型(VDM) , 运维工程师在定义控制器的统一配置模型(UDM)时 , 通常会给其每一配置项添加自然语言描述 , 便于运维团队使用 。 因此 , NAssim映射器的核心设计思想是利用自然语言处理领域的最新技术 , 设计并训练强大的配置语义理解模型 , 基于两个异构配置模型上的配置语义信息 , 进行自动化推理和映射 。
如上图9所示 , 映射器的工作流程分为三个步骤:配置语义上下文提取 , 配置语义编码 , 和配置语义相似度计算和映射 。
在配置语义上下文提取部分 , 对设备原生配置模型 , 实验中发现比较重要的语义信息包含配置参数名字和对应描述、参数所在的配置命令模版和其功能描述以及工作视图 。 对于统一配置模型 , 则可提取每个配置项的描述信息 。 不同配置模型可以提取不同数量的文本信息作为配置语义上下文 。