专利名称:检测影子用户的数目的方法和装置及网络设备的制作方法
技术领域:
本发明实施例涉及通信技术,尤其涉及检测影子用户的数目的方法和装置及网络 设备。
背景技术:
802. Ix认证采用基于端口的网络存取控制,为局域网用户提供点对点式的安全 接入。以电脑接入为例(也可以是其他接入终端),一个简单的示意如图1所示,安装有 802. Ix认证客户端软件的个人电脑(Personal Computer,简称PC)将提交相关的认证信息 给交换机进行认证,交换机将相关认证信息转交给认证服务器进行确认。如果认证通过,交 换机将相关的端口打开,则连接此端口的电脑就可以使用网络了。在802. Ix中,只要认证通过了,交换机就会记录认证成功电脑的介质访问控制 (Media Access Control,简称MAC)地址。只要是该MAC地址的数据,交换机就会认为是经 过认证的电脑发送出来的,因此会放行这些数据。如图2所示,如果有人采用在认证的交换机端口下增加一个集线器(HUB),把两台 电脑连接在HUB上。PC a安装有802. Ix认证客户端,认证通过。而PC b仅仅通过把MAC 地址修改成和PC a的MAC地址相同,就可以不用认证而非法使用网络。针对图2中所示的缺陷,现有技术中比较普遍采用的解决办法就是在交换机的端 口上,对认证过的电脑的因特网协议(Internet Protocol,简称IP)地址,MAC地址以及端 口绑定在一起。而不是简单通过MAC地址来决定数据是否放行。如图3所示给出了使用端口、IP、MAC三元素绑定的方案,此时PC b由于使用的IP 地址与PC a不同,因此无法使用网络。但是三元素绑定方案还是存在一个漏洞,如果PC b 将IP和MAC地址修改为与PC a的IP和MAC地址相同,则PC b还是可以通过不认证就可 以使用网络,如图4所示。从图4可以看出,当接入终端PC a通过认证客户端软件发出认证请求时,交换机 转发相应信息,并提交认证服务器确认,如果通过认证,交换机就打开相应端口(PORT),允 许满足(IP+MAC+P0RT)三元组认证条件的报文通过。此时如果有另一接入终端PC b通过 HUB与PC a连接在一起,并且仿冒PC a的IP地址和MAC地址,那么PC b也可以满足三元 组(IP+MAC+P0RT)的认证条件,因此PC b此时不需要经过认证便可以访问网络资源。这样, 网络中就出现了仿冒IP地址和MAC地址的终端可以不认证就访问网络的问题。影子用户就是指非法用户企图不通过身份认证,而直接采用合法用户的IP地址 和MAC地址的用户。如图4中的PC b即为影子用户。如果存在影子用户,那么只要被仿冒 的用户上线,那么影子用户无需认证即可使用网络了。当合法用户存在一个或多个影子用户时,服务器却只能全部当作一个用户来处 理,这样,往往造成了网络流量的大量流失,并造成了认证和计费的漏洞。而目前,并没有检 测影子用户数目的方法,也就是说无法得知存在多少个影子用户,因此造成了无法量化出 业务损失,比如,无法得到由各影子用户造成的网络流量的具体流失数量、网费损失的具体数量等,从而大大降低了业务性能。
发明内容
本发明实施例提供检测影子用户的数目的方法和装置及网络设备,能够检测出影 子用户的数目。本发明实施例提供的检测影子用户的数目的方法,包括A、接收与认证通过的用户具有相同的用户认证特征的报文;B、提取出所述报文的标识字段;C、对于接收到的每一个报文,计算该报文与指定报文的标识字段的差值;如果所 述差值在预设的异常范围内,则为该报文对应一个新增用户;D、确定所有报文对应的新增用户的个数值;E、将最终确定的新增用户的个数值确定为影子用户的数目。步骤A中,所述用户认证特征包括源因特网协议IP地址和/或源介质访问控制 MAC地址。在预先划分的多个采样周期中分别执行所述步骤A至步骤D ;在步骤D与步骤E之间,进一步包括从所有采样周期确定的所有新增用户的个数 值中,确定出现次数最多的新增用户的个数值。所述指定报文为已经接收到的第η个报文,η为自然数;或者,已经接收到的m个 报文中的每一个报文,m为大于1的自然数。所述差值为所述每一个报文的标识字段的值减去所述指定报文的标识字段的 值;步骤C中,所述如果所述差值在预设的异常范围内包括如果所述差值大于预先 设置的允许丢包阈值;或者,如果所述差值小于0。所述步骤C包括为设定时间段内接收到的第一个报文设置一个对应的序列,将所述第一个报文中 的标识字段值放入该对应的序列中;对于所述设定时间段内接收到的第k个报文,k为大于 1的自然数,分别计算该第k个报文中的标识字段的值与所述设定时间段内已有的各序列 中各标识字段的值之间的差值;对于所述第k个报文,如果所有差值都在预设的异常范围 内,则为所述第k个报文新增一个对应的序列,将所述第k个报文中的标识字段值放入该新 增的序列中,如果任一差值不在预设的异常范围内,则将所述第k个报文中的标识字段值 放入距离最近的序列中,该距离最近的序列为计算出不在预设的异常范围内的最小差值所 使用的序列;所述新增用户的个数值为新增序列的个数值。步骤A中,所述接收与认证通过的用户具有相同的用户认证特征的报文包括持续接收所有与认证通过的用户具有相同的用户认证特征的报文;或者,每隔设定时间接收预设数量的连续的与认证通过的用户具有相同的用户认证特 征的报文。本发明实施例提供的检测影子用户的数目的装置,包括
接收模块,用于接收与认证通过的用户具有相同的用户认证特征的报文;提取模块,用于提取出所述报文的标识字段;计算模块,用于对接收到的每一个报文,计算该报文与指定报文的标识字段的差 值;处理模块,用于对接收到的每一个报文,如果所述差值在预设的异常范围内,则为 该报文对应一个新增用户;确定模块,用于确定所有报文对应的新增用户的个数值;输出模块,用于将最终确定的新增用户的个数值输出为影子用户的数目。所述接收模块包括第一接收子模块,用于在预先划分的多个采样周期中的每一个 采样周期开始时,进行接收初始化,然后接收与认证通过的用户具有相同的用户认证特征 的报文;所述确定模块包括第一确定子模块,用于在所述每一个采样周期结束时,确定本采样周期内所有报 文对应的新增用户的个数值;第二确定子模块,用于从所有采样周期确定的所有新增用户的个数值中,确定出 现次数最多的新增用户的个数值。所述计算模块包括第一计算子模块,用于对接收到的每一个报文,计算该报文与已经接收到的第η 个报文的标识字段的差值,η为自然数;或者,第二计算子模块,用于对接收到的每一个报文,计算该报文与已经接收到的m个 报文中的每一个报文的标识字段的差值,m为大于1的自然数。所述计算模块包括第三计算子模块,用于将每一个报文的标识字段的值减去所述 指定报文的标识字段的值;所述处理模块包括第一判断子模块,用于判断所述差值是否大于预先设置的允许丢包阈值,如果是, 则所述差值在预设的异常范围内;或者,第二判断子模块,用于判断所述差值是否小于0如果是,则所述差值在预设的异 常范围内。所述计算模块包括第四计算子模块,用于为设定时间段内接收到的第一个报文设 置一个对应的序列,将所述第一个报文中的标识字段值放入该对应的序列中;对于所述设 定时间段内接收到的第k个报文,k为大于1的自然数,分别计算该第k个报文中的标识字 段的值与所述设定时间段内已有的各序列中各标识字段的值之间的差值;所述处理模块包括第一序列处理子模块,用于对于所述第k个报文,如果所有差值都在预设的异常 范围内,则为所述第k个报文新增一个对应的序列,将所述第k个报文中的标识字段值放入 该新增的序列中;第二序列处理子模块,用于对于所述第k个报文,如果任一差值不在预设的异常范围内,则将所述第k个报文中的标识字段值放入距离最近的序列中,该距离最近的序列 为计算出不在预设的异常范围内的最小差值所使用的序列;所述确定模块包括第三确定子模块,用于将新增序列的个数值确定为所述新增用 户的个数值。所述接收模块包括第二接收子模块,用于持续接收所有与认证通过的用户具有相同的用户认证特征 的报文;或者,第三接收子模块,用于每隔设定时间接收预设数量的连续的与认证通过的用户具 有相同的用户认证特征的报文。本发明实施例提供的网络设备包括本发明实施例提供的任意一种检测影子用户 的数目的装置。本发明实施例提出的检测影子用户的数目的方法和装置及网络设备,利用了影子 用户无法构造出符合合法用户的标识字段变化规律的报文的特点,对于具有相同用户认证 特征的所有报文,分析在一定时间段内接收到的每个报文中标识字段值与其他报文标识字 段值的差值是否都在预设的异常范围内,也就是说分析每个报文是否不符合已有用户主机 发出的报文中标识字段应有的变化规律,从而确定当前接收的报文与先接收的报文是否为 同一用户主机发出的,并记录不同用户的个数,从而确定出影子用户的数目,进而能够根据 确定出的影子用户的数目量化出业务损失,比如,得到由各影子用户造成的网络流量的具 体流失数量、网费损失的具体数量等,从而大大提高了业务性能。进一步地,本发明实施例提出的检测影子用户的数目的方法和装置及网络设备的 一种实现中,只需要利用减法运算即可检测出影子用户的数目,而无需采用诸如统计学算 法的复杂算法,因此,实现简单。进一步地,本发明实施例提出的检测影子用户的数目的方法和装置及网络设备, 无需为了检测影子用户数目而产生并发送额外的检测报文,只需在能够接收到报文的设备 内部进行处理即可,从而不会给为了带来冗余的数据流,不会影响正常的网络使用。进一步地,由于IP协议是网络传输的基础协议,无论影子用户与合法用户使用何 种共享上网方式,都会用到IP协议,因此,本发明实施例提出的检测影子用户的数目的方 法和装置及网络设备利用IP报文中的标识字段进行检测,则大大增加了本发明实施例的 应用范围。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根 据这些附图获得其他的附图。图1为802. Ix认证示意图;图2为非法用户伪装合法用户示意图一;图3为非法用户伪装合法用户示意图二 ;
图4为影子用户伪装合法用户示意图;图5是本发明实施例提出的检测影子用户的数目的基本流程图;图6是本发明一个优选实施例中检测影子用户的数目的流程图;图7是本发明实施例提出的检测影子用户的数目的装置的基本结构图;图8是本发明实施例中检测影子用户数目的装置一种可选结构图;图9是本发明实施例中检测影子用户数目的装置另一种可选结构图;图10是本发明实施例中检测影子用户数目的装置又一种可选结构图;图11是本发明实施例中检测影子用户数目的装置再一种可选结构图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提出了一种检测影子用户的数目的方法,参见图5,该方法包括步骤501 接收与认证通过的用户具有相同的用户认证特征的报文。本步骤的具体实现方法可以为持续接收所有与认证通过的用户具有相同的用户 认证特征的报文;或者,也可以是每隔设定时间接收预设数量的连续的与认证通过的用户 具有相同的用户认证特征的报文。本步骤中,用户认证特征可以包括源IP地址和/或源MAC地址。步骤502 提取出所述报文的标识字段。步骤503 对于接收到的每一个报文,计算该报文与指定报文的标识字段的差值, 如果所述差值在预设的异常范围内,则为该报文对应一个新增用户。本步骤中,在计算一个报文与指定报文的标识字段的差值时,该指定报文可以是 已经接收到的第η个报文,η为自然数,也就是说,计算一个报文与之前接收到的任意一个 报文的标识字段的差值,较佳地,可以是与上一个或者上上个报文的差值,然后利用该一个 差值判断差值是否在预设的异常范围内;或者,指定报文也可以是已经接收到的m个报文中的每一个报文,m为大于1的自然数, 也就是说,计算一个报文与之前接收到的任意个数的报文的标识字段的差值,较佳地,可以 是与之前已接收到的每一个报文的标识字段的差值,然后利用该任意个数的差值判断该任 意个数的差值是否都在预设的异常范围内。本步骤中的差值是每一个报文的标识字段的值减去所述指定报文的标识字段的值。本步骤中,如果差值在预设的异常范围内具体可以为如果差值大于预先设置的 允许丢包阈值;或者,如果差值小于0。步骤504 确定所有报文对应的新增用户的个数值。步骤505 将最终确定的新增用户的个数值确定为影子用户的数目。影子用户虽然与合法用户的IP地址和MAC地址完全相同,但是在不同的用户主机 中,IP报头的标识(id)字段是独立的,标识字段由发送者设定值,在先后发送的IP报文中按照一定的步长递增。在实际业务中,影子用户与合法用户由于各自独立的上网操作与不 同的数据流量,其发出的报文速率是有差异的,并且,影子用户与合法用户的主机发出的报 文的标识字段的初始值与递增幅度会随着各自的丢包和分片等各种原因而随机变化,影子 用户无法构造出符合合法用户的标识字段变化规律的报文,来使得该报文的标识字段与合 法用户的报文的标识字段组合起来正好是合法的标识字段的正常变化规律。而本发明实施 例提出的检测影子用户的数目的方法正是利用了上述特点,对于具有相同用户认证特征的 所有报文,分析在一定时间段内接收到的每个报文中标识字段值与其他报文标识字段值的 差值是否都在预设的异常范围内,也就是说分析每个报文是否不符合已有用户主机发出的 报文中标识字段应有的变化规律,从而确定当前接收的报文与先接收的报文是否为同一用 户主机发出的,并记录新增用户的个数,从而确定出影子用户的数目。在本发明实施例提出的检测影子用户的数目的方法中,为了进一步提高检测的准 确性,可以预先划分出多个采样周期,每个采样周期均执行一次确定该采样周期内新增用 户的个数值的处理,这样,每个采样周期都能够确定出影子用户的数目,将出现次数最多的 影子用户的数目最终确定为检测出的影子用户的数目。另外,在本发明实施例提出的检测影子用户的数目的方法中,记录的新增用户的 个数可以通过记录的新增序列的个数来体现。下面以采用上述多个采样周期的方法并以序列的方式来记录新增用户的个数的 方法为例,以及以分别计算一个报文与之前已经接收到的每一个报文的标识字段的差值为 例,详细说明本发明实施例实现检测影子用户的数目的过程。参见图6,该过程包括以下步 骤步骤600 预先划分出多个采样周期。统计学中的“众数”(Mode),表示在统计分布上具有明显集中趋势点的数值,代表 数据的一般水平,简单的说是一组数据中出现次数最多的数值,叫众数。基于众数的原理,为了进一步提高检测的准确性,本步骤中划分出多个采样周期, 以便在后续处理中能够在每个采样周期均得到一个影子用户的数目,也就是说,得到一组 关于影子用户数目的数据,根据众数的原理,将出现次数最多的影子用户的数目最终确定 为检测出的影子用户的数目,从而能够使确定出的影子用户的数目更加准确。比如,本步骤中,可以划分出5个采样周期,每个采样周期的长度为20秒。步骤601 在用户认证通过后,开始对每一个采样周期的计时。步骤602 在每一个采样周期开始后,接收与认证通过的用户具有相同的用户认 证特征的报文。本步骤中,用户认证特征可以包括源IP地址和/或源MAC地址。在每一个采样周期中,可以连续接收所有报文,也可以间隔性地接收几个连续的 报文。因此,本步骤中,接收与认证通过的用户具有相同的用户认证特征的报文具体可以包 括持续接收所有与认证通过的用户具有相同的用户认证特征的报文;例如,在当前 的采样周期中,可以将所有与认证通过的用户具有相同的源IP地址的报文都获取,以便进 行实时的分析和检测,这种方式的检测灵敏度高;或者,
每隔设定时间接收预设数量的连续的与认证通过的用户具有相同的用户认证特 征的报文,例如可以每隔4秒获取10个连续的与认证通过的用户具有相同的源IP地址的 报文,进行分析和检测,这种方式可以保证在一定的检测灵敏度下节省检测占用的资源。为便于后续描述,假设在当前采样周期内接收的报文依次为P1,P2,. . .,Pn。步骤603 从接收到的报文中提取出标识字段。为便于后续描述,假设在当前采样周期内,从依次接收到的报文Pl,P2,. . .,Pn中 分别提取出的标识字段值依次为idl,id2,. . .,idn。步骤604 为当前采样周期中接收到的第一个报文Pl设置一个对应的初始序列 (记为U1),将从报文Pl中提取的标识字段idl放入该初始序列Ul中。步骤605 对于当前采样周期中接收到的第k个报文Pk,k为自然数,且2彡k彡n, 分别计算该报文Pk中的标识字段的值与当前采样周期内已有的各序列中各标识字段值之 间的差值。步骤606:对于第k个报文Pk,判断计算出的所有差值是否都在预设的异常范围 内,如果是,则执行步骤607,否则,执行步骤608。在实际的业务实现中,在网络中丢包是经常发生的情况,因此,可以预先设置一个 允许丢包阈值,小于或等于该允许丢包阈值的差值都认为是丢包引起的差值,也就是说,可 以认为该两个报文是同一用户发出的,相反,大于该允许丢包阈值的差值则认为不是丢包 引起的差值,也就是说,可以认为报文是一个新出现的用户发出的。另外,如果差值小于0,也说明报文中的标识字段值的变化规律不符合正常的递增 规律,因此,也可以认为报文是一个新出现的用户发出的。因此,本步骤中,判断所有差值是否都在预设的异常范围内具体可以包括判断所 有差值是否都大于预先设置的允许丢包阈值,如果是,则所有差值都在预设的异常范围内; 或者,判断所有差值是否都小于0,如果是,则所有差值都在预设的异常范围内。步骤607 为报文Pk新增一个对应的序列Uk,将报文Pk中的标识字段idk放入该 对应的序列Uk中,执行步骤609。步骤608 将报文Pk中的标识字段值idk放入已有的距离最近的序列中,该距离 最近的序列为计算出不在预设的异常范围内的最小差值所使用的序列。举例说明上述步骤605至步骤608的过程,假如当前的k值为2,也就是说针对接 收到的第二个报文P2,首先,已有序列中已有的标识字段值只有序列Ul中的idl,因此,执 行id2-idl ;如果差值大于预先设置的允许丢包阈值或者小于0,则说明发出报文P2的用户 主机与发出报文Pl的用户主机不同,相对于已有的发出Pl的用户主机来看,新增了一个用 户主机,为了表示新增了一个用户主机,为报文P2新增一个序列U2,将id2放入U2中;否 则,说明发出报文P2的用户主机与发出报文Pl的用户主机相同,无需新增对应用户主机的 序列,将id2放入已有序列Ul中。假如当前的k值为3,且如果对应报文P2新增了序列U2,则已有序列中已有的标 识字段值包括序列Ul中的idl和序列U2中的id2,分别执行diff (id3,idl) = id3-idl, 以及 diff(id3,id2) = id3-id2,如果 diff(id3,idl)以及 diff(id3,id2)两个差值都大 于预先设置的允许丢包阈值或者都小于0,则说明发出报文P3的用户主机与发出报文Pl和 P2的用户主机不同,新增一个用户主机,因此,为报文P3新增一个序列U3,将id3放入U3中;否则,假如diff(id3,id2)小于预先设置的允许丢包阈值,且两个差值diff(id3,idl) 及diff(id3,id2)中,diff(id3,id2)更小,说明发出报文P3的用户主机与发出报文P2的 用户主机应该为同一用户主机,因此,不新增序列,而是将id3放入距离最近的序列U2中。 以此类推,直至当前采样周期内的最后一个报文。步骤609:判断当前的k值是否等于当前采样周期内接收到的报文的个数n,如果 是,则执行步骤611,否则,执行步骤610。步骤610 :k = k+Ι,返回步骤 605。步骤611 得到当前采样周期内新增序列的个数值,将新增序列的个数值确定为 当前采样周期内新增用户的个数值。执行到本步骤时,则可以得到在当前采样周期内,对于具体相同用户认证特征 (如相同源IP地址和源MAC地址)的所有报文,除了合法用户发送该种报文之外,总共有多 少个新增用户发来该种报文。步骤612:判断所有采样周期是否均已完成,如果是,执行步骤613,否则,返回步 骤 602。步骤613 从所有采样周期确定的所有新增用户的个数值中,确定出现次数最多 的新增用户的个数值。步骤614 将最终确定的新增用户的个数值确定为影子用户的数目。比如,共有5个采样周期,分别确定的新增序列的个数即新增用户的各数值为3, 4,4,4,2,那么,则可以确定出线次数最多的新增用户的个数值为4,因此,确定影子用户的 数目为4,也就是说,除了合法用户之外,还有4个非法用户仿冒合法用户的身份发送报文。在实际中,由于接入交换机和安装有认证客户端软件的用户主机都能够接收到具 有相同用户认证特征的IP报文,因此,上述图6所示过程可以在接入交换机中执行,也可以 在安装有认证客户端软件的用户主机中执行。较佳地,为了进一步减少接入交换机的负荷, 还可以为接入交换机连接一个专用设备,由接入交换机与该专用设备配合执行上述图6所 示过程,即由接入交换机在每个采样周期接收所有具有相同用户认证特征的报文,然后转 发给该专用设备,其它处理则由该专用设备执行。需要说明的是,上述图6所示过程中是以分别计算一个报文与之前已经接收到的 每一个报文的差值,然后利用所有差值判断是否都在异常范围内为例来确定报文对应的新 增序列(即新增用户)的个数,在实际的业务实现中,也可以只计算一个报文与之前接收到 的任意一个报文的标识字段的差值,较佳地,可以是与上一个或者上上个报文的差值,然后 利用该一个差值判断差值是否在预设的异常范围内,从而确定报文对应的新增序列(即新 增用户)的个数,进而最终确定影子用户的数目;或者,在实际的业务实现中,也可以计算 一个报文与之前接收到的任意个数的报文的标识字段的差值,比如与之前已接收到的前2 个报文中每一个报文的标识字段的差值,然后利用该2个差值判断差值是否都在预设的异 常范围内,从而确定报文对应的新增序列(即新增用户)的个数,进而最终确定影子用户的 数目。本发明实施例还提出了一种检测影子用户的数目的装置,参见图7,该装置包括接收模块700,用于接收与认证通过的用户具有相同的用户认证特征的报文;提取模块701,用于提取出所述报文的标识字段;
12
计算模块702,用于对接收到的每一个报文,计算该报文与指定报文的标识字段的
差值;处理模块703,用于对接收到的每一个报文,如果所述差值在预设的异常范围内, 则为该报文对应一个新增用户;确定模块704,用于确定所有报文对应的新增用户的个数值;输出模块705,用于将最终确定的新增用户的个数值输出为影子用户的数目。参见图8,在本发明实施例提出的检测影子用户数目的装置的一种优化结构中,所述接收模块700包括第一接收子模块801,用于在预先划分的多个采样周期中 的每一个采样周期开始时,进行接收初始化,然后接收与认证通过的用户具有相同的用户 认证特征的报文;相应地,所述确定模块704包括第一确定子模块802,用于在所述每一个采样周期结束时,确定本采样周期内所有 报文对应的新增用户的个数值;第二确定子模块803,用于从所有采样周期确定的所有新增用户的个数值中,确定 出现次数最多的新增用户的个数值。参见图9,在本发明实施例提出的检测影子用户数目的装置的另一种优化结构中, 所述计算模块702包括第一差值子模块7021,用于对接收到的每一个报文,计算该报文与已经接收到的 第η个报文的标识字段的差值,η为自然数;或者,第二差值子模块7022,用于对接收到的每一个报文,计算该报文与已经接收到的 m个报文中的每一个报文的标识字段的差值,m为大于1的自然数。参见图9,所述计算模块702还可以包括第一计算子模块901,用于将每一个报文 的标识字段的值减去所述指定报文的标识字段的值;相应地,所述处理模块703包括第一判断子模块902,用于判断所述差值是否大于预先设置的允许丢包阈值,如果 是,则所所述差值在预设的异常范围内;或者,第二判断子模块903,用于判断所述差值是否小于0如果是,则所述差值在预设的 异常范围内。参见图10,在本发明实施例提出的检测影子用户数目的装置的又一种优化结构 中,所述计算模块702包括第二计算子模块7023,用于为设定时间段内接收到的第一 个报文设置一个对应的序列,将所述第一个报文中的标识字段值放入该对应的序列中;对 于所述设定时间段内接收到的第k个报文,k为大于1的自然数,分别计算该第k个报文中 的标识字段的值与所述设定时间段内已有的各序列中各标识字段的值之间的差值;相应地,所述处理模块703包括第一序列处理子模块1001,用于对于所述第k个报文,如果所有差值都在预设的 异常范围内,则为所述第k个报文新增一个对应的序列,将所述第k个报文中的标识字段值放入该新增的序列中;第二序列处理子模块1002,用于对于所述第k个报文,如果任一差值不在预设的 异常范围内,则将所述第k个报文中的标识字段值放入距离最近的序列中,该距离最近的 序列为计算出不在预设的异常范围内的最小差值所使用的序列;相应地,所述确定模块704包括第三确定子模块1003,用于将新增序列的个数值 确定为所述新增用户的个数值。参见图11,在本发明实施例提出的检测影子用户数目的装置的再一种优化结构 中,所述接收模块700包括第二接收子模块1101,用于持续接收所有与认证通过的用户具有相同的用户认证 特征的报文;或者,第三接收子模块1102,用于每隔设定时间接收预设数量的连续的与认证通过的用 户具有相同的用户认证特征的报文。本发明实施例还提出了一种网络设备,该网络设备包括本发明实施例提供的任意 一种检测影子用户的数目的装置。本发明实施例提出的网络设备可以为接入交换机,或者为安装有认证客户端软件 的用户主机;或者为与接入交换机相连的设备,且所述接收模块700接收到的与认证通过 的用户具有相同的用户认证特征的报文是从所述接入交换机上转发来的。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在 执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光 盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替 换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精 神和范围。
权利要求
一种检测影子用户的数目的方法,其特征在于,包括A、接收与认证通过的用户具有相同的用户认证特征的报文;B、提取出所述报文的标识字段;C、对于接收到的每一个报文,计算该报文与指定报文的标识字段的差值;如果所述差值在预设的异常范围内,则为该报文对应一个新增用户;D、确定所有报文对应的新增用户的个数值;E、将最终确定的新增用户的个数值确定为影子用户的数目。
2.根据权利要求1所述的方法,其特征在于,步骤A中,所述用户认证特征包括源因特 网协议IP地址和/或源介质访问控制MAC地址。
3.根据权利要求1所述的方法,其特征在于,在预先划分的多个采样周期中分别执行所述步骤A至步骤D ;在步骤D与步骤E之间,进一步包括从所有采样周期确定的所有新增用户的个数值 中,确定出现次数最多的新增用户的个数值。
4.根据权利要求1所述的方法,其特征在于,所述指定报文为已经接收到的第n个报 文,n为自然数;或者,已经接收到的m个报文中的每一个报文,m为大于1的自然数。
5.根据权利要求1所述的方法,其特征在于,所述差值为所述每一个报文的标识字段 的值减去所述指定报文的标识字段的值;步骤C中,所述如果所述差值在预设的异常范围内包括如果所述差值大于预先设置 的允许丢包阈值;或者,如果所述差值小于0。
6.根据权利要求1 5任一所述的方法,其特征在于,所述步骤C包括为设定时间段内接收到的第一个报文设置一个对应的序列,将所述第一个报文中的标 识字段值放入该对应的序列中;对于所述设定时间段内接收到的第k个报文,k为大于1的 自然数,分别计算该第k个报文中的标识字段的值与所述设定时间段内已有的各序列中各 标识字段的值之间的差值;对于所述第k个报文,如果所有差值都在预设的异常范围内,则 为所述第k个报文新增一个对应的序列,将所述第k个报文中的标识字段值放入该新增的 序列中,如果任一差值不在预设的异常范围内,则将所述第k个报文中的标识字段值放入 距离最近的序列中,该距离最近的序列为计算出不在预设的异常范围内的最小差值所使用 的序列;所述新增用户的个数值为新增序列的个数值。
7.根据权利要求1 5任一所述的方法,其特征在于,步骤A中,所述接收与认证通过 的用户具有相同的用户认证特征的报文包括持续接收所有与认证通过的用户具有相同的用户认证特征的报文;或者,每隔设定时间接收预设数量的连续的与认证通过的用户具有相同的用户认证特征的 报文。
8.—种检测影子用户的数目的装置,其特征在于,包括接收模块,用于接收与认证通过的用户具有相同的用户认证特征的报文;提取模块,用于提取出所述报文的标识字段;计算模块,用于对接收到的每一个报文,计算该报文与指定报文的标识字段的差值; 处理模块,用于对接收到的每一个报文,如果所述差值在预设的异常范围内,则为该报 文对应一个新增用户;确定模块,用于确定所有报文对应的新增用户的个数值;输出模块,用于将最终确定的新增用户的个数值输出为影子用户的数目。
9.根据权利要求8所述的装置,其特征在于,所述接收模块包括第一接收子模块,用于在预先划分的多个采样周期中的每一个采样 周期开始时,进行接收初始化,然后接收与认证通过的用户具有相同的用户认证特征的报 文;所述确定模块包括第一确定子模块,用于在所述每一个采样周期结束时,确定本采样周期内所有报文对 应的新增用户的个数值;第二确定子模块,用于从所有采样周期确定的所有新增用户的个数值中,确定出现次 数最多的新增用户的个数值。
10.根据权利要求8所述的装置,其特征在于,所述计算模块包括第一差值子模块,用于对接收到的每一个报文,计算该报文与已经接收到的第n个报 文的标识字段的差值,n为自然数; 或者,第二差值子模块,用于对接收到的每一个报文,计算该报文与已经接收到的m个报文 中的每一个报文的标识字段的差值,m为大于1的自然数。
11.根据权利要求8所述的装置,其特征在于,所述计算模块包括第一计算子模块,用于将每一个报文的标识字段的值减去所述指定 报文的标识字段的值; 所述处理模块包括第一判断子模块,用于判断所述差值是否大于预先设置的允许丢包阈值,如果是,则所 述差值在预设的异常范围内; 或者,第二判断子模块,用于判断所述差值是否小于0如果是,则所述差值在预设的异常范 围内。
12.根据权利要求8 11任一所述的装置,其特征在于,所述计算模块包括第二计算子 模块,用于为设定时间段内接收到的第一个报文设置一个对应的序列,将所述第一个报文 中的标识字段值放入该对应的序列中;对于所述设定时间段内接收到的第k个报文,k为大 于1的自然数,分别计算该第k个报文中的标识字段的值与所述设定时间段内已有的各序 列中各标识字段的值之间的差值;所述处理模块包括第一序列处理子模块,用于对于所述第k个报文,如果所有差值都在预设的异常范围 内,则为所述第k个报文新增一个对应的序列,将所述第k个报文中的标识字段值放入该新 增的序列中;第二序列处理子模块,用于对于所述第k个报文,如果任一差值不在预设的异常范围内,则将所述第k个报文中的标识字段值放入距离最近的序列中,该距离最近的序列为计 算出不在预设的异常范围内的最小差值所使用的序列;所述确定模块包括第三确定子模块,用于将新增序列的个数值确定为所述新增用户的 个数值。
13.根据权利要求8 11任一所述的装置,其特征在于,所述接收模块包括第二接收子模块,用于持续接收所有与认证通过的用户具有相同的用户认证特征的报文;或者,第三接收子模块,用于每隔设定时间接收预设数量的连续的与认证通过的用户具有相 同的用户认证特征的报文。
14.一种网络设备,其特征在于,包括如权利要求8至13中任一所述的检测影子用户的 数目的装置。
全文摘要
本发明提供了检测影子用户的数目的方法和装置及网络设备。该方法包括接收与认证通过的用户具有相同的用户认证特征的报文;提取出所述报文的标识字段,对于接收到的每一个报文,计算该报文与指定报文的标识字段的差值;如果所述差值在预设的异常范围内,则为该报文对应一个新增用户;确定所有报文对应的新增用户的个数值;将最终确定的新增用户的个数值确定为影子用户的数目。本发明能够确定出影子用户的数目,便于后续进行量化业务损失。
文档编号H04L12/56GK101980477SQ20101050527
公开日2011年2月23日 申请日期2010年10月9日 优先权日2010年10月9日
发明者陈光磊 申请人:北京星网锐捷网络技术有限公司