掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及网络安全技术领域,尤其涉及一种NAT后Linux主机数量统计方法、装置和电子设备。

背景技术

随着互联网应用的快速增长,IP地址(Internet Protocol Address)资源变得匮乏。为了解决IP地址短缺带来的问题提出了NAT(Network Address Translation,网络地址转换)技术。NAT技术可以使用多台主机共享Internet链接,同时共享一个公网IP地址进行上网,因此,NAT技术被广泛应用。但在如今网络安全问题层出不穷的情况下,需要对网络数据流量进行安全监控,NAT后众多主机由于共享公网IP地址而无法被监控,因此,对NAT后主机进行识别以及数量统计是网络安全领域亟需解决的问题。

现有技术中,对于NAT后主机数量的统计分为对Window主机的数量统计和Linux主机的数量统计。对于Window的主机数量统计方法绝大部分是通过多个流量特征字段或者端口规律进行综合判断确定的。而对于Linux主机数量统计的方法比较单一且需要有先验知识。一般使用最小二乘法对线性方程进行拟合,且使用聚类或者预先确定至少一台主机的两个时间点作为最小二乘法进行线性拟合的先验知识,存在一定局限性,灵活度和准确度较差。

发明内容

本发明提供一种NAT后Linux主机数量统计方法、装置和电子设备,用以解决现有技术中主机数量统计的灵活度和准确度较差的缺陷,降低拟合误差,提高确定主机数量的灵活性和准确度。

本发明实施例提供一种NAT后Linux主机数量统计方法,包括:

获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

根据本发明提供的NAT后Linux主机数量统计方法,所述基于所述TSval与所述时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程,包括:

S1、对所有待拟合点进行随机采样,并根据采样得到的待拟合样本点拟合得到第二拟合方程;

S2、基于所述第二拟合方程,利用随机一致性采样算法将所有待拟合点进行分类,确定内点组和外点组,所述内点组中包括满足所述第二拟合方程的待拟合点,且所述内点组用于更新所述第二拟合方程,所述外点组中包括不满足所述第二拟合方程的待拟合点;

S3、将所述外点组中的所有待拟合点确定为新的所有待拟合点,并重复步骤S1-步骤S2,直至达到预设条件时停止迭代,并将每次迭代拟合确定的第二拟合方程均确定为第一拟合方程;

所述预设条件包括:每次迭代得到的内点占比大于或等于第一预设阈值且迭代次数大于第二预设阈值,所述内点占比是基于每次迭代得到的内点组中待拟合点与所述所有待拟合点的比值确定的。

根据本发明提供的NAT后Linux主机数量统计方法,所述基于所述第二拟合方程,利用随机一致性采样算法将所有待拟合点进行分类,确定内点组和外点组,包括:

针对各所述待拟合点,确定所述待拟合点至所述第二拟合方程对应拟合直线的距离;

在所述距离小于或等于距离阈值的情况下,将所述距离对应的待拟合点添加至内点组;

在所述距离大于所述距离阈值的情况下,将所述距离对应的待拟合点添加至外点组。

根据本发明提供的NAT后Linux主机数量统计方法,所述基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量,包括:

在所述第一拟合方程的数量为一个的情况下,将NAT后Linux主机对应的目标数量确定为一个;

在所述第一拟合方程的数量为至少两个的情况下,确定所述至少一个第一拟合方程各自对应的斜率;基于任意两个第一拟合方程各自对应的斜率之差,确定所述任意两个第一拟合方程的相似度;基于所有相似度,确定至少一个目标拟合方程;基于所述目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量。

根据本发明提供的NAT后Linux主机数量统计方法,所述基于所有相似度,确定至少一个目标拟合方程,包括:

针对任一相似度,在所述相似度小于第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为一个目标拟合方程;

在所述相似度大于或等于所述第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为两个目标拟合方程。

根据本发明提供的NAT后Linux主机数量统计方法,所述基于所述目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量,包括:

基于所有待拟合点进行多次拟合,确定每次拟合得到的目标拟合方程的第一数量;

将所有第一数量对应的数量均值确定为NAT后Linux主机对应的目标数量。

根据本发明提供的NAT后Linux主机数量统计方法,所述获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,包括:

获取网络环境中的多个被动流量数据包;

在所述多个被动流量数据包中各所述被动流量数据包对应的通信协议为预设协议的情况下,确定所述被动流量数据包对应的options字段信息;

在所述options字段信息中包括TSval的情况下,将所述被动流量数据包确定为所述目标被动流量数据包。

本发明还提供一种NAT后Linux主机数量统计装置,包括:

获取模块,用于获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

第一确定模块,用于基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

迭代拟合模块,用于基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

第二确定模块,用于基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述NAT后Linux主机数量统计方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述NAT后Linux主机数量统计方法。

本发明提供的NAT后Linux主机数量统计方法、装置和电子设备,通过在包括多台Linux主机的网络环境中获取存在发送方时间戳信息Tsval的多个目标被动流量数据包,并根据该多个目标被动流量数据包各自对应的Tsval和到达时刻信息,确定多个待拟合点,并根据TSval与到达时刻信息之间的线性关系,对多个待拟合点进行迭代拟合,并根据迭代后得到的多个第一拟合方程的数量,确定NAT后Linux主机对应的目标数量,不需要先验知识即可确定Linux主机数量,降低拟合误差,提高确定主机数量的灵活性和准确度。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之一;

图2是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之二;

图3是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之三;

图4是本发明实施例提供的NAT后Linux主机数量统计装置的结构示意图;

图5是本发明实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

针对现有技术中主机数量统计的灵活度和准确度较差的问题,本发明实施例提供一种NAT后Linux主机数量统计方法,图1是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之一,如图1所述,该方法包括:

步骤110、获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机。

可选的,图2是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之二,如图2所述,上述目标被动流量数据包可以为pcap数据包,pcap数据包是以pcap格式存储的数据包,该pcap数据包可以被网络抓包工具捕获并进行解析。pcap数据包通常包含了捕获的网络数据包的头部信息、数据包的数据部分、时间戳以及流量等元数据,并以二进制格式保存。pcap数据包可以用于网络协议分析、网络流量统计、网络攻击检测和流量监测等。

可选的,上述目标被动流量数据包可以通过网络抓包工具或通过Python中scapy模块中的sniff函数进行获取。该网络抓包工具可以为Wireshark或TcpDump,TcpDump适用于Linux系统。

需要说明的是,NAT(Network Address Translation,网络地址转换)技术可以将IP(Internet Protocol)数据报文头中的IP地址(Internet Protocol Address)转换为另一个IP地址,并通过转换端口号达到地址重用的目的。根据NAT转换是对IP数据报文中的源地址进行转换还是对目的地址进行转换,NAT可以分为静态NAT(Static NAT)、动态NAT(Dynamic NAT)、源NAT(Source NAT)、目的NAT(Destination NAT)和NAPT(NetworkAddress Port Translation)。

进一步的,如图2所示,所述获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,包括:

获取网络环境中的多个被动流量数据包;

在所述多个被动流量数据包中各所述被动流量数据包对应的通信协议为预设协议的情况下,确定所述被动流量数据包对应的options字段信息;

在所述options字段信息中包括TSval的情况下,将所述被动流量数据包确定为所述目标被动流量数据包。

具体的,在获取到多个被动流量数据包后,即获取到多个pcap数据包后,可对各pcap数据包进行解析,获取各pcap数据包对应的数据信息,该数据信息可以包括协议类型、源地址、目标地址、源端口和目标端口等,通过协议类型对应的Protocol列对该被动流量数据包的通信协议进行判断,在该被动流量数据包的通信协议为TCP(Transmission ControlProtocol,传输控制协议)的情况下,可进一步获取TCP头部的options字段,若该被动流量数据包的options字段中的时间戳(TCP Timestamps Option,TSopt)信息中包括TSval(TCPTimestamps Value,发送方时间戳信息),则将该被动流量数据包确定为目标被动流量数据包。需要说明的是,上述时间戳信息中包括通信双方之间的回路时间(Round Trip Time,RTT),上述TSval表示发送端发出该被动高流量数据包时的本地时间戳信息,一般Linux主机默认时间戳功能开启,因此,可以通过该TSval过滤掉没有时间戳的被动流量数据包。

步骤120、基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点。

具体的,在确定多个目标被动流量数据包后,针对每个目标被动流量数据包,将每个目标被动流量数据包作为一个待拟合点,该目标被动流量数据包对应的TSval作为待拟合点的纵坐标,将该目标被动流量数据包对应的到达时刻信息(Arrival Time)作为待拟合点的横坐标,且TSval和到达时刻信息存在如式(1)所示的线性关系,式(1)为:

t(s)=a×s+b

其中,t(s)表示TSval,s表示到达时刻信息,a表示该线性关系对应的一次线性方程的斜率,b表示该一次线性方程的截距。

步骤130、基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程。

具体的,根据该TSval与到达时刻信息之间的线性关系,可以将解析得到的多个待拟合点,通过拟合算法进行迭代拟合,得到多个第一拟合方程,便于根据该多个第一拟合方程,确定NAT后Linux主机的目标数量。

进一步的,图3是本发明实施例提供的NAT后Linux主机数量统计方法的流程示意图之三,如图3所示,所述基于所述TSval与所述时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程,包括:

S1、对所有待拟合点进行随机采样,并根据采样得到的待拟合样本点拟合得到第二拟合方程;

S2、基于所述第二拟合方程,利用随机一致性采样算法将所有待拟合点进行分类,确定内点组和外点组,所述内点组中包括满足所述第二拟合方程的待拟合点,且所述内点组用于更新所述第二拟合方程,所述外点组中包括不满足所述第二拟合方程的待拟合点;

S3、将所述外点组中的所有待拟合点确定为新的所有待拟合点,并重复步骤S1-步骤S2,直至达到预设条件时停止迭代,并将每次迭代拟合确定的第二拟合方程均确定为第一拟合方程;

所述预设条件包括:每次迭代得到的内点占比大于或等于第一预设阈值且迭代次数大于第二预设阈值,所述内点占比是基于每次迭代得到的内点组中待拟合点与所述所有待拟合点的比值确定的。

具体的,在对所有待拟合点进行迭代拟合时,采用随机一致性采样算法(RandomSample Consensus,RANSAC)进行迭代拟合。首先,从所有待拟合点中拟合得到第二拟合方程。之后,根据该第二拟合方程,可以将所有待拟合点划分为内点组和外点组,其中,内点组中包括满足该第二拟合方程的多个待拟合点,即内点组中的待拟合点作为内点,内点组中的多个待拟合点可以拟合为一个线性方程,以更新该第二拟合方程的参数,即更新该第二拟合方程的斜率和截距。外点组中包括不满足该第二拟合方程的多个待拟合点,即,外点组中的待拟合点作为外点,该外点可以视为异常点。之后,通过确定内点占比和迭代次数判断是否满足预设条件,即,判断内点组中待拟合点的数量占迭代之前所有待拟合点的数量的比值是否大于或等于第一预设阈值,若内点占比大于或等于第一预设阈值,则继续判断迭代次数是否大于第二预设阈值,若迭代次数大于第二预设阈值,则停止迭代,并根据每次迭代得到的第二拟合方程确定第一拟合方程。若内点占比小于第一预设阈值,则将外点组中的待拟合点作为下一轮新的所有待拟合点,重复拟合得到新的第二拟合方程,再次利用该新的第二拟合方程对新的所有待拟合点进行分类,直至满足上述预设条件时停止迭代。

需要说明的是,上述RANSAC是一种迭代方法,用于从一组包含异常值的数据中估计数学模型的参数,此时,异常值对估计值没有影响。因此,也可以说RANSAC是一种异常值检测方法。该算法的一个基本假设是:数据由“inliers”组成,inlier即为内点。这些数据的分布可以用一组模型参数来解析,外点是不符合模型的数据,外点即为outlier,即异常值。

进一步的,所述基于所述第二拟合方程,利用随机一致性采样算法将所有待拟合点进行分类,确定内点组和外点组,包括:

针对各所述待拟合点,确定所述待拟合点至所述第二拟合方程对应拟合直线的距离;

在所述距离小于或等于距离阈值的情况下,将所述距离对应的待拟合点添加至内点组;

在所述距离大于所述距离阈值的情况下,将所述距离对应的待拟合点添加至外点组。

具体的,在拟合得到第二拟合方程后,可利用式(2)确定各待拟合点至该第二拟合方程对应的拟合直线的距离,若该距离小于或等于距离阈值,表明该待拟合点符合第二拟合方程,并将该待拟合点添加至内点组中,若该距离大于距离阈值,表明该待拟合点不符合第二拟合方程,并将该待拟合点添加至外点组中。式(2)为:

其中,d表示任一待拟合点至该第二拟合方程对应的拟合直线的距离,s

示例的,拟合过程中对应的参数包括:n=2,即,拟合所需的待拟合点的最小数量为2,迭代次数对应的第二预设阈值为500,距离阈值为2,内点占比对应的第一预设阈值为0.95为例,迭代拟合的步骤如下:

1)在迭代拟合之前,对所有待拟合点进行随机采样,得到采样子集,该采样子集用于确定第二拟合方程,因此,采样子集中包括至少两个待拟合点,采样子集中的待拟合点为假设的内点组中的待拟合点。

2)利用式(1),根据采样子集中的至少两个待拟合点进行拟合,得到第二拟合方程。

3)利用式(2),分别确定各待拟合点至第二拟合方程对应的拟合直线的距离,并判断各距离是否小于或等于距离阈值2,若距离小于或等于距离阈值2,则将该待拟合点添加至内点组中,并且根据新添加的待拟合点,更新该第二拟合方程,若距离大于距离阈值2,则将该待拟合点添加至外点组中,直至将所有待拟合点分类完成。

4)计算内点组中的待拟合点的数量与迭代之前所有待拟合点的数量的比值,即确定内点占比,若该内点占比大于或等于第一预设阈值0.95,则该第二拟合方程为本次迭代中确定的第一拟合方程。

5)若该内点占比小于第一预设阈值0.95,则迭代次数加1。

6)若迭代次数小于或等于第二预设阈值500时,则重复执行步骤1)至步骤4);若迭代次数大于第二预设阈值500时,则停止迭代。

此外,停止迭代的预设条件还可以根据外点组中待拟合点的数量进行确定,由于存在两个外点即可拟合得到第二拟合方程,因此,在外点组中的待拟合点的数量小于2时,可停止迭代。

步骤140、基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

进一步的,所述基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量,包括:

在所述第一拟合方程的数量为一个的情况下,将NAT后Linux主机对应的目标数量确定为一个;

在所述第一拟合方程的数量为至少两个的情况下,确定所述至少一个第一拟合方程各自对应的斜率;基于任意两个第一拟合方程各自对应的斜率之差,确定所述任意两个第一拟合方程的相似度;基于所有相似度,确定至少一个目标拟合方程;基于所述目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量。

具体的,在迭代拟合后,若得到的第一拟合方程的数量仅为一个时,则表明NAT后Linux主机对应的目标数量即为一个。若得到的第一拟合方程的数量为至少两个时,为进一步减小拟合误差,分别确定各第一拟合方程各自对应的斜率,并计算任意两个斜率的差值,将该差值确定为两个斜率对应的两个第一拟合方程的相似度,根据该相似度,可进一步判断两个第一拟合方程是否属于同一拟合直线,即根据各第一拟合方程,可进一步确定目标拟合方程,并进一步根据目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量。

进一步的,所述基于所有相似度,确定至少一个目标拟合方程,包括:

针对任一相似度,在所述相似度小于第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为一个目标拟合方程;

在所述相似度大于或等于所述第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为两个目标拟合方程。

具体的,若该相似度小于第三预设阈值,表明该相似度对应的两个第一拟合方程近似为一条直线,可将该相似度对应的两个第一拟合方程合并为一个目标拟合方程,若该相似度大于或等于第三预设阈值,表明该相似度对应的两个第一拟合方程差距较大,两个第一拟合方程可确定为两个目标拟合方程,实现对各第一拟合方程的过滤,以减小拟合误差。

进一步的,所述基于所述目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量,包括:

基于所有待拟合点进行多次拟合,确定每次拟合得到的目标拟合方程的第一数量;

将所有第一数量对应的数量均值确定为NAT后Linux主机对应的目标数量。

具体的,在对所有待拟合点进行迭代拟合后,可重新对该所有待拟合点进行多次拟合,并确定每次迭代后得到的目标拟合方程的第一数量,进一步确定该第一数量对应的数量均值,并将该数量均值确定为NAT后Linux主机对应的目标数量,以进一步消除迭代拟合的误差,提高最终结果的准确度。

本发明实施例提供的NAT后Linux主机数量统计方法,通过在包括多台Linux主机的网络环境中获取存在发送方时间戳信息Tsval的多个目标被动流量数据包,并根据该多个目标被动流量数据包各自对应的Tsval和到达时刻信息,确定多个待拟合点,并根据TSval与到达时刻信息之间的线性关系,对多个待拟合点进行迭代拟合,并根据迭代后得到的至少一个第一拟合方程的数量,确定NAT后Linux主机对应的目标数量,不需要先验知识即可确定Linux主机数量,降低拟合误差,提高确定主机数量的灵活性和准确度。

下面对本发明提供的NAT后Linux主机数量统计装置进行描述,下文描述的NAT后Linux主机数量统计装置与上文描述的NAT后Linux主机数量统计方法可相互对应参照。

本发明实施例还提供一种NAT后Linux主机数量统计装置,图4是本发明实施例提供的NAT后Linux主机数量统计装置的结构示意图,如图4所示,该NAT后Linux主机数量统计装置400包括:获取模块410、第一确定模块420、迭代拟合模块430和第二确定模块440,其中:

获取模块410,用于获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

第一确定模块420,用于基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

迭代拟合模块430,用于基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

第二确定模块440,用于基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

本发明实施例提供的NAT后Linux主机数量统计装置,通过在包括多台Linux主机的网络环境中获取存在发送方时间戳信息Tsval的多个目标被动流量数据包,并根据该多个目标被动流量数据包各自对应的Tsval和到达时刻信息,确定多个待拟合点,并根据TSval与到达时刻信息之间的线性关系,对多个待拟合点进行迭代拟合,并根据迭代后得到的至少一个第一拟合方程的数量,确定NAT后Linux主机对应的目标数量,不需要先验知识即可确定Linux主机数量,降低拟合误差,提高确定主机数量的灵活性和准确度。

可选的,获取模块410,具体用于:

获取网络环境中的多个被动流量数据包;

在所述多个被动流量数据包中各所述被动流量数据包对应的通信协议为预设协议的情况下,确定所述被动流量数据包对应的options字段信息;

在所述options字段信息中包括TSval的情况下,将所述被动流量数据包确定为所述目标被动流量数据包。

可选的,迭代拟合模块430,具体用于:

S1、对所有待拟合点进行随机采样,并根据采样得到的待拟合样本点拟合得到第二拟合方程;

S2、基于所述第二拟合方程,利用随机一致性采样算法将所有待拟合点进行分类,确定内点组和外点组,所述内点组中包括满足所述第二拟合方程的待拟合点,且所述内点组用于更新所述第二拟合方程,所述外点组中包括不满足所述第二拟合方程的待拟合点;

S3、将所述外点组中的所有待拟合点确定为新的所有待拟合点,并重复步骤S1-步骤S2,直至达到预设条件时停止迭代,并将每次迭代拟合确定的第二拟合方程均确定为第一拟合方程;

所述预设条件包括:每次迭代得到的内点占比大于或等于第一预设阈值且迭代次数大于第二预设阈值,所述内点占比是基于每次迭代得到的内点组中待拟合点与所述所有待拟合点的比值确定的。

可选的,迭代拟合模块430,具体用于:

针对各所述待拟合点,确定所述待拟合点至所述第二拟合方程对应拟合直线的距离;

在所述距离小于或等于距离阈值的情况下,将所述距离对应的待拟合点添加至内点组;

在所述距离大于所述距离阈值的情况下,将所述距离对应的待拟合点添加至外点组。

可选的,第二确定模块440,具体用于:

在所述第一拟合方程的数量为一个的情况下,将NAT后Linux主机对应的目标数量确定为一个;

在所述第一拟合方程的数量为至少两个的情况下,确定所述至少一个第一拟合方程各自对应的斜率;基于任意两个第一拟合方程各自对应的斜率之差,确定所述任意两个第一拟合方程的相似度;基于所有相似度,确定至少一个目标拟合方程;基于所述目标拟合方程的第一数量,确定NAT后Linux主机对应的目标数量。

可选的,第二确定模块440,具体用于:

针对任一相似度,在所述相似度小于第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为一个目标拟合方程;

在所述相似度大于或等于所述第三预设阈值的情况下,将所述相似度对应的所述任意两个第一拟合方程确定为两个目标拟合方程。

可选的,第二确定模块440,具体用于:

基于所有待拟合点进行多次拟合,确定每次拟合得到的目标拟合方程的第一数量;

将所有第一数量对应的数量均值确定为NAT后Linux主机对应的目标数量。

图5是本发明实施例提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行NAT后Linux主机数量统计方法,该方法包括:

获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的NAT后Linux主机数量统计方法,该方法包括:

获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的NAT后Linux主机数量统计方法,该方法包括:

获取网络环境中存在发送方时间戳信息TSval的多个目标被动流量数据包,所述网络环境中包括至少一台Linux主机;

基于所述多个目标被动流量数据包中各自对应的TSval和到达时刻信息,确定多个待拟合点;

基于所述TSval与所述到达时刻信息之间的线性关系,将所有待拟合点进行迭代拟合,直至达到预设条件时停止迭代,并确定至少一个第一拟合方程;

基于所述至少一个第一拟合方程,确定NAT后Linux主机对应的目标数量。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种进馆档案数量预测方法、装置、电子设备及存储介质
  • 活跃用户数量确定方法及装置、存储介质和电子设备
  • 一种直播中数据统计方法、装置及电子设备
  • 一种数据筛选统计方法、装置、电子设备及存储介质
  • 与主机接合的储存装置以及操作主机和储存装置的方法
  • 一种NAT后主机数量检测方法
  • 一种NAT后主机数量检测方法
技术分类

06120116491941