摘要

广域网架构师面临的一个关键挑战是验证他们的网络设计在面对可变的流量需求和故障时提供了可保证的性能。验证是很难的,因为必须考虑指数,可能不可枚举的集合场景。目前的理论工具为网络性能提供了过于保守的界限,因为它们仍然易于处理,但它们没有充分模拟网络在实践中采用的灵活路由策略以适应故障和改变流量需求。在本文中,我们开发了一种优化理论框架,通过对灵活路由适应策略进行建模,从而针对感兴趣的情景推导出最坏情况下的网络性能。我们提出了一种解决由此产生的棘手问题的方法,该方法可以实现比当前技术更严格的网络性能界限。虽然我们的框架是一般性的,但我们专注于限制最坏情况下的链路利用率,以及涉及拓扑设计的案例研究和MPLS隧道,并选择其实际重要性并说明我们框架的关键方面。对真实网络拓扑和交通数据的评估显示了这种方法的前景。

介绍

在为ISP和云服务提供商设计广域网时,以可接受的成本确保可预测的性能至关重要。然而,实现这一目标是具有挑战性的,因为连接失败(都是由于计划维护,以及无法解决的问题,例如光纤和设备故障)[38,50,23],网络流量是可变的[9],并且不断发展[23]。
    验证一个网络能够应付一系列交通条件和故障情况是具有挑战性的,因为要考虑的情景的数量通常是成倍增加的,甚至可能是不可枚举的。例如,一个常见的要求是验证具有N个链路的网络可以服务于f个同时链路故障的所有组合的需求[50,48,37]。要考虑的故障情景的数量是每个需求的N f。而且,这组交通矩阵并不是不可估量的,考虑到所有交通矩阵和故障情况都是令人望而却步的。
    实践与现有理论工具之间存在巨大差距。遗漏路由[40,41,9,49],更一般地说,鲁棒优化[12,14]允许在多个感兴趣的场景中限制最坏情况的性能。然而,为了确保问题的可行性,这些技术做出了一个保守的假设,即网络无法通过重新选择业务流量来适应需求变化[40,41,9,49],或者接受有限形式的适应[50,15]。在实践中,随着需求转移或故障的发生,网络会根据重新路由流量进行调整,这种调整可以使网络操作更有效。此外,软件定义网络(SDN)的出现允许在整个网络范围内进行优化,并有助于部署灵活的重新路由策略[30,31]。
    鉴于理论与实践之间的巨大差距,今天验证网络设计的过程是特殊的,通常需要大量的模拟,这可能是高度耗时的,而且保证了网络性能的可行性。在本文中,我们迈出了第一步,通过提出一个正式框架来提供跨越一系列场景(需求,失败)的网络设计的性能界限。我们框架中的关键新颖之处在于,它可以适应现在实践中使用的自适应机制,用于在失败和需求变化时重新路由业务。
    当考虑灵活的路由策略时,提供强大的性能保证通常需要解决难以实现的非凸(以及常见的非线性)优化问题。我们通过利用非线性优化文献中的尖端技术来解决这些困难[44]。这些技术的一个有吸引力的方面是它们的普遍性,这使得它们成为可能
应用于广泛的网络验证问题。我们证明,这些技术导致在验证问题上比现有的稳健优化中的最先进方法更加紧密,这是一种应用程序超越网络的发现。进一步。在感兴趣的实际环境中,这种联系是紧密的 - 例如,当需求被表示为已知历史需求的凸面组合时[49]。最后,我们展示了如何通过分析个体问题结构来增强技术,从而大幅提高边界的质量。
    具体而言,我们关注链接利用率,这是一个广为接受的流量工程度量标准[9,49,50],它会影响应用程序延迟和吞吐量。我们将我们的框架应用于两个鲜明而实用的案例研究,以说明我们框架的关键方面。案例研究在不确定性(失败和要求)类型和适应类型方面有所不同。具体而言,我们考虑(i)提供最大灵活性和效率的多商品流(MCF)路由[21,9,50],以及(ii)MPLS路由[30,29],其具有更有限的路由灵活性。
    在路由中灵活性更有限。虽然我们专注于验证,但我们的框架可以在不确定的情况下实现具有性能保证的设计综合。我们通过展示我们的方法证明我们的方法如何帮助运营商确定最有效的方法来增强链路容量,同时确保故障时可接受的链路利用率。

我们使用多个实际拓扑[6]和公共交通数据[1]来评估我们的方法。我们的框架在两个案例研究中都表现出比遗忘的公式更好的表现,而在所有失败案例研究的实验中令人惊讶地匹配最佳。此外,我们展示了我们的框架帮助:(i)识别不良故障场景; (ii)确定如何最大限度地增加链路处理故障的能力; (iii)评估设计启发式 - 例如,我们通过常见的隧道选择启发式显示潜力不佳。

3.形式化鲁棒性验证

3.1一般问题结构

设X表示需求的不确定性集合(可能是连续的和不可枚举的),或者给定的网络设计必须经过验证的故障。该设计包括所有参数,这些参数在需求和故障(例如,网络拓扑,隧道选择,中间放置位置)的变化时必须保持不变。对于任何给定的情况x∈X,网络可能会根据§2.2中的描述,通过适当的路由流量进行调整。

令y表示适应场景x时由网络确定的参数。这包括如何路由流量 - 例如,在隧道环境中,y包括捕获流量如何跨隧道分割的参数 - 虽然可能会有其他变量确定,如我们在§3.2中讨论的。形式上,网络验证问题可写为:

    内部最小化捕获了对于任何给定情形x∈X,网络以一种从一组允许策略Y(x)中最小化目标函数F(x,y)的方式确定y。对于完全灵活的路由模型,Y(x)对应于标准MCF约束所允许的策略[21],而对于使用中间策略进行路由,则只允许遍历所需的中间框集的策略。假设网络以最好的方式适应每个x, 外部最大化强有力地捕获了整套情景X中的最坏情况表现。

在本文中,我们关注如§2.2中讨论的使MLU最小化的目标函数F(x,y)。我们将(1)称为验证问题,因为它可以用来验证选定的设计是否符合期望的利用目标。例如,当应用于拓扑设计时,F *> 1表示网络没有足够的配置来处理所有感兴趣的故障和需求。对于任何给定的情形x,内部问题通常很容易解决(线性规划(LP)),因为网络必须在线计算y以适应任何故障或需求变化。然而验证问题是具有挑战性的,因为必须考虑指数级的许多(以及可能不可数的)情景x。

3.2具体的验证问题

接下来我们将一般公式(1)与两个具体的案例研究联系起来,这些案例研究既有实际重要性,也说明了框架的关键思想。
          •第一个案例研究以最灵活的网络适应来验证拓扑设计与故障的关系。
          •第二个例子验证了跨变量需求的隧道选择,网络适应性限制在跨越预选隧道的隧道中。

这些例子说明了我们框架在考虑失败和需求(离散和连续不确定性集)以及不同类型的适应性模型(灵活和更多约束)方面的一般性。但是,我们的框架适用于更广泛的应用,包括同时变化的需求和失败,其他适应模型(如中间件约束)以及其他适应模型和不确定性集合方式(§5)。我们使用符号,其中表示失败情况,表示特定需求,当上下文清楚时删除上标。同样,我们使用y =(r,U),其中r表示流量如何路由,U表示作为结果计算的利用率度量。由于我们关注的是最小化MLU,所以内部问题可以表示为,Y(x)中的约束条件表示要求每条链路的利用率最多为U.我们现在讨论如何约束 Y(x)使之对应我们的案例研究。

                                                图1:为方案x确定路线(r)以使MLU最小化的一般结构(U)。

                                            

                                                  图2:从图1导出的验证问题的一般结构作为单阶段表达式。

在不确定的故障下完全灵活路由。 设是二元变量,如果链接<i,j>∈E(链接集)失败,则为1,否则为0。 由于在这个案例研究中我们没有考虑可变需求,我们让表示从源 i 到目的地 t 的已知需求。 令表示链接<i,j>的容量。 令c表示链接<i,j>的容量。 那么,Y(x)对应于标准的MCF约束[21],可以表示为:

第一个约束确保:(i)对于所有非故障链路,链路<i,j>的利用率最多为U; 和(ii)在失败的链路上不携带任何流量。 第二个约束捕捉流量平衡要求。 具体而言,从节点 i 到目的地 t 的净流出量是 i = t 时的总流量,否则就是d<sub>it</sub>。

隧道限制和不确定的要求。 给定一组预先选择的隧道,让成为一个二进制参数,表示链路<i,j>是否在从源 s 到目的地 t 的隧道 k 上。 设表示总s——t流量,并且表示隧道k上该流量的子集。 那么,Y(x)可以表示为:

第一个约束确保每条链路的利用率都受到U的约束。第二个约束条件表明每个"s——t对"的所有在 k 上的业务总和必须加到该"对"的总需求上

3.3非线性重构

(1)中的验证问题已经以称为 两阶段公式 的形式表示(例如,[15])。 在两阶段问题中,最优的第二阶段变量(y)取决于第一阶段(x)。 我们通过将其重新表达为一个单阶段问题来简化这个问题,其中所有变量都是同时确定的。

在包括我们的案例研究在内的许多网络验证问题中,内部问题是变量y =(r,U)和对应的固定场景下的 x 中的一个LP问题。 这是合理的,因为y的在线修改必须在计算上是有效的。 图1显示了LP的一般结构。注意系数依赖于情景x。 例如,在失效验证案例研究中,是常数,而是x的线性函数。 对于x的特定值,内部问题是LP。

众所周知,涉及最小化目标的每一个LP(被称为原始形式)都可以转化为实现相同目标(假设双重可行)的等价最大化LP(称为双重形式)[19]。 验证问题可以通过以下方式表示为单阶段公式:
1.使用LP二元性将重写为等价的最大化问题。
2.将约束条件x∈X添加到双重形式以捕获所需的一组需求或感兴趣的失败情况。

图2将验证问题的一般结构显示为单阶段制定。 请注意,图1中的变量 r 和 U 已被双变量 λ 和 v 所取代。 此外,x 现在是一个变量,因为问题验证了所有不确定情况下的利用率。
   图3中的公式(F)和(V)分别针对涉及故障(2)和可变需求(3)的案例研究捕捉验证问题。 乍看起来,两种公式都呈现非线性 - (V)中的目标包含和u变量的乘积,而(F)的第二个约束包含变量的乘积。 在§4.2中,我们证明当X是同时包括 f 失败或者更少的链接的情况的集合时,(F)可以写成一个整数程序(IP)。 无论如何,(V)和(F)都是难题(非线性非凸和IP)。

Robust Validation Of Network Designs Under Uncertain Demands And Failures相关推荐

  1. 【论文笔记】Adaptive Reinforcement Learning Neural Network Control for Uncertain Nonlinear System

    Adaptive Reinforcement Learning Neural Network Control for Uncertain Nonlinear System With Input Sat ...

  2. Masking Adversarial Damage: Finding Adversarial Saliency for Robust and Sparse Network

    对抗训练在过度参数化的情况下,需要很高的计算量和大内存运算,为了弥合对抗鲁棒性和模型压缩,本文提出了一种新的对抗修剪方法:掩蔽对抗损伤MAD.通过利用对抗损失的二阶信息和掩码优化以及block-wis ...

  3. 论文阅读-《Towards a Robust Deep Neural Network in Texts: A Survey》

    论文下载地址:https://arxiv.org/pdf/2004.13820v1.pdf 摘要 深度神经网络(DNN)在各种任务(例如图像分类,语音识别和自然语言处理)中均取得了显著成功.但是,研究 ...

  4. Paper:2020年3月30日何恺明团队最新算法RegNet—来自Facebook AI研究院《Designing Network Design Spaces》的翻译与解读

    Paper:2020年3月30日何恺明团队最新算法RegNet-来自Facebook AI研究院<Designing Network Design Spaces>的翻译与解读 导读: 卧槽 ...

  5. Paper之RegNet:《Designing Network Design Spaces》的翻译与解读—2020年3月30日来自Facebook AI研究院何恺明团队最新算法RegNet

    Paper之RegNet:<Designing Network Design Spaces>的翻译与解读-2020年3月30日来自Facebook AI研究院何恺明团队最新算法RegNet ...

  6. Bayesian Neural Network Recent Papers-贝叶斯神经网络相关研究文章

    Bayesian Neural Network Recent Papers-贝叶斯神经网络相关研究文章 Methods Variational Inference (VI) Markov Chain ...

  7. European Journal of Operational Research 2023年第307卷第1期论文目录

    Title:Prelim p. 2; First issue - Editorial Board Title:初步p. 2;第一期-编辑部 Author:Date: DOI:https://doi.o ...

  8. 【ICLR2019】Poster 论文汇总

    ICLR2019 Poster 文章汇总, 共478 papers Convolutional Neural Networks on Non-uniform Geometrical Signals U ...

  9. AAAI-19录用论文清单

    AAAI-19于1月27日在夏威夷召开,今年是33届会议. 会议录用论文清单, workshop16个,tutorials24个. 标题的词云分析: 作者单位词云(按作者人数计算/一篇文章可能有多个作 ...

最新文章

  1. python简介pdf_PDFMiner首页、文档和下载 - Python PDF 解析器 - OSCHINA - 中文开源技术交流社区...
  2. 「Sqlserver」数据分析师有理由爱Sqlserver-好用的插件工具推荐
  3. 902. 最短编辑距离
  4. tomcat在linux下开机启动
  5. php 动态 常量,PHP中的动态常量?
  6. 修改Ubuntu系统的用户名和主机名、创建和删除用户
  7. Aggregated Residual Transformations for DeepNeural Networks -ResNetXt2017【论文理解】
  8. NVIDIA Linux Display Driver 100.14.09
  9. 自考马克思主义原理基本概述【03709】必做选择题
  10. 禁用Windows Defender Antivirus Service
  11. php整数溢出 ctf,PWN INTEGER OVERFLOW 整数溢出
  12. 100部最佳美国影片
  13. JavaFX创建八边形
  14. TP-LINK TL-WDN7200H ubuntu18.04驱动安装
  15. 用python动态演示照片立方体_3分钟在线演示用 python 生成分形图片
  16. 乌班图服务器账号密码忘了,如何在Ubuntu 20.04 LTS服务器中重置Sudo密码
  17. [《关于外婆家的一些记忆》闲笔记事集]2012年1月22日
  18. kingcms php 搜索,KingCMS内容管理系统
  19. java SWT:MouseEvent,KeyEvent中stateMask字段的用法
  20. “谷底”类题目及一些自己的思考

热门文章

  1. C33能干嘛 应该全网第一个css3 3D生成工具
  2. linux安装 msf,Centos下安装msf
  3. 合字研究——看看藏文里面一共有多少个字吧
  4. poi word操作之XWPFTable合并单元格
  5. 腾讯云轻量应用服务器和云服务器的区别是什么?哪个更好?
  6. MySQL数据库表结构导出word文档
  7. prescan和carsim联合仿真中出现的一些问题以及解决方法
  8. MySQL 增量备份与恢复
  9. 用pyautogui进行鼠标移动和点击来解放懒狗的手吧!
  10. python爬取4k小姐姐图片 人生苦短 我用python