僵尸网络检测方法和控制器的制造方法_6

文档序号:9380056阅读:来源:国知局
述访问概率集合,计算访问所述服务器中任意两个服务器的用户终端的相似 度,得到访问相似度矩阵; 采用预设谱聚类算法对所述访问相似度矩阵进行谱聚类,获得聚类结果; 根据所述聚类结果确定是否存在僵尸网络。2. 根据权利要求1所述的方法,其特征在于,所述根据所述第一匹配次数和所述第二 匹配次数,确定所述服务器被所述SDN中任一用户终端访问的访问概率,获得所述服务器 的访问概率集合,包括: 根据下列公式计算所述服务器被所述SDN中的任一用户终端访问的平均访问次数:其中,$为对服务器s的平均访问次数,用户终端h为所述SDN中的任一用户终端,nhs 为用于将用户终端h的数据包转发至服务器s的子流转发规则fhs的第一匹配次数,ms为目 的IP地址对应所述服务器s的子流转发规则的个数; 根据下列公式依次计算所述流转发规则中目的IP地址对应的服务器被所述SDN中任 一用户终端访问的访问概率,获得所述服务器的访问概率集合:其中,phs为SDN中的任一用户终端h访问任一流转发规则中目的IP地址对应服务器s的访问概率,/i为采用第k个子流转发规则和对应的母流转发规则得到的h访问s的访 问概率,< 根据下列公式确定:其中,匕为采用第k个子流转发规则的用户终端,Hk为与第k个母流转发规则对应的SDN中的子网,为子网Hk中包含的用户终端数量,为第k个母流转发规则的第二匹 配次数。3. 根据权利要求2所述的方法,其特征在于,所述根据所述访问概率集合,计算访问所 述服务器中任意两个服务器的用户终端的相似度,得到访问相似度矩阵,包括: 依次针对所述服务器中的任意两个服务器Sp和sq,根据下列公式计算所述SDN中访问 服务器sp的用户终端与服务器sq的用户终端的相似度,得到访问相似度矩阵: Apq= |upnuj/|upuuj 其中,Apq为所述相似度,Up为访问服务器Sp的用户终端组成的群体,Uq为访问服务器Sq的用户终端组成的群体,|UpnUq|为既访问服务器Sp又访问服务器Sq的用户终端的个 数,根据下列公式确定:|UpUUq|为访问服务器%或者访问服务器Sq的用户终端的个数,根据下列公式确定:4. 根据权利要求1至3中任一项所述的方法,其特征在于,所述采用预设谱聚类算法对 所述访问相似度矩阵进行谱聚类,获得聚类结果,包括: 对所述访问相似度矩阵进行谱分解,得到特征值; 获取大于第一预设阈值的特征值; 确定与所述大于第一预设阈值的特征值对应的特征向量; 采用预设聚类算法对所述特征向量进行聚类,获得至少两个第一类簇; 所述根据所述聚类结果确定是否存在僵尸网络包括: 根据所述至少两个第一类簇确定是否存在僵尸网络。5. 根据权利要求4所述的方法,其特征在于,所述根据所述至少两个第一类簇确定僵 尸网络,包括: 分别以所述至少两个第一类簇中的每个第一类簇作为待处理类簇,根据所述访问相似 度矩阵,确定所述待处理类簇中包含的各服务器中的任意两个服务器对应的访问相似度; 根据所述待处理类簇中包含的各服务器中的任意两个服务器对应的访问相似度,确定 所述待处理类簇的平均访问相似度; 判断所述平均访问相似度是否大于预设访问相似度阈值,并且所述待处理类簇中包含 的各服务器的数量是否大于预设数量; 当平均访问相似度大于预设访问相似度阈值并且所述待处理类簇中包含的各服务器 的数量大于预设数量,则确定所述待处理类簇中包含的各服务器构成一个僵尸网络。6. 根据权利要求5所述的方法,其特征在于,所述确定所述待处理类簇中包含的各服 务器构成一个僵尸网络之前,还包括: 判断待处理类簇的服务器平均访问次数是否小于第二预设阈值; 若小于所述第二预设阈值,则更新所述待处理类簇中包含的各服务器对应的母流转发 规则中的子网地址,并根据更新后的各服务器对应的母流转发规则中的子网地址获得至少 两个第二类簇; 所述确定所述待处理类簇中包含的各服务器构成一个僵尸网络,包括: 确定所述至少两个第二类簇中是否存在与所述待处理类簇中包含的各服务器的服务 器相似度大于第三预设阈值的类簇; 若存在,则确定所述待处理类簇中包含的各服务器构成一个僵尸网络。7. 根据权利要求6所述的方法,其特征在于,所述根据更新后的各服务器对应的母流 转发规则中的子网地址获得至少两个第二类簇,包括: 将所述更新后的流转发规则下发给所述openflow交换机,并根据所述openflow交换 机在第二预设时间段内上报的所述更新后的流转发规则的统计信息获得至少两个第二类 簇。8. 根据权利要求1至7中任一项所述的方法,其特征在于,所述接收软件定义网络SDN 中的openflow交换机在第一预设时间段内上报的流转发规则的统计信息之前,还包括: 接收openflow交换机转发的待处理数据包,所述数据包中包括源IP地址和目的IP地 址; 根据所述源IP地址和所述目的IP地址构造所述流转发规则,并将构造的所述流转发 规则下发给所述openflow交换机。9. 一种控制器,其特征在于,包括: 第一接收模块,用于接收软件定义网络SDN中的openflow交换机在第一预设时间段内 上报的流转发规则的统计信息,所述流转发规则包括子流转发规则和与所述子流转发规则 对应的母流转发规则,所述统计信息包括所述子流转发规则的第一匹配次数和所述母流转 发规则的第二匹配次数; 其中,所述子流转发规则用于指示将SDN中与所述子流转发规则中的源IP地址对应的 数据包转发至与所述子流转发规则中的目的IP地址对应的SDN外部的服务器,所述母流转 发规则用于将SDN中与所述源IP地址对应的子网地址内的数据包转发至所述服务器; 第一确定模块,用于根据所述第一匹配次数和所述第二匹配次数,计算所述服务器被 所述SDN中任一用户终端访问的访问概率,获得所述服务器访问的概率集合; 计算模块,用于根据所述访问概率集合,计算访问所述服务器中任意两个服务器的用 户终端的相似度,得到访问相似度矩阵; 聚类模块,用于采用预设谱聚类算法对所述访问相似度矩阵进行谱聚类,获得聚类结 果; 第二确定模块,用于根据所述聚类结果确定是否存在僵尸网络。10. 根据权利要求9所述的控制器,其特征在于,所述第一确定模块,包括: 第一确定单元,用于根据下列公式计算所述服务器被所述SDN中的任一用户终端访问 的平均访问次数:其中,^为对服务器s的平均访问次数,用户终端h为所述SDN中的任一用户终端,nhs 为用于将用户终端h的数据包转发至服务器s的子流转发规则fhs的第一匹配次数,ms为目 的IP地址对应所述服务器s的子流转发规则的个数; 第二确定单元,用于根据下列公式依次计算所述流转发规则中目的IP地址对应的服 务器被所述SDN中任一用户终端访问的访问概率,获得所述服务器的访问概率集合:其中,phs为SDN中的任一用户终端h访问任一流转发规则中目的IP地址对应服务器 S的访问概率,?4为采用第k个子流转发规则和对应的母流转发规则得到的h访问S的访 问概率,裉据下列公式确定:其中,匕为采用第k个子流转发规则的用户终端,Hk为与第k个母流转发规则对应的SDN中的子网,为子网比中包含的用户终端数量,为第k个母流转发规则的第二匹 配次数。11. 根据权利要求10所述的控制器,其特征在于,所述计算模块,具体用于: 依次针对所述服务器中的任意两个服务器sp和sq,根据下列公式计算所述SDN中访问 服务器sp的用户终端与服务器sq的用户终端的相似度,得到访问相似度矩阵: Apq= |upnuj/|upuuj 其中,Apq为所述相似度,Up为访问服务器Sp的用户终端组成的群体,Uq为访问服务器Sq的用户终端组成的群体,|UpnUq|为既访问服务器Sp又访问服务器Sq的用户终端的个 数,根据下列公式确定:|UpUUq|为访问服务器%或者访问服务器Sq的用户终端的个数,根据下列公式确定:12. 根据权利要求9至11所述的控制器,其特征在于,所述聚类模块,包括: 分解单元,用于对所述访问相似度矩阵进行谱分解,得到特征值; 获取单元,用于获取大于第一预设阈值的特征值; 第三确定单元,用于确定与所述大于第一预设阈值的特征值对应的特征向量; 处理单元,用于采用预设聚类算法对所述特征向量进行聚类,获得至少两个第一类 簇; 所述第二确定模块,具体用于根据所述至少两个第一类簇确定僵尸网络。13. 根据权利要求12所述的控制器,其特征在于,所述第二确定模块,包括: 第四确定单元,用于分别以所述至少两个第一类簇中的每个第一类簇作为待处理类 簇,根据所述访问相似度矩阵,确定所述待处理类簇中包含的各服务器中的任意两个服务 器对应的访问相似度; 第五确定单元,根据所述待处理类簇中包含的各服务器中的任意两个服务器对应的访 问相似度,确定所述待处理类簇的平均访问相似度; 判断单元,用于判断所述平均访问相似度是否大于预设访问相似度阈值,并且所述待 处理类簇中包含的各服务器的数量是否大于预设数量; 第六确定单元,用于当平均访问相似度大于预设访问相似度阈值并且所述待处理类簇 中包含的各服务器的数量大于预设数量,则确定所述待处理类簇中包含的各服务器构成一 个僵尸网络。14. 根据权利要求13所述的控制器,其特征在于,还包括: 判断模块,用于判断待处理类簇的服务器平均访问次数是否小于第二预设阈值; 处理模块,用于若所述判断模块判断小于所述第二预设阈值,则更新所述待处理类簇 中包含的各服务器对应的母流转发规则中的子网地址,并根据更新后的各服务器对应的母 流转发规则中的子网地址获得至少两个第二类簇; 第二确定模块,具体用于: 确定所述至少两个第二类簇中是否存在与所述待处理类簇中包含的各服务器的服务 器相似度大于第三预设阈值的类簇; 若存在,则确定所述待处理类簇中包含的各服务器构成一个僵尸网络。15. 根据权利要求14所述的控制器,其特征在于,所述处理模块,用于: 将所述更新后的流转发规则下发给所述openflow交换机,并根据所述openflow交换 机在第二预设时间段内上报的所述更新后的流转发规则的统计信息获得至少两个第二类 簇。16. 根据权利要求9至15中任一项所述的控制器,其特征在于,还包括: 第二接收模块,用于接收openflow交换机转发的待处理数据包,所述数据包中包括源IP地址和目的IP地址; 发送模块,用于根据所述源IP地址和所述目的IP地址构造所述流转发规则,并将构造 的所述流转发规则下发给所述openflow交换机。
【专利摘要】本发明实施例提供一种僵尸网络检测方法和控制器,该方法包括:接收SDN中openflow交换机上报的每个流转发规则的统计信息,统计信息包括子流转发规则的第一匹配次数和母流转发规则的第二匹配次数;根据各第一匹配次数和各第二匹配次数确定每个服务器被任一用户终端访问的访问概率集合;根据访问概率集合两两计算访问任两个服务器的用户终端的相似度得到访问相似度矩阵;采用谱聚类算法对访问相似度矩阵进行谱聚类以根据聚类结果确定是否存在僵尸网络。母流转发规则中的源IP地址为一个子网地址,大大降低了控制器的处理负载,基于访问相似度来确定僵尸网络,提高了僵尸网络的检测效率。
【IPC分类】H04L29/06, H04L12/26
【公开号】CN105099799
【申请号】CN201410186366
【发明人】陶敬, 李剑锋, 蔡启申
【申请人】华为技术有限公司, 西安交通大学
【公开日】2015年11月25日
【申请日】2014年5月5日
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1