CN112398969B - IPv6地址的动态探测方法、装置及计算机设备 - Google Patents

IPv6地址的动态探测方法、装置及计算机设备 Download PDF

Info

Publication number
CN112398969B
CN112398969B CN202110065886.8A CN202110065886A CN112398969B CN 112398969 B CN112398969 B CN 112398969B CN 202110065886 A CN202110065886 A CN 202110065886A CN 112398969 B CN112398969 B CN 112398969B
Authority
CN
China
Prior art keywords
iteration
detection
address
ipv6
reward
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110065886.8A
Other languages
English (en)
Other versions
CN112398969A (zh
Inventor
蔡志平
侯冰楠
周桐庆
刘宁
胡罡
侯昌盛
杨涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202110065886.8A priority Critical patent/CN112398969B/zh
Publication of CN112398969A publication Critical patent/CN112398969A/zh
Application granted granted Critical
Publication of CN112398969B publication Critical patent/CN112398969B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种IPv6地址的动态探测方法、装置及计算机设备。所述方法包括:获取预设IPv6种子地址,以此为依据,利用层次分裂聚类法构建空间树,空间树的一个叶子节点代表地址空间的一个区域。首次探测根据种子地址密度分配探测资源,并得到探测奖惩量和首次期望奖励。根据当前时刻的期望奖励和探测奖惩量,通过强化学习得到下一时刻的期望奖励,根据其得到下一时刻的待测目标地址和探测资源;利用探测资源对待测目标地址进行探测,得到探测奖惩量和活跃IPv6地址,并记录该地址,直到探测资源耗尽,迭代停止。本方法引入期望奖励,通过强化学习的方法增加与真实环境之间的交互,提高IPv6地址空间命中率。

Description

IPv6地址的动态探测方法、装置及计算机设备
技术领域
本申请涉及互联网技术领域,特别是涉及一种IPv6地址的动态探测方法、装置及计算机设备。
背景技术
随着IPv4地址空间分配殆尽,互联网正在不可避免地向IPv6过渡。新互联网协议IPv6拥有巨大的地址空间,近年来得到了广泛的关注和迅速的普及。然而,IPv6其巨量的地址空间范围在互联网测量方面也提出了新的挑战。在IPv4网络,受益于现代硬件和计算能力的进步,使得互联网全网扫描成为可能。在网络拓扑探测方面,像ZMap和Masscan这样的异步扫描工具极大地增强了我们进行全网测量的能力。在网络资产扫描方面,Shodan、Censys等网络设备搜索引擎可以获取丰富的网络资产数据,用于评估网络安全状况、漏洞发现与修复等。然而,IPv6巨量的地址空间范围使得这些工具并不能直接应用。为此,行业内积极发展一种高效的互联网范围的IPv6地址空间探测方法。
现有的IPv6地址空间探测方法,如Entropy/IP、6Gen、6Tree等,在IPv6地址空间探测方面取得了一定的成绩,但是IPv6地址空间探测效率方面存在探测效率不高的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种通过增加迭代探测与真实环境之间的交互,提高IPv6地址空间命中率的IPv6地址的动态探测方法、装置及计算机设备。
一种IPv6地址的动态探测方法,所述方法包括:
获取预设IPv6种子地址以及预定的总资源阈值。
根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域。
根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定。
设置迭代次数为
Figure 284632DEST_PATH_IMAGE001
;所述迭代次数
Figure 286086DEST_PATH_IMAGE001
为大于等于1的整数,首次探测时迭代次数
Figure 701630DEST_PATH_IMAGE002
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量。
在第
Figure 573771DEST_PATH_IMAGE003
次迭代时,将第
Figure 567135DEST_PATH_IMAGE004
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表。
根据第
Figure 55885DEST_PATH_IMAGE004
次迭代的区域扫描期望奖励和第
Figure 261739DEST_PATH_IMAGE004
次迭代的探测奖惩量,通过强化学习得到第
Figure 768812DEST_PATH_IMAGE005
次迭代的区域扫描期望奖励。
根据所述第
Figure 667498DEST_PATH_IMAGE005
次迭代的区域扫描期望奖励,生成第
Figure 377965DEST_PATH_IMAGE005
次迭代的区域待测目标IPv6地址,并分配第
Figure 387509DEST_PATH_IMAGE005
次迭代的区域探测资源。
对所述第
Figure 765401DEST_PATH_IMAGE005
次迭代的区域待测目标IPv6地址,利用所述第
Figure 320141DEST_PATH_IMAGE005
次迭代的区域探测资源进行探测,得到第
Figure 783484DEST_PATH_IMAGE005
次迭代的探测奖惩量和第
Figure 596719DEST_PATH_IMAGE005
次迭代的活跃IPv6地址。
根据所述第
Figure 563538DEST_PATH_IMAGE005
次迭代的区域探测资源,更新所述资源数量。
当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
在其中一个实施例中,空间树的每一个叶子节点代表地址空间的一个区域;根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树,还包括:
根据所述预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点。
从所述根节点开始向下进行节点分裂,得到分裂节点;所述分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;所述R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间。
所述非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成所述空间树的构建。
在其中一个实施例中,根据第
Figure 538447DEST_PATH_IMAGE006
次迭代的区域扫描期望奖励和第
Figure 472774DEST_PATH_IMAGE006
次迭代的探测奖惩量,通过强化学习得到第
Figure 89700DEST_PATH_IMAGE005
次迭代的区域扫描期望奖励,还包括:
设置学习速率,所述学习速率是大于等于0小于等于1的实数。
根据第
Figure 176605DEST_PATH_IMAGE006
次迭代的区域扫描期望奖励、第
Figure 587995DEST_PATH_IMAGE006
次迭代的探测奖惩量和所述学习速率,确定第
Figure 760350DEST_PATH_IMAGE007
次迭代的区域扫描期望奖励;所述第
Figure 915388DEST_PATH_IMAGE007
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 940539DEST_PATH_IMAGE008
其中:
Figure 522830DEST_PATH_IMAGE009
为所述学习速率,
Figure 182482DEST_PATH_IMAGE010
Figure 875631DEST_PATH_IMAGE011
为所述迭代次数,
Figure 671549DEST_PATH_IMAGE012
Figure 674009DEST_PATH_IMAGE013
为区域
Figure 820957DEST_PATH_IMAGE014
Figure 52218DEST_PATH_IMAGE015
次迭代的区域扫描期望奖励;
Figure 702642DEST_PATH_IMAGE016
为区域
Figure 892315DEST_PATH_IMAGE017
所述第
Figure 11712DEST_PATH_IMAGE018
次迭代的区域扫描期望奖励;
Figure 312243DEST_PATH_IMAGE019
为第
Figure 817174DEST_PATH_IMAGE020
次迭代与区域i相关的探测奖惩量。
在其中一个实施例中,根据所述第
Figure 177748DEST_PATH_IMAGE021
次迭代的区域扫描期望奖励,生成第
Figure 299288DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址,并分配第
Figure 872351DEST_PATH_IMAGE021
次迭代的区域探测资源,还包括:
根据所述第
Figure 746635DEST_PATH_IMAGE021
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率。
根据所述区域中包含的所述预设IPv6种子地址和所述概率,生成第
Figure 12532DEST_PATH_IMAGE021
次迭代的区域待测IPv6地址。
将所述区域待测IPv6地址与所述活跃IPv6地址表进行比对,当有重复IPv6地址时,则在所述区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 355788DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址。
设置第
Figure 998122DEST_PATH_IMAGE021
次迭代的探测奖惩量为0。
将所述第
Figure 743224DEST_PATH_IMAGE021
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新所述第
Figure 927825DEST_PATH_IMAGE021
次迭代的探测奖惩量。
根据所述概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 492798DEST_PATH_IMAGE021
次迭代的区域探测资源。
在其中一个实施例中,对所述第
Figure 673244DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址,利用所述第
Figure 538432DEST_PATH_IMAGE021
次迭代的区域探测资源进行探测,得到第
Figure 411710DEST_PATH_IMAGE021
次迭代的探测奖惩量和第
Figure 713247DEST_PATH_IMAGE021
次迭代的活跃IPv6地址,还包括:
对所述第
Figure 697383DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果。
当判断结果为活跃IPv6地址时,所述探测奖惩量自加1更新所述探测奖惩量,所述区域待测目标地址为活跃IPv6地址,得到第
Figure 885919DEST_PATH_IMAGE021
次迭代的探测奖惩量和第
Figure 930099DEST_PATH_IMAGE021
次迭代的活跃IPv6地址。
在其中一个实施例中,根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域,还包括:
在空间树构建的同时计算区域的种子密度。
当所述区域的种子密度超过预定密度阈值,则扫描所述区域的所有地址,并将所述区域对应的所述叶子节点从所述空间树中移除。
在其中一个实施例中,根据所述第
Figure 469664DEST_PATH_IMAGE021
次迭代的区域扫描期望奖励,生成第
Figure 8224DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址,并分配第
Figure 316846DEST_PATH_IMAGE021
次迭代的区域探测资源,步骤后边还包括:
统计第
Figure 531927DEST_PATH_IMAGE021
次迭代的区域待测目标IPv6地址的区域数量,当所述区域数量小于预定区域数量阈值时,迭代停止。
在所述活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将所述IPv6地址的128位地址以半字节为单位进行划分,将所述活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,所述新的IPv6地址组成新IPv6种子地址。
根据所述新IPv6种子地址构建空间树。
在迭代过程中,对所述区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
一种IPv6地址的动态探测装置,所述装置包括:
预设IPv6种子地址获取模块:用于获取预设IPv6种子地址以及预定的总资源阈值。
空间树构建模块:用于根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域。
首次探测模块:用于根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定。
迭代探测前准备模块:用于设置迭代次数为
Figure 558788DEST_PATH_IMAGE022
,所述迭代次数
Figure 884727DEST_PATH_IMAGE023
为大于等于1的整数;当进行所述首次探测时
Figure 313435DEST_PATH_IMAGE024
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量。
探测迭代模块:用于在第
Figure 683105DEST_PATH_IMAGE025
次迭代时,将第
Figure 462842DEST_PATH_IMAGE023
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表;根据第
Figure 592472DEST_PATH_IMAGE023
次迭代的区域扫描期望奖励和第
Figure 610107DEST_PATH_IMAGE026
次迭代的探测奖惩量,通过强化学习得到第
Figure 166990DEST_PATH_IMAGE025
次迭代的区域扫描期望奖励;根据所述第
Figure 916247DEST_PATH_IMAGE025
次迭代的区域扫描期望奖励,生成第
Figure 318409DEST_PATH_IMAGE025
次迭代的区域待测目标IPv6地址,并分配第
Figure 721709DEST_PATH_IMAGE025
次迭代的区域探测资源;对所述第
Figure 715073DEST_PATH_IMAGE025
次迭代的区域待测目标IPv6地址,利用所述第
Figure 672664DEST_PATH_IMAGE025
次迭代的区域探测资源进行探测,得到第
Figure 409676DEST_PATH_IMAGE025
次迭代的探测奖惩量和第
Figure 916750DEST_PATH_IMAGE025
次迭代的活跃IPv6地址;根据所述第
Figure 549857DEST_PATH_IMAGE025
次迭代的区域探测资源,更新所述资源数量;当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取预设IPv6种子地址以及预定的总资源阈值。
根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域。
根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定。
设置迭代次数为
Figure 525903DEST_PATH_IMAGE026
;所述迭代次数
Figure 535447DEST_PATH_IMAGE026
为大于等于1的整数,首次探测时迭代次数
Figure 647760DEST_PATH_IMAGE027
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量。
在第
Figure 468079DEST_PATH_IMAGE028
次迭代时,将第
Figure 665842DEST_PATH_IMAGE029
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表。
根据第
Figure 744657DEST_PATH_IMAGE029
次迭代的区域扫描期望奖励和第
Figure 711476DEST_PATH_IMAGE029
次迭代的探测奖惩量,通过强化学习得到第
Figure 951964DEST_PATH_IMAGE030
次迭代的区域扫描期望奖励。
根据所述第
Figure 902603DEST_PATH_IMAGE028
次迭代的区域扫描期望奖励,生成第
Figure 503217DEST_PATH_IMAGE028
次迭代的区域待测目标IPv6地址,并分配第
Figure 590122DEST_PATH_IMAGE028
次迭代的区域探测资源。
对所述第
Figure 1512DEST_PATH_IMAGE028
次迭代的区域待测目标IPv6地址,利用所述第
Figure 908288DEST_PATH_IMAGE028
次迭代的区域探测资源进行探测,得到第
Figure 328905DEST_PATH_IMAGE028
次迭代的探测奖惩量和第
Figure 4737DEST_PATH_IMAGE028
次迭代的活跃IPv6地址。
根据所述第
Figure 600410DEST_PATH_IMAGE028
次迭代的区域探测资源,更新所述资源数量。
当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取预设IPv6种子地址以及预定的总资源阈值。
根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域。
根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定。
设置迭代次数为
Figure 260061DEST_PATH_IMAGE031
;所述迭代次数
Figure 953211DEST_PATH_IMAGE031
为大于等于1的整数,首次探测时迭代次数
Figure 14708DEST_PATH_IMAGE032
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量。
在第
Figure 33479DEST_PATH_IMAGE028
次迭代时,将第
Figure 649268DEST_PATH_IMAGE031
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表。
根据第
Figure 660956DEST_PATH_IMAGE033
次迭代的区域扫描期望奖励和第
Figure 576959DEST_PATH_IMAGE033
次迭代的探测奖惩量,通过强化学习得到第
Figure 501053DEST_PATH_IMAGE034
次迭代的区域扫描期望奖励。
根据所述第
Figure 135296DEST_PATH_IMAGE034
次迭代的区域扫描期望奖励,生成第
Figure 435828DEST_PATH_IMAGE034
次迭代的区域待测目标IPv6地址,并分配第
Figure 940758DEST_PATH_IMAGE034
次迭代的区域探测资源。
对所述第
Figure 52065DEST_PATH_IMAGE034
次迭代的区域待测目标IPv6地址,利用所述第
Figure 908026DEST_PATH_IMAGE034
次迭代的区域探测资源进行探测,得到第
Figure 746669DEST_PATH_IMAGE034
次迭代的探测奖惩量和第
Figure 637264DEST_PATH_IMAGE034
次迭代的活跃IPv6地址。
根据所述第
Figure 903160DEST_PATH_IMAGE034
次迭代的区域探测资源,更新所述资源数量。
当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
上述IPv6地址的动态探测方法、装置及计算机设备。通过获取预设IPv6种子地址,以此为依据,利用层次分裂聚类法构建空间树,空间树的一个叶子节点代表地址空间的一个区域。首次探测根据种子地址密度分配探测资源,并探测得到探测奖惩量和首次期望奖励。根据当前时刻期望奖励和当前时刻探测奖惩量,通过强化学习得到下一时刻期望奖励,根据其得到下一时刻的待测目标地址和探测资源;利用探测资源对待测目标地址进行探测,得到探测奖惩量和活跃IPv6地址,并记录该地址,直到探测资源耗尽,迭代停止。本方法引入期望奖励,通过强化学习的方法增加与真实环境之间的交互,提高IPv6地址空间命中率。
附图说明
图1为一个实施例中IPv6地址的动态探测方法的流程示意图;
图2为一个实施例中空间树的构建示意图;
图3为一个实施例中地址交叉操作流程示意图;
图4为另一个实施例中IPv6地址的动态探测方法工作流程图;
图5为一个实施例中IPv6地址的动态探测装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种IPv6地址的动态探测方法,包括以下步骤:
步骤100,获取预设IPv6种子地址以及预定的总资源阈值。
预设IPv6种子地址是第三方机构给定的一组已知的活跃IPv6地址。
总资源阈值是IPv6地址的动态探测实验中设定的探测包的总数量。在一个实施例中预定总资源阈值为30000。
步骤102,根据预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;空间树的每一个叶子节点代表地址空间的一个区域。
将整个IPv6地址空间作为根节点,把128位的IPv6地址看成32个半字节,每个字节为1维空间,整个IPv6地址空间就是32维IPv6地址空间,以预设IPv6种子地址的结构为依据,通过层次化的方式从根到叶构建的,通过自顶向下的方式分割32维IPv6地址空间,构建空间树。空间树的每一个叶子节点代表地址空间的一个区域。
步骤104,根据区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据区域探测资源对区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;首次的区域扫描期望奖励由探测奖惩量确定。
根据区域IPv6种子地址密度进行最初的探测资源分配,并迭代地探索活跃地址。算法中定义了一个区域扫描期望奖励,每次扫描迭代后根据探测奖惩量和首次的区域扫描期望奖励更新区域扫描期望奖励,显然期望奖励越高,下一轮迭代,该区域分配的资源就越多(生成更多的待探测地址)。后续的探测过程也是根据每个区域的期望奖励进行相应的资源分配。
探测奖惩量是每次扫描迭代过程中探测到的区域内活动IPv6种子的数量。
区域扫描期望奖励是动态地址探测中生成区域待测目标IPv6地址和分配探测资源的依据。
步骤106,设置迭代次数为
Figure 246417DEST_PATH_IMAGE033
;迭代次数
Figure 138019DEST_PATH_IMAGE033
为大于等于1的整数,首次探测时迭代次数
Figure 883121DEST_PATH_IMAGE035
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,资源数量是剩余的探测资源的数量。
设置迭代次数是为了方便在后边把迭代的流程表达的更加清楚。
资源数量表示剩余的探测资源的数量。
步骤108,在第
Figure 319918DEST_PATH_IMAGE036
次迭代时,将第
Figure 150471DEST_PATH_IMAGE033
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新活跃IPv6地址表;根据第
Figure 596496DEST_PATH_IMAGE033
次迭代的区域扫描期望奖励和第
Figure 196104DEST_PATH_IMAGE037
次迭代的探测奖惩量,通过强化学习得到第
Figure 551606DEST_PATH_IMAGE036
次迭代的区域扫描期望奖励;根据第
Figure 603876DEST_PATH_IMAGE036
次迭代的区域扫描期望奖励,生成第
Figure 588012DEST_PATH_IMAGE036
次迭代的区域待测目标IPv6地址,并分配第
Figure 307707DEST_PATH_IMAGE036
次迭代的区域探测资源;对第
Figure 351886DEST_PATH_IMAGE036
次迭代的区域待测目标IPv6地址,利用第
Figure 875140DEST_PATH_IMAGE036
次迭代的区域探测资源进行探测,得到第
Figure 662967DEST_PATH_IMAGE036
次迭代的探测奖惩量和第
Figure 971589DEST_PATH_IMAGE036
次迭代的活跃IPv6地址;根据第
Figure 186670DEST_PATH_IMAGE036
次迭代的区域探测资源,更新资源数量;当资源数量满足预先设置的迭代输出条件时,迭代停止。
Figure 213532DEST_PATH_IMAGE036
次迭代的区域扫描期望奖励是生成
Figure 539471DEST_PATH_IMAGE036
次迭代的区域待测目标IPv6地址和分配第
Figure 984490DEST_PATH_IMAGE036
次迭代的区域探测资源的依据,第
Figure 104892DEST_PATH_IMAGE036
次迭代的区域扫描期望奖励值越高,生成的
Figure 619050DEST_PATH_IMAGE036
次迭代的区域待测目标IPv6地址数量越多,分配的第
Figure 748680DEST_PATH_IMAGE036
次迭代的区域探测资源数量就越多。
区域探测资源是多个ICMPv6探测包。
利用区域探测资源进行探测的方法是:向区域待测目标IPv6地址发送探测包,判断该地址是否为活跃地址。如果探测地址为活跃地址则探测奖惩量加1,并且记录该活跃IPv6地址。
IPv6地址的动态探测方法的原理可以总结为:首先利用预设IPv6种子地址结合层次分裂聚类算法构造一个空间树,定义了一个区域扫描期望奖励,首次探测根据区域内IPv6种子地址的密度,分配探测资源进行活性探测,得到当前时刻探测奖惩量和区域扫描期望奖励,通过强化学习计算下一时刻迭代的区域扫描期望奖励,根据下一时刻迭代的区域扫描期望奖励探测方向和探测资源分配,直到所有的探测资源耗尽为止,探测程序结束。
上述IPv6地址的动态探测方法中,通过获取预设IPv6种子地址,以此为依据,利用层次分裂聚类法构建空间树,空间树的一个叶子节点代表地址空间的一个区域。首次探测根据种子地址密度分配探测资源,并探测得到探测奖惩量和首次期望奖励。根据当前时刻期望奖励和当前时刻探测奖惩量,通过强化学习得到下一时刻期望奖励,根据其得到下一时刻的待测目标地址和探测资源;利用探测资源对待测目标地址进行探测,得到探测奖惩量和活跃IPv6地址,并记录该地址,直到探测资源耗尽,迭代停止。本发明引入期望奖励,通过强化学习的方法增加与真实环境之间的交互,提高IPv6地址空间命中率。
在一个实施例中,步骤102,还包括:根据预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点;从根节点开始向下进行节点分裂,得到分裂节点;分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间;非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成空间树的构建。
R类型节点定义的是一种新型的叶子节点。为了克服分裂聚类过程中的空间损失问题,为每个非叶节点在分裂过程中添加一个“R节点”作为它的子节点,这就保证了IPv6地址动态探测可以覆盖整个IPv6地址空间。
在空间树数据结构中,兄弟结点是指同一双亲结点的子结点之间互为兄弟结点。在一颗树中选定根节点后,相邻的两点,靠近根节点的是双亲节点,远一点的是孩子节点。
在其中一个实施例中,如图2所示,提供了一种空间树生成实例,图2显示了用500个种子所构建“空间树”的示例。该空间树总共包含147个节点,为了便于说明,我们只画了部分节点。其中蓝色节点表示非叶节点,红色节点为叶子节点。可以看到,方法应用了自上而下的层次聚类方法。从根到叶节点,地址可变维度数的数量逐渐减少。与此同时,每个非叶子节点有一个R节点作为它的子节点,它覆盖了其他兄弟节点不包含的地址空间,这样就保证了“空间树”涵盖整个IPv6地址空间。
在一个实施例中,步骤102,还包括:在空间树构建的同时计算区域的种子密度;当区域的种子密度超过预定密度阈值,则扫描区域的所有地址,并将区域对应的叶子节点从空间树中移除。
随着算法的不断迭代,活跃地址密度较大的区域的期望奖励会越来越高,导致在这些区域分配更多探测资源,这将最终导致算法的收敛。然而,也有可能一些高密度区域一开始没有足够的机会进行探测,如果算法在其他区域上收敛过早,可能会错过这些高密度区域。这种现象称为算法早熟。
目标IPv6地址生成算法的实质是根据区域扫描期望奖励值动态调整生成的目标区域,因此资源总是被高活跃密度的区域所吸引。为了防止算法在开始执行时陷入局部最优,算法中在划分地址空间的同时就计算出每个区域的种子密度。如果某一区域的种子密度超过一定的阈值,则进行“减枝”,即扫描该区域的所有地址,并将该区域对应的叶节点从空间树中移除。
在一个实施例中,步骤108还包括,设置学习速率,学习速率是大于等于0小于等于1的实数;根据第
Figure 31894DEST_PATH_IMAGE037
次迭代的区域扫描期望奖励、第
Figure 588777DEST_PATH_IMAGE037
次迭代的探测奖惩量和学习速率,确定第
Figure 573920DEST_PATH_IMAGE038
次迭代的区域扫描期望奖励;第
Figure 507241DEST_PATH_IMAGE038
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 644961DEST_PATH_IMAGE039
其中:
Figure 372746DEST_PATH_IMAGE040
为学习速率,
Figure 546982DEST_PATH_IMAGE041
Figure 283993DEST_PATH_IMAGE042
为迭代次数,
Figure 541799DEST_PATH_IMAGE043
Figure 174906DEST_PATH_IMAGE044
为区域
Figure 150952DEST_PATH_IMAGE045
Figure 409764DEST_PATH_IMAGE046
次迭代的区域扫描期望奖励;
Figure 522077DEST_PATH_IMAGE047
为区域
Figure 591664DEST_PATH_IMAGE048
Figure 789427DEST_PATH_IMAGE049
次迭代的区域扫描期望奖励;
Figure 868242DEST_PATH_IMAGE050
为第
Figure 320214DEST_PATH_IMAGE051
次迭代与区域i相关的探测奖惩量。
本发明中采用强化学习的方法来生成目标,其根据现有探测的反馈调整探索的方向,这体现在下一轮迭代探测包的分配。之所以采用基于强化学习的算法有以下考虑:
第一,一个地区的种子密度可能与该地区真实活跃的地址数目有很大差异,因此,我们不应该过度依赖种子密度大小进行探测资源的分配,而只是使用种子密度作为初始扫描中探测资源分配的依据。然后根据探测的结果,逐步修改各区域的期望奖励和探测资源分配。
第二,一个地区的活动密度可能随着时间的变化而变化。这是因为当一些地址在区域被检测到是活动的,这些活跃地址应该被记录下来并移出该地区以防止它们进行重复探测。为此,本发明中同时使用了一个探测奖惩量来惩罚所生成的重复的目标地址,以减少对一些区域的过度探索。
Figure 826281DEST_PATH_IMAGE052
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 511341DEST_PATH_IMAGE053
其中:
Figure 862688DEST_PATH_IMAGE054
为学习速率,
Figure 949592DEST_PATH_IMAGE055
Figure 360982DEST_PATH_IMAGE056
为迭代次数,
Figure 782605DEST_PATH_IMAGE057
Figure 203222DEST_PATH_IMAGE058
为区域
Figure 879054DEST_PATH_IMAGE059
Figure 726924DEST_PATH_IMAGE060
次迭代的区域扫描期望奖励;
Figure 386576DEST_PATH_IMAGE061
为区域
Figure 79725DEST_PATH_IMAGE062
Figure 889025DEST_PATH_IMAGE063
次迭代的区域扫描期望奖励;
Figure 642217DEST_PATH_IMAGE064
为第
Figure 523586DEST_PATH_IMAGE065
次迭代与区域i相关的探测奖惩量。
在一个实施例中,步骤108还包括,根据第
Figure 286005DEST_PATH_IMAGE066
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率;根据区域中包含的预设IPv6种子地址和概率,生成第
Figure 202009DEST_PATH_IMAGE066
次迭代的区域待测IPv6地址;将区域待测IPv6地址与活跃IPv6地址表进行比对,当有重复IPv6地址时,则在区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 126102DEST_PATH_IMAGE066
次迭代的区域待测目标IPv6地址;设置第
Figure 744034DEST_PATH_IMAGE066
次迭代的探测奖惩量为0;将第
Figure 44566DEST_PATH_IMAGE066
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新第
Figure 815076DEST_PATH_IMAGE066
次迭代的探测奖惩量;根据概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 175650DEST_PATH_IMAGE066
次迭代的区域探测资源。
利用种子地址信息所计算的每个地区的活动密度可能不准确。本发明中采用动态调整探测资源分配的策略来获得更好的命中率。本发明使用soft-max算法来增加探索未知区域的机率,探索未知区域的机率的计算公式为:
Figure 766031DEST_PATH_IMAGE067
其中:
Figure 870253DEST_PATH_IMAGE068
为区域编号;
Figure 511581DEST_PATH_IMAGE069
为探索区域
Figure 777478DEST_PATH_IMAGE070
的机率;
Figure 120734DEST_PATH_IMAGE071
为区域
Figure 763068DEST_PATH_IMAGE070
Figure 242591DEST_PATH_IMAGE072
迭代时的区域扫描期望奖励;
Figure 944968DEST_PATH_IMAGE073
为IPv6地址空间中所有的区域数量,
Figure 759209DEST_PATH_IMAGE074
表示在
Figure 205234DEST_PATH_IMAGE075
迭代时的IPv6地址空间中所有区域的区域扫描期望奖励取指数后求和。
获得探索未知区域的机率根据玻尔兹曼公式来进行探测资源的分配。
在其中一个实施例中,步骤108还包括,对第
Figure 804842DEST_PATH_IMAGE075
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果;当判断结果为活跃IPv6地址时,探测奖惩量自加1更新探测奖惩量,区域待测目标地址为活跃IPv6地址,得到第
Figure 678120DEST_PATH_IMAGE075
次迭代的探测奖惩量和第
Figure 730390DEST_PATH_IMAGE075
次迭代的活跃IPv6地址。
在一个实施例中,步骤108还包括,统计第
Figure 980106DEST_PATH_IMAGE075
次迭代的区域待测目标IPv6地址的区域数量,当区域数量小于预定区域数量阈值时,迭代停止;在活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将IPv6地址的128位地址以半字节为单位进行划分,将活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,新的IPv6地址组成新IPv6种子地址;根据新IPv6种子地址构建空间树;在迭代过程中,对区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
当发现算法早熟时,即在当前迭代中产生目标的区域数量小于一个阈值,根据经验,阈值一般设为区域总数的1/20。空间重划分过程利用从检测到的活跃地址中随机选择的地址重新构建空间树,然后进行后续扫描以对空间进行更广泛的探索。空间重划分分为以下三个步骤:(1)选择。从目前已知的所有可用活跃地址中形成新种子。(2)交叉。该步骤为了改变搜索区间,进行更多探索。交叉步骤集中在处理地址向量的低维区间,一般选取地址的低16维度进行交叉,主要是为了重新划分区域。(3)变异。该步骤也是为了改变搜索区间,进行更多探索。但是该步骤集中在处理地址向量的高维区间,一般选取高16位进行变异,主要是为了探索未知区域。
如图3所示是一个地址交叉操作的实例。该步骤是一个概率过程,它在两个“父”地址之间交换信息,以生成两个“子”种子。对于“父”地址,在较低维的区间内生成一个随机整数,称为交叉点(交叉点的选取位置一般在[17,32]维度)。位于交叉点右侧的部分数值互换以生成两个新的后代。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,IPv6地址的动态探测方法的工作流程:首先将根据种子IPv6地址划分候选扫描区间,并利用现有区域IPv6种子地址密度进行最初的探测资源分配。然后迭代地探索活跃地址。同时,定义了一个区域扫描期望奖励(即Q-value)用于记录区域的探测回报。每次扫描迭代后根据探测结果更新区域Q-value。在后续的探测过程中根据每个区域的Q-value进行相应的资源分配。其活性探测过程可简单归纳为:地址扫描—更新Q-value—调整探测资源分配,该探测过程持续进行直到探测量达到预算限制。
通过利用扫描结果的实时反馈,动态调整搜索方向,使其指向包含更活跃地址的区域,将探测资源向活动密度较高的区域倾斜。这种特性使得它在地址探测中效率更高,并且大大降低了对初始种子质量的依赖程度。在实网测试中,方法在命中率上比已有方法(Entropy/IP,6Gen和6Tree)的命中率更高。
在一个实施例中,如图5所示,提供了一种IPv6地址的动态探测装置,包括:预设IPv6种子地址获取模块、空间树构建模块、首次探测模块、迭代探测前准备模块以及探测迭代模块,其中:
预设IPv6种子地址获取模块:用于获取预设IPv6种子地址以及预定的总资源阈值。
空间树构建模块:用于根据预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;空间树的每一个叶子节点代表地址空间的一个区域。
首次探测模块:用于根据区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据区域探测资源对区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;首次的区域扫描期望奖励由探测奖惩量确定;
迭代探测前准备模块:用于设置迭代次数为
Figure 182024DEST_PATH_IMAGE076
,迭代次数
Figure 960624DEST_PATH_IMAGE076
为大于等于1的整数;当进行首次探测时
Figure 765769DEST_PATH_IMAGE077
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,资源数量是剩余的探测资源的数量;
探测迭代模块:用于在第
Figure 553596DEST_PATH_IMAGE075
次迭代时,将第
Figure 862218DEST_PATH_IMAGE076
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新活跃IPv6地址表;根据第
Figure 77299DEST_PATH_IMAGE076
次迭代的区域扫描期望奖励和第
Figure 619007DEST_PATH_IMAGE076
次迭代的探测奖惩量,通过强化学习得到第
Figure 944946DEST_PATH_IMAGE075
次迭代的区域扫描期望奖励;根据第
Figure 108074DEST_PATH_IMAGE075
次迭代的区域扫描期望奖励,生成第
Figure 759636DEST_PATH_IMAGE075
次迭代的区域待测目标IPv6地址,并分配第
Figure 8214DEST_PATH_IMAGE075
次迭代的区域探测资源;对第
Figure 137844DEST_PATH_IMAGE075
次迭代的区域待测目标IPv6地址,利用第
Figure 437370DEST_PATH_IMAGE075
次迭代的区域探测资源进行探测,得到第
Figure 994253DEST_PATH_IMAGE075
次迭代的探测奖惩量和第
Figure 730128DEST_PATH_IMAGE075
次迭代的活跃IPv6地址;根据第
Figure 663449DEST_PATH_IMAGE075
次迭代的区域探测资源,更新资源数量;当资源数量满足预先设置的迭代输出条件时,迭代停止。
在其中一个实施例中,空间树构建模块,还用于根据预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点;从根节点开始向下进行节点分裂,得到分裂节点;分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间;非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成空间树的构建。
在其中一个实施例中,空间树构建模块,还用于在空间树构建的同时计算区域的种子密度;当区域的种子密度超过预定密度阈值,则扫描区域的所有地址,并将区域对应的叶子节点从空间树中移除。
在其中一个实施例中,探测迭代模块,还用于
设置学习速率,学习速率是大于等于0小于等于1的实数;根据第
Figure 66748DEST_PATH_IMAGE078
次迭代的区域扫描期望奖励、第
Figure 528954DEST_PATH_IMAGE078
次迭代的探测奖惩量和学习速率,确定第
Figure 266971DEST_PATH_IMAGE079
次迭代的区域扫描期望奖励;第
Figure 738404DEST_PATH_IMAGE079
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 730631DEST_PATH_IMAGE080
其中:
Figure 894896DEST_PATH_IMAGE081
为学习速率,
Figure 870942DEST_PATH_IMAGE082
Figure 614907DEST_PATH_IMAGE083
为迭代次数,
Figure 764039DEST_PATH_IMAGE084
Figure 833626DEST_PATH_IMAGE085
为区域
Figure 31390DEST_PATH_IMAGE086
Figure 844625DEST_PATH_IMAGE087
次迭代的区域扫描期望奖励;
Figure 77023DEST_PATH_IMAGE088
为区域
Figure 317511DEST_PATH_IMAGE089
Figure 251838DEST_PATH_IMAGE090
次迭代的区域扫描期望奖励;
Figure 868764DEST_PATH_IMAGE091
为第
Figure 955669DEST_PATH_IMAGE087
次迭代与区域i相关的探测奖惩量。
在其中一个实施例中,根据第
Figure 367059DEST_PATH_IMAGE092
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率;根据区域中包含的预设IPv6种子地址和概率,生成第
Figure 539414DEST_PATH_IMAGE092
次迭代的区域待测IPv6地址;将区域待测IPv6地址与活跃IPv6地址表进行比对,当有重复IPv6地址时,则在区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 694452DEST_PATH_IMAGE092
次迭代的区域待测目标IPv6地址;设置第
Figure 386596DEST_PATH_IMAGE092
次迭代的探测奖惩量为0;将第
Figure 234466DEST_PATH_IMAGE092
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新第
Figure 628538DEST_PATH_IMAGE092
次迭代的探测奖惩量;根据概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 587267DEST_PATH_IMAGE092
次迭代的区域探测资源。
在其中一个实施例中,探测迭代模块,对第
Figure 383185DEST_PATH_IMAGE092
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果;当判断结果为活跃IPv6地址时,探测奖惩量自加1更新探测奖惩量,区域待测目标地址为活跃IPv6地址,得到第
Figure 136377DEST_PATH_IMAGE092
次迭代的探测奖惩量和第
Figure 532592DEST_PATH_IMAGE092
次迭代的活跃IPv6地址。
在其中一个实施例中,探测迭代模块,统计第
Figure 295012DEST_PATH_IMAGE092
次迭代的区域待测目标IPv6地址的区域数量,当区域数量小于预定区域数量阈值时,迭代停止;在活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将IPv6地址的128位地址以半字节为单位进行划分,将活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,新的IPv6地址组成新IPv6种子地址;根据新IPv6种子地址构建空间树;在迭代过程中,对区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
关于IPv6地址的动态探测装置的具体限定可以参见上文中对于IPv6地址的动态探测方法的限定,在此不再赘述。上述IPv6地址的动态探测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种IPv6地址的动态探测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取预设IPv6种子地址以及预定的总资源阈值。
根据预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;空间树的每一个叶子节点代表地址空间的一个区域。
根据区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据区域探测资源对区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;首次的区域扫描期望奖励由探测奖惩量确定。
设置迭代次数为
Figure 945436DEST_PATH_IMAGE093
;迭代次数
Figure 869530DEST_PATH_IMAGE093
为大于等于1的整数,首次探测时迭代次数
Figure 392521DEST_PATH_IMAGE094
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,资源数量是剩余的探测资源的数量。
在第
Figure 693053DEST_PATH_IMAGE095
次迭代时,将第
Figure 729142DEST_PATH_IMAGE093
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新活跃IPv6地址表。
根据第
Figure 824137DEST_PATH_IMAGE093
次迭代的区域扫描期望奖励和第
Figure 132627DEST_PATH_IMAGE093
次迭代的探测奖惩量,通过强化学习得到第
Figure 971270DEST_PATH_IMAGE095
次迭代的区域扫描期望奖励。
根据第
Figure 596287DEST_PATH_IMAGE095
次迭代的区域扫描期望奖励,生成第
Figure 878495DEST_PATH_IMAGE095
次迭代的区域待测目标IPv6地址,并分配第
Figure 425014DEST_PATH_IMAGE095
次迭代的区域探测资源。
对第
Figure 67348DEST_PATH_IMAGE095
次迭代的区域待测目标IPv6地址,利用第
Figure 812450DEST_PATH_IMAGE095
次迭代的区域探测资源进行探测,得到第
Figure 764094DEST_PATH_IMAGE095
次迭代的探测奖惩量和第
Figure 797909DEST_PATH_IMAGE095
次迭代的活跃IPv6地址。
根据第
Figure 243934DEST_PATH_IMAGE095
次迭代的区域探测资源,更新资源数量。
当资源数量满足预先设置的迭代输出条件时,迭代停止。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点;从根节点开始向下进行节点分裂,得到分裂节点;分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间;非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成空间树的构建。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
设置学习速率,学习速率是大于等于0小于等于1的实数;根据第
Figure 843543DEST_PATH_IMAGE096
次迭代的区域扫描期望奖励、第
Figure 716821DEST_PATH_IMAGE097
次迭代的探测奖惩量和学习速率,确定第
Figure 516893DEST_PATH_IMAGE095
次迭代的区域扫描期望奖励;第
Figure 704292DEST_PATH_IMAGE098
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 158407DEST_PATH_IMAGE099
其中:
Figure 451854DEST_PATH_IMAGE100
为学习速率,
Figure 256999DEST_PATH_IMAGE101
Figure 44826DEST_PATH_IMAGE102
为迭代次数,
Figure 353448DEST_PATH_IMAGE103
Figure 568529DEST_PATH_IMAGE104
为区域
Figure 595390DEST_PATH_IMAGE105
Figure 672062DEST_PATH_IMAGE106
次迭代的区域扫描期望奖励;
Figure 100769DEST_PATH_IMAGE107
为区域
Figure 486751DEST_PATH_IMAGE108
Figure 266488DEST_PATH_IMAGE072
次迭代的区域扫描期望奖励;
Figure 130539DEST_PATH_IMAGE109
为第
Figure 413753DEST_PATH_IMAGE110
次迭代与区域i相关的探测奖惩量。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据第
Figure 236215DEST_PATH_IMAGE111
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率;根据区域中包含的预设IPv6种子地址和概率,生成第
Figure 221358DEST_PATH_IMAGE111
次迭代的区域待测IPv6地址;将区域待测IPv6地址与活跃IPv6地址表进行比对,当有重复IPv6地址时,则在区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 154679DEST_PATH_IMAGE111
次迭代的区域待测目标IPv6地址;设置第
Figure 292399DEST_PATH_IMAGE111
次迭代的探测奖惩量为0;将第
Figure 285763DEST_PATH_IMAGE111
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新第
Figure 508934DEST_PATH_IMAGE111
次迭代的探测奖惩量;根据概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 980366DEST_PATH_IMAGE111
次迭代的区域探测资源。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对第
Figure 720396DEST_PATH_IMAGE112
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果;当判断结果为活跃IPv6地址时,探测奖惩量自加1更新探测奖惩量,区域待测目标地址为活跃IPv6地址,得到第
Figure 884661DEST_PATH_IMAGE111
次迭代的探测奖惩量和第
Figure 595128DEST_PATH_IMAGE111
次迭代的活跃IPv6地址。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
在空间树构建的同时计算区域的种子密度;当区域的种子密度超过预定密度阈值,则扫描区域的所有地址,并将区域对应的叶子节点从空间树中移除。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
统计第
Figure 604672DEST_PATH_IMAGE111
次迭代的区域待测目标IPv6地址的区域数量,当区域数量小于预定区域数量阈值时,迭代停止;在活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将IPv6地址的128位地址以半字节为单位进行划分,将活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,新的IPv6地址组成新IPv6种子地址;根据新IPv6种子地址构建空间树;在迭代过程中,对区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取预设IPv6种子地址以及预定的总资源阈值。
根据预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;空间树的每一个叶子节点代表地址空间的一个区域。
根据区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据区域探测资源对区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;首次的区域扫描期望奖励由探测奖惩量确定。
设置迭代次数为
Figure 982564DEST_PATH_IMAGE113
;迭代次数
Figure 52151DEST_PATH_IMAGE113
为大于等于1的整数,首次探测时迭代次数
Figure 764761DEST_PATH_IMAGE114
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,资源数量是剩余的探测资源的数量。
在第
Figure 312417DEST_PATH_IMAGE115
次迭代时,将第
Figure 544815DEST_PATH_IMAGE116
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新活跃IPv6地址表。
根据第
Figure 785304DEST_PATH_IMAGE117
次迭代的区域扫描期望奖励和第
Figure 470363DEST_PATH_IMAGE116
次迭代的探测奖惩量,通过强化学习得到第
Figure 87289DEST_PATH_IMAGE115
次迭代的区域扫描期望奖励。
根据第
Figure 924926DEST_PATH_IMAGE115
次迭代的区域扫描期望奖励,生成第
Figure 601895DEST_PATH_IMAGE115
次迭代的区域待测目标IPv6地址,并分配第
Figure 508672DEST_PATH_IMAGE115
次迭代的区域探测资源。
对第
Figure 663709DEST_PATH_IMAGE115
次迭代的区域待测目标IPv6地址,利用第
Figure 870700DEST_PATH_IMAGE115
次迭代的区域探测资源进行探测,得到第
Figure 187412DEST_PATH_IMAGE115
次迭代的探测奖惩量和第
Figure 96331DEST_PATH_IMAGE115
次迭代的活跃IPv6地址。
根据第
Figure 55059DEST_PATH_IMAGE115
次迭代的区域探测资源,更新资源数量。
当资源数量满足预先设置的迭代输出条件时,迭代停止。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点;从根节点开始向下进行节点分裂,得到分裂节点;分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间;非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成空间树的构建。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
设置学习速率,学习速率是大于等于0小于等于1的实数;根据第
Figure 116556DEST_PATH_IMAGE118
次迭代的区域扫描期望奖励、第
Figure 869749DEST_PATH_IMAGE118
次迭代的探测奖惩量和学习速率,确定第
Figure 16696DEST_PATH_IMAGE119
次迭代的区域扫描期望奖励;第
Figure 513537DEST_PATH_IMAGE119
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 911764DEST_PATH_IMAGE120
其中:
Figure 101436DEST_PATH_IMAGE121
为学习速率,
Figure 470101DEST_PATH_IMAGE122
Figure 770632DEST_PATH_IMAGE123
为迭代次数,
Figure 541142DEST_PATH_IMAGE124
Figure 901716DEST_PATH_IMAGE125
为区域
Figure 6944DEST_PATH_IMAGE126
Figure 845587DEST_PATH_IMAGE127
次迭代的区域扫描期望奖励;
Figure 736183DEST_PATH_IMAGE128
为区域
Figure 2079DEST_PATH_IMAGE129
Figure 345336DEST_PATH_IMAGE119
次迭代的区域扫描期望奖励;
Figure 253249DEST_PATH_IMAGE130
为第
Figure 998351DEST_PATH_IMAGE131
次迭代与区域i相关的探测奖惩量。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据第
Figure 185881DEST_PATH_IMAGE132
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率;根据区域中包含的预设IPv6种子地址和概率,生成第
Figure 16434DEST_PATH_IMAGE133
次迭代的区域待测IPv6地址;将区域待测IPv6地址与活跃IPv6地址表进行比对,当有重复IPv6地址时,则在区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 196880DEST_PATH_IMAGE133
次迭代的区域待测目标IPv6地址;设置第
Figure 796488DEST_PATH_IMAGE133
次迭代的探测奖惩量为0;将第
Figure 669766DEST_PATH_IMAGE133
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新第
Figure 971304DEST_PATH_IMAGE133
次迭代的探测奖惩量;根据概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 955440DEST_PATH_IMAGE133
次迭代的区域探测资源。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对第
Figure 675134DEST_PATH_IMAGE133
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果;当判断结果为活跃IPv6地址时,探测奖惩量自加1更新探测奖惩量,区域待测目标地址为活跃IPv6地址,得到第
Figure 719314DEST_PATH_IMAGE133
次迭代的探测奖惩量和第
Figure 258879DEST_PATH_IMAGE133
次迭代的活跃IPv6地址
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在空间树构建的同时计算区域的种子密度;当区域的种子密度超过预定密度阈值,则扫描区域的所有地址,并将区域对应的叶子节点从空间树中移除。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
统计第
Figure 46707DEST_PATH_IMAGE133
次迭代的区域待测目标IPv6地址的区域数量,当区域数量小于预定区域数量阈值时,迭代停止;在活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将IPv6地址的128位地址以半字节为单位进行划分,将活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,新的IPv6地址组成新IPv6种子地址;根据新IPv6种子地址构建空间树;在迭代过程中,对区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种IPv6地址的动态探测方法,其特征在于,所述方法包括:
获取预设IPv6种子地址以及预定的总资源阈值;
根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域;
根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定;
设置迭代次数为
Figure 341244DEST_PATH_IMAGE002
;所述迭代次数
Figure 976493DEST_PATH_IMAGE002
为大于等于1的整数,首次探测时迭代次数
Figure 490651DEST_PATH_IMAGE003
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量;
在第
Figure 620281DEST_PATH_IMAGE004
次迭代时,将第
Figure 169074DEST_PATH_IMAGE002
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表;
根据第
Figure 725958DEST_PATH_IMAGE006
次迭代的区域扫描期望奖励和第
Figure 461833DEST_PATH_IMAGE007
次迭代的探测奖惩量,通过强化学习得到第
Figure 395154DEST_PATH_IMAGE008
次迭代的区域扫描期望奖励;
根据所述第
Figure 280677DEST_PATH_IMAGE008
次迭代的区域扫描期望奖励,生成第
Figure 8461DEST_PATH_IMAGE008
次迭代的区域待测目标IPv6地址,并分配第
Figure 231632DEST_PATH_IMAGE008
次迭代的区域探测资源;
对所述第
Figure 703065DEST_PATH_IMAGE008
次迭代的区域待测目标IPv6地址,利用所述第
Figure 960871DEST_PATH_IMAGE008
次迭代的区域探测资源进行探测,得到第
Figure 108824DEST_PATH_IMAGE008
次迭代的探测奖惩量和第
Figure 84870DEST_PATH_IMAGE008
次迭代的活跃IPv6地址;
根据所述第
Figure 94415DEST_PATH_IMAGE008
次迭代的区域探测资源,更新所述资源数量;
当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
2.根据权利要求1所述的方法,其特征在于,空间树的每一个叶子节点代表地址空间的一个区域;根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树,包括:
根据所述预设IPv6种子地址生成一个包含整个IPv6地址空间的根节点;
从所述根节点开始向下进行节点分裂,得到分裂节点;所述分裂节点包含两个节点,其中一个节点为包含所有的种子地址的非叶子节点,另一个为R类型节点;所述R类型节点包含IPv6地址空间中剔除兄弟节点包含的地址空间后的剩余地址空间;
所述非叶子节点在节点熵值大于预设阈值的维度向下进行分裂,生成孩子节点,同时添加一个R类型节点作为兄弟节点,直至完成所述空间树的构建。
3.根据权利要求1所述的方法,其特征在于,根据第
Figure 472306DEST_PATH_IMAGE002
次迭代的区域扫描期望奖励和第
Figure 276314DEST_PATH_IMAGE002
次迭代的探测奖惩量,通过强化学习得到第
Figure 739657DEST_PATH_IMAGE009
次迭代的区域扫描期望奖励,包括:
设置学习速率,所述学习速率是大于等于0小于等于1的实数;
根据第
Figure 552892DEST_PATH_IMAGE011
次迭代的区域扫描期望奖励、第
Figure 536023DEST_PATH_IMAGE011
次迭代的探测奖惩量和所述学习速率,确定第
Figure 776511DEST_PATH_IMAGE009
次迭代的区域扫描期望奖励;所述第
Figure 461570DEST_PATH_IMAGE009
次迭代的区域扫描期望奖励的迭代公式如下式所示:
Figure 78496DEST_PATH_IMAGE012
其中:
Figure 899822DEST_PATH_IMAGE014
为所述学习速率,
Figure 576791DEST_PATH_IMAGE015
Figure 732835DEST_PATH_IMAGE017
为所述迭代次数,
Figure 887872DEST_PATH_IMAGE018
Figure 829284DEST_PATH_IMAGE019
为区域
Figure 677154DEST_PATH_IMAGE021
Figure 71226DEST_PATH_IMAGE002
次迭代的区域扫描期望奖励;
Figure 801195DEST_PATH_IMAGE022
为区域
Figure 597113DEST_PATH_IMAGE024
所述第
Figure 615884DEST_PATH_IMAGE026
次迭代的区域扫描期望奖励;
Figure 497253DEST_PATH_IMAGE027
为第
Figure 259672DEST_PATH_IMAGE028
次迭代与区域i相关的探测奖惩量。
4.根据权利要求1所述的方法,其特征在于,根据所述第
Figure 175676DEST_PATH_IMAGE030
次迭代的区域扫描期望奖励,生成第
Figure 83458DEST_PATH_IMAGE030
次迭代的区域待测目标IPv6地址,并分配第
Figure 717701DEST_PATH_IMAGE030
次迭代的区域探测资源,包括:
根据所述第
Figure 18233DEST_PATH_IMAGE030
次迭代的区域扫描期望奖励,利用soft-max算法,得到区域被探测的概率;
根据所述区域中包含的所述预设IPv6种子地址和所述概率,生成第
Figure 788743DEST_PATH_IMAGE030
次迭代的区域待测IPv6地址;
将所述区域待测IPv6地址与所述活跃IPv6地址表进行比对,当有重复IPv6地址时,则在所述区域待测IPv6地址中剔除重复的IPv6地址,得到第
Figure 883738DEST_PATH_IMAGE030
次迭代的区域待测目标IPv6地址;
设置第
Figure 5277DEST_PATH_IMAGE030
次迭代的探测奖惩量为0;
将所述第
Figure 109500DEST_PATH_IMAGE030
次迭代的探测奖惩量减去重复的IPv6地址的数量,更新所述第
Figure 219669DEST_PATH_IMAGE030
次迭代的探测奖惩量;
根据所述概率,利用玻尔兹曼公式进行探测资源分配,得到第
Figure 751145DEST_PATH_IMAGE030
次迭代的区域探测资源。
5.根据权利要求1所述的方法,其特征在于,对所述第
Figure 828822DEST_PATH_IMAGE032
次迭代的区域待测目标IPv6地址,利用所述第
Figure 736735DEST_PATH_IMAGE032
次迭代的区域探测资源进行探测,得到第
Figure 481837DEST_PATH_IMAGE032
次迭代的探测奖惩量和第
Figure 184214DEST_PATH_IMAGE032
次迭代的活跃IPv6地址,包括:
对所述第
Figure 998455DEST_PATH_IMAGE032
次迭代的区域待测目标IPv6地址发送ICMPv6探测包,判断该地址是否为活跃地址,得到判断结果;
当判断结果为活跃IPv6地址时,所述探测奖惩量自加1更新所述探测奖惩量,所述区域待测目标地址为活跃IPv6地址,直到得到第
Figure 444480DEST_PATH_IMAGE032
次迭代的探测奖惩量和第
Figure 778510DEST_PATH_IMAGE032
次迭代的活跃IPv6地址。
6.根据权利要求1所述的方法,其特征在于,根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域,还包括:
在空间树构建的同时计算区域的种子密度;
当所述区域的种子密度超过预定密度阈值,则扫描所述区域的所有地址,并将所述区域对应的所述叶子节点从所述空间树中移除。
7.根据权利要求1所述的方法,其特征在于,根据所述第
Figure 651788DEST_PATH_IMAGE032
次迭代的区域扫描期望奖励,生成第
Figure 704057DEST_PATH_IMAGE032
次迭代的区域待测目标IPv6地址,并分配第
Figure 435997DEST_PATH_IMAGE032
次迭代的区域探测资源,步骤后边还包括:
统计第
Figure 155691DEST_PATH_IMAGE032
次迭代的区域待测目标IPv6地址的区域数量,当所述区域数量小于预定区域数量阈值时,迭代停止;
在所述活跃IPv6地址表中随机选择预定数量的活跃IPv6地址,将所述IPv6地址的128位地址以半字节为单位进行划分,将所述活跃IPv6地址其定义为32维地址向量,将两个32维地址向量的低16维进行交叉互换得到新的IPv6地址,所述新的IPv6地址组成新IPv6种子地址;
根据所述新IPv6种子地址构建空间树;
在迭代过程中,对所述区域待测目标地址在高16维进行变异得到新的区域待测目标IPv6地址;利用分配到的探测资源对新的区域待测目标IPv6地址进行探测。
8.一种IPv6地址的动态探测装置,其特征在于,所述装置包括:
预设IPv6种子地址获取模块:用于获取预设IPv6种子地址以及预定的总资源阈值;
空间树构建模块:用于根据所述预设IPv6种子地址,利用层次分裂聚类算法,得到空间树;所述空间树的每一个叶子节点代表地址空间的一个区域;
首次探测模块:用于根据所述区域中IPv6种子地址的密度进行首次探测资源分配,得到区域探测资源;根据所述区域探测资源对所述区域进行首次探测,得到活跃IPv6地址、探测奖惩量和首次的区域扫描期望奖励;所述首次的区域扫描期望奖励由所述探测奖惩量确定;
迭代探测前准备模块:用于设置迭代次数为
Figure DEST_PATH_IMAGE033
,所述迭代次数
Figure 668712DEST_PATH_IMAGE033
为大于等于1的整数;当进行所述首次探测时
Figure 473857DEST_PATH_IMAGE034
;设置预定的总资源阈值减去首次消耗探测资源的数量为资源数量,所述资源数量是剩余的探测资源的数量;
探测迭代模块:用于在第
Figure DEST_PATH_IMAGE035
次迭代时,将第
Figure DEST_PATH_IMAGE037
次迭代活跃IPv6地址存储到预先建立的活跃IPv6地址表,更新所述活跃IPv6地址表;根据第
Figure 714214DEST_PATH_IMAGE037
次迭代的区域扫描期望奖励和第
Figure 288415DEST_PATH_IMAGE033
次迭代的探测奖惩量,通过强化学习得到第
Figure DEST_PATH_IMAGE039
次迭代的区域扫描期望奖励;根据所述第
Figure 706758DEST_PATH_IMAGE039
次迭代的区域扫描期望奖励,生成第
Figure 733620DEST_PATH_IMAGE039
次迭代的区域待测目标IPv6地址,并分配第
Figure 810291DEST_PATH_IMAGE039
次迭代的区域探测资源;对所述第
Figure 238999DEST_PATH_IMAGE039
次迭代的区域待测目标IPv6地址,利用所述第
Figure 624981DEST_PATH_IMAGE039
次迭代的区域探测资源进行探测,得到第
Figure 404718DEST_PATH_IMAGE039
次迭代的探测奖惩量和第
Figure 268769DEST_PATH_IMAGE039
次迭代的活跃IPv6地址;根据所述第
Figure 551982DEST_PATH_IMAGE039
次迭代的区域探测资源,更新所述资源数量;当所述资源数量满足预先设置的迭代输出条件时,迭代停止。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202110065886.8A 2021-01-19 2021-01-19 IPv6地址的动态探测方法、装置及计算机设备 Active CN112398969B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110065886.8A CN112398969B (zh) 2021-01-19 2021-01-19 IPv6地址的动态探测方法、装置及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110065886.8A CN112398969B (zh) 2021-01-19 2021-01-19 IPv6地址的动态探测方法、装置及计算机设备

Publications (2)

Publication Number Publication Date
CN112398969A CN112398969A (zh) 2021-02-23
CN112398969B true CN112398969B (zh) 2021-03-19

Family

ID=74625311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110065886.8A Active CN112398969B (zh) 2021-01-19 2021-01-19 IPv6地址的动态探测方法、装置及计算机设备

Country Status (1)

Country Link
CN (1) CN112398969B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113282805B (zh) * 2021-06-24 2022-04-22 中国人民解放军国防科技大学 IPv6地址模式挖掘方法、装置、电子设备及存储介质
CN113746947B (zh) * 2021-07-15 2022-05-06 清华大学 基于强化学习的IPv6活跃地址探测方法和装置
CN115102922A (zh) * 2022-04-25 2022-09-23 国家计算机网络与信息安全管理中心山东分中心 一种基于多地址比对结果扩展的IPv6活跃地址探测方法
CN115208800B (zh) * 2022-09-16 2023-01-03 清华大学 基于强化学习的全互联网端口扫描方法及装置
CN118381821B (zh) * 2024-06-26 2024-08-16 中国人民解放军国防科技大学 IPv6网络边缘探测方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108924012A (zh) * 2018-08-24 2018-11-30 赛尔网络有限公司 IPv6域名服务器活跃度检测的方法、设备、系统及介质
CN109150655A (zh) * 2018-07-25 2019-01-04 赛尔网络有限公司 一种IPv4防火墙IPv6绕过的检测方法
CN109905497A (zh) * 2019-03-05 2019-06-18 长沙学院 一种IPv6活跃地址动态发现方法
CN111432043A (zh) * 2020-03-09 2020-07-17 清华大学 基于密度的动态IPv6地址探测方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436917B2 (en) * 2013-02-05 2016-09-06 Cisco Technology, Inc. Accelerating learning by sharing information between multiple learning machines

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109150655A (zh) * 2018-07-25 2019-01-04 赛尔网络有限公司 一种IPv4防火墙IPv6绕过的检测方法
CN108924012A (zh) * 2018-08-24 2018-11-30 赛尔网络有限公司 IPv6域名服务器活跃度检测的方法、设备、系统及介质
CN109905497A (zh) * 2019-03-05 2019-06-18 长沙学院 一种IPv6活跃地址动态发现方法
CN111432043A (zh) * 2020-03-09 2020-07-17 清华大学 基于密度的动态IPv6地址探测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《Towards the Construction of Global IPv6 Hitlist and Efficient Probing of IPv6 Address Space》;Guanglei Song,et al.;《 2020 IEEE/ACM 28th International Symposium on Quality of Service (IWQoS)》;20201006;全文 *
《基于种子地址的IPv6地址探测技术综述》;李果等;《电信科学》;20201123;第35卷(第12期);全文 *

Also Published As

Publication number Publication date
CN112398969A (zh) 2021-02-23

Similar Documents

Publication Publication Date Title
CN112398969B (zh) IPv6地址的动态探测方法、装置及计算机设备
CN111432043B (zh) 基于密度的动态IPv6地址探测方法
Hou et al. 6Hit: A reinforcement learning-based approach to target generation for Internet-wide IPv6 scanning
Feige et al. Learning and inference in the presence of corrupted inputs
Rahwan et al. A hybrid algorithm for coalition structure generation
CN113077097A (zh) 一种基于深度时空相似性的空气质量预测方法
CN113282805B (zh) IPv6地址模式挖掘方法、装置、电子设备及存储介质
Ribeiro et al. Efficient parallel subgraph counting using g-tries
CN111416797A (zh) 改进天牛群算法优化正则化极限学习机的入侵检测方法
Li et al. Dynamic community detection algorithm based on incremental identification
CN115755954A (zh) 巡检路径规划方法、系统、计算机设备及存储介质
CN107240028B (zh) 一种Fedora系统组件复杂网络中的重叠社区检测方法
Edunov et al. Generating synthetic social graphs with darwini
Hart Evolutionary pattern search algorithms for unconstrained and linearly constrained optimization
Pavlidis et al. Intelligent Client Selection for Federated Learning using Cellular Automata
CN115730723A (zh) 一种波浪能场选址的综合评价方法
CN115237797A (zh) 一种基于覆盖率制导的模糊测试方法和装置
Zhang et al. Surrogate-assisted memetic algorithm with adaptive patience criterion for computationally expensive optimization
Martín et al. Approximating nondominated sets in continuous multiobjective optimization problems
Elsässer et al. A simple graph-theoretic model for selfish restricted scheduling
Lin et al. Computing the diameters of huge social networks
Schmidt et al. A depth-first approach to target-value search
CN114157637B (zh) IPv6地址扫描方法、装置、计算机设备及存储介质
Spall et al. Some theoretical comparisons of stochastic optimization approaches
PERON An experimental evaluation of triangle counting algorithms with random graphs in hierarchical memory architectures

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant