前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络孪生、智能仿真——灵境网络验证平台

网络孪生、智能仿真——灵境网络验证平台

作者头像
鹅厂网事
发布2023-04-13 09:10:07
2.8K0
发布2023-04-13 09:10:07
举报
文章被收录于专栏:鹅厂网事

前言

    随着腾讯云业务的不断发展,基础网络承载的业务类型和服务对象呈现极其复杂的多样性,这给网络的高可靠性带来了前所未有的挑战。腾讯自2018年开启基础网络自研之路,从端网协同的DCN(Data Center Network)到应云而生的DCI(Data Center Interconnection),腾讯基础网络在满足极其复杂多样的需求时,仍在极力追求着极致的网络质量。在部署生产网络前,对预期的网络行为进行验证,则是保障生产网络的一个行之有效的手段。然而,传统网络验证方式在面对不断增长的网络规模和业务需求时,却愈发显得力不从心。

传统网络验证的阿克琉斯之踵

    传统的网络验证是指通过在物理实验室搭建拓扑,模拟生产网络行为,从而判断是否符合预期。这种验证方式已在各项网络业务场景中广泛应用,在过去多年里有效的提升了生产网络的质量,然而,也存在如下一些显著的缺陷:

    ● 周期长:由于物理实验环境的复杂性,一个中型架构从搭建物理拓扑到验证完成通常需要数周的时间,在网络特性快速迭代的时代,这一缺陷让传统网络验证方式大大的限制了网络发展。

    ● 规模小:物理实验环境由于成本等限制会构建等比缩小的生产环境,对于大型路由协议验证(例如大型的BGP、OSPF、ISIS等拓扑)及类似的验证场景,小规模拓扑无法有效评估路由收敛的效果。

    ● 种类少:生产网络中物理设备由各类异构设备组成,而物理实验环境无法支持所有的异构设备,尤其是海外供应商的设备,导致涉及这类拓扑的验证场景很难在物理实验室构建。

    因此,网络验证方式亟需一场变革才能满足海量网络高速发展的需求。

灵境-网络验证平台的宙斯之盾

    腾讯网络团队应势打造了新一代的网络验证平台—灵境,不同于传统物理验证方式,其通过两类不同性质的验证引擎对网络行为进行验证,可以达到以下效果:

    ● 一键式极速验证:无需繁琐物理建设,保证千台级别的拓扑验证任务24小时内完成。

    ● 1:1孪生网络:验证平台对接生产网络,基于虚拟化技术,构建1:1等比例拓扑,同时支持覆盖现网90%以上的异构设备镜像,以保证拓扑的高度仿真。

    ● 网络配置全分析:汇总所有待验证网络设备的配置文件,支持异构配置,亿行级配置显式和隐式错误分析,有效分析因配置引发的网络故障。

    ● 时域空域无限制:验证平台可以打破时空限制,不仅可以验证当前生产网络中任意地点的拓扑,而且可以回溯过去任意时刻、任意位置的故障。

网络验证平台主要由应用中心和验证引擎组成,如下图所示。

图1 网络验证平台架构

应用入口:提供各种验证场景的应用入口,目前主要支持网络架构、网络测试、网络设备研发调测、网络变更以及网络故障演练等验证场景。验证平台对于不同应用场景开发了不同的验证功能,对于架构类验证,重点提供架构的拓扑设计、配置修改以及验证分析等功能;对于网络测试,除了提供拓扑设计类功能之外,还提供了与物理设备混合组网、对接自动化测试平台等功能;对于变更类验证,重点提供对接网管系统,构建与待变更区域1:1虚拟拓扑的功能;对于故障演练,重点对接控制器中保留的故障数据,将故障时的拓扑、配置及流量拉入到验证平台,借助仿真验证引擎复现当时故障场景。

● 任务编排:承接应用层下发的各种验证任务,并从网管系统或者控制器中拉取各种拓扑数据、配置数据和流量数据,并根据场景对数据执行归一化等预处理,完毕后下发至验证引擎。为配合不同的验证场景,任务编排层还负责向验证引擎注入流量、路由以及构造交互协议等操作,此外,还可以借助网管平台既有的网络分析组件,分析验证过程中的网络行为是否符合预期。

验证引擎:平台的核心为验证引擎,分为静态模拟引擎(Static Simulation Engine)和动态仿真引擎(Dynamic Emulation Engine),其中静态模拟引擎分析静态的生产网络设备配置文件,搜寻配置错误;动态仿真验证引擎构建生产网络的孪生网络,验证网络行为。

静态模拟验证引擎

    静态模拟验证引擎使用形式化配置验证,通过构建数学模型,将静态的设备配置转化为数据模型,并用SMT(Satisfiability Modulo Theories)求解器在控制平面和数据平面搜寻符号,分析出配置错误,例如路由黑洞、路由不可达等。借助开源的模拟验证引擎,并对其单机运行特性进行分布式的改造,让其更好的适应腾讯的网络研发环境。

    为了适配不同商业设备和自研设备的配置文件,我们设计了一套标准归一化机制,将所有商业设备厂商和自研设备的配置文件全部转化为抽象的归一化格式,从而降低引擎对不同配置格式的适配量,有效扩大了其在现网的使用范围,可以在几分钟内分析完上千台的设备配置分析。

图2 静态模拟验证引擎

动态仿真验证引擎

    动态仿真验证引擎借助私有云计算资源构建生产网络的孪生网络,利用高仿真度的虚拟网元镜像仿真网络的控制平面、转发平面以及管理平面,同时支持孪生网络和生产网络无感知互联。动态仿真验证引擎的结构示意图如下图所示。

图3 动态仿真验证引擎

    ● 物理服务器集群:为动态仿真验证引擎提供物理链路和基础算力。

    ● 孪生网络:生产网络的虚拟网络,由各种异构虚拟网络设备和虚拟链路组成,其控制和转发行为和生产网络中的物理设备完全一致。

    ● 仿真引擎编排器:编排器负责管理孪生网络的整个生命周期,包括创建虚拟设备、构建虚拟链路、下发设备配置、启动虚拟设备等等。

    ● 验证中心:通过路由采集、路由注入、流量分析、协议构造等组件完成对孪生网络的网络行为的验证。

    静态模拟验证引擎和动态仿真验证引擎一同组成了网络验证平台的宙斯之盾,为腾讯基础网络保驾护航。

网络验证实战

变更验证

    验证背景:在腾讯某地域数据中心中CUF(Campus Unified Fabic)层有三个平面,其中第三个平面CUF-3链路已经启用,但尚未引入流量。如果直接在生产网络中执行引流的变更操作,由于配置、软件版本等潜在的错误,可能会导致路由震荡,业务流量丢包等现象,为确保变更无误,需要事先验证变更是否存在风险,验证拓扑如下图所示。

图4 网络变更验证拓扑示意图

    传统验证流程第一步是建设组网,第二步是配置变更,第三步是流量验证,驻场工程师和测试工程需要全程参与,验证完毕后有时还需要拆除既有的验证拓扑,整个过程耗时耗力耗成本。

    而灵境验证平台仅需运营工程师在平台提交验证任务,即可完成托管式验证。验证引擎首先收集配置信息输入静态模拟验证引擎,检查配置信息,而后动态仿真引擎根据拓扑描述文件构建虚拟孪生拓扑并下发配置,最后应用中心进行路由采集,计算路由收敛时间,还可以构造流量完成流量测试。验证平台在验证成本和验证效率方面明显优于传统验证,基于验证平台可以搭建与生产网络1:1的虚拟拓扑,验证更加充分,因此验证质量大多数情况下也优于传统验证。

● 建设时间:灵境验证平台仅在分钟级别时间内便可完成CUF单平面的虚拟拓扑建设,半小时以内完成CUF三平面的虚拟拓扑建设,相比传统物理组网建设,更好地保障了变更验证的时效性。

● 建设成本:采用物理服务器搭建私有云,每台虚拟网元成本折合下来仅数十元,更重要的是,私有云资源可以弹性分配、重复利用。相比动辄数百万元的物理设备,极大降低了验证拓扑的建设成本。

● 验证质量:虚拟拓扑为生产网络的1:1拓扑,而传统物理验证拓扑一般为几十比一的等比缩小拓扑,对于涉及大规模复杂路由规则的变更场景,等比拓扑的验证可靠性要远高于缩小比例的拓扑。得益于腾讯的网络自研行为,虚拟网元的网络行为有极高的仿真度(当前控制面仿真度大于95%,转发面的仿真度大于80%),因此可以打造一个与生产网络保持1:1的高保真仿真验证引擎。

SDN控制器调参

    网络验证平台支持和SDN控制器对接,将控制器采集到的生产网络信息注入到网络验证平台,借助虚拟测试仪表可以回放过去任意时刻的流量,实现训练控制器调度参数的目的。

    业务背景:骨干网络控制器由于最优等价链路多,链路带宽分布不均,热点线路冗余带宽不足等原因,会带来诸多复杂的流量调度行为,其中的非最优调度行为会直接影响业务性能。因此需要周期性持续优化调度参数才能适应流量模型,降低调度频率。

    传统物理实验室参数训练拓扑非常小,而且流量、带宽模型单一,从而导致参数准确度大打折扣,再加上控制器软件在生产网络和试验拓扑之间反复升级、训练的迭代操作,导致训练周期非常长,面对业务规划复杂的场景无法灵活开展全面演练。而网络验证平台支持1小时内构建骨干网任意单平面的完整拓扑,可以提供几百种流量模型。通过压缩生产网络流量,可以实现延迟5分钟的同步训练和无次数限制的回放演练。

    多个孪生网络可以同时稳定复现生产网络调度情况,对比验证平台内的调度量和生产网络的调度量,经过同一天流量数据多次验证,偏差小于2%,使用不同时间段流量数据多次验证,偏差小于3%,验证平台内的还原度足够满足参数训练需求。

图5 孪生网络与物理网络调度对比

    为了减少持续优化的迭代周期,验证平台利用生产网络流量参数在孪生网络上开展参数调优。如下图所示,控制器借助孪生网络训练参数后,总调度数量下降>90%,备选路径调度数下降>80%,可以看出,新的参数组合有效减少了无效调度。更重要的是,整个训练周期由物理环境中训练所需的1年左右缩短至孪生网络中的<2月,大幅减少了针对特定流量模型训练调度参数的时间。

图6 孪生网络参数训练结果示意图

容量评估

    骨干网SDN控制器的调度参数组合稳定下来之后,可以借助网络验证平台继续评估骨干网络中各个节点之间的链路容量,从而可以预估某条链路发生故障后剩余链路能否承接切换过来的流量,从链路风险的角度综合考量骨干网的健壮性。

    评估背景:如下图所示,验证平台根据骨干网的拓扑信息构建1:1的孪生网络,包括多条冗余链路以及超二十种运营商线路。仿真引擎的验证中心构造数十种类型的流量和四十多种中断逻辑的中断事件注入孪生网络,并通过自动化流水线的方式快速完成评估。

图7 容量评估拓扑示意图

 相比传统实验室内基于物理拓扑的容量评估,验证平台构建的孪生拓扑更加全面、灵活,可以覆盖骨干网100%的节点区域以及设备类型,自动触发链路中断、链路拥塞等网络事件,而无需手动变更拓扑。     如下图所示,拓扑调整就绪后可通过自动化用例进行容量风险判断,并检查是否有高优先级流量绕行等调度风险,平均每个用例仅需20分钟即可完成。评估用例集为所有事件逻辑和流量类型的组合,在24小时内,自动化容量评估流水线即可完成所有评估测试。根据测试结果进行参数调整,最终实现在各类容量风险情况下,仅最低优先级流量少量丢包(满足业务需求),中高优先级流量100%不丢包,做到真正的容量风险可控。

图8 容量评估流程示意图

研发测试

    在自研网络设备的研发过程中,对新特性、新功能、新设备进行完备的自动化测试是必不可少的步骤,验证平台可以为研发的自动化测试提供虚拟测试平台,多张虚拟测试拓扑并行开展测试,可以有效缩减研发测试时间。

    测试背景:研发类的功能、性能测虽然拓扑规模较小,但是各类测试指标繁杂,数目庞大,物理实验室能提供的测试拓扑有限,各项指标只能排期分批测试。如下图所示,验证平台构建多套由不同类型设备组成的虚拟测试拓扑,多个软件版本并行测试,最终将测试结果汇总至测试中心,收集错误日志,不断回滚测试。

图9 验证平台辅助自动化测试示意图

    相比传统实验室的物理拓扑测试,验证平台提供的虚拟测试不仅可以提供更多的测试资源,而且在成本、测试覆盖率等方面也是表现优异,如下表所示。

图10 虚拟测试平台与物理测试平台测试资源对比

    ● 拓扑数量:每套虚拟测试拓扑的成本不足相同物理测试拓扑成本的百分之一,因此可以构建足够多的测试拓扑开展并行测试,平均可以缩短将近10%的版本研发周期。

    ● 每日设备类型覆盖率:得益于数量足够多的虚拟拓扑,以及平台完备的虚拟网元镜像仓库,虚拟测试平台仅在一天内就可以完成所有设备类型的测试。

    ● 每日自动化用例覆盖率:虚拟测试平台支持100%的功能测试以及超过90%的性能测试,其中性能测试是通过将待测设备用物理设备代替,虚拟拓扑和物理设备相结合来完成测试。

    由于虚拟测试拓扑的超低成本,验证平台可以为每一位研发人员提供一套独立的虚拟测试拓扑,尽可能在研发阶段发现问题并解决。

►►►

总结

    质量是网络的生命线,灵境网络验证平台正是为守护腾讯网络质量而生。随着线上业务对网络质量要求愈发严苛,我们将从提升验证能力和拓展验证场景两个维度继续优化迭代此验证平台,为提升网络质量走出一条独具特色且行之有效的网络验证之路。

    在将来,随着AI技术的快速发展,尤其是近期以ChatGPT为代表的各种AIGC产品的涌现,标志着AI对现实世界的理解能力取得了重大突破,这也为网络智能化提供了广阔的想象空间:利用生产网络中捕捉的网络信息,可以在孪生网络中逐一复现这些网络行为,从而为AI模型提供海量高度逼真的网络样本和网络参数,辅助训练AI模型“学习”和“理解”网络,进而智能操控网络;同时还可以为AI模型提供试验场,为AI模型提供真实的网络反馈。我们也期待早日出现网络界的“ChatGPT”,让网络真正迈入智能化的星辰大海。

欢迎关注公众账号“鹅厂网事”,我们给你提供最新的行业动态信息、腾讯网络最接地气的干货分享。

注1:凡注明来自“鹅厂网事”的文字和图片等作品,版权均属于“深圳市腾讯计算机系统有限公司”所有,未经官方授权,不得使用,如有违反,一经查实,将保留追究权利;

注2:本文图片部分来自互联网,如涉及相关版权问题,请联系:sandyshuang@tencent.com或 mianyang@tencent.com

/

/

鹅厂网事/

分享鹅厂网络的那些事

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-04-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 鹅厂网事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档