一种数据处理方法及装置与流程

文档序号:24046704发布日期:2021-02-23 19:03阅读:47来源:国知局
一种数据处理方法及装置与流程

[0001]
本申请涉及通信领域,尤其涉及一种数据处理方法及装置。


背景技术:

[0002]
目前,分布式拒绝服务(distributed denial of service,ddos)攻击依然是破坏网络可用性,造成网络安全问题的一个主要因素。传统技术中,通常采用黑洞技术或流量清洗技术防御ddos攻击。但是,网络设备采用黑洞技术将非法流量和合法流量均导向黑洞,无法区分合法流量和非法流量。虽然,网络设备采用流量清洗技术可以区分合法流量和非法流量,但是区分合法流量和非法流量的时延较长。因此,如何在防御ddos攻击时,快速地区别合法流量和非法流量是一个亟待解决的问题。


技术实现要素:

[0003]
本申请提供一种数据处理方法及装置,解决了如何在防御ddos攻击时,快速地区别合法流量和非法流量的问题。
[0004]
为达到上述目的,本申请采用如下技术方案:
[0005]
第一方面,本申请提供了一种数据处理方法,该方法可应用于终端,或者该方法可应用于可以支持终端实现该方法的通信装置,例如该通信装置包括芯片系统,方法包括:接收第一可验证标识和第一密钥;根据第一可验证标识和第一密钥生成第一验证码,在发送第一数据包时,将第一可验证标识和第一验证码包含于第一数据包中。
[0006]
本申请实施例提供的数据处理方法,通过为访问目标设备支持运行的服务的终端分配可验证标识和该可验证标识对应的密钥,终端在发送的数据包中携带可验证标识和验证码,使得网络设备可以根据可验证标识和验证码对合法数据包和非法数据包进行识别,只有合法数据包才会被转发。相对于黑洞技术,本申请实施例提供的数据处理方法能够确保合法流量(已注册终端发送的流量)被转发,网络设备过滤大部分的ddos攻击流量。相对于流量清洗技术,本申请实施例提供的数据处理方法能够降低深层协议解析带来的处理合法流量的延迟。
[0007]
在一种可能的实现方式中,根据第一可验证标识和第一密钥生成第一验证码,包括:根据第一可验证标识和第一密钥、以及第一位置定位符、第二位置定位符和动态参数中至少一个生成第一验证码,第一位置定位符用于指示目标设备,第二位置定位符用于指示第一终端,动态参数是随时间可变的。从而,通过增加第一验证码的复杂度,提升第一验证码的安全级别,避免泄漏第一验证码。
[0008]
其中,在一些实施例中,可以获取目标设备的静态标识,目标设备的静态标识包括第一位置定位符,从而,以便于第一终端生成第一验证码。
[0009]
在另一种可能的实现方式中,第一可验证标识和第一验证码设置于第一数据包包含的网络层协议头部中或传输层协议头部中。
[0010]
在一些实施例中,第一可验证标识和第一验证码设置于第一数据包包含的网络层
协议头部中的互联网协议(internet protocol,ip)地址字段内。例如,第一可验证标识和第一验证码设置于第一数据包包含的网络层协议头部中的目的ip地址字段内。又例如,第一可验证标识和第一验证码设置于第一数据包包含的网络层协议头部中的源ip地址字段内。从而,由于第一可验证标识可以内嵌在ip地址中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作。
[0011]
需要说明的是,目的ip地址可以是指ipv6数据报中的目的ip地址。源ip地址可以是指ipv6数据报中的源ip地址。目的ip地址可以是指ipv4数据报中的目的ip地址。源ip地址可以是指ipv4数据报中的源ip地址。
[0012]
在另一些实施例中,第一可验证标识和第一验证码设置于第一数据包包含的网络层协议头部中的下一个首部字段内。从而,由于第一可验证标识可以内嵌在下一个首部字段中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作。
[0013]
在另一些实施例中,第一可验证标识和第一验证码设置于第一数据包包含的网络层协议头部中的可选字段内。
[0014]
在另一些实施例中,第一可验证标识和第一验证码设置于第一数据包包含的传输控制协议(transmission control protocol,tcp)头部中的选项字段内。从而,由于第一可验证标识可以内嵌在tcp首部中,使得网络设备可以直接在传输层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作。
[0015]
第二方面,本申请提供了一种数据处理方法,该方法可应用于网络设备,或者该方法可应用于可以支持网络设备实现该方法的通信装置,例如该通信装置包括芯片系统,方法包括:在接收到第一数据包后,获取第一数据包包括的第一可验证标识和第一验证码、以及获取第一可验证标识对应的第一密钥;并根据第一可验证标识和第一密钥生成第二验证码;判断第二验证码和第一验证码是否相同,当第二验证码和第一验证码相同时,确定第一数据包合法;当第二验证码和第一验证码不相同时,确定第一数据包不合法。
[0016]
本申请实施例提供的数据处理方法,通过为访问目标设备支持运行的服务的终端分配可验证标识和该可验证标识对应的密钥,终端在发送的数据包中携带可验证标识和验证码,使得网络设备可以根据可验证标识和验证码对合法数据包和非法数据包进行识别,只有合法数据包才会被转发。相对于黑洞技术,本申请实施例提供的数据处理方法能够确保合法流量(已注册终端发送的流量)被转发,网络设备过滤大部分的ddos攻击流量。相对于流量清洗技术,本申请实施例提供的数据处理方法能够降低深层协议解析带来的处理合法流量的延迟。
[0017]
在一种可能的实现方式中,方法还包括:若确定第一数据包合法,向目标设备转发第一数据包。从而,使合法的数据包到达目标设备。
[0018]
在另一种可能的实现方式中,获取第一可验证标识对应的第一密钥,包括:根据第一可验证标识和第二密钥生成第一密钥,第二密钥为对应第一服务的密钥,第二密钥用于衍生可访问第一服务的已注册终端的密钥。
[0019]
具体的,可以通过以下方式获取第二密钥。
[0020]
在一些实施例中,根据第一位置定位符获取第二密钥,第一数据包还包括第一位置定位符,第一位置定位符用于指示目标设备。
[0021]
在另一些实施例中,根据第一位置定位符获取第三密钥,根据第三密钥和第一服务标识生成第二密钥,或者,根据第三密钥和第一位置定位符生成第二密钥,其中,第三密钥用于衍生对应服务的根密钥,第一数据包还包括第一位置定位符和第一服务标识,第一位置定位符用于指示目标设备,第一服务标识用于指示在目标设备上运行的第一服务。由于所有的服务共享相同的根密钥,从而,网络设备需要维护的映射表比较小,不需要为每一个服务维护一个对应关系条目,同时,降低了网络设备的查询开销。
[0022]
在另一种可能的实现方式中,根据第一可验证标识和第一密钥生成第二验证码,包括:根据第一可验证标识和第一密钥、以及第一位置定位符、第二位置定位符和动态参数中至少一个生成第二验证码,第一数据包还包括第一位置定位符和第二位置定位符,第一位置定位符用于指示目标设备,第二位置定位符用于指示第一终端,动态参数是随时间可变的。从而,通过增加第一验证码的复杂度,提升第一验证码的安全级别,避免泄漏第一验证码。
[0023]
在另一种可能的实现方式中,在接收第一数据包之前,方法还包括:接收过滤请求,过滤请求包括第一位置定位符、第一服务标识和第二密钥。从而,使网络设备可以对接收到的数据包进行验证,过滤非法数据包括,防御ddos攻击。
[0024]
在另一种可能的实现方式中,方法还包括:确定对应第一可验证标识的流量大于或等于阈值,限制第一可验证标识的流量。从而,阻止大量的数据包发送至目标设备,防御ddos攻击。
[0025]
第三方面,本申请提供了一种密钥分发方法,该方法可应用于目标设备,或者该方法可应用于可以支持目标设备实现该方法的通信装置,例如该通信装置包括芯片系统,方法包括:获取第一可验证标识和第二密钥;根据第一可验证标识和第二密钥生成第一密钥;向第一终端发送第一可验证标识和第一密钥。
[0026]
本申请实施例提供的密钥分发方法,通过为访问目标设备支持运行的服务的终端分配可验证标识和该可验证标识对应的密钥,终端在发送的数据包中携带可验证标识和验证码,使得网络设备可以根据可验证标识和验证码对合法数据包和非法数据包进行识别,只有合法数据包才会被转发。相对于黑洞技术,本申请实施例提供的密钥分发方法能够确保合法流量(已注册终端发送的流量)被转发,网络设备过滤大部分的ddos攻击流量。相对于流量清洗技术,本申请实施例提供的密钥分发方法能够降低深层协议解析带来的处理合法流量的延迟。
[0027]
在一种可能的实现方式中,获取第一可验证标识包括:获取第一服务标识,根据第一服务标识和第一终端标识生成第一可验证标识,其中,第一服务标识用于指示在目标设备上运行的第一服务;第一终端标识用于指示第一终端。
[0028]
在另一种可能的实现方式中,获取第一可验证标识包括:根据第一终端标识生成第一可验证标识,第一终端标识用于指示第一终端。
[0029]
在另一种可能的实现方式中,在获取第一可验证标识和第一密钥之前,方法还包括:接收到第一终端发送的注册请求后,为第一终端分配第一终端标识。
[0030]
第四方面,本申请还提供了一种通信装置,用于实现上述第一方面描述的方法。通信装置为终端或支持终端实现该第一方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如,该通信装置包括:接收单元、处理单元和发送单元。所述接收单元,用于接收
第一可验证标识和第一密钥;所述处理单元,用于根据第一可验证标识和第一密钥生成第一验证码;所述发送单元,用于发送第一数据包,第一数据包包括第一可验证标识和第一验证码。
[0031]
可选地,根据第一可验证标识和第一密钥生成第一验证码的方法同第一方面中相应的描述,这里不再赘述。
[0032]
第五方面,本申请还提供了一种通信装置,用于实现上述第二方面描述的方法。通信装置为网络设备或支持网络设备实现该第二方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如,通信装置包括:接收单元和处理单元。所述接收单元,用于接收第一数据包,第一数据包包括第一可验证标识和第一验证码;所述处理单元,用于获取第一可验证标识对应的第一密钥;所述处理单元,还用于根据第一可验证标识和第一密钥生成第二验证码;所述处理单元,还用于当第二验证码和第一验证码相同时,确定第一数据包合法;所述处理单元,还用于当第二验证码和第一验证码不相同时,确定第一数据包不合法。
[0033]
可选地,通信装置还可以包括发送单元,用于若网络设备确定第一数据包合法,向目标设备转发第一数据包。
[0034]
可选地,生成第二验证码的方法同第二方面中相应的描述,这里不再赘述。
[0035]
第六方面,本申请还提供了一种通信装置,用于实现上述第三方面描述的方法。通信装置为目标设备或支持目标设备实现该第三方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如,通信装置包括:处理单元和发送单元。所述处理单元,用于获取第一可验证标识和第二密钥;所述处理单元,还用于根据第一可验证标识和第二密钥生成第一密钥;所述发送单元,用于向第一终端发送第一可验证标识和第一密钥。
[0036]
可选地,通信装置还可以包括接收单元,用于获取第一服务标识和注册请求,第一服务标识用于指示在目标设备上运行的第一服务。所述处理单元,用于为第一终端分配第一终端标识,第一终端标识用于指示第一终端。使得处理单元根据第一服务标识和第一终端标识生成第一可验证标识,或者,处理单元根据第一终端标识生成第一可验证标识。
[0037]
需要说明的是,上述第四方面至第六方面的功能模块可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。例如,收发器,用于完成接收单元和发送单元的功能,处理器,用于完成处理单元的功能,存储器,用于处理器处理本申请的方法的程序指令。处理器、收发器和存储器通过总线连接并完成相互间的通信。具体的,可以参考第一方面所述的方法至第三方面所述的方法中的终端、网络设备和目标设备的行为的功能。
[0038]
第七方面,本申请还提供了一种通信装置,用于实现上述第一方面描述的方法。所述通信装置为终端或支持终端实现该第一方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如所述通信装置包括处理器,用于实现上述第一方面描述的方法的功能。所述通信装置还可以包括存储器,用于存储程序指令和数据。所述存储器与所述处理器耦合,所述处理器可以调用并执行所述存储器中存储的程序指令,用于实现上述第一方面描述的方法中的功能。所述通信装置还可以包括通信接口,所述通信接口用于该通信装置与其它设备进行通信。示例性地,若所述通信装置为终端,该其它设备为网络设备。
[0039]
在一种可能的设备中,该通信装置包括:收发器和处理器。所述收发器,用于接收第一可验证标识和第一密钥;处理器,用于根据第一可验证标识和第一密钥生成第一验证
码;所述收发器,还用于发送第一数据包,第一数据包包括第一可验证标识和第一验证码。
[0040]
可选地,根据第一可验证标识和第一密钥生成第一验证码的方法同第一方面中相应的描述,这里不再赘述。
[0041]
第八方面,本申请还提供了一种通信装置,用于实现上述第二方面描述的方法。所述通信装置为网络设备或支持网络设备实现该第二方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如所述通信装置包括处理器,用于实现上述第二方面描述的方法的功能。所述通信装置还可以包括存储器,用于存储程序指令和数据。所述存储器与所述处理器耦合,所述处理器可以调用并执行所述存储器中存储的程序指令,用于实现上述第二方面描述的方法中的功能。所述通信装置还可以包括通信接口,所述通信接口用于该通信装置与其它设备进行通信。示例性地,若所述通信装置为网络设备,该其它设备为终端。
[0042]
在一种可能的设备中,该通信装置包括:收发器和处理器。所述收发器,用于接收第一数据包,第一数据包包括第一可验证标识和第一验证码;所述处理器,用于获取第一可验证标识对应的第一密钥;所述处理器,还用于根据第一可验证标识和第一密钥生成第二验证码;所述处理器,还用于当第二验证码和第一验证码相同时,确定第一数据包合法;所述处理器,还用于当第二验证码和第一验证码不相同时,确定第一数据包不合法。
[0043]
可选地,收发器,还用于若网络设备确定第一数据包合法,向目标设备转发第一数据包。
[0044]
可选地,生成第二验证码的方法同第二方面中相应的描述,这里不再赘述。
[0045]
第九方面,本申请还提供了一种通信装置,用于实现上述第三方面描述的方法。所述通信装置为目标设备或支持目标设备实现该第三方面描述的方法的通信装置,例如该通信装置包括芯片系统。例如所述通信装置包括处理器,用于实现上述第三方面描述的方法的功能。所述通信装置还可以包括存储器,用于存储程序指令和数据。所述存储器与所述处理器耦合,所述处理器可以调用并执行所述存储器中存储的程序指令,用于实现上述第三方面描述的方法中的功能。所述通信装置还可以包括通信接口,所述通信接口用于该通信装置与其它设备进行通信。示例性地,若所述通信装置为目标设备,该其它设备为终端。
[0046]
在一种可能的设备中,该通信装置包括:收发器和处理器。所述处理器,用于获取第一可验证标识和第二密钥;所述处理器,还用于根据第一可验证标识和第二密钥生成第一密钥;所述收发器,用于向第一终端发送第一可验证标识和第一密钥。
[0047]
可选地,收发器还用于获取第一服务标识和注册请求,第一服务标识用于指示在目标设备上运行的第一服务。所述处理器,用于为第一终端分配第一终端标识,第一终端标识用于指示第一终端。使得处理器根据第一服务标识和第一终端标识生成第一可验证标识,或者,处理器根据第一终端标识生成第一可验证标识。具体的方法同第三方面中相应的描述,这里不再赘述。
[0048]
第十方面,本申请还提供了一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在通信装置中运行时,使得通信装置执行上述第一方面至第三方面中任一方面所述的方法。
[0049]
第十一方面,本申请还提供了一种包含指令的计算机程序产品,当计算机程序产品在通信装置中运行时,使得通信装置执行上述第一方面至第三方面中任一方面所述的方法。
[0050]
第十二方面,本申请提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述方法中网络设备、终端或目标设备的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0051]
第十三方面,本申请还提供了一种通信系统,所述通信系统包括第四方面描述的终端或支持终端实现该第一方面描述的方法的通信装置,以及第五方面描述的网络设备或支持网络设备实现该第二方面描述的方法的通信装置,以及第六方面描述的目标设备或支持目标设备实现该第三方面描述的方法的通信装置;
[0052]
所述通信系统包括第七方面描述的终端或支持终端实现该第一方面描述的方法的通信装置,以及第八方面描述的网络设备或支持网络设备实现该第二方面描述的方法的通信装置,以及第九方面描述的目标设备或支持目标设备实现该第三方面描述的方法的通信装置。
[0053]
另外,上述任意方面的设计方式所带来的技术效果可参见第一方面至第三方面中不同设计方式所带来的技术效果,此处不再赘述。
[0054]
本申请中,终端、网络设备、目标设备和通信装置的名字对设备本身不构成限定,在实际实现中,这些设备可以以其他名称出现。只要各个设备的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
附图说明
[0055]
图1为现有技术提供的一种ddos攻击示例图;
[0056]
图2为本申请提供的一种通信系统的架构示例图;
[0057]
图3为本申请提供的一种密钥衍生示例图;
[0058]
图4为本申请提供的一种数据处理方法流程图;
[0059]
图5为本申请提供的另一种数据处理方法流程图;
[0060]
图6为本申请提供的一种ipv6数据报的结构示例图;
[0061]
图7为本申请提供的一种tcp数据报的结构示例图;
[0062]
图8为本申请提供的一种通信装置的组成示例图;
[0063]
图9为本申请提供的另一种通信装置的组成示例图。
具体实施方式
[0064]
本申请说明书和权利要求书及上述附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
[0065]
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0066]
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
[0067]
ddos攻击是指处于不同位置的多个攻击者设备同时向一个或多个目标设备发动攻击,或者一个攻击者设备控制了位于不同位置的多台设备,利用这些设备对目标设备同时实施攻击。例如,如图1中的(a)所示,攻击者设备通过向目标设备发送大量携带虚假ip地
址的数据包,使目标设备维持大量半连接或者响应大量不可达的数据包,造成目标设备资源耗尽。又例如,如图1中的(b)所示,攻击者设备通过控制大量的僵尸设备,集中向目标设备发送大量的数据包,致使目标设备资源耗尽。
[0068]
本申请提供一种数据处理方法,该方法包括:第一终端接收目标设备发送的第一可验证标识和第一密钥,根据第一可验证标识和第一密钥生成第一验证码,在第一终端向目标设备发送第一数据包时,将第一可验证标识和第一验证码包含于第一数据包中。其中,第一密钥是根据第二密钥衍生得到的,第二密钥为对应目标设备支持运行的第一服务的密钥。在网络设备接收到第一终端发送的第一数据包后,获取第一可验证标识对应的第一密钥,根据第一可验证标识和第一密钥生成第二验证码,当第二验证码和第一验证码相同时,确定第一数据包合法,向目标设备转发第一数据包。
[0069]
本申请实施例提供的数据处理方法,通过为访问目标设备支持运行的服务的终端分配可验证标识和该可验证标识对应的密钥,终端在发送的数据包中携带可验证标识和验证码,使得网络设备可以根据可验证标识和验证码对合法数据包和非法数据包进行识别,只有合法数据包才会被转发。相对于黑洞技术,本申请实施例提供的数据处理方法能够确保合法流量(已注册终端发送的流量)被转发,网络设备过滤大部分的ddos攻击流量。相对于流量清洗技术,本申请实施例提供的数据处理方法能够降低深层协议解析带来的处理合法流量的延迟。另外,由于可验证标识可以内嵌在目标设备的ip地址中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作。
[0070]
需要说明的是,所谓目标设备可以理解为是受保护的设备或攻击者需要攻击的设备。本申请的实施例中目标设备可以是应用服务器、路由器或物联网(internet of things,iot)中的设备等,本申请对此不作限定。例如,iot设备可以是消防报警设备等。如果消防报警设备遭受攻击,使其不能感应火灾进行报警,从而使其无法往外发送报警消息,带来严重的安全威胁。在下文中,以目标设备是应用服务器进行举例说明。
[0071]
下面将结合附图对本申请实施例的实施方式进行详细描述。
[0072]
图2示出的是可以应用于本申请实施例的通信系统的架构示例图。如图2所示,该通信系统包括至少一个终端201、互联网服务提供商(internet service provider,isp)网络和数据中心。isp可以是指向广大用户综合提供互联网接入业务、信息业务和增值业务的电信运营商。所述isp网络可以包括网络设备202(如:边界路由器和交换机)等。所述数据中心可以包括至少一个应用服务器203。多个应用服务器可以是独立的不同的物理设备,也可以是将多个应用服务器的功能集成在同一个物理设备上(如:云服务提供商管辖范围内的多个应用服务器),还可以是一个物理设备上集成了部分应用服务器的功能。每个应用服务器上可以运行一个或多个服务(如:游戏服务)。服务也可称为应用。每个服务可以部署在多个应用服务器上,由多个应用服务器支持运行。终端201通过无线或有线的方式与网络设备202相连。网络设备202将通过无线或有线方式连接。网络设备202通过无线或有线方式与应用服务器203连接。终端设备可以是固定位置的,也可以是可移动的。图2只是示意图,该通信系统中还可以包括其它设备,如还可以包括无线中继设备和无线回传设备,在图2中未画出。本申请的实施例对该通信系统中包括的终端、网络设备和应用服务器的数量不做限定。
[0073]
其中,终端201可以是能够接收基站调度和指示信息的无线终端设备,无线终端设备可以是指向用户提供语音和/或数据连通性的设备,或具有无线连接功能的手持式设备、
或连接到无线调制解调器的其他处理设备。无线终端设备可以经无线接入网(如,radio access network,ran)与一个或多个核心网或者互联网进行通信,无线终端设备可以是移动终端设备,如移动电话(或称为“蜂窝”电话,手机(mobile phone))、计算机和数据卡,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。例如,个人通信业务(personal communication service,pcs)电话、无绳电话、会话发起协议(sip)话机、无线本地环路(wireless local loop,wll)站、个人数字助理(personal digital assistant,pda)、平板电脑(pad)、带无线收发功能的电脑等设备。无线终端设备也可以称为系统、订户单元(subscriber unit)、订户站(subscriber station),移动站(mobile station)、移动台(mobile station,ms)、远程站(remote station)、接入点(access point,ap)、远程终端设备(remote terminal)、接入终端设备(access terminal)、用户终端设备(user terminal)、用户代理(user agent)、用户站(subscriber station,ss)、用户端设备(customer premises equipment,cpe)、终端(terminal)、用户设备(user equipment,ue)、移动终端(mobile terminal,mt)等。对于urllc应用场景,终端设备可以为工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
[0074]
应用服务器203用于获取可验证标识(authenticated identifier,aid)和服务对应的密钥,根据可验证标识和服务对应的密钥生成该可验证标识对应的密钥,向终端201发送可验证标识和该可验证标识对应的密钥。可验证标识用于识别访问服务的终端。可验证标识也可理解为用于识别访问服务的一类终端。
[0075]
终端201用于接收应用服务器203发送的可验证标识和该可验证标识对应的密钥,根据可验证标识和该可验证标识对应的密钥生成验证码,在终端201发送的数据包中携带可验证标识和验证码。
[0076]
网络设备202用于接收终端201发送的数据包,并获取可验证标识对应的密钥,根据验证码、可验证标识和该可验证标识对应的密钥确定数据包合法,向应用服务器转发该数据包。
[0077]
在一些实施例中,所述isp网络还可以包括控制中心服务器204,网络设备202通过无线或有线方式与控制中心服务器204连接。控制中心服务器204用于接收应用服务器203发送过滤请求,过滤请求可以包括应用服务器203的位置定位符、应用服务器203支持运行的服务标识和服务对应的密钥。控制中心服务器204将过滤请求和可验证标识和相关密钥下发给网络设备202,使网络设备202实施基于可验证标识和验证码的过滤方式。
[0078]
所述数据中心还可以包括监控器205、密钥管理中心206和位置定位符分配中心207。监控器205用于监控数据中心中的应用服务器是否遭受ddos攻击。在一些实施例中,当应用服务器遭受ddos攻击时,监控器205可以向网络设备202发送过滤请求。位置定位符分配中心207用于为应用服务器分配位置定位符(locator)。位置定位符用于指示应用服务器。在一些实施例中,位置定位符可以是应用服务器的位置标识。在另一些实施例中,位置定位符可以是应用服务器的路由标识。密钥管理中心206用于为应用服务器分配服务标识和与该服务标识对应的密钥。
[0079]
在一些实施例中,数据中心中的密钥管理中心可以为应用服务器支持运行的每个服务维护一个服务密钥对应关系。所谓服务密钥对应关系可以是指服务标识(service identification,sid)和与该服务标识对应的主密钥(master key,mk)的对应关系。服务密钥对应关系可以以表格的形式呈现。密钥管理中心可以存储有服务密钥关系表,服务密钥关系表包括至少一个服务密钥对应关系。示例的,如表1所示,呈现了服务密钥关系。
[0080]
表1服务密钥关系
[0081]
服务名服务标识主密钥服务1sid1mk1服务2sid2mk2服务3sid3mk3
[0082]
需要说明的是,表1只是以表格的形式示意服务密钥关系在密钥管理中心中的存储形式,并不是对服务密钥关系在密钥管理中心中的存储形式的限定,当然,服务密钥关系在密钥管理中心中的存储形式还可以以其他的形式存储,本申请实施例对此不做限定。
[0083]
应用服务器203可以调用第一统一的软件开发工具包(software development kit,sdk)接口从密钥管理中心获取服务标识和与该服务标识对应的主密钥。应用服务器可以根据服务标识和与该服务标识对应的主密钥调用第二统一sdk接口为已注册终端生成服务内对应终端的可验证标识和终端密钥(client key,ck)。终端密钥可以是指可验证标识对应的密钥。主密钥用于衍生可访问服务的已注册终端的密钥。示例的,如图3所示,数据中心中的应用服务器支持运行n个服务。对应第一服务的主密钥为mk1。应用服务器203可以根据mk1衍生m个可访问第一服务的已注册终端的密钥。对应第二服务的主密钥为mk2。应用服务器203可以根据mk2衍生p个可访问第二服务的已注册终端的密钥。对应第三服务的主密钥为mk3。应用服务器203可以根据mk3衍生q个可访问第三服务的已注册终端的密钥。
[0084]
接下来,对本申请提供的数据处理方法进行详细说明。图4为本申请实施例提供的一种数据处理方法流程图,这里以第一终端访问应用服务器支持运行的第一服务为例进行说明。如图4所示,该方法可以包括:
[0085]
s401、应用服务器获取第一可验证标识和第一密钥。
[0086]
在本实施例中,密钥管理中心存储有第一服务的服务密钥关系,即第一服务标识和第一密钥的对应关系。第一服务标识用于指示在应用服务器上运行的第一服务。第一密钥为对应第一服务的密钥,第一密钥用于衍生可访问第一服务的已注册终端的密钥。第一密钥可以是指mk。应用服务器可以调用第一统一的sdk接口向密钥管理中心发送请求消息,用于请求第一服务的服务密钥对应关系。应用服务器接收密钥管理中心反馈的第一服务标识和第一密钥。
[0087]
第一服务标识可以用于应用服务器生成第一可验证标识。所谓第一可验证标识用于识别访问第一服务的第一终端。第一终端可以是在应用服务器上已注册、且可访问第一服务的终端。或者,第一可验证标识也可理解为用于识别访问第一服务的一类终端。
[0088]
在一些实施例中,应用服务器在创建第一服务后,就可以从密钥管理中心获取第一服务的服务密钥对应关系,先缓存第一服务标识和第一密钥。在第一终端完成注册后,应用服务器根据第一服务标识和第一终端标识调用第二统一sdk接口为已注册的第一终端生成第一可验证标识,或者,应用服务器根据第一终端标识调用第二统一sdk接口为已注册的
第一终端生成第一可验证标识。
[0089]
在另一些实施例中,在第一终端完成注册后,应用服务器从密钥管理中心获取第一服务的服务密钥对应关系,再根据第一服务标识和第一终端标识调用第二统一sdk接口为已注册的第一终端生成第一可验证标识,或者,根据第一终端标识调用第二统一sdk接口为已注册的第一终端生成第一可验证标识。
[0090]
示例的,如图5所示,应用服务器获取第一可验证标识的可实现方式可以如下s4011~s4015的阐述、或者s4011~s4014和s4016的阐述。
[0091]
s4011、第一终端向应用服务器发送注册请求。
[0092]
s4012、应用服务器接收第一终端发送的注册请求。
[0093]
在一些实施例中,注册请求可以包括第一服务标识,用于请求应用服务器对第一终端访问第一服务进行授权。
[0094]
s4013、应用服务器为第一终端分配第一终端标识(client identifier,cid)。
[0095]
应用服务器接收到第一终端发送的注册请求后,为第一终端分配第一终端标识,第一终端标识用于指示第一终端。
[0096]
s4014、应用服务器获取第一服务标识和第一密钥。
[0097]
应用服务器可以调用第一统一的sdk接口从密钥管理中心获取第一服务标识和第一密钥。具体的可以参考上述阐述,不予赘述。
[0098]
s4015、应用服务器根据第一服务标识和第一终端标识生成第一可验证标识。
[0099]
在一些实施例中,应用服务器可以采用杂凑算法根据第一服务标识和第一终端标识生成第一可验证标识。杂凑算法又可称为哈希(hash)函数。所谓杂凑算法可以是指将任意长的输入消息串变化成固定长的输出串的一种函数。
[0100]
s4016、应用服务器根据第一终端标识生成第一可验证标识。
[0101]
在一些实施例中,应用服务器可以采用杂凑算法根据第一终端标识生成第一可验证标识。
[0102]
需要说明的是,由于可验证标识用于识别访问第一服务的第一终端的唯一标识。因此,应用服务器在第一可验证标识时需要参考已经为其他终端已分配的可验证标识,避免为不同的终端分配相同的可验证标识产生的混淆。
[0103]
需要说明的是,本申请实施例提供的数据处理方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。示例的,如s4016和s4014之间的前后顺序可以互换,即可先根据第一终端标识生成第一可验证标识,再获取第一密钥。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
[0104]
第一密钥可以用于应用服务器生成第二密钥。第二密钥为对应第一终端的密钥。第二密钥可以是指ck。
[0105]
在一些实施例中,应用服务器在创建第一服务后,就可以从密钥管理中心获取第一服务的服务密钥对应关系,先缓存第一服务标识和第一密钥。在第一终端完成注册后,应用服务器根据第一密钥调用sdk接口为已注册的第一终端生成第二密钥。
[0106]
在另一些实施例中,在第一终端完成注册后,应用服务器从密钥管理中心获取第一服务的服务密钥对应关系,再根据第一密钥调用第二统一sdk接口为已注册的第一终端
生成第二密钥。
[0107]
s402、应用服务器根据第一可验证标识和第一密钥生成第二密钥。
[0108]
在一些实施例中,应用服务器可以采用杂凑算法根据第一可验证标识和第一密钥生成第二密钥。
[0109]
s403、应用服务器向第一终端发送第一可验证标识和第二密钥。
[0110]
在一些实施例中,应用服务器可以根据应用层安全协议向第一终端发送第一可验证标识和第二密钥。从而,避免第一可验证标识和第二密钥泄漏。
[0111]
s404、第一终端接收第一可验证标识和第二密钥。
[0112]
在一些实施例中,第一终端接收到第一可验证标识和第二密钥,可以缓存第一可验证标识和第二密钥,以便于第一终端需要发送第一数据包时,将第一可验证标识和第一验证码包含于第一数据包中。
[0113]
s405、第一终端根据第一可验证标识和第二密钥生成第一验证码。
[0114]
在一些实施例中,第一终端可以采用杂凑算法根据第一可验证标识和第二密钥、以及第一位置定位符、第二位置定位符和动态参数中至少一个生成第一验证码。
[0115]
例如,第一终端可以采用杂凑算法根据第一可验证标识、第二密钥和第一位置定位符生成第一验证码。
[0116]
又例如,第一终端可以采用杂凑算法根据第一可验证标识、第二密钥、第一位置定位符和动态参数生成第一验证码。
[0117]
又例如,第一终端可以采用杂凑算法根据第一可验证标识、第二密钥、第一位置定位符和第二位置定位符生成第一验证码。
[0118]
又例如,第一终端可以采用杂凑算法根据第一可验证标识和第二密钥、以及第一位置定位符、第二位置定位符和动态参数生成第一验证码。
[0119]
由于第一验证码绑定了源ip、目的ip,因此,可以缓减重放攻击,使得僵尸主机无法随意伪造源ip。
[0120]
其中,第一位置定位符用于指示支持运行第一服务的应用服务器。在一些实施例中,第一位置定位符可以是支持运行第一服务的应用服务器的位置标识。在另一些实施例中,第一位置定位符可以是支持运行第一服务的应用服务器的路由标识。例如,位置定位符分配中心可以为数据中心中的每个应用服务器分配一个位置定位符。第一终端可以访问域名解析(domain name resolution,dns)服务器,获取应用服务器的静态标识,通过应用服务器的静态标识访问应用服务器运行的第一服务。应用服务器的静态标识包括第一位置定位符。在一些实施例中,应用服务器的静态标识还可以包括第一服务标识。
[0121]
第二位置定位符用于指示第一终端。在一些实施例中,第二位置定位符可以是第一终端的位置标识。在另一些实施例中,第二位置定位符可以是第一终端的ip地址。
[0122]
动态参数可以是随时间可变的。在一些实施例中,动态参数可以是时间信息。
[0123]
s406、第一终端发送第一数据包,第一数据包包括第一可验证标识和第一验证码。
[0124]
第一可验证标识和第一验证码可以设置于第一数据包包含的网络层协议头部中或传输层协议头部中。
[0125]
在第一种可实现方式中,第一可验证标识和第一验证码可以设置于第一数据包包含的目的ip地址内。例如,目的ip地址可以是指ipv6数据报中的目的ip地址。
[0126]
示例的,如图6所示,为ipv6数据报的结构示例图。ipv6数据报包括基本首部、n个扩展首部和数据部分。n个扩展首部和数据部分可以称为有效载荷(payload)或净负荷。其中,基本首部包括版本(version)、通信量类(traffic class)、流标号(flow label)、有效载荷长度(payload length)、下一个首部(next header)、跳数限制(hop limit)、源地址(source address)和目的地址(destination address)。关于ipv6数据报的各字段具体解释可以参考现有技术的阐述,不予赘述。
[0127]
目的地址是指数据报的接收端的ip地址,占128bit。例如,第一可验证标识和第一验证码可以设置于ipv6数据报中的目的ip地址内。
[0128]
又例如,目的ip地址可以是指ipv4数据报中的目的ip地址。
[0129]
从而,由于第一可验证标识可以内嵌在应用服务器的ip地址中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作,不依赖于对上层(如:应用层)协议中的数据的解析。
[0130]
在一些实施例中,第一可验证标识和第一验证码可以设置于第一数据包包含的源ip地址内。例如,源ip地址可以是指ipv6数据报中的源ip地址。又例如,源ip地址可以是指ipv4数据报中的源ip地址。
[0131]
在第二种可实现方式中,第一可验证标识和第一验证码可以设置于第一数据包包含的网络层协议头部中的下一个首部内。从而,由于第一可验证标识可以内嵌在下一个首部字段中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作,不依赖于对上层(如:应用层)协议中的数据的解析。
[0132]
在第三种可实现方式中,第一可验证标识和第一验证码可以设置于第一数据包包含的网络层协议头部中的可选字段内。从而,由于第一可验证标识可以内嵌在可选字段中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作,不依赖于对上层(如:应用层)协议中的数据的解析。
[0133]
在第四种可实现方式中,第一可验证标识和第一验证码可以设置于tcp首部中的可选字段中。示例的,如图7所示,为tcp数据报的结构示例图。tcp数据报包含于ip数据报的数据部分内。tcp数据报包括tcp首部和tcp数据报的数据部分。tcp首部包括源端口(source port)、目的端口(destination port)、序列号(sequence number)、确认号(acknowledgment number)、数据偏移(header length)、保留(resv)、紧急(ugr)、确认(ack)、推送(psh)、复位(rst)、同步(syn)、终止(fin)、窗口(window size)、检验和(checksum)、紧急指针(urgent pointer)和选项(options)。关于tcp数据报的各字段具体解释可以参考现有技术的阐述,不予赘述。
[0134]
从而,由于第一可验证标识可以内嵌在下一个首部字段中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作,不依赖于对上层(如:应用层)协议中的数据的解析。
[0135]
需要说明的是,在第一终端探测到访问应用服务器拥塞时,第一终端向应用服务器发送的数据包可以包括第一可验证标识和第一验证码。或者,在第一终端探测到访问应用服务器未拥塞时,第一终端向应用服务器发送的数据包也可以包括第一可验证标识和第一验证码。
[0136]
在另一些实施例中,第一数据包还可以包括第一位置定位符和第二位置定位符。
第一位置定位符可以设置于ipv6数据报中的目的ip地址内。
[0137]
s407、网络设备接收第一数据包。
[0138]
s408、网络设备获取第一可验证标识对应的第二密钥。
[0139]
网络设备接收到第一数据包后,解析第一数据包得到第一可验证标识和第一验证码。
[0140]
在第一种可实现方式中,如图5所示,网络设备根据如下s4081和s4084的阐述获取第一可验证标识对应的第二密钥。
[0141]
在第二种可实现方式中,如图5所示,网络设备根据如下s4082~s4084的阐述获取第一可验证标识对应的第二密钥。
[0142]
s4081、网络设备根据第一位置定位符获取第一密钥。
[0143]
在一些实施例中,第一数据包包括第一位置定位符。第一位置定位符可以设置于ipv6数据报中的目的地址内。网络设备接收到第一数据包后,解析第一数据包得到第一位置定位符。第一位置定位符用于指示支持运行第一服务的应用服务器。第一位置定位符用于指示支持运行第一服务的应用服务器。在一些实施例中,第一位置定位符可以是支持运行第一服务的应用服务器的位置标识。在另一些实施例中,第一位置定位符可以是支持运行第一服务的应用服务器的路由标识。
[0144]
网络设备可以预先从数据中心获取位置定位符和对应服务的密钥。网络设备可以维护一个位置定位符主密钥对应关系。所谓位置定位符主密钥对应关系可以是指位置定位符和与服务对应的主密钥的对应关系。位置定位符主密钥对应关系可以以表格的形式呈现。网络设备可以存储有位置定位符主密钥对应关系表,位置定位符主密钥对应关系表包括至少一个位置定位符主密钥对应关系。示例的,如表2所示,呈现了位置定位符主密钥对应关系。
[0145]
表2位置定位符主密钥对应关系
[0146]
位置定位符主密钥locator 1mk1locator 2mk2locator 3mk3
[0147]
需要说明的是,表2只是以表格的形式示意位置定位符主密钥对应关系在网络设备中的存储形式,并不是对位置定位符主密钥对应关系在网络设备中的存储形式的限定,当然,位置定位符主密钥对应关系在网络设备中的存储形式还可以以其他的形式存储,本申请实施例对此不做限定。
[0148]
在网络设备得到第一位置定位符后,可以从本地获取位置定位符主密钥对应关系,查询位置定位符主密钥对应关系,得到第一位置定位符对应的第一密钥。第一密钥为对应第一服务的密钥,第一密钥用于衍生可访问第一服务的已注册终端的密钥。
[0149]
s4082、网络设备根据第一位置定位符获取第三密钥。
[0150]
在一些实施例中,网络设备可以预先从数据中心获取位置定位符和根密钥(root key,rk)。根密钥用于衍生对应服务的密钥。网络设备可以为维护一个位置定位符根密钥对应关系。所谓位置定位符根密钥对应关系可以是指位置定位符和根密钥的对应关系。位置定位符根密钥对应关系可以以表格的形式呈现。网络设备可以存储有位置定位符根密钥对
应关系表,位置定位符根密钥对应关系表包括至少一个位置定位符根密钥对应关系。示例的,如表3所示,呈现了位置定位符根密钥对应关系。
[0151]
表3位置定位符根密钥对应关系
[0152][0153]
需要说明的是,表3只是以表格的形式示意位置定位符根密钥对应关系在网络设备中的存储形式,并不是对位置定位符根密钥对应关系在网络设备中的存储形式的限定,当然,位置定位符根密钥对应关系在网络设备中的存储形式还可以以其他的形式存储,本申请实施例对此不做限定。
[0154]
在网络设备得到第一位置定位符后,可以从本地获取位置定位符根密钥对应关系,查询位置定位符根密钥对应关系,得到第一位置定位符对应的第三密钥。第三密钥用于衍生对应服务的密钥。第三密钥可以是指根密钥。
[0155]
由于所有的服务共享相同的根密钥,从而,网络设备需要维护的映射表比较小,不需要为每一个服务维护一个对应关系条目,同时,降低了网络设备的查询开销。
[0156]
s4083a、网络设备根据第三密钥和第一服务标识生成第一密钥。
[0157]
在一些实施例中,网络设备可以采用杂凑算法根据第三密钥和第一服务标识生成第一密钥。第一数据包可以包括第一服务标识。例如,第一服务标识可以设置于目的ip地址字段内。又例如,第一服务标识可以设置于网络层协议中的下一个首部字段内。又例如,第一服务标识可以设置于tcp首部中的选项字段内。本申请对此不予限定。网络设备接收到第一数据包后,解析第一数据包得到第一服务标识。第一服务标识用于指示在应用服务器上运行的第一服务。
[0158]
s4083b、网络设备根据第三密钥和第一位置定位符生成第一密钥。
[0159]
在一些实施例中,网络设备可以采用杂凑算法根据第三密钥和第一位置定位符生成第一密钥。第一数据包可以包括第一位置定位符。网络设备接收到第一数据包后,解析第一数据包得到第一位置定位符。
[0160]
s4084、网络设备根据第一可验证标识和第一密钥生成第二密钥。
[0161]
在一些实施例中,网络设备可以采用杂凑算法根据第一可验证标识和第一密钥生成第二密钥。
[0162]
在第三种可实现方式中,网络设备可以预先从数据中心获取位置定位符和对应终端的密钥。网络设备可以维护一个位置定位符终端密钥对应关系。所谓位置定位符终端密钥对应关系可以是指位置定位符和与终端对应的终端密钥的对应关系。位置定位符终端密钥对应关系可以以表格的形式呈现。网络设备可以存储有位置定位符终端密钥对应关系表,位置定位符终端密钥对应关系表包括至少一个位置定位符终端密钥对应关系。示例的,如表4所示,呈现了位置定位符终端密钥对应关系。
[0163]
表4位置定位符终端密钥对应关系
[0164]
位置定位符终端密钥
locator 1ck1locator 2ck2locator 3ck3
[0165]
需要说明的是,表4只是以表格的形式示意位置定位符终端密钥对应关系在网络设备中的存储形式,并不是对位置定位符终端密钥对应关系在网络设备中的存储形式的限定,当然,位置定位符终端密钥对应关系在网络设备中的存储形式还可以以其他的形式存储,本申请实施例对此不做限定。
[0166]
在网络设备得到第一位置定位符后,可以从本地获取位置定位符终端密钥对应关系,可以查询位置定位符终端密钥对应关系,得到第一位置定位符对应的第二密钥。
[0167]
s409、网络设备根据第一可验证标识和第二密钥生成第二验证码。
[0168]
在一些实施例中,网络设备可以采用杂凑算法根据第一可验证标识和第二密钥、以及第一位置定位符、第二位置定位符和动态参数中至少一个生成第二验证码。
[0169]
例如,网络设备可以采用杂凑算法根据第一可验证标识、第二密钥和第一位置定位符生成第二验证码。
[0170]
又例如,第一终端可以采用杂凑算法根据第一可验证标识、第二密钥、第一位置定位符和动态参数生成第一验证码。
[0171]
又例如,网络设备可以采用杂凑算法根据第一可验证标识、第二密钥、第一位置定位符和第二位置定位符生成第二验证码。
[0172]
又例如,网络设备可以采用杂凑算法根据第一可验证标识和第二密钥、以及第一位置定位符、第二位置定位符和动态参数生成第二验证码。
[0173]
其中,第一数据包包括第一位置定位符和第二位置定位符。第一位置定位符用于指示支持运行第一服务的应用服务器。第二位置定位符用于指示第一终端。在一些实施例中,第二位置定位符可以是第一终端的位置标识。在另一些实施例中,第二位置定位符可以是指第一终端的ip地址。网络设备接收到第一数据包后,解析第一数据包得到第一位置定位符和第二位置定位符。
[0174]
动态参数是随时间可变的。在一些实施例中,动态参数可以是时间信息。需要说明的是,这里的动态参数与第一终端采用杂凑算法生成第一验证码时采用的动态参数相同,避免由于动态参数不同而造成的验证失败。
[0175]
s410、网络设备判断第二验证码和第一验证码是否相同。
[0176]
当第二验证码和第一验证码相同时,执行s411。当第二验证码和第一验证码不相同时,执行s412。
[0177]
s411、网络设备确定第一数据包合法。执行s413。
[0178]
s412、网络设备确定第一数据包不合法。
[0179]
在一些实施例中,网络设备确定第一数据包不合法,可以表明网络设备可能接收到了非法数据包(如:ddos攻击的数据包),则网络设备丢弃第一数据包。
[0180]
需要说明的是,由于第一终端是已在应用服务器注册的合法的终端,第一终端拥有第一可验证标识和正确的第二密钥,因此,网络设备可以确定第二验证码和第一验证码相同。如果第一终端是一个未在应用服务器注册的终端,若第一终端拥有第一可验证标识,但是第一终端没有第二密钥,则第一终端根据错误的密钥生成的第一验证码就与第二验证
码不同,则网络设备可以确定第一数据包不合法。
[0181]
s413、网络设备向应用服务器转发第一数据包。
[0182]
s414、应用服务器接收网络设备发送的第一数据包。
[0183]
在一些实施例中,网络设备可以默认对访问第一服务的数据包进行验证,确定数据包是否是合法的数据包。当数据包是合法数据包时,转发合法的数据包。当数据包是非法数据包时,丢弃非法的数据包。
[0184]
在另一些实施例中,网络设备可以根据指示对访问第一服务的数据包进行验证,确定数据包是否是合法数据。示例的,如图5所示,在网络设备接收第一数据包之前,该方法还可以包括以下步骤。
[0185]
s415、网络设备接收过滤请求。
[0186]
在一些实施例中,过滤请求用于指示对访问第一服务的数据包进行验证,防御ddos攻击。过滤请求可以包括第一位置定位符、第一服务标识和第一密钥。
[0187]
本申请实施例提供的数据处理方法,通过为访问应用服务器支持运行的服务的终端分配可验证标识和该可验证标识对应的密钥,终端在发送的数据包中携带可验证标识和验证码,使得网络设备可以根据可验证标识和验证码对合法数据包和非法数据包进行识别,只有合法数据包才会被转发。相对于黑洞技术,本申请实施例提供的数据处理方法能够确保合法流量(已注册终端发送的流量)被转发,网络设备过滤大部分的ddos攻击流量。相对于流量清洗技术,本申请实施例提供的数据处理方法能够降低深层协议解析带来的处理合法流量的延迟。另外,由于可验证标识可以内嵌在应用服务器的ip地址中,使得网络设备可以直接在网络层进行过滤,降低防御ddos攻击的成本,不依赖于跨域协作。
[0188]
在另一些实施例中,如果第一终端是未在应用服务器注册的终端,第一可验证标识和第二密钥泄漏了,第一终端拥有第一可验证标识和正确的第二密钥,则第一终端根据第一可验证标识和正确的第二密钥生成的第一验证码就与第二验证码相同。此时,应用服务器可能会遭受到ddos攻击,则网络设备可以确定对应第一可验证标识的流量大于或等于阈值时,无需进行验证码的验证,限制第一可验证标识的流量。从而,阻止大量的数据包发送至应用服务器,防御ddos攻击。
[0189]
上述本申请提供的实施例中,分别从网络设备、终端、应用服务器,以及网络设备、终端和应用服务器之间交互的角度对本申请实施例提供的方法进行了介绍。可以理解的是,各个网元,例如网络设备、终端、应用服务器为了实现上述本申请实施例提供的方法中的各功能,网络设备、终端、应用服务器包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0190]
本申请实施例可以根据上述方法示例对网络设备、终端、应用服务器进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻
辑功能划分,实际实现时可以有另外的划分方式。
[0191]
在采用对应各个功能划分各个功能模块的情况下,图8示出了上述和实施例中涉及的通信装置的一种可能的组成示例图,该通信装置能执行本申请各方法实施例中任一方法实施例中网络设备、终端或应用服务器所执行的步骤。如图8所示,该通信装置可以包括:接收单元801、处理单元802和发送单元803。
[0192]
当所述通信装置为终端或支持终端实现实施例中提供的方法的通信装置,例如该通信装置可以是芯片系统。
[0193]
其中,接收单元801,用于支持通信装置执行本申请实施例中描述的方法。例如,接收单元801,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s404,或图5所示的数据处理方法中的s404。
[0194]
处理单元802,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s405,或图5所示的数据处理方法中的s405。
[0195]
发送单元803,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s406,或图5所示的数据处理方法中的s406。
[0196]
当所述通信装置为网络设备或支持网络设备实现实施例中提供的方法的通信装置,例如该通信装置可以是芯片系统。
[0197]
其中,接收单元801,用于支持通信装置执行本申请实施例中描述的方法。例如,接收单元801,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s407,图5所示的数据处理方法中的s407和s415。
[0198]
处理单元802,用于执行或用于支持通信装置执行图4和图5所示的数据处理方法中的s408~s412,图5所示的数据处理方法中的s4081、s4082、s4083a、s4083b、s4084和s409~s415。
[0199]
发送单元803,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s413,图5所示的数据处理方法中的s413。
[0200]
当所述通信装置为应用服务器或支持应用服务器实现实施例中提供的方法的通信装置,例如该通信装置可以是芯片系统。
[0201]
其中,接收单元801,用于支持通信装置执行本申请实施例中描述的方法。例如,接收单元801,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s401和s414,或图5所示的数据处理方法中的s4012、s4014和s414。
[0202]
处理单元802,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s402,或图5所示的数据处理方法中的s4013、s4015、s4016和s402。
[0203]
发送单元803,用于执行或用于支持通信装置执行图4所示的数据处理方法中的s403,或图5所示的数据处理方法中的s403。
[0204]
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
[0205]
本申请实施例提供的通信装置,用于执行上述任意实施例的方法,因此可以达到与上述实施例的方法相同的效果。
[0206]
如图9所示为本申请实施例提供的通信装置900,用于实现上述方法中网络设备的功能。该通信装置900可以是网络设备,也可以是网络设备中的装置。其中,该通信装置900
可以为芯片系统。本申请实施例中,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。或者,通信装置900用于实现上述方法中终端的功能。该通信装置900可以是终端,也可以是终端中的装置。其中,该通信装置900可以为芯片系统。本申请实施例中,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。或者,通信装置900用于实现上述方法中应用服务器的功能。该通信装置900可以是应用服务器,也可以是应用服务器中的装置。其中,该通信装置900可以为芯片系统。本申请实施例中,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0207]
通信装置900包括至少一个处理器901,用于实现本申请实施例提供的方法中网络设备、终端或应用服务器的功能。示例性地,处理器901可以用于根据第一可验证标识和第一密钥生成第一验证码,或者根据第一可验证标识和第二密钥生成第一密钥等等,具体参见方法示例中的详细描述,此处不做赘述。
[0208]
通信装置900还可以包括至少一个存储器902,用于存储程序指令和/或数据。存储器902和处理器901耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器901可能和存储器902协同操作。处理器901可能执行存储器902中存储的程序指令。所述至少一个存储器中的至少一个可以包括于处理器中。
[0209]
通信装置900还可以包括通信接口903,用于通过传输介质和其它设备进行通信,从而用于通信装置900中的装置可以和其它设备进行通信。示例性地,若通信装置为网络设备,该其它设备为终端。若通信装置为终端,该其它设备为网络设备。若通信装置为终端,该其它设备为应用服务器。处理器901利用通信接口903收发数据,并用于实现图4和图5对应的实施例中所述的网络设备、终端或应用服务器所执行的方法。
[0210]
本申请实施例中不限定上述通信接口903、处理器901以及存储器902之间的具体连接介质。本申请实施例在图9中以通信接口903、处理器901以及存储器902之间通过总线904连接,总线在图9中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0211]
在本申请实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0212]
在本申请实施例中,存储器可以是非易失性存储器,比如硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0213]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上
述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
[0214]
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0215]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0216]
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0217]
本申请实施例提供的方法中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、终端或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,dvd))、或者半导体介质(例如,ssd)等。
[0218]
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1