The invention discloses a method for counting the number of active IP hosts based on binary hash table, which belongs to the field of network security monitoring, and solves the shortcomings of active detection method and passive detection method in the prior art. The invention establishes the data structure needed for counting the number of active IP hosts, sets the initial value, and the data structure includes binary hash table, IP host counter, start time stamp and time period; analyzes network traffic, that is, calculates the source IP address of each IP packet with hash function to obtain hash value; updates the hash value in binary hash table; At the same time, the IP host counter is modified to determine whether the difference between the current timestamp and the start timestamp is greater than or equal to the time period. If the difference is greater than or equal to the time period, the value of the IP host counter is output and a new round of statistics is made. Otherwise, the network traffic is analyzed and the active IP host is counted. The invention is used for counting the number of active IP hosts.
【技术实现步骤摘要】
一种基于二进制哈希表的活动IP主机数量统计方法
一种基于二进制哈希表的活动IP主机数量统计方法,用于对网络流量中的活动IP主机数量进行统计,属于网络安全监控领域。
技术介绍
随着Internet的不断发展,网络规模日益扩大,其承载的网络业务逐渐增多,网络安全已成为人们越来越关心的问题。以DDoS攻击为代表的网络攻击已经造成了多起安全事故,现有大量研究从网络通信流量分析入手开展网络安全检测,其中的一个重要基础能力,就是快速统计当前网络中正在活动的IP主机数量。根据检索,目前的网络活动主机统计方法有以下几种:1.专利“一种活动主机数量的检测方法及装置”(CN200610057572.9)提出一种基于流量分析的活动主机数量检测方法,包括在监测设备中设置监控表、根据流经所述监控设备的数据包更新所述监控表、以及根据所述监控表判断所述活动主机数量的步骤。该专利技术还提供了一种网络地址转换设备后活动主机数量的检测装置。该专利技术用于对各种网络设备后活动主机数量的统计。其主要思路为:在监控设备中设置监控表,记录所有新发现主机的信息,包括上线时间和下线时间,每个主机一条记录;针对每个数据包,从数据包中提取当前主机信息,包括当前主机开机时间、关机时间和端口号;将数据包中提取的当前主机信息中的开机时间与监控表中每个记录的开机时间进行依次对比,如果相等,则将当前主机的端口号添加到所述与当前主机有相同开机时间的结构中,否则新建立一个结构,记录当前主机信息;最后,根据监控表中每个结构的表项得出对应主机的活动区间,如果需要获得活动主机数量的时刻在该活动区间内,则该主机为活动主机,从而统 ...
【技术保护点】
1.一种基于二进制哈希表的活动IP主机数量统计方法,其特征在于,如下步骤:S1、建立活动IP主机数量统计所需的数据结构,设置初始值,数据结构包括一个二进制哈希表、一个IP主机计数器,一个开始时间戳,一个时间周期;数据结构的初始值为:二进制哈希表包括哈希位置和哈希成员,哈希位置对应的每个哈希成员为1个二进制位,每个哈希位置为十进制位,哈希表由固定长度的一串连续二进制位构成,记为HASHTABLE,二进制哈希表的长度为L,L=OXFFFFFF,即该二进制哈希表由连续16777215个二进制位构成,二进制哈希表中的每个二进制位设置初始值为0;IP主机计数器类型为正整数,单位为个,记为COUNT,设置初始值为0;开始时间戳类型为时间,记为BEGINTIME,设置初始值为开始时刻;时间周期为正整数,单位为秒,记为WINDOW,设置初始值为60;S2、对网络流量进行分析,即对每个IP分组的源IP地址,用哈希函数进行运算,获得哈希值,哈希值存放的是二进制哈希表中的某个哈希成员的二进制哈希位置;S3、在二进制哈希表中对哈希值相应的哈希成员进行更新操作,同时修改IP主机计数器;S4、判断当前时间戳与开始 ...
【技术特征摘要】
1.一种基于二进制哈希表的活动IP主机数量统计方法,其特征在于,如下步骤:S1、建立活动IP主机数量统计所需的数据结构,设置初始值,数据结构包括一个二进制哈希表、一个IP主机计数器,一个开始时间戳,一个时间周期;数据结构的初始值为:二进制哈希表包括哈希位置和哈希成员,哈希位置对应的每个哈希成员为1个二进制位,每个哈希位置为十进制位,哈希表由固定长度的一串连续二进制位构成,记为HASHTABLE,二进制哈希表的长度为L,L=OXFFFFFF,即该二进制哈希表由连续16777215个二进制位构成,二进制哈希表中的每个二进制位设置初始值为0;IP主机计数器类型为正整数,单位为个,记为COUNT,设置初始值为0;开始时间戳类型为时间,记为BEGINTIME,设置初始值为开始时刻;时间周期为正整数,单位为秒,记为WINDOW,设置初始值为60;S2、对网络流量进行分析,即对每个IP分组的源IP地址,用哈希函数进行运算,获得哈希值,哈希值存放的是二进制哈希表中的某个哈希成员的二进制哈希位置;S3、在二进制哈希表中对哈希值相应的哈希成员进行更新操作,同时修改IP主机计数器;S4、判断当前时间戳与开始时间戳的差值是否大于等于时间周期,如果大于或等于时间周期,则输出IP主机计数器的值,并转到步骤S1进行新一轮统计,否则转到步骤S2继续进行统计。2.根据权利要求1所述的一种基于二进制哈希表的活动IP主机数量统计方法,其特征在于,所述步骤S2的具体步骤为:S2.1、采用抓包方法捕获网络中的IP分组,提取源IP地址,使用标准的IP头部解析方法将捕获到的IP分组进行IP协议头部分析,提取其中的源IP地址,即ADDR,其长度为32位二进制;S2.2、对S2.1获得的ADDR采用哈希函数进行运算,获得哈希...
【专利技术属性】
技术研发人员:张华峰,段军红,张小敏,闫晓斌,张驯,袁晖,赵博,张小东,宋曦,李方军,杨波,张磊,赵金雄,李志茹,魏峰,杨凡,高丽娜,党倩,卫祥,王刚,
申请(专利权)人:国网甘肃省电力公司电力科学研究院,国网甘肃省电力公司,国网甘肃省电力公司信息通信公司,
类型:发明
国别省市:甘肃,62
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。