概述
Shake警报系统
ShakeAlert监听来自21个路线收集器的实时信息反馈,这些收集器是RIPE NCC的路线信息系统(RIS)Project 2的一部分。当数据从这些采集器到达时,它被分组为一分钟的时间bin。然后,我们计算每个bin 中的更新数量,并使用异常值检测算法来确定与最近的其他分钟相比,Bin 中是否有异常多的更新数据。如果观察到这样一个异常bin,我们会生成一个Shake。
为此,ShakeAlert保持了一个滑动窗口,显示在最近w bin 中看到的更新数量,从而避免存储超过w bin的更新信息。一旦ShakeAlert建立了w bin 的历史记录,并且第w+1 bin 已经完成,它将考虑这个新的bin, bw+1,相对于上一个窗口中的计数。虽然有许多潜在的异常检测机制可以使用(例如,修改后的z分数和标准偏差的估计、静态阈值和各种变化检测技术),但我们采用了基于密度的检测机制3 4。
为了执行基于密度的异常检测,我们采用一个半径R和相邻计数k。我们说,如果在最近w分钟内有少于k 个Bin,这些bin 的计数在以新箱的计数为中心的半径R内,那么我们的新时间bin bw+1是异常值。形式上,任何异常值在最后w分钟内都少于k bin,因此|bw+1|-|bi|<R。我们将任何此类异常值称为shake警报,或者简称为shake,并将这些shake的更新计数称为大小。
ShakeAlert的整体检测过程
我们假设的基本依据是,这些事件中最大的是由互联网路由的大规模且具破坏性的变化产生的:承载大量流量的路由可能会被许多下游网络和收集器听到。然而,从根本上讲,有许多涉及大量更新计数的变化并不属于这个类别。例如,我们会撤销Anycast公告的定期维护。
可以进一步观察bin 中的更新内容,以揭示关于网络事件性质的细节。更新中的前缀可用于确定哪些PoP节点和Anycast区域可能受到相应网络更改的影响。我们可以进一步检查在更新过程中观察到的路径,并估计最有可能受到影响的上游网络。最后,我们可以根据警报对入站CDN流量的关键程度来确定警报的重要性。
在我们的CDN部署中,我们使用的窗口w为360分钟,k为5,这样我们就可以避免对通常观察到的每小时行为发出警报。我们还将R作为窗口中观察到的bin大小的第5和第95百分位之间的距离。为了改善操作环境,我们根据更新中观察到的前缀和路径,将bin 进一步细分为PoP特定的时间序列,并分别逐一发出警报。最后,我们考虑了一些具体的调整,例如,根据我们对网络的观察设置最小警报大小。
ShakeAlert正在运行
接下来,我们考虑一个简单的例子,演示shake是如何自然生成的。在2022年9月的上述示例中,我们专注于特定的CDN PoP节点,注意到与我们之前的图相比,沿y轴和线性尺度的更新计数要小得多。在这段时间内,更新计数几乎完全为0,直到它们突然增加,在12:14生成了大得多的更新计数,并在12:20后不久生成了第二个峰值,两者都生成shake。这些更新是由与供应商的连接意外中断引起的。
评估
为了衡量shake是否告警了值得注意的事件,我们采取以下分析。对于2022年夏季30天内生成的每一次shake,我们检查了相应地点的内部指标,以确定我们是否在Shake 生成后10分钟内观察到异常行为。对于我们的异常情况,我们实施以下几点措施:路由器重置(例如,路由器重新启动或以其他方式脱机)、提供商链路上的BGP状态更改(例如,提供商BGP会话退出“已建立”状态)、站点发布的公告的更改,以及在相应站点和至少五个其他站点之间检测到的数据包丢失。
上图显示了30天内这些事件的详细情况。在这里,我们看到所有bin 都有对应的事件,至少有60%的shake有对应的事件,平均80%的shake有匹配的事件。这些发现证实,最大的shake确实与重要且影响流量的事件相对应。然而,他们进一步强调了可能产生这种shake 事件的广泛性,从日常维护到急性故障,不一而足。
结论
ShakeAlert为我们已经很丰富的CDN监控提供了一个新的可视化角度。通过从外部来源获取数据,我们知道它提供了对互联网行为的完全不同的洞察。在我们正在进行的系统工作中,我们正在探索如何将数据与内部监控进一步结合,以提高警报的准确性并实现自动纠正操作。
特别感谢调研团队、网络可靠性工程团队以及所有使这项工作得以完成的内部工程团队。进一步感谢一些路由数据的外部专家,包括Emile Aben、Stephen Strowes和Mingwei Zhang,他们提供了有益的反馈和讨论。
关于 Edgio
Edgio(NASDAQ:EGIO)是全球领先的边缘软件解决方案提供商,通过对内容交付、应用和流媒体平台的无缝集成,提供卓越的安全数字体验。Edgio全球规模的技术和专家服务为全球顶级品牌赋能,覆盖教育、电商、娱乐、现场实况及各种应用,为每一位用户提供最迅捷、最动态和最流畅的数字体验。Edgio致力于提供无与伦比的客户服务,并在每一步都扩展价值。Edgio是首选的合作伙伴,承载了全球约20%的互联网流量,为最受欢迎的节目、电影、体育、游戏、音乐以及即时加载网站提供强大的支持服务。
注:
1. Routeviews,Ris案例;
2. 系统基本上可以使用任何收集器。在这里,我们只关注RIS,因为它的websocket接口具有灵活性。
3. M.Gupta、J.Gao、C.C.Aggarwal和J.Han ,《时间数据的异常检测:一项调查》来自《 IEEE知识与数据工程学报》,2014年。
4. T.Kitabatake、R.Fontugne和H.Esaki. Blt:《用于挖掘bgp更新消息的分类和分类工具》来自《In Proc. of INFOCOM》,第18期,2018年。
原文链接:Edgio Technical Article - DetectingWavesEdgio Technical Article - Detecting
最后
以上就是帅气诺言为你收集整理的使用ShakeAlert检测流量波动(下篇)的全部内容,希望文章能够帮你解决使用ShakeAlert检测流量波动(下篇)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复