本发明涉及cdn动态请求,尤其涉及一种基于节点失败状态反馈优化的cdn动态请求加速方法。
背景技术:
1、cdn动态加速区别于传统静态加速业务,动态加速交互数据无法缓存于边缘节点,需要与源站服务器频繁交互。通过对资源进行动静分离,动态资源部分利用智能选路、协议优化等技术,避开网络拥塞、突发流量、源站服务压力高、服务设备宕机等诸多不利因素导致的丢包、响应慢、服务不稳定等问题,缩短上行访问时间,达到快速回源传输数据的目的。
2、当前的cdn加速技术中对于源站或者父层节点质量探测和可用性探测,主要基于对目的地址和目的端口的探测,探测方式可以是tcp/ip的四层协议也可以是http/https的七层协议。通过设置周期内的最大失败次数,可以把探测的目的地址和目的端口置为不可用,从而减少重试次数。
3、但是在cdn的业务场景中,cdn厂商可能会使用到多线服务器来回源,如果这时源站正常,而由于某个运营商的网络问题造成了回源异常,那么使用上面的探测方法就会把整个客户源站标记为不可用。所以这种探测方式存在误把源站标记为不可用的可能性,而且对于源站来说也不符合使用预期。
4、例如申请公开号为cn113301364a的中国专利提供一种路径规划方法、cdn连接建立方法、设备及存储介质。在本技术实施例中,可根据cdn节点发起的路径规划请求为cdn节点动态规划到源站的回源路径,而且支持多种选路策略,在回源路径为多条的情况下,可从多种选路策略中选择目标选路策略,根据目标选路策略将多条回源路径中的一些回源路径的信息返回给发起路径规划请求的cdn节点,使得该cdn节点可基于收到的回源路径的信息与源站建立连接。其中,在为cdn节点动态规划回源路径的过程中,允许从多种选路策略中选择目标选路策略,可以根据不同的需求或应用场景使用不同的选路策略,从而选择更加符合应用需求或场景的回源路径。
5、例如授权公告号为cn107517228b的中国专利公开了一种内容分发网络中的动态加速方法及装置,方法包括:cdn节点接收配置信息;所述cdn节点根据所述配置信息进行路由探测,得到探测数值;所述cdn节点在收到对需要动态加速的域名的访问请求后,将本节点和其它cdn节点得到的所述探测数值,乘以所述配置信息中相应的权重值后相加得到每条回源路由路径对应的路径值,根据路径值选择回源路由路径进行回源。本技术能够实现根据需求场景调整最优回源路径的选择顺序。
6、以上专利均存在本背景技术提出的问题:在两次最优路径更新的时间间隔内,如果回源链路发生波动,比如发生了源站故障或者父层链路断开等情况,此时动态路径代理服务在探测周期内,不会及时更新探测数据,那么就会导致动态请求发生重试,如果此域名的并发量很大,在探测周期内会产生大量重试,这样一方面造成较差的客户体验,另一方面也会加重cdn平台的压力,为解决以上问题,本技术设计了一种基于节点失败状态反馈优化的cdn动态请求加速方法。
技术实现思路
1、本发明所要解决的技术问题是针对现有技术的不足,提供了一种基于节点失败状态反馈优化的cdn动态请求加速方法,首先动态边缘网关收集回源链路故障信息,其次动态边缘网关根据回源链路故障消息,对回源链路故障状态进行区分,将标记后的状态反馈至边缘节点,并在统计表中进行错误记录统计,最后对统计表中的错误记录进行排查,判断是否需要标记链路不可用,如果需要,将目的端标记为不可用,并从回源链路集中剔除掉包含该目的端的所有选路。
2、为实现上述目的,本发明提供如下技术方案:
3、一种基于节点失败状态反馈优化的cdn动态请求加速方法,包括以下步骤:
4、s1:当动态路径代理服处于无法探测源站或节点质量的时间周期内时,动态边缘网关收集回源链路故障信息;
5、s2:动态边缘网关根据回源链路故障消息,对回源链路故障状态进行区分,将标记后的状态反馈至边缘节点,边缘节点根据状态统计策略将标记后的状态进行状态类型分类,并在统计表中进行错误记录统计;
6、s3:对统计表中的错误记录进行排查,判断是否需要标记链路不可用,如果需要,将目的端标记为不可用,并从回源链路集中剔除掉包含该目的端的所有选路;
7、s4:当客户请求信息到达动态边缘网关时,动态边缘网关根据客户配置的回源算法,在剔除不可用链路的基础上选出一条回源链路进行转发回源;
8、所述s1中所述回源链路故障信息包括源地址、目的地址、目的端口、请求时间和状态码;
9、所述s2中所述回源链路故障状态包括cdn节点间故障状态和cdn-源站间故障状态;
10、所述s2中所述状态类型包括正常状态和错误状态;
11、所述s2中所述状态统计策略具体步骤如下:
12、s2.1:对每段源端到目的端的标记后的状态进行分析,判断状态类型;
13、s2.2:错误状态下,判断是否是首次出错,如果是首次出错,根据错误状态类型,在统计表中新增一条对应类型的错误记录,如果不是首次出错,根据错误状态类型,判断状态记录的时间距离当前时间是否超出统计周期,如果超出统计周期,清除记录并重新统计,如果没有超出统计周期,根据错误状态类型,将对应记录的累计错误次数和连续错误次数加一;
14、s2.3:正常状态下,判断统计表中是否有当前段路径的错误记录,如果有错误记录,将连续错误次数清零并重新统计;
15、所述s2.2中所述错误状态类型包括有响应错误和无响应错误;
16、所述s3具体步骤如下:
17、s3.1:对统计表中的错误记录进行排查,判断有响应错误记录中最大错误次数或连续错误次数是否超出错误阈值,如果超过错误阈值并且在统计周期内,读取此路段的目的端地址,将包含此目的端地址的链路均标记为不可用,如果没有超过阈值并且在统计周期中,则不做链路标记;
18、s3.2:对统计表中的错误记录进行排查,判断无响应错误记录中最大错误次数或连续错误次数是否超出错误阈值,如果超过错误阈值并且在统计周期内,则读取整个路段信息,把包含此故障路段的链路均标记为不可用,如果没有超过错误阈值并且在统计周期中,则不做链路标记;
19、所述s4中所述客户请求信息包括源地址、目的地址、目的端口、请求时间和客户域名配置;
20、一种存储介质,所述存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行一种基于节点失败状态反馈优化的cdn动态请求加速方法;
21、一种电子设备,包括处理器和所述的存储介质,所述处理器执行所述存储介质中所述的一种基于节点失败状态反馈优化的cdn动态请求加速方法。
22、与现有技术相比,本发明的有益效果是:
23、1.本发明通过回源链路的每段源端至目的端的状态反馈,并综合分析计算后,判断出某节点或源站是真实故障或因网络间接性因素引起的故障。针对真实故障的情况,将回源链路中包含该故障目的端的链路剔除,减少重试成本,提高用户体验;
24、2.本发明针对网络间接性因素引起的故障情况,仅剔除包含故障路段的回源链路,最大程度上减少对上游父层或者后端源站误标记为不可用的可能;
25、3.本发明在动态路径代理服务没有及时更新选路信息的时间周期内,能够有效减少重试的成本,减轻对cdn平台的压力。
1.一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,包括以下步骤:
2.根据权利要求1所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s1中所述回源链路故障信息包括源地址、目的地址、目的端口、请求时间和状态码。
3.根据权利要求2所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s2中所述回源链路故障状态包括cdn节点间故障状态和cdn-源站间故障状态。
4.根据权利要求3所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s2中所述状态类型包括正常状态和错误状态。
5.根据权利要求4所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s2中所述状态统计策略具体步骤如下:
6.根据权利要求5所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s2.2中所述错误状态类型包括有响应错误和无响应错误。
7.根据权利要求6所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s3具体步骤如下:
8.根据权利要求7所述一种基于节点失败状态反馈优化的cdn动态请求加速方法,其特征在于,所述s4中所述客户请求信息包括源地址、目的地址、目的端口、请求时间和客户域名配置。
9.一种存储介质,其特征在于,所述存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如权利要求1-8中任一项所述的一种基于节点失败状态反馈优化的cdn动态请求加速方法。
10.一种电子设备,其特征在于,包括处理器和权利要求9所述的存储介质,所述处理器执行所述存储介质中如权利要求1-8中任一项所述的一种基于节点失败状态反馈优化的cdn动态请求加速方法。