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

简介: 理论用于实践!华为配置管理研究获SIGCOMM 2022最佳论文奖
在第 36 届 SIGCOMM 2022 会议上,来自华为的研究者受生物学里的同化作用 Assimilation 的启发,首次提出了 SNA (Software-defined Network Assimilation)的概念。


网络是现代社会高效运转的重要基础设施。从运营商网络时代到云数据中心网络时代,大型网络的管理者通常会采购并运维来自多个设备供应商的设备,并持续引进新设备模型和新厂商设备到网络中。高效地将多种设备吸纳入统一的配置管理框架,是支撑海量网络应用的核心基础能力。


然而长期以来,不同供应商的网络设备缺乏统一的配置管理接口。当前的网络配置管理实践十分依赖运维工程师的人力付出,他们需要翻阅多个设备商的大量配置手册,理解各设备商的配置模型,编写规则将设备原生配置命令映射到中心控制器的统一配置模型,该过程非常繁琐且容易出错。


面向网络基础设施需要吸纳新设备的长期而持续的需求,高效准确获取设备原生配置模型和网络统一配置管理模型的映射关系是一个核心挑战。在 8 月 22 日 - 26 日举办的第 36 届 SIGCOMM 2022 会议上,华为的研究者针对这一难题提出了崭新的思路, 受生物学里的同化作用 Assimilation 的启发,首次提出了 SNA (Software-defined Network Assimilation)的概念。研究者推出了助力网络配置管理最后一公里的辅助框架 NAssim,把一个现有网络 “消化、理解、吸收” 新设备的过程尽可能进行了自动化,并提出用网络配置语义模型 NetBERT 直接 “读懂” 配置说明书,把运维工程师从繁琐易出错的工作中解放出来,大幅提升网络运维的效率。目前该工作正在华为数通产品线进行落地试点。

SIGCOMM(Special Interest Group on Data Communication,数据通信专业组)是美国计算机协会 ACM(Association for Computing Machinery)组织的通信网络领域的顶级旗舰会议,每年吸引全球近千名网络与通信领域的顶级专家参加,拥有极高的学术地位。据了解, 本届会议共 281 篇投稿论文,接收 55 篇,接受率约为 19.57%。《Software-Defined Network Assimilation: Bridging the Last Mile Towards Centralized Network Configuration Management with NAssim》是中国地区首篇荣获该会议最佳论文奖的论文


论文地址:https://dl.acm.org/doi/10.1145/3544216.3544244

接下来,我们将对华为推出的配置管理系统 NAssim 进行详细解读。

设计思路和系统概述
首先来看设计思路。SNA(Software-defined Network Assimilation,软件定义网络同化)是指将异构的设备配置模型(包括传统设备和新引入的设备商设备)接纳入现有的集中式控制的网络中的过程,其核心难题是解决多样的设备原生配置模型(Vendor-specific Device Model,VDM)和中心控制器统一配置管理模型(Unified Device Model,UDM)的映射问题。


现有的 SNA 流程十分依赖运维工程师的专家知识进行人工映射,研究者因此试图寻找一种更为高效和自动化的方式加速 SNA 流程,将运维工程师从繁琐且易出错的工作中解放出来。受现有运维实践启发,研究者提出设计一个能够像运维工程师一样能 “读懂” 配置说明书的系统,这个系统能够消化理解配置手册,从中自动提取设备原生模型,并基于手册中丰富的配置语义描述信息,自动推理设备原生配置模型和控制器统一配置模型的映射关系。

为了实现这一设计,研究者需要解决以下几个挑战:

  • 配置手册制式异构性:不同设备商的手册制式没有统一规范,是各设备商自行组织和撰写,这给自动化地 “读懂” 手册造成了挑战。
  • 配置手册的歧义性错误:手册是由人撰写的文档,在文档维护过程中难以避免会出现人工错误,由于配置手册可能包含上万个配置命令说明页面,人工逐一排查是不现实的。自动化地解决这一难点是从手册中提取准确可靠的设备配置模型的关键。
  • 设备原生配置模型和控制器统一配置模型的异构性:随着设备功能逐步升级,通常有大量可选的配置命令和参数,人工进行配置模型映射繁琐且容易出错。需要一个强大的配置语义理解模型进行自动化配置语义推理和映射。


最终,研究者设计了一个助力网络配置管理最后一公里的辅助框架 NAssim, 在设计过程中主要在以下三个方面进行了创新。

首先,NAssim 设计了统一的手册解析框架解决配置手册制式异构性的挑战。研究者基于对一些主流设备厂商手册的深入调研分析,洞察到尽管多设备商配置手册制式不一,但配置手册的基础功能 “向用户展示如何配置设备” 是不变的。因此,手册通常需要描述设备所支持的所有配置命令及其功能、配置参数及其含义描述、配置命令的工作视图和配置样例。基于这一洞察,研究者设计了一种设备商无关的统一格式,用于归一化不同设备商配置手册的制式差异,同时平衡了可扩展性和可读性。研究者进一步设计了测试驱动的流程,保障为主流设备商定制解析器的过程更为高效和可靠。

其次,NAssim 设计了严谨的校验器解决配置手册的歧义性错误的挑战。研究者设计了三个层面的校验。在命令级层面,研究者通过将配置手册序言的语法说明形式化为 BNF 范式,并用解析器生成工具生成语法解析器,对配置命令模版进行自动化校验。在命令互关系级层面,研究者利用配置手册的配置样例推理出配置命令间的层级关系,提取出富含语义信息的设备配置层级模型,并能刻画存在可能歧义的推理。在命令片段级,研究者进一步利用现网具有正确性保障的配置文件,对设备配置模型进行校验。

最后,NAssim 设计了基于配置语义模型的映射器解决设备原生配置模型和控制器统一配置模型的异构性的挑战。研究者设计了配置语义理解 AI 模型 NetBERT 进行自动化配置语义推理和映射,通过语义相似度计算,NetBERT 输出异构配置模型之间的映射推荐,运维专家可进一步审阅确认,提升运维效率。

NAssim 的效果究竟如何呢?研究者分别对厂商设备配置模型构建阶段(VDM Construction Phase)和配置模型映射阶段(VDM-UDM Mapping Phase)进行了详细评估。自动构建阶段的评估表明,NAssim 解析器框架 + 校验器可以成功从四个主流设备商的配置手册中构建出可靠的设备配置模型,在构建过程中,校验器识别出配置手册中超过 200 个歧义性错误。映射阶段的评估表明,经过配置领域适应的 NetBERT 模型达到了最佳的配置映射推荐效果。以 top k 召回率(recall@top k)为指标,在映射华为设备的配置模型到控制器统一模型的实验中,recall@top 10 为 89%,这意味着如果允许推荐 10 个映射,则只有 11% 的情况下,运维工程师需要去翻阅配置手册,提升了 9 倍运维工程师效率。

该研究工作中发布了一个经过校验的多厂商配置语料数据集,以促进后续网络配置管理领域的研究。

NAssim 系统架构:助力集中式网络配置管理最后一公里的辅助框架

SNA(Software-defined Network Assimilation,软件定义网络同化)分为两个阶段:厂商设备配置模型构建阶段(VDM Construction Phase)和配置模型映射阶段(VDM-UDM Mapping Phase)。下图 1 为 NAssim 架构概览。针对上述两个阶段,NAssim 设计了三个核心模块:解析器框架(Parser Framework)、校验器(Validator)和映射器(Mapper)。


在设备配置模型构建阶段,NAssim 的目标是基于配置手册构建出精确可靠的设备配置模型。NAssim 使用了语义增强的树形结构刻画设备的原生配置模型, 树的每个节点代表一个配置命令模版,树的每条边代表配置命令模版之间的层级关系,每个节点链接到一个从配置手册提取出来的配置语义语料。整个结构包含了设备所支持的配置命令集合、配置命令集合的层级关系和配置命令的语义信息。如下图 2 所示,设备配置模型构建阶段的核心设计是 解析器框架(Parser Framework)和校验器(Validator)。


NAssim 解析器框架(Parser Framework)

解析器框架的主要目标是将手册的核心配置信息提取出来,并归一化不同厂商的手册制式到统一的格式以便后续处理步骤。基于对主流设备厂商手册的深入调研分析, NAssim 设计了基于 JSON 的格式(如下表 3 所示)来承载核心的配置信息:设备所支持的所有配置命令及其功能、配置命令的工作视图、配置参数及其含义描述和配置样例。下图 3 展示该解析器框架生成的一个配置语料样本。


如上图 2 所示,由于同一设备商不同设备款型的手册通常有相对统一的制式,因此,在 NAssim 解析器框架中,每个主流设备商原则上只需要定制一次解析器子类。由于配置手册解析位于整个 SNA 流程的最上游,解析的完整性和可靠性十分关键。因此,NAssim 为解析器子类的构建制定了测试驱动的原则,保障为主流设备商定制解析器的过程更为高效和可靠。


NAssim 校验器(Validator)

前述 NAssim 解析器框架的设计原则是尽可能减少解析错误造成的配置信息损失。但配置手册是由人撰写的文档,在文档维护过程中难以避免会出现人工错误,这些源手册的歧义性错误信息会留存在 NAssim 解析器框架输出的解析器语料中。为了减少这些错误信息对后续步骤的影响,NAssim 进一步设计了校验器,对初步解析的配置语料进行了严谨的校验,从而生成精确可靠的设备配置模型。

在命令级层面,NAssim Validator 主要目标是校验配置解析语料中的配置命令模版。配置命令模版对手册的错误信息十分敏感,因为一个包含语法错误的配置命令是不能被网络设备接收和执行的。每本配置手册的序言部分通常会对手册配置模版语法进行说明,例如许多配置手册都采用花括号代表选择分支,中括号代表可选分支,如下图 4 所示。因此,研究者将这些语法说明形式化为 BNF 范式,并用解析器生成工具生成语法解析器,下图 5 展示了可以生成符合图 4 语法说明的语法解析器的代码片段(基于解析器生成工具 pyparsing)。NAssim Validator 调用生成的语法解析器对配置解析语料中的配置命令模版域进行自动化校验,快速识别有问题的部分,提供给运维工程师进行针对性审阅。



相关文章
|
1月前
|
存储 人工智能 知识图谱
基于RAG架构的四标融合企业知识资产体系工程化建设:知识库、场景库、知识图谱与知识链接落地实践
本文提出“四标融合GEO工程方法论”,依托四项国标与ISO 42001,系统构建知识库、场景库、知识图谱、知识链接四大模块,适配RAG架构与大模型检索逻辑,解决企业知识“不可识别、不可检索、不可信赖”痛点,助力AI时代知识资产高效激活。(239字)
阿里云ICP备案服务码是什么?如何生成备案服务码?
阿里云ICP备案服务码是用于备案的验证码凭证,可替代云产品直接完成备案。免费版随符合条件的云服务器等自动生成;付费版100元/个,需绑定有效云产品后使用,有效期一年。阿里云备案官方系统:https://t.aliyun.com/U/YETxGF
|
6月前
|
人工智能 API Android开发
一封律师函引发的连锁反应:OpenClaw 命名风波背后的开源生态博弈
1月底,AI工具Clawdbot因Anthropic律师函三度更名(Clawdbot→Moltbot→OpenClaw),暴露开源生态对商业API的深度依赖。更名引发账号抢注、假币炒作,凸显品牌脆弱性;商标边界之争折射大厂与开发者的权力张力——“开源”常仅限调用层,智能内核仍受制于闭源模型。
699 3
|
8月前
|
机器学习/深度学习 自然语言处理 搜索推荐
搜索引擎是如何进行查询纠错的?
当用户输入错误查询词时,搜索引擎通过查询纠错功能自动识别并修正错误。该过程分为三步:首先判断输入是否存在错误,利用字典或语言模型评估置信度;接着召回候选词,基于拼音、字形或编辑距离生成可能的正确词;最后对候选词打分排序,选出最优结果。结合查询推荐,搜索引擎能更好理解用户意图,提升检索效果。
|
人工智能 自然语言处理 数据库
CHRONOS:阿里通义联合上海交大推出时间线摘要生成框架,适用于大规模新闻数据的时间线生成任务
CHRONOS 是由阿里通义实验室与上海交大联合推出的时间线摘要生成框架,支持开放域与封闭域,通过迭代自问自答机制生成连贯的时间线摘要,适用于新闻、金融、教育等多个领域。
1019 15
CHRONOS:阿里通义联合上海交大推出时间线摘要生成框架,适用于大规模新闻数据的时间线生成任务
|
存储 关系型数据库 Linux
ceph分布式存储
ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储。
898 0
|
缓存 JSON NoSQL
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
element踩坑记录之 element table 获取所点击行数据
element踩坑记录之 element table 获取所点击行数据
|
小程序 Python
用Python代码自动生成文献的IEEE引用格式
用Python代码自动生成文献的IEEE引用格式
用Python代码自动生成文献的IEEE引用格式