前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >“数字孪生+自动化”——腾讯基础网络测试进阶之路

“数字孪生+自动化”——腾讯基础网络测试进阶之路

作者头像
鹅厂网事
发布2023-08-21 13:58:36
4870
发布2023-08-21 13:58:36
举报
文章被收录于专栏:鹅厂网事鹅厂网事

1.前言

为应对迅猛发展的腾讯云业务对网络质量的极致追求,腾讯建立了基础网络测试实验室,显著减少了方案缺陷导致的网络故障。但随着基础网络规模的持续增长,生产网络架构复杂度快速升高,需求交付时间和测试环境限制导致的测试不充分问题愈发突出。如何优化测试能力,达到基础网络对质量的极致追求,本文将给出腾讯的答案。

2.基础网络测试体系的持续“进化”

为给全球业务提供低时延、高吞吐的高质量网络服务,腾讯云在全球26个物理地区、70个可用区部署服务器数量超100万,网络中有来自几十个供应商的数百款型号数十万的网络设备,以及多个版本的网络架构。网络故障通常会对业务造成大规模的严重影响,但由于全球业务对互联质量和容量的需求不断提升,基础网络需要持续进行网络扩建、优化改造和升级迭代。当前腾讯基础网络年平均架构版本发布数32个,年变更量达三万,平均每天有90多个变更。在所有严重及以上级别的故障中,与变更直接或间接相关的故障数量和影响时长占比均超过50%。在大规模、高复杂度的网络中,如何在保证业务正常运行的情况下完成网络的安全运营和持续迭代,是基础网络面临的重要难题。

2.1 传统测试阶段

提升网络质量的最佳策略就是防患于未然。腾讯于2018年正式成立了基础网络测试实验室,要求对生产网的全量操作都提前测试验证,实现变更的100%测试覆盖。基础网络测试实验室在过去的几年有效的提升了网络质量,但测试过程中面临两个核心限制:

成本限制。实验室虽然包含了现网中大规模使用的大部分网络设备型号和软件版本,但设备数量有限,在实际测试中只能将生产网络抽象为典型模型,完成相应的策略配置及流量模拟;

效率限制。在测试过程中需要手工调整拓扑和配置,并进行大量功能、性能等测试,测试执行耗时长。为减少项目延期,测试人员通常将同类型的场景和流程进行合并,以减少测试项数量。

这些限制迫使测试人员在测试环境和场景上进行抽象与合并,不可避免的带来漏测风险。

2.2 智能高效测试时代

腾讯基础网络在测试体系中引入了虚拟化仿真环境和自动化测试系统,形成一套虚实结合的自动化测试体系,应对成本和效率的挑战。系统架构如图所示:

图1 基础网络测试系统架构

设备层:底层由形式化仿真、虚拟网元设备、物理设备组成,形式化仿真能通过数学计算提供逻辑配置分析功能,物理环境结合虚拟网元可构建接近现网1:1的测试环境;

通道层:用户或系统通过通道层直接与设备交互,控制设备的拓扑、配置和状态。设备开放多种通道,如CLI可供用户直接使用,而tRPC等向上开放接口供各类系统调用;

系统层:腾讯内部提供各类系统用于测试流程,包括设备管理、流程管理和资源管理。应用通过调用系统API或操作系统,下发控制命令到设备层;

应用层:基础网络包含各类网络测试,如架构演进、流量调度、策略优化等。不同应用根据其特点使用不同的测试方法和环境。

3.基础网络测试体系两大“利器”

3.1 “灵境”:低成本的数字孪生网络仿真

腾讯“灵境”网络验证平台提供了虚拟化及形式化的能力,是对现有测试环境的强力补充,三种测试方法在仿真能力、规模、成本等多个角度各有所长。

图2 各类测试方法优劣势及适用场景对比分析

物理仿真测试使用了与生产网相同的设备与软件,能用于进行包括功能、性能、可靠性等全类型的测试。但成本极高,因此仿真规模较小,仅能构建典型场景;

虚拟化仿真测试提供了包含各大商用厂商设备、腾讯自研网络设备、测试仪等虚拟网元,其软件功能与生产网具有极高仿真度,且仿真成本极低(每台虚拟网元折合成本10元),能构建超大规模拓扑,完成各类方案和设备的功能性验证。只是虚拟网元依赖于厂商的更新,且无法仿真设备的性能;

形式化模拟测试利用基于开源的自研软件系统,将设备配置转化为数学模型辅助分析配置漏洞如路由黑洞、可达性等。该种测试方法不基于设备的软硬件实现,因此仅限于逻辑测试。与仿真测试相结合,可实现逻辑与实现的双重测试验证。

常见典型测试场景与测试方法的对应关系可参考如下分类:

图3 各种测试适用的测试方法分类

3.1.1 虚实结合,取长补短

通过对不同的测试环境进行打通和结合,则能够形成优势互补的一体化环境,然后结合现有运营系统,可实现更高质量更高效率的测试。

图4 虚拟化环境与真实环境打通

● 虚拟化环境与物理环境打通。物理测试环境实际仅能仿真典型场景,而用测试仪进行流量和其他设备路由的模拟,但是测试仪的功能实现无法完全模拟厂商实现行为。通过将虚拟环境与物理环境网络打通,虚实设备真正建立BGP邻居并发布路由,能够实现更贴近生产网络的测试环境。甚至由于虚拟网元的低成本,可实现与生产网1:1复制的虚实结合测试网络,提升网络测试质量。

● 虚拟化环境与运营系统打通。传统的物理环境与生产网差异较大,测试环境的搭建及测试操作需要抽象然后人工操作。腾讯基础网络运营平台集成了设备管理、拓扑监测、流量监测、配置审计、配置自动生成与下发、自动变更等多种功能。引入虚拟环境生成1:1环境后,运营平台的功能能被大量复用于测试环境的搭建及测试流程:生产网的配置备份可直接用于配置分析;生产网的连接关系、设备型号、配置可直接用于生成虚拟环境;运营平台的各类流量监测、变更流程等可直接运行在测试环境中,实现快速精准的验证。

图5 生产网到测试环境自动映射与一键生成

3.2 自动化:高效的系统化测试

随着近几年腾讯研效平台的建设,基础网络实现测试管理平台化和测试执行自动化,大幅提升测试效率,有效保障测试质量。

3.2.1 测试管理系统化

测试管理存在需求来源不清、测试用例难以复用和迭代、测试结果记录规范不统一等挑战。依托于腾讯公司级研效平台(TAPD、智研、工蜂等),基础网络将测试从需求触发到结果分析的全流程进行线上打通,实现系统化及自动化管理。

图6 测试管理体系

3.2.2 测试执行自动化

手工测试阶段,测试人员需要手动修改网络拓扑、网络配置,然后人工分析测试结果。这个过程不仅效率较低,且易出现因人为失误导致的测试遗漏或偏差。而加入自动化系统后,人工构建的标准测试拓扑和配置及与生产网共同形成拓扑配置库用于自动环境构建;针对重复性的测试流程,将测试对应的协议模型、流量模型、设备动作等进行代码编排,实现自动化执行;测试完成后,通过构造分析模型,系统能自动根据测试仪和被测设备的行为监测结果推理给出测试的初步结论。

图7 测试自动化流程

4.最佳实践

4.1 骨干网海外流量工程能力增强

海外带宽资源相对稀缺,成本高昂,导致骨干网络拓扑复杂,容量资源规划面临严苛的成本挑战;同时网络传输距离远,故障场景下的绕行可能会引起超过20%的时延增大进而导致业务受损,网络拓扑设计对质量的影响被放大。

规划设计的关键难点在于难以有效预估复杂拓扑叠加各类故障下的全网变化及影响。复杂拓扑除了需要考虑连接关系、线路资源分布、设备型号、配置、协议实现外,实际的流量矩阵和变化也是重要影响因素。腾讯基础网络测试体系利用虚拟环境实现了生产网1:1仿真和流量模拟:

网络镜像:灵境通过拉取生产网运营系统的实际数据自动生成由虚拟网元组成的网络镜像,仿真度大于95%(针对部分方向连接数量较多场景会根据架构设计规则进行自动简化映射,如与数据中心内部统一交换矩阵CUF 256台设备之间的连接,会根据平面数和链路捆绑数进行自动简化,以解决当前部分商用厂商提供的虚拟OS无法模拟大型框式设备全部端口的问题);

流量回放:拉取生产网的网络采集系统中基于XFLOW和分光技术采集存储的流量数据,在测试拓扑中生成仿真流量,并可动态生成指定时间、指定网络节点范围的流量仿真。

容量规划的目标是以更低的成本为业务提供更低时延更高质量的服务,尤其需要保障在典型故障场景下网络能够快速收敛且质量裂化程度可接受。利用该验证系统可直接模拟各类网络故障场景及扩缩容、迁移方案,并测算在不同故障程度下的的成本、时延和可用率变化情况,帮助设计者决策最优方案。

图8 容量规划设计模型

由于海外线缆资源相对稀缺,尤其海缆维修难度大周期长(基本在1~6个月),维修过程中出现累积多点故障的场景比较常见,因此本示例中设置最高同时故障点数k ≤ 3,峰值带宽利用率≤80%,对比各可选方案的时延和成本变化。维持当前成本不变的情况下,通过优化连接及容量设计,故障场景下平均时延最高可降低18%;当预算提升10%,该数值可提升至35%;我们通过裁撤冗余线路和打通瓶颈点等手段持续优化资源部署,模拟分析多种优化方案以匹配不同地区的资源特点和网络需求。

该规划设计模型构建了现网真实的拓扑和流量信息,并能实时拉取最新数据,遍历所有可行方案,自动化滚动测试。相比传统人工评估方式所需人力约20人天,该模型能在24小时内自动完成所有测试项;同时可根据环境和目标变化灵活调整。在持续数月的建设中,业务部署变化、热点流量突发、重要业务/客户新增需求、拓扑调整等变化时有出现,模型可自动实时采集流量并感知拓扑变化完成方案更新。

4.2 网络变更质量提升

腾讯利用自动化和虚实结合的优势,将虚拟化环境与物理环境、现网运营系统结合,设计开发了完整的自动化预变更系统,将测试嵌入到自动化变更流程中。一个典型变更整体流程如下:

图9 从预变更验证到落地实施全流程示意图

以网络专线带宽扩容变更为例:

1. 运营人员首先在腾讯NetChange自动化变更平台对变更的整个自动化流程进行编排,该流程涵盖了变更前网络状态检查、设备优雅隔离、配置部署、灰度回切、变更后检查及各环节对应的EOP故障紧急回退操作;

2. 预变更系统会自动拉取对应拓扑,运营人员将变更强相关的设备设置为物理设备,其他设备使用自动生成的虚拟化设备;

3. 自动注入对应时间窗口的历史流量,运行自动化变更流程。预变更过程中各运营系统对网络质量、路由变化、设备性能等进行持续监测,形式化仿真系统持续对每次提交的配置进行逻辑分析,并自动生成测试报告;

4. 预变更测试通过后,经运营人员确认,相关流程会流转到生产网进行实际实施。

该系统有效提升了网络变更场景下的测试效率和质量,搭建环境的时间由≥1天缩短为≤2小时,测试覆盖率提升至100%,测试环境满足率接近99%,实际变更异常的业务感知率下降了80%,大幅提升了网络质量。

►►►

5.总结与展望

测试的质量保证了基础网络的质量,从架构设计到落地实施,测试环境越贴近于现网环境、测试覆盖的场景越多,测试的质量就越高。通过引入仿真环境和自动化流程,能有效提升测试的效率和质量。但是,由于网络中设备种类复杂,虚拟网元无法全部匹配;测试种类繁多,自动化测试用例开发需要不断迭代优化,所以目前尚不能实现完全的与现网一比一复刻的网络环境以及完全自动化的测试方式。 而随着自研交换机的不断推广迭代,生产网络最终将统一使用自研交换机,测试就不再依赖于商业设备的网元,加之自动化能力的不断提升,基础网络测试体系必将出现质的提升,为基础网络提供极致高质量和效率的测试能力。

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

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

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

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

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

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

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

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