一种网络节点监测方法及装置的制造方法

文档序号:9380250阅读:515来源:国知局
一种网络节点监测方法及装置的制造方法
【技术领域】
[0001] 本发明涉及计算机领域,尤其涉及一种网络节点监测方法及装置。
【背景技术】
[0002] 目前,网络黑客对网络服务器最基本的攻击方式就是资源滥用攻击,即利用网络 节点(业内也称"肉鸡"或"傀儡机",是指可以被黑客远程控制的机器)发送大量合法的访 问请求来占用过多的服务器资源,从而使正常用户合法的请求失败,或者是页面加载速度 变得极其缓慢,造成用户无法使用网站。而且,这种攻击过程往往时间很短,对于毫无防范 的网络服务器来说,这种攻击几乎是不可阻挡的,网络服务器在短时间内就会崩溃,给企业 带来巨大的损失。因此,从众多的给服务器发送访问请求的网络节点中找出被黑客控制的 网络节点对防御这种攻击至关重要。
[0003] 现有技术一中大多数系统都是在攻击过后检测日志文件来确认是否发生资源滥 用攻击。日志文件中记录了每个IP地址发送了多少请求量,如果发现存在有请求量非同寻 常的IP地址,则该IP地址就有可能是黑客所使用的代理IP地址,会被加入到黑名单中。但 是,这并不能缓解资源滥用攻击发生时网站的负载。
[0004] 现有技术二利用令牌桶算法实时监测每个网络节点发送访问请求的速率来判断 该网络节点是否为被黑客控制的网络节点。所述令牌桶算法的原理是:假设服务器被配置 为平均每秒接收r个访问请求,那么每隔Ι/r秒就有一个令牌被加入令牌"桶"(数据包缓 存)中。每当接收到一个访问请求时,就从令牌"桶"中删除一个令牌。若黑客采用一个网 络节点进行攻击,那么他就需要在短时间内发送大量的访问请求,该网络节点发送的访问 请求对应的删除令牌的速率大于r个/秒的可能性较高,因此很容易识别出该网络节点来, 进而对该网络节点采取一定的措施,从而有效的缓解攻击时服务器的负载,克服了现有技 术一的缺点。然而,一旦黑客采用成千上万个网络节点发送大量的访问请求时,由于平分到 每个网络节点的访问请求数量大幅度减少,因此对应的删除令牌的速率大于rf/秒的可 能性较低,由于通常情况下,普通用户发送访问请求的速率小于r个/秒,因此常常分辨不 出哪些是普通用户使用的正常的网络节点,哪些是被黑客控制的非正常网络节点。
[0005] 所以,如何才能够在众多与服务器连接的网络节点中,实时地监测出黑客进行资 源滥用攻击所利用的非正常网络节点是亟待需要解决的问题。

【发明内容】

[0006] 为了解决现有技术中存在的技术问题,本发明提供一种网络节点监测方法和装 置,实现了在众多与服务器连接的网络节点中,实时地监测出黑客进行资源滥用攻击所利 用的非正常网络节点的目的,从而有效的抵御黑客攻击,保证服务器的正常运行。
[0007] 本发明实施例提供了一种网络节点监测方法,所述方法包括:
[0008] 接收网络节点发送的访问请求,获取所述网络节点区别于其他网络节点的第一标 识;
[0009] 根据哈希算法计算所述第一标识对应的哈希值,所述哈希值表示所述第一标识在 第一表格中的位置,所述第一表格中保存有所述第一标识与所述第一标识在第二表格中的 位置的对应关系;
[0010] 判断所述哈希值对应的所述第一表格的表项中是否存在所述第一标识,如果是, 则依据所述对应关系在所述第二表格中查找所述第一标识,并在所述第一标识对应的当前 的访问请求数量的基础上加1 ;
[0011] 判断增加后的访问请求数量是否大于或等于预设请求数量,如果是,则确认所述 网络节点为非正常网络节点。
[0012] 优选的,当所述哈希值对应的所述第一表格的表项中不存在所述第一标识时,所 述方法还包括:
[0013] 判断所述第二表格中当前指针指向的表项是否为空,如果是,则在所述当前指针 指向的表项中填写所述第一标识,并将所述第一标识对应的访问请求数量置为1,同时在所 述第一表格中记录所述第一标识以及所述第一标识在所述第二表格中的位置。
[0014] 优选的,当所述第二表格中当前指针指向的表项不为空时,所述方法还包括:
[0015] 将所述当前指针指向的表项中的访问请求数量减1,然后将所述当前指针指向下 一个表项。
[0016] 优选的,在所述将当前指针指向的表项中的访问请求数量减1后,所述方法还包 括:
[0017] 判断所述当前指针指向的表项的访问请求数量是否为0,如果是,则计算所述当前 指针指向表项中的第二标识的哈希值,并将所述第一表格中与所述第二标识的哈希值对应 的表项中的内容清空;将所述第二表格中的所述第二标识替换为所述第一标识,并将所述 第一标识对应的访问请求数量置为1 ;在所述第一表格中记录所述第一标识以及所述第一 标识在所述第二表格中的位置。
[0018] 优选的,所述哈希值对应的所述第一表格的表项中不存在所述第一标识包括:
[0019] 所述第一表格中所述哈希值对应的表项为空;
[0020] 所述在所述第一表格中记录所述第一标识以及所述第一标识在所述第二表格中 的位置包括:
[0021] 在所述第一标识的哈希值对应的表项中填写所述第一标识以及所述第一标识在 所述第二表格中的位置。
[0022] 优选的,所述哈希值对应的所述第一表格的表项中不存在所述第一标识包括:
[0023] 所述第一表格中所述哈希值对应的表项不为空;
[0024] 所述在所述第一表格中记录所述第一标识以及所述第一标识在所述第二表格中 的位置包括:
[0025] 为所述第一表格动态分配一个表项,将所述第一标识以及所述第一标识在所述第 二表格中的位置记录在所述分配的表项中,并用指针从所述哈希值对应的表项指向所述分 配的表项。
[0026] 优选的,所述第一标识为根据所述网络节点的IP地址、网站cookie和/或网络节 点物理设备的唯一标识计算的哈希值。
[0027] 优选的,所述预设请求数量根据上一时间周期内每个用户的平均访问请求数量与 网络服务器当前的负载情况进行确定。
[0028] 优选的,所述预设请求数量根据上一时间周期内每个用户的平均访问请求数量与 网络服务器当前的负载情况进行确定包括:
[0029] 计算上一时间周期内每个用户的平均访问请求数量以及每个应答包的平均延迟 时间;
[0030] 根据所述平均访问请求数量与所述平均延迟时间计算所述预设请求数量,其中, 所述预设请求数量与所述平均访问请求数量成正比,所述预设请求数量与所述平均延迟时 间均成反比。
[0031] 优选的,当确认所述网络节点为非正常网络节点后,所述方法还包括:
[0032] 屏蔽所述网络节点之后发送的访问请求,或限制所述网络节点的访问速度。
[0033] 本发明实施例还提供了一种网络节点监测装置,所述装置包括:
[0034] 访问请求接收单元、第一标识获取单元、哈希值计算单元、第一判断单元、查找单 元、第二判断单元和确定单元;
[0035] 其中,所述访问请求接收单元与所述第一标识获取单元连接,所述第一标识获取 单元与所述哈希值计算单元连接,所述哈希值计算单元与所述第一判断单元连接,所述第 一判断单元与所述查找单元连接,所述查找单元与所述第二判断单元连接,所述第二判断 单元与所述确定单元连接;
[0036] 所述访问请求接收单元,用于接收网络节点发送的访问请求;
[0037] 所述第一标识获取单元,用于获取所述网络节点区别于其他网络节点的第一标 识;
[0038] 所述哈希值计算单元,用于根据哈希算法计算所述第一标识对应的哈希值,所述 哈希值表不所述第一标识在第一表格中的位置,所述第一表格中保存有所述第一标识与所 述第一标识在第二表格中的位置的对应关系;
[0039] 所述第一判断单元,用于判断所述哈希值在所述第一表格对应的表项中是否存在 所述第一标识,如果是,则激活所述查找单元;
[0040] 所述查找单元,用于依据所述对应关系在所述第二表格中查找所述第一标识,并 在所述第一标识对应的当前的访问请求数量的基础上加1 ;
[0041] 所述第二判断单元,用于判断增加后的访问请求数量是否大于或等于预设请求数 量,如果是,则激活所述确定单元;
[0042] 所述确定单元,用于确认所述网络节点为非正常网络节点。
[0043] 优选的,所述装置还包括:第三判断单元、填写单元和记录单元,所述第一判断单 元与所述第三判断单元连接,所述第三判断单元与所述填写单元,所述填写单元与所述记 录单元连接;
[0044] 所述第一判断单元,还用于当所述哈希值在所述第一表格对应的表项中不存在所 述第一标识时,激活所述第三判断单元;
[0045] 所述第三判断单元,用于判断所述第二表格中当前指针指向的表项是否为空,如 果是,则激活所述填写单元;
[0046] 所述填写单元,用于在所述当前指针指向的表项中填写所述第一标识,并将所述 第一标识对应的访问请求数量置为1,然后激活所述记录单元;
[0047] 所述记录单元,用于在所述第一表格中记录所述第一标识以及所述第一标识在所 述第二表格中的位置。
[0048] 优选的,所述装置还包括减单元和指针单元,所述第三判断单元与所述减单元连 接,所述减单元与所述指针单元连接;
[0049] 所述第三判断单元,还用于当所述第二表格中当前指针指向的表项不为空时,激 活所述减单元;
[0050] 所述减单元,用于将所述当前指针指向的表项中的访问请求数量减1,然后激活所 述指针单元;
[0051] 所述指针单元,用于将所述当前指针指向下一个表项。
[0052] 优选的,所述装置还包括:第四判断单元和替换单元;
[0053] 所述减单元与所述第四判断单元连接,所述第四判断单元与所述替换单元连接, 所述替换单元与所述记录单元连接,所述记录单元与所述指针单元连接;
[0054] 所述第四判断单元,用于判断所述当前指针指向的表项的访问请求数量是否为0, 如果是,则激活所述替换单元;
[0055] 所述替换单元,用于计算所述当前指针指向表项中的第二标识的哈希值,并将所 述第一表格中与所述第二标识的哈希值对应的表项中的内容清空;将所述第二表格中的所 述第二标识替换为所述第一标识,并将所述第一标识对应的访问请求数量置为1,然后激活 所述记录单元;所述记录单元,用于在所述第一表格中记录所述第一标识以及所述第一标 识在所述第二表格中的位置包括:
[0
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1