专利名称:一种宽带接入服务器全匹配认证方法
技术领域:
本发明涉及INTERNET接入领域,宽带接入服务器(BNAS)上的一种全匹配认证的用户组织与认证方法,尤其涉及INTERNET领域的接入网部分。
背景技术:
匹配认证,就是有一组数据,数据有很多项,表明了接入用户的身份,请求确认这些数据的合法性。在宽带接入领域,这是接入过程的一个必然环节。而匹配认证过程就是在一个事先建立起的数据集中,查找匹配用户数据的过程。因此,对于宽带接入服务器来说,用户数据集的组织与匹配认证过程是它的一个关键技术。
匹配认证和路由查找算法有相近之处,但不一样。
路由查找中IP地址有规律,4个字节长,路由表的组织可以按照地址掩码的位数来组织。查找路由时,为了找到一个IP地址的目的出口,从掩码最长的表项开始,按照掩码递减的顺序,找到的最佳匹配项就是路由出口。而匹配认证数据是一个多元组,没有规律,也没有固定的字长。但是,也可以按路由算法一样,找一种最佳匹配方法,将匹配表项的组织与认证分开,不管采用什么样的认证方式,认证过程象路由查找算法一样,变成在表中找最佳匹配项的过程。
RADIUS服务器的认证过程是一种基于用户名的认证过程,认证时,用户的认证数据中必须有用户名,用户表项按用户名唯一索引来组织,认证时,只要将用户名通过HASH索引,如果能在表中找到同用户名相同的表项,就比较其他认证数据,这些数据合法,就认证通过。如果在表中找不到同用户名相同的表项,就宣告认证失败。但是,现在在宽带接入领域,需求各种各样的绑定认证过程,有IP地址和MAC地址的绑定、有IP地址和VLAN的绑定等等,这样的绑定关系很多。绑定认证也是一种认证,只是没有用户名。很多厂家在处理这些应用需求时,和基于用户名的认证过程区别对待,采取特殊处理。这样造成的代价就是认证过程变得复杂,认证过程不能适应各种应用需求,新增一种认证过程,就要新增一种特殊处理方法,维护也复杂,效率低下。
发明内容
本发明解决的技术问题是找到一种将各种认证过程统一起来的宽带接入服务器全匹配认证方法。
本发明所述的宽带接入服务器全匹配认证方法,包括以下处理过程步骤一,将用户的数据集按照优先级大小不同组织成多个匹配认证用户集;1)根据每个匹配认证的用户的关键字和属性值将用户组织成一个多元组(A1,A2,...,An,B1,B2,...,Bm),其中Ai表示关键字,Bi表示属性;每个Ai和Bi都是一个集合,集合中可以有一个元素,也可以有多个元素;2)对每个关键字和属性按优先级高低确定一个权值,优先级高的权值也高;权值依据下面的方法分配a.若Ai或Bi是一个多元素集合,则权值为0;b.若Ai或Bi是一个单元素集合,则权值为2^(i-1),其中i>=1;3)根据关键字权值之和的不同建立多个认证用户集,等待用户请求匹配认证;步骤二,根据用户的多元组查找匹配的认证用户集,并由用户的属性值确定认证通过与否。
4)确定与用户关键字匹配的认证用户集,如果待认证用户多元组(A11,A12,...,A1n,B11,B12,...,B1m)的每一个元素A1i是认证用户集多元组(A21,A22,...,A2n,B21,B22,...,B2m)的每一个元素A2i的一个子集,则匹配成立;5)在所述步骤4)中找出的匹配认证用户集中,可能有多个认证用户集的元组匹配,选出元组权值最大的匹配认证用户子集,剔除其他元组;6)确定最大属性权值匹配认证用户集,在所述步骤5)中找出的最大权值匹配匹配认证用户集子集中,可能有多个认证用户子集的多个元组匹配,选出匹配属性权值之和最大的匹配认证用户子集,踢除其它元组;7)确定匹配认证的结果,在所述步骤6)中选出的匹配认证用户子集中,可能还有多个元组匹配,在这些元组中,只要找到一个元组的不匹配属性权值之和为0,则匹配认证成功,宣告匹配认证通过;如果一个也没有找到,则匹配认证失败,认证没有通过。
匹配属性权值之和是认证用户元组中匹配的属性项的权值之和,不匹配属性权值之和是认证用户元组中不匹配的属性项的权值之和。
采用本发明所述的宽带接入服务器全匹配认证方法能自适应于各种应用需求,算法高效,维护简单。而且对于新增的认证过程,只要改变BNAS中用户集数据,就能满足提出的各种绑定需求,不需要新增一种特殊处理方法,应用方便,配置简单。
图1是本发明所述的宽带接入服务器全匹配认证方法的处理流程图。
具体实施例方式
如图1所示的全匹配认证方法的处理流程,包括以下处理过程1)根据每个匹配认证的用户的关键字和属性值将用户组织成一个多元组(A1,A2,...,An,B1,B2,...,Bm),其中Ai表示关键字,Bi表示属性;每个Ai和Bi都是一个集合,集合中可以有一个元素,也可以有多个元素;2)对每个关键字和属性按优先级高低确定一个权值,优先级高的权值也高;3)根据关键字权值之和的不同建立多个认证用户集,等待用户请求匹配认证;4)确定与用户关键字匹配的认证用户集,如果待认证用户多元组(A11,A12,...,A1n,B11,B12,...,B1m)的每一个元素A1i是认证用户集多元组(A21,A22,...,A2n,B21,B22,...,B2m)的每一个元素A2i的一个子集,则匹配成立;5)在所述步骤4)中找出的匹配认证用户集中,可能有多个认证用户集的元组匹配,选出元组权值最大的匹配认证用户子集,剔除其他元组;6)确定最大属性权值匹配认证用户集,在所述步骤5)中找出的最大权值匹配匹配认证用户集子集中,可能有多个认证用户子集的多个元组匹配,选出匹配属性权值之和最大的匹配认证用户子集,踢除其它元组;7)确定匹配认证的结果,在所述步骤6)中选出的匹配认证用户子集中,可能还有多个元组匹配,在这些元组中,只要找到一个元组的不匹配属性权值之和为0,则匹配认证成功,宣告匹配认证通过;如果一个也没有找到,则匹配认证失败,认证没有通过。
以下再以内置BNAS中基于用户名和绑定关系的用户的匹配认证为例详细介绍本发明的实现。
这种认证过程中,用户多元组为(PORT,VLAN,MAC,USERNAME,IP,PASSWORD)其中关键字分别为PORT接入端口,取缺省值时,表示所有的端口,是一个多元素集合,权值为0。取单个端口值时,是单元素集合,权值为1。
VLAN用户的VLAN,取缺省值时,表示所有的VLAN,是一个多元素集合,权值为0。取非缺省值时(1-4095),是单元素集合,权值为2。
MAC用户主机的二层物理地址,取缺省值时,表示任意的MAC地址,是一个多元素集合,权值为0。取非缺省值时,是单元素集合,权值为4。
USERNAME用户名,取缺省值时,表示所有用户,是一个多元素集合,权值为0。取非缺省值时,是单元素集合,权值为8。
属性分别为IP用户的IP地址,取缺省值时,表示任意的IP地址,是一个多元素集合,权值为0。取非缺省值时,是单元素集合,权值为1。
PASSWORD用户的口令,取缺省值时,表示任意的口令,是一个多元素集合,权值为0。取非缺省值时,是单元素集合,权值为2。
由于这个实例的用户元组是一个6元组,因此在建立匹配用户集时,将用户组织成5类HASH链,每个用户只能存在于一类HASH链上。这5类链分别是USERNAME链所有用户名不是缺省值的匹配用户全在这类链上,USERNAME做为HASH关键字;MAC链所有USERNAME是缺省值,MAC不是缺省值的用户在这类链上,MAC地址做为HASH关键字;VLAN链所有USERNAME和MAC都为缺省值,而VLAN不是缺省值的用户都在这类链上,VLAN做为HASH关键字;PORT链所有USERNAME、MAC和VLAN都为缺省值,而PORT不是缺省值的用户都在这类链上,PORT做为HASH关键字;全缺省链所有USERNAME、MAC、VLAN和PORT都为缺省值的用户全在这类链上,没有HASH关键字,所有这样的用户在一条链上。
这5类链上元组的权值之和的高低顺序分别为USERNAME链、MAC链、VLAN链、PORT链、全缺省链。因此,建起匹配用户集的HASH链后,当有一个用户请求认证时,按照权值的高低顺序依次在5类链上找关键字匹配的子集,首先找到匹配子集的链自然是权值最高的链,也是权值最高的子集,后面的链再不用找了。然后按照前面所讲的方法,确定最大属性权值匹配集,这里属性是IP和PASSWORD,再根据不匹配属性权值来判断匹配认证通过与否。在最后的集合中,能找到不匹配属性权值为0的元组,则认证通过,否则认证失败,这里就是IP和PASSWORD正确匹配,就认证成功,不匹配就认证失败。如果所有的链上都没有找到,自然也是匹配认证不通过。
这个BNAS的认证过程就是按照本发明所述方法来组织实施,效率很高,使该BNAS能适应各种认证需求。
权利要求
1.一种宽带接入服务器全匹配认证方法,其特征在于,所述方法包括以下处理过程步骤一,将用户的数据集按照优先级大小不同组织成多个匹配认证用户集;步骤二,根据用户的多元组查找匹配的认证用户集,并由用户的属性值确定认证通过与否。
2.根据权利要求1所述的宽带接入服务器全匹配认证方法,其特征在于,所述步骤一具体包括以下处理步骤1)根据每个匹配认证的用户的关键字和属性值将用户组织成一个多元组(A1,A2,...,An,B1,B2,...,Bm),其中Ai表示关键字,Bi表示属性;2)对每个关键字和属性按优先级高低确定一个权值,优先级高的权值也高;3)根据关键字权值之和的不同建立多个认证用户集,等待用户请求匹配认证。
3.根据权利要求1或2所述的宽带接入服务器全匹配认证方法,其特征在于,所述步骤二具体包括以下处理步骤4)确定与用户关键字匹配的认证用户集,如果待认证用户多元组(A11,A12,...,A1n,B11,B12,...,B1m)的每一个元素A1i是认证用户集多元组(A21,A22,...,A2n,B21,B22,...,B2m)的每一个元素A2i的一个子集,则匹配成立;5)在所述步骤4)中找出的匹配认证用户集中,可能有多个认证用户集的元组匹配,选出元组权值最大的匹配认证用户子集,剔除其他元组;6)确定最大属性权值匹配认证用户集,在所述步骤5)中找出的最大权值匹配匹配认证用户集子集中,可能有多个认证用户子集的多个元组匹配,选出匹配属性权值之和最大的匹配认证用户子集,踢除其它元组;7)确定匹配认证的结果,在所述步骤6)中选出的匹配认证用户子集中,可能还有多个元组匹配,在这些元组中,只要找到一个元组的不匹配属性权值之和为0,则匹配认证成功,宣告匹配认证通过;如果一个也没有找到,则匹配认证失败,认证没有通过。
4.根据权利要求2所述的宽带接入服务器全匹配认证方法,其特征在于,所述步骤1)中每个Ai和Bi都是一个集合,集合中可以有一个元素,也可以有多个元素。
5.根据权利要求4所述的宽带接入服务器全匹配认证方法,其特征在于,所述步骤2)中,权值依据下面的方法分配a.若Ai或Bi是一个多元素集合,则权值为0;b.若Ai或Bi是一个单元素集合,则权值为2^(i-1),其中i>=1。
6.根据权利要求3所述的宽带接入服务器全匹配认证方法,其特征在于,所述匹配属性权值之和是认证用户元组中匹配的属性项的权值之和,所述不匹配属性权值之和是认证用户元组中不匹配的属性项的权值之和。
全文摘要
本发明公开了一种宽带接入服务器全匹配认证方法,包括以下处理过程步骤一,将用户的数据集按照优先级大小不同组织成多个匹配认证用户集;步骤二,根据用户的多元组查找匹配的认证用户集,并由用户的属性值确定认证通过与否。采用本发明所述的宽带接入服务器全匹配认证方法能自适应于各种应用需求,算法高效,维护简单。而且对于新增的认证过程,只要改变BNAS中用户集数据,就能满足提出的各种绑定需求,不需要新增一种特殊处理方法,应用方便,配置简单。
文档编号H04L9/32GK1545241SQ20031010357
公开日2004年11月10日 申请日期2003年11月11日 优先权日2003年11月11日
发明者田平, 纪小利, 何茂平, 刘兴铨, 胡鹏, 田 平 申请人:中兴通讯股份有限公司