基于CDN的抗DDoS攻击的业务稳定性方法和装置与流程

专利2022-05-10  20


基于cdn的抗ddos攻击的业务稳定性方法和装置
技术领域
1.本发明涉及网络安全技术领域,尤其是涉及一种基于cdn的抗ddos攻击的业务稳定性方法和装置。


背景技术:

2.分布式拒绝服务(distributed denial of service,ddos)攻击是一种分布的、协同的大规模攻击方式,其表现形式主要有两种,一种为流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络带宽被阻塞,合法网络包被虚假的攻击包淹没而无法到达主机;另一种为资源耗尽攻击,主要是针对服务器主机的攻击,即通过大量攻击包导致主机的内存被耗尽或cpu被内核及应用程序占完而造成无法提供网络服务。无论是哪一种形式的攻击,都会对服务系统的业务稳定性造成极大的影响。
3.目前针对ddos攻击有很多种防御技术及相关的设备,以拒绝提供服务的形式抵抗ddos攻击,但是对于未能被成功抵抗的ddos攻击仍然会对网络造成伤害,导致业务不可用,从而影响业务稳定性,造成较大的损失。


技术实现要素:

4.本发明的目的在于提供一种基于cdn的抗ddos攻击的业务稳定性方法和装置,以缓解现有技术中存在的因ddos攻击导致业务不可用、影响业务稳定性的技术问题。
5.为了实现上述目的,本发明实施例采用的技术方案如下:
6.第一方面,本发明实施例提供了一种基于cdn的抗ddos攻击的业务稳定性方法,该方法包括:基于当前业务请求失败的信息,向cdn接口发送配置请求;通过上述cdn接口将上述配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略;上述配置域名策略包括多个备用地址;如果上述当前业务请求的地址满足上述配置域名策略,则将上述当前业务请求的地址切换至上述备用地址;基于上述备用地址重新发送上述当前业务请求,以完成上述当前业务请求的业务流程。
7.在一些可能的实施方式中,上述配置域名策略包括:配置域名降级策略和配置域名切换策略;如果上述当前业务请求的地址满足上述配置域名策略,则将上述当前业务请求的地址切换至上述备用地址的步骤,包括:如果上述当前业务请求的地址满足上述配置域名切换策略,则将上述当前业务请求的地址切换至上述备用地址。
8.在一些可能的实施方式中,上述方法还包括:如果基于上述备用地址重新发送的上述当前业务请求为请求失败,并且上述当前业务请求的地址满足上述配置域名降级策略,则将上述当前业务请求的地址降级至上述备用地址,并执行上述备用地址对应业务的业务流程。
9.在一些可能的实施方式中,通过上述cdn接口将上述配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略的步骤,包括:通过上述cdn接口将配置请求发送至nginx服务器;上述nginx服务器通过配置域名策略接口向业务监控报警系统请求配
置域名策略。
10.在一些可能的实施方式中,通过上述cdn接口将上述配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略的步骤之后,还包括:上述业务监控报警系统通过上述配置域名策略接口向上述nginx服务器发送上述配置域名策略;上述nginx服务器将上述配置域名策略转发至上述cdn接口;上述cdn接口接收上述配置域名策略,并判断上述当前业务请求的地址是否满足上述配置域名策略。
11.在一些可能的实施方式中,通过上述cdn接口将上述配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略的步骤之后,还包括:上述业务监控报警系统向上述nginx服务器发送配置域名策略文件;上述nginx服务器将上述配置域名策略文件转发至上述cdn接口;上述cdn接口接收上述配置域名策略文件,并判断上述当前业务请求的地址是否满足上述配置域名策略。
12.在一些可能的实施方式中,还包括:如果上述当前业务请求的地址不满足上述配置域名策略,则将上述当前业务请求返回请求失败的业务流程。
13.第二方面,本发明实施例提供了一种基于cdn的抗ddos攻击的业务稳定性装置,该装置包括:发送模块,用于基于当前业务请求失败的信息,向cdn接口发送配置请求;请求模块,用于通过上述cdn接口将上述配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略;上述配置域名策略包括多个备用地址;切换模块,用于如果上述当前业务请求的地址满足上述配置域名策略,则将上述当前业务请求的地址切换至上述备用地址;执行模块,用于基于上述备用地址重新发送上述当前业务请求,以完成上述当前业务请求的业务流程。
14.第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项所述的方法的步骤。
15.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述第一方面任一项所述的方法。
16.本发明提供了一种基于cdn的抗ddos攻击的业务稳定性方法和装置,该方法包括:首先基于当前业务请求失败的信息,向cdn接口发送配置请求,然后通过cdn接口将配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略;配置域名策略包括多个备用地址;如果当前业务请求的地址满足配置域名策略,则将当前业务请求的地址切换至备用地址;基于备用地址重新发送当前业务请求,以完成当前业务请求的业务流程。该方法结合了cdn的抗大流量访问特性,在ddos攻击的情况下对业务进行域名切换或降级,以缓解现有技术中存在的因ddos攻击导致业务不可用、影响业务稳定性的技术问题,实现了提升业务的抗攻击性和可用性的效果。
附图说明
17.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前
提下,还可以根据这些附图获得其他的附图。
18.图1为本发明实施例提供的一种基于cdn的抗ddos攻击的业务稳定性方法的流程示意图;
19.图2为本发明实施例提供的一种基于cdn的抗ddos攻击的业务稳定性系统的结构示意图;
20.图3为本发明实施例提供的一种基于cdn的抗ddos攻击的业务稳定性装置的结构示意图;
21.图4为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
22.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
23.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.内容分发网络(content delivery network,cdn)是一种构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。cdn能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上,其目的是能够选择离用户相对较近的节点向用户发送用户所需的内容,缓解网络拥挤的状况,提高网站的响应速度。
25.由于web服务系统容易受到ddos攻击,目前针对ddos攻击有很多种防御技术及相关的设备,以拒绝提供服务的形式抵抗ddos攻击,但是对于未能被成功抵抗的ddos攻击仍然会对网络造成伤害,导致业务不可用,从而影响业务稳定性,造成较大的损失。
26.基于此,本发明实施例提供了一种基于cdn的抗ddos攻击的业务稳定性方法和装置,以缓解现有技术中存在的因ddos攻击导致业务不可用、影响业务稳定性的技术问题。
27.为便于对本实施例进行理解,首先对本发明实施例所公开的一种基于cdn的抗ddos攻击的业务稳定性方法进行详细介绍,参见图1所示的一种基于cdn的抗ddos攻击的业务稳定性方法的流程示意图,该方法可以应用于图2所示的一种系统。
28.通常,一个成功的业务请求响应包括:首先由服务器接收客户端发送的业务请求;如果请求成功,则服务器向客户端返回响应内容;然后客户端基于响应内容进入相应的业务流程。其中,业务请求可以是任意一种http业务请求,例如:获取资源、删除资源、提交数据等等。
29.如果系统遭遇ddos攻击则会导致上述请求失败,那么服务器将不向客户端返回响应内容,而是由客户端直接基于请求失败的结果进入相应的业务流程,即因ddos攻击导致业务不可用、影响业务稳定性。
30.其中,请求失败的情况可以包括以下几种:请求超时(即未在规定时间内返回响应结果)、返回的数据错误、没有返回数据。上述任意一种情况均会导致业务逻辑无法继续,因此可以通过cdn寻找新的域名。
31.本技术实施例提出了一种基于cdn的抗ddos攻击的业务稳定性方法,该方法主要包括以下步骤s110至步骤s140:
32.s110:基于当前业务请求失败的信息,向cdn接口发送配置请求;
33.s120:通过cdn接口将配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略;配置域名策略包括多个备用地址;
34.其中,nginx(engine x)是一种高性能的http和反向代理web服务器。
35.s130:如果当前业务请求的地址满足配置域名策略,则将当前业务请求的地址切换至备用地址;
36.s140:基于备用地址重新发送当前业务请求,以完成当前业务请求的业务流程。
37.在一种实施例中,上述步骤s120包括:
38.步骤(1):通过cdn接口将配置请求发送至nginx服务器;
39.步骤(2):nginx服务器通过配置域名策略接口向业务监控报警系统请求配置域名策略。
40.其中,配置域名策略可以是一个接口,业务监控报警系统可以是客户端上用于监控当前的域名发生请求失败情况的系统,一般可以通过对业务日志的监控实现。
41.当配置域名策略作为一个接口时,可以通过业务监控报警系统对该接口进行更新,从而将配置域名策略更新上去;配置域名策略也可以是业务监控报警系统预先配置好的响应文件。
42.作为一个具体的示例,上述方法还可以包括:首先由业务监控报警系统通过配置域名策略接口向nginx服务器发送配置域名策略;然后nginx服务器将配置域名策略转发至cdn接口;再由cdn接口接收配置域名策略,并判断当前业务请求的地址是否满足配置域名策略。
43.或者,作为一个具体的示例,上述方法还可以包括:首先由业务监控报警系统向nginx服务器发送配置域名策略文件;然后nginx服务器将配置域名策略文件转发至cdn接口;再由cdn接口接收配置域名策略文件,并判断当前业务请求的地址是否满足配置域名策略。
44.如果当前业务请求的地址满足配置域名策略,则继续执行上述步骤s130;如果当前业务请求的地址不满足配置域名策略,则将当前业务请求返回请求失败的业务流程。
45.其中,配置域名策略可以包括:配置域名降级策略和配置域名切换策略。在一种实施例中,上述步骤s130包括:
46.步骤(1):如果当前业务请求的地址满足配置域名切换策略,则将当前业务请求的地址切换至备用地址。
47.步骤(2):如果基于备用地址重新发送的当前业务请求为请求失败,并且当前业务请求的地址满足配置域名降级策略,则将当前业务请求的地址降级至备用地址,并执行备用地址对应业务的业务流程。
48.也就是说,在当前业务请求失败的情况下,请求cdn接口时可以接收到域名切换配
置,之后向服务器重新请求可以切换到其他的备用域名,仍然可以获得响应结果。如果上述重新请求仍然失败,或者当前业务请求的地址不满足配置域名切换策略,则可以执行本地策略,直接返回一个空或者降级的响应,从而保证业务流程不会被阻塞。
49.本技术实施例提供的基于cdn的抗ddos攻击的业务稳定性方法,通过主动服务降级和域名切换,结合了cdn的抗大流量访问特性,在ddos攻击的情况下对业务进行主动降级或者域名切换,从而绕过ddos攻击,提升主动抗击ddos攻击的能力,提升业务的被攻击情况下的可用性,整体提升业务的稳定性。可以有效减少ddos攻击情况下业务的不可用时间,提升用户体验,显著提升业务的抗攻击性和可用性。
50.本发明实施例提供了一种基于cdn的抗ddos攻击的业务稳定性装置,参见图3,该装置包括:
51.发送模块310,用于基于当前业务请求失败的信息,向cdn接口发送配置请求;
52.请求模块320,用于通过cdn接口将配置请求发送至nginx服务器,并向业务监控报警系统请求配置域名策略;配置域名策略包括多个备用地址;
53.切换模块330,用于如果当前业务请求的地址满足配置域名策略,则将当前业务请求的地址切换至备用地址;
54.执行模块340,用于基于备用地址重新发送当前业务请求,以完成当前业务请求的业务流程。
55.本技术实施例所提供的一种基于cdn的抗ddos攻击的业务稳定性装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本技术实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。本技术实施例提供的一种基于cdn的抗ddos攻击的业务稳定性装置与上述实施例提供的一种基于cdn的抗ddos攻击的业务稳定性方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
56.本技术实施例还提供了一种电子设备,具体的,该电子设备包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被所述处理器运行时执行如上所述实施方式的任一项所述的方法。
57.图4为本技术实施例提供的一种电子设备的结构示意图,该电子设备400包括:处理器40,存储器41,总线42和通信接口43,所述处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存储器41中存储的可执行模块,例如计算机程序。
58.其中,存储器41可能包含高速随机存取存储器(ram,random access memory),也可能还包括非不稳定的存储器(non

volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
59.总线42可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
60.其中,存储器41用于存储程序,所述处理器40在接收到执行指令后,执行所述程
序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。
61.处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现成可编程门阵列(field

programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。
62.对应于上述方法,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述方法的步骤。
63.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
64.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
65.另外,在本技术提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
66.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
67.应注意到:相似的标号和字母在附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第
二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
68.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
转载请注明原文地址:https://doc.8miu.com/read-1450613.html

最新回复(0)