anycast隧道_一种以anycast方式部署的CDN监控可用性的方法与流程

anycast隧道_一种以anycast方式部署的CDN监控可用性的方法与流程本发明涉及一种CDN节点监控可用性的方法,具体涉及一种以anycast方式部署的CDN监控可用性的方法。背景技术:现有CDN可用性的检测方法,一般通过一些探测点检测目的CDN的可用性,在探测到失败时,认为目的CDN不可用;对于以anycast方式部署的CDN监控,得到的结果是不准确的;因为多个探测点发出的探测数据不一定到达了所有的目的CDN;导致探测数据未到达的CDN实际上没有被监控到。技术实现要…

大家好,又见面了,我是你们的朋友全栈君。

anycast隧道_一种以anycast方式部署的CDN监控可用性的方法与流程

本发明涉及一种CDN节点监控可用性的方法,具体涉及一种以anycast方式部署的CDN监控可用性的方法。

背景技术:

现有CDN可用性的检测方法,一般通过一些探测点检测目的CDN的可用性,在探测到失败时,认为目的CDN不可用;对于以anycast方式部署的CDN监控,得到的结果是不准确的;因为多个探测点发出的探测数据不一定到达了所有的目的CDN;导致探测数据未到达的CDN实际上没有被监控到。

技术实现要素:

本发明提供一种通过双向分析,提高了监控准确性的以anycast方式部署的CDN监控可用性的方法。

本发明采用的技术方案是:一种以anycast方式部署的CDN监控可用性的方法,包括以下步骤:

步骤1:选取探测节点探测目的CDN节点的可用性,每个目的CDN节点至少有两个探测点的探测数据可以到达,将探测结果储存;

步骤2:在目的CDN节点上根据探测日志,得到到达此CDN节点的探测节点,将探测结果储存;

步骤3:根据步骤1和步骤2得到的探测数据,判断一定时间内目的CDN节点到达的探测节点数量N,是否满足N<1,若是则判断此目的CDN不可用;若否则转入步骤4;

步骤4:判断N是否满足N≥2,若是则转入步骤5,若否则输出告警;

步骤5:根据步骤1和步骤2得到的结果,判断一定时间内到达目的CDN节点的探测节点判断该目的CDN节点为不可用的概率n。

步骤6:若n满足设定阈值则判断此目的CDN节点为可用,若否则判断此目的CDN节点不可用,完成CDN节点的监控。

进一步的,包括以下步骤:在假设目的CDN节点可用的情况下,根据步骤1和步骤2得到的探测数据得到目的CDN节点和探测节点的映射关系。

进一步的,所述步骤1中探测节点探测目的CDN节点可用性的方法如下:

S1:获取目的CDN节点的IP信息;

S2:对IP信息进行http探测,判断目的CDN是否可用。

进一步的,所述S2中对IP信息进行http探测过程如下:

设置超时时间,若探测超时或返回报错,则此目的CDN节点不可用;经过多次探测,若大于50%的概率探测结果为不可用,则判定此目的CDN节点不可用。

(1)本发明通过双向分析,保证每个目的节点都有探测点到达,大大提高了监控的准确性;

(2)本发明能够得到目的CDN节点和探测点的网络影射,增加了对网络路径的直观了解。

附图说明

图1为本发明流程示意图。

具体实施方式

下面结合附图和具体实施例对本发明做进一步说明。

如图1所示:一种以anycast方式部署的CDN监控可用性的方法,包括以下步骤:

步骤1:选取探测节点探测目的CDN节点的可用性,每个目的CDN节点至少有两个探测点的探测数据可以到达,将探测结果储存。

根据现有资源在国内各主要城市、不同运营商部署探测程序(尽量选取多个主要城市,覆盖到多个运营商即可),每隔一分钟探测一次目的CDN节点的可用性;选取时保证每个目的CDN节点必须有至少两个探测点的探测数据可以到达(通过在目的CDN查看日志判断是否有探测点到达);探测到的数据是各个单点检测的结果,将探测数据存入数据库,供分析程序把各个节点汇总的数据统一分析。

探测目的CDN节点可用性的过程如下:

获取目的CDN节点的所有IP信息,然后对每个IP进行http探测,可以使用http的head方法进行探测,根据经验值设置超时时间,如果探测超时或返回报错,则认为此次目的CDN节点不可用;通常需要进行多次探测,如果大于50%的概率探测都不可用,则认为此目的CDN节点不可用。

步骤2:在目的CDN节点上根据探测日志,得到到达此CDN节点的探测节点,将探测结果储存。

在所有的目的CDN节点上部署用户访问日志分析的程序,分析目的CDN节点有哪些探测点的探测日志;从日志中分析出到达此目的CDN节点的探测节点,将探测数据存入到数据库中。

步骤3:根据步骤1和步骤2得到的探测数据,判断一定时间内目的CDN节点到达的探测节点数量N,是否满足N<1,若是则判断此目的CDN不可用;若否则转入步骤4。

以分钟为单位分析每分钟各个目的CDN节点到达的探测节点的数目,如果探测节点的数量N小于1则告警此目的CDN不可用;若否则转入步骤4。

步骤4:判断N是否满足N≥2,若是则转入步骤5,若否则输出告警;

如果探测节点的数量N小于2,则告警通知需要增加探测节点的数目,若否则转入步骤5。

步骤5:根据步骤1和步骤2得到的结果,判断一定时间内到达目的CDN节点的探测节点判断该目的CDN节点为不可用的概率n;若n满足设定阈值则判断此目的CDN节点为可用,若否则判断此目的CDN节点不可用,完成CDN节点的监控。

以分钟为单位分析到达每个目的CDN节点的探测节点是否有50%以上判断此目的CDN节点为不可用;如果超过50%则告警此目的CDN不可用;报警的阈值即分析的时间段可以根据实际情况进行修改。

在假设目的CDN节点可用的情况下,根据步骤1和步骤2探测得到的数据,可以得到目的CDN和探测节点的网络映射关系;通过网络映射关系可以对网络路径有直观的了解。

本发明中提到的术语如下:

CDN:内容分发网络,提高用户访问网站的响应速度。

anycast:利用多个as号码在不同的地区广播相同的一个IP段,即不同服务器用相同的IP地址。

本发明首先选择M个不同位置的探测点,保证每个目的CDN节点有至少两个探测点可以到达(防止只有一个探测节点时,如果这个探测节点链路出问题,导致探测不到目的CDN节点);探测到的数据汇总到中心服务器进行分析;同时在目的CDN节点上通过日志分析,得到到达的探测节点信息,发送到中心服务器;中心服务器根据探测节点的探测数据和目的CDN节点的日志分析数据,通过双向分析判断以anycast方式部署的目的CDN是否可用;根据可以实现对目的CDN的实时监控;并且可以给出探测节点和目的CDN节点的网络映射关系。

本发明解决了由于传统的CDN监控方式可能造成探测节点并没有到达的anycast方式部署的目的CDN节点,导致监控的结果不准确的问题;通过双向分析的方法,保证每个目的CDN节点都有探测节点到达,大大提高了监控的准确性;并且可以根据探测数据得到目的CDN节点和探测接待之间的网络映射关系,增加了对网络路径的直观了解。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142365.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 阅读书源最新2020在线导入_书源篇三及6.5.0版本介绍

    阅读书源最新2020在线导入_书源篇三及6.5.0版本介绍书源篇三及6.5.0版本介绍魔幻2020魔幻的2020,开启不一样的生活状态,作为一名技术宅,不出门虽我愿,但看到空荡荡的街头,心中却有种难言的难过与害怕。我不向往繁华。但喜欢车马如龙,街灯繁华。愿祖国强盛人长久,我辈身强振家兴!书源及工作原理书源:一个网站的规则描述文件,可能包括有多个来源;来源:聚合网站包括多个网站的内容,一个来源表示其中一个网站。仓库:存储书源的地方…

  • 虚拟opc服务器软件,几个OPC服务器开发工具比较

    虚拟opc服务器软件,几个OPC服务器开发工具比较1、WTOPCsvr.dll2、我2004年获得WTOPCsvr.dll的代码,这个代码是我学习VC++的启蒙,也是我学习OPC服务器开发的最重要的资料。用VB开发OPC服务器的话,可以说是首选,简单调用WTOPCsvr.dll的API就可以开发服务器。我到现在还是很钟爱这份代码。完全用MFC的方式,通过嵌套类实现COM组件的接口,代码比较清晰。2、Iconics2.11和FactorySoft…

  • 网关gateway详解_网关使用

    网关gateway详解_网关使用见:https://baike.baidu.com/item/%E7%BD%91%E5%85%B3/98992?fr=aladdin及其它。网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。网关是一种充当转换重任的计算机系统或设备。使用在不同的通…

    2022年10月26日
  • MySQL配置文件[通俗易懂]

    MySQL配置文件[通俗易懂]在Windows系统中,MySQL的配置文件为my.ini,在Linux系统中,配置文件为my.cnf,一般存放路径为/etc/my.cnf或/etc/mysql/my.cnf。参考链接:https://segmentfault.com/a/1190000021408999?utm_source=tag-newestMySQL的默认设置性能非常差,仅仅起一个功能测试的作用,不能用在生产环境中,需要对一些参数进行调整优化。每次更改文件后,需要重启MySQL服务,使修改生效。在该配置文件中,可.

  • 微商分销功能不能用了

    微商分销功能不能用了“三级以上分销将会被停止支付功能和封停账号”,日前一则“不利”消息彻底引爆微商的主要阵地——微信朋友圈。一时间关于分销三级变二级、微商寒冬将至的说法再次疯传。自央视曝光部分微商涉嫌传销之后,微信今年接连对微商们“动刀”,强化管理意在行业正规化发展,失去多级分销之后,依靠内容深度揽客的方式成为微商转型的方向。微商连遭重创刚刚过去的一周,微商们再次体验到了人生的跌宕起伏。认证为腾讯微信

  • python处理异常的关键字_如果抛出异常应用哪些关键字

    python处理异常的关键字_如果抛出异常应用哪些关键字一.抛出异常Python用异常对象(exceptionobject)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行。raise语句Python中的raise关键字用于引发一个异常,基本上和C#和Java中的throw关键字相同,如下所示:importtracebackdefthrow_error():…

    2022年10月18日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号