飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

微软将开源其对抗云网络中断的秘密武器

  • 2018-08-28
  • 本文字数:1605 字

    阅读完需:约 5 分钟

完全复制或模拟云网络是不可能的,因为很明显——云网络的规模太大了。但是微软攻克了这个难题。

8 月初,微软的研究人员在微软研究院 Faculty Smmit 上接受采访时称,他们设计了一款开放网络模拟器(Open Network Emulator,简称 ONE),可以通过模拟整个 Azure 网络基础架构,来查找最终导致网络中断的错误,故障和其他恶意软件。并且!微软打算开源这项技术

近一年来,微软一直利用 ONE 模拟器测试将要被部署到生产中的更改。研究人员说,微软的网络工程师在使用过程中,从这些更改中找到了数百个 bug,防止了可能出现的重大中断错误。

计算机网络是复杂的玩意儿,因为这样的复杂性也变得很脆弱:网络规模越大,单个错误造成的损害就越大。

回想一下之前各大公有云服务的故障,给用户带来的影响,这样的一款模拟器如果能稳定投入使用,应该能防止不少问题的发生。

ONE 能在软件中模拟所有组成网络的硬件和软件设备,以及它们相互连接的方式。它在 Docker 容器和虚拟机中运行,其构建目的是为了防止变更引起的网络崩溃,在网络变更投入生产之前对它们进行测试和检查。其工作原理是对整个网络进有效的复制。当网络工程师和运营商进行更改时,它们实际上只是对模拟器进行更改,而不是对底层网络进行更改。

“因为它对底层网络的模仿程度如此惊人,以至于你无法区分,”微软研究院移动性和网络总监 Victor Bahl 解释说。如今,当 Azure 网络工程师进行更改时,这些更改首先被应用于 ONE 模拟系统,但是实际上,他们也不知道自己是否对网络做了更改。因为实际上被改变的是模拟器。ONE 能惟妙惟肖地模拟底层的网络,让人无法区分它们。

“我们认为,这个对每个人都那么重要的资源,如果只是为我们所用,那不是一件正确的事。因此,我们想让整个社区都能使用它。”Bahl 在 8 月初的采访中这样说道。

Bahl 解释说,让公众得以接触该技术不仅有助于大型企业提高网络正常运行时间,而且也给学生和研究人员提供了一种工具,他们可以用ONE来模拟超大规模网络,比如微软、谷歌和亚马逊已经建立的网络,并在不访问实际网络的情况下进行创新

同时,这也将给网络产品供应商们提供一种大规模测试新的控制平面软件的方法。

微软还未透露何时开源 ONE。在 GitHub 上搜索 ONE 还没有任何结果。

去年,在 ONE 投入使用 6 个月之后,微软首次对外披露了这个系统 ( https://www.microsoft.com/en-us/research/event/faculty-summit-2018/ )。在当时,它被称为“CrystalNet”,寓意是可以显示网络未来的水晶球。

微软的研究人员当时就已经暗示在考虑向公众发布这项技术。他们于今年 6 月的 Sigcomm 大会上确认以 ONE 的名字将该系统进行开源。

微软的研究人员在提交给 Sigcomm 的 ONE 的描述中提到:“我们的网络是庞大的、异构的、复杂的,并且一直在变动。在这样的环境中,那些由设备故障触发的小问题、错误的设备软件、配置错误、未经证实的管理工具和无法避免的人为错误都会很快引发大型中断。因此,在生产环境中部署更改之前对每个更改的影响能力进行验证,这对维护和提高我们网络的可靠性是至关重要的。”

根据 Sigcomm 的论文所述,到目前为止,Azure 网络工程师已经使用 ONE 超过了一年的时间。他们已经“在 ONE 模拟器上花了数百万小时,并且在变更中找到了数百个错误,防止了可能出现的重大中断。”

2018 年微软 Azure 云计算服务的收入强势增长了 89%,在 Gartner 2018 年的云基础设施魔力象限中占据领导者地位,紧跟 AWS 排第二,并且与 AWS 的差距在缩小。

随着各家公司对云服务的依赖日益增加,确保这些云服务不宕机比以往更重要。但是,无论系统设计地多好,运行它们的工程师有多聪明机警,人类总是偶尔会犯错。而在超大规模网络更改的过程中出现的细微错误会导致大型中断。在超大规模网络中,像这样的中断会影响数百万人,Bahl 说:“我可不希望成为这种灾难的源头。”

如果在模拟系统中,更改没有造成任何错误,就会自动传播到生产网络。

感谢张婵对本文的策划及审校。

2018-08-28 12:322165
用户头像

发布了 199 篇内容, 共 87.8 次阅读, 收获喜欢 295 次。

关注

评论

发布
暂无评论
发现更多内容

再见Navicat,dbeaver才是真香

程序员小毕

Java 数据库 程序员 后端 架构师

Redis跳跃表是如何添加元素的?

小小怪下士

Java redis 面试

程序员用哪一种IDE写代码比较好?

没有用户名丶

【网络安全】堡垒机对于企业的重要性你知道吗?

行云管家

云计算 运维 网络安全 堡垒机

2023银川市等级保护测评中心地址在哪里?有几家?

行云管家

等保 等保测评 等级测评 银川

一图讲清楚公众号扫码关注绑定手机号自动登录

越长大越悲伤

微信 公众号接入

CSS中常用的颜色格式

南城FE

CSS css3 前端 设计

【直播预告】HarmonyOS极客松赋能直播第三期:一次开发多端部署与ArkTS卡片开发

HarmonyOS开发者

HarmonyOS

强化学习从基础到进阶--案例与实践[7]:深度确定性策略梯度DDPG算法、双延迟深度确定性策略梯度TD3算法详解

汀丶人工智能

人工智能 深度学习 强化学习 6 月 优质更文活动 DDPG算法

华为云专家出品《从零到一•Python图像处理入门》电子书

华为云PaaS服务小智

Python 华为 华为云 华为开发者大会2023

Spring Boot配置文件加载顺序详解

2756

快上车,搭乘HUAWEI HiCar驶向未来

HarmonyOS SDK

HMS Core

HTML5 游戏开发实战 | 黑白棋

TiAmo

html html5 6 月 优质更文活动

BI分析能力:当今企业必备核心竞争力

夜雨微澜

构建系列之新一代利器Esbuild(下)

江湖修行

前端 cli 构建 #web esbuild

直播系统源码知识分享:解你忧愁!降低直播延迟的实现

山东布谷科技

软件开发 源码搭建 直播系统源码 直播源码

推荐几款可以大幅提高开发效率的vscode插件 | 京东云技术团队

京东科技开发者

Vue 前端 vscode

强化学习从基础到进阶-常见问题和面试必知必答[7]:深度确定性策略梯度DDPG算法、双延迟深度确定性策略梯度TD3算法详解

汀丶人工智能

人工智能 深度学习 强化学习 6 月 优质更文活动 DDPG算法

STC89C52+AT24C02实现设备开机次数记录

DS小龙哥

6 月 优质更文活动

从Kafka中学习高性能系统如何设计 | 京东云技术团队

京东科技开发者

云计算 kafka 高性能 企业号 6 月 PK 榜

一文搞定PCB元器件的布局布线

华秋PCB

元器件 PCB 布局 PCB设计 布线

Intellij IDEA 插件开发 | 京东云技术团队

京东科技开发者

Java IntelliJ IDEA 企业号 6 月 PK 榜 插件工程

软件测试/测试开发丨Python内置库学习笔记

测试人

Python 软件测试 io 科学计算 内置库

瓴羊Quick BI四度入选魔力象限报告,标志着BI系统的国产化进程加速

对不起该用户已成仙‖

SQL 优化(二):避免隐式转换

hungxy

图文结合带你搞懂GreatSQL体系架构

GreatSQL

greatsql greatsql社区

大语言模型的开发利器langchain

程序那些事

程序那些事 AIGC ChatGPT 大语言模型

MaxCompute湖仓一体近实时增量处理技术架构揭秘

阿里云大数据AI技术

sql 大数据 分布式计算 数据处理 企业号 6 月 PK 榜

安全专家们看过来,易安联EnSRC第二期众测启动

权说安全

G1垃圾回收参数调优及MySQL虚引用造成GC时间过长分析 | 京东云技术团队

京东科技开发者

MySQL G1 GC 企业号 6 月 PK 榜

强化学习从基础到进阶--案例与实践[7.1]:深度确定性策略梯度DDPG算法、双延迟深度确定性策略梯度TD3算法详解项目实战

汀丶人工智能

人工智能 深度学习 强化学习 6 月 优质更文活动 DDPG算法

微软将开源其对抗云网络中断的秘密武器_微软_Yevgeniy Sverdlik_InfoQ精选文章