一种基于ip掩码技术的属性值聚集方法

文档序号:7615068阅读:162来源:国知局
专利名称:一种基于ip掩码技术的属性值聚集方法
技术领域
本发明涉及多分布式虚拟环境建立一个可以容纳大量对象进行动态的快速准确通讯的结构,解决分布式虚拟环境中的基本通讯问题,即一种基于IP掩码技术的属性值聚集方法。
背景技术
分布式虚拟环境(DVE)技术已经成为目前计算机领域的一个热门学科,在军事、医学、建筑、教育及娱乐等众多领域中都得到了成功的应用[1]Singh G,SerraL.Brick NetA Software Toolkit for Network Based Virtual Worlds(Brick Net分布式虚拟环境的软件工具包),Presence,1994,3(1)pp.19-34。
网络专家认为,化身和全景式虚拟环境是互联网发展的下一阶段。据预测,10年内整个互联网操作系统都将实现三维化。政府办公、企业之间交易、电子购物等将在虚拟空间进行,其外观和感受近似于真实的商场;网上教育将在虚拟演讲厅内实现,一切都与真实环境极为相似。人们已迈入Windows界面的桌面世界,用户可以点击二维标志以执行电脑任务,而这些标志完全取之于现实世界,比如图标、按钮和菜单。人类体验和操纵电脑的方式将不可避免地走向三维网络的构想。
但是,分布式虚拟环境的发展必然有其需要解决的问题,其中最基本的问题就是建立一个可以容纳大量对象进行动态的快速准确的通讯结构,解决这个问题的基本思路是发布/订购模型和兴趣管理,而随着应用需求的提高,采取属性关系表达式作为兴趣管理的表示模型成为分布式虚拟环境发展的一种趋势,而一个好的兴趣表达式的聚集方法在这样的系统中尤为重要。
本发明主要涉及发布/订购模型中兴趣管理的兴趣表达式的聚集方法,特别是针对目前还没有比较好的聚集算法的值属性的聚集进行突破,从而进一步降低系统的存储量。
聚集的基本方法是按照某种原则将多个对象映射到一个整体对象,对整体对象的处理等同于对多个对象的处理,其目的是为了减少需要处理的信息量[2]A.Carzaniga and A.L.Wolf,Content-based NetworkingA New CommunicationInfrastructure(基于内容的网络一种新的通讯架构).In NSF Workshop on an1nfrastructure for Mobile and Wireless System,Scottsdale,USA,Oct.2001.
虽然聚集的目标是减少信息的存储量,但同时必须保证聚集后的区域中多余区域最小化,否则冗余的通讯量将大为增加。
目前为止,分布式虚拟环境中订购区域用多个属性的值域或值组成的结构表示,称为一个兴趣表达式●值域表示——描述了高维空间范围;●值表示——描述了空间中的离散点或集合。
其中每一个属性是一个三元组,包括属性值的类型、属性名称和属性值/值域。同一个兴趣表达式中多个属性条件是逻辑与的关系,不同兴趣表达式之间的是逻辑或的关系。
因此,聚集的算法也就可以大致分为两类,对值域属性的聚集算法和对值属性的聚集算法,但这两类聚集方法存在本质的不同。
对于第一类值域属性的聚集,目前的发布/定购系统中已经有很多方法[3]AntonRiabov,Zhen Liu,Joel L.Wolf,Philip S.Yu,Li Zhang,Clustering Algorithms forContent-Based Publication-Subscription Systems(基于内容的发布/订购系统中的聚集算法).22nd Intemational Conference on distributed Computing Systems(ICDCS’02),July 02-05,2002 Vienna,Austria,P.133[4]S.Zabele,M.Dorsch,Z.Ge,P.Ji,M.Keaton,J.Kurose,J.Shapiro,and D.Towsley.SandsSpecialized activenetworking for distributed simulation(Sands面向分布式仿真的主动网络).InDARPA Active Networks Conference and Exposition(DANCE),San Francisco,Califomia,USA,May 2002。如Zabele就借鉴了[5]W.H.Equitz,A New VectorQuantization Clustering Algorithm(一种新的向量量子化的聚集算法),IEEE Trans.ASSP,Vol.37,No.10,October 1989.中的Fast Pair-wise Nearest Neighbor(FastPNN)算法,采用向量化的方法,给出了一种聚集值域属性的快速方法,复杂度是O(nlog2n),其中n是兴趣表达式的个数。
但是对于第二类值属性的聚集则比较困难,目前来说并没有比较有效优秀的算法,很多发布/定购系统只是简单的将属性值作为离散值合并入一个集合,如Triantafillou在[6]Peter Triantafillou and Andreas Economides,SubscriptionSummaries for Scalability and Efficiency in Publish/Subscribe Systems(发布订购系统中高效可扩展的订购概要),2001.中提出的一个算法,通过判断发布消息中的元素(属性值)是否属于集合来决定是否转发,但此时,集合中的元素个数仍然等于表达式的个数,可以说这种方法实际上并没有达到聚集的目的。

发明内容
本发明的目的是针对目前聚集算法主要集中在值域属性的聚集方面,尚没有针对值属性的聚集的现状,借鉴了TCP/IP网络中的网络地址和掩码的计算的技巧,设计出的一种简单的值聚集的方法,从而减少系统需要处理的信息量,降低系统存储量,提高整个系统的运行效率。
针对目前聚集技术在值属性聚集方面的空白,本发明借鉴IP协议中超网/子网的构建方法,利用TCP/IP网络中计算网络地址和掩码的方法,提出了一种值属性的聚集方法。这个方法不仅实现了值属性的聚集,还可以实现值属性的超集/子集(集合)关系。
基于IP掩码技术的属性值聚集方法计算方法1.将值属性通过散列函数映射为一个32位的位向量,即一个二进制整数。不论属性值是何种类型(如字符串或者整数),都可以进行这样的映射。对n个表达式中的相同属性,假设它们分别被映射到位向量V1、V2、...、Vn。
2.计算TAG-ID=V1&V2&...&Vn,其中&表示“按位与”运算。
“与”操作将n个初始位向量中不同的位置零,相同的位保持不变。因此TAG-ID表示n个位向量的相同部分,相当于子网中的网络地址。
3.计算V1|V2|...|Vn,其中|表示“按位或”运算。
这个向量中值为1的位表示至少有一个初始位向量在该位置是1。也就是将n个初始位向量中不同的位都置1,而相同的位不变。
将这个向量与TAG-ID进行逻辑异或运算后得到一个掩码MASK=~((V1&V2&...&Vn)^(V1|V2|...|Vn))其中“~”表示逻辑非运算,“^”表示逻辑与运算。
由此,兴趣表达式中的值属性可以用TAG-ID/MASK表示,从而不需再使用具体的数值或字符。
判断方法有了TAG-ID/MASK就可以用来判断一个向量是否(不)在集合{V1、V2、...Vn}中。判断方法如下a.给定位向量P,如果(P&MASK)^TAG-ID!=0,那么P必定不在集合{V1、V2、...Vn}中。
b.反之,不能判断P是否在上述集合中。
在(P&MASK)^TAG-ID=0的条件下,误判的概率是(1-n/2k),其中k是MASK中0的个数,也就是n个位向量中值不相同的位的个数,这些不相同的位本可以表示2k个不同的位向量,这里只用来表示n个位向量,因此也就有(2k-n)个位向量虽然不在集合中,但满足(P&MASK)^TAG-ID=0的条件。因此,冗余信息量的多少就跟误判率有直接的关系。不过只要映射后的位向量中不同的位的个数k尽量小,也能达到足够的局部性使得误判率较小。
虽然上述方法将n个位向量聚集成一个位向量,但考虑到误判率,为了进一步减少冗余通讯量,在实际操作中,往往参考现有的一些值域属性的聚集方法,采用多个位向量表示聚集的结果。
一种改进的值属性聚集的方法是逐个将距离最近的位向量聚集,直到聚集后的位向量个数达到预定的值(PNN算法)。两个位向量之间的距离可以定义为两个向量中相同的位的个数或者个数的某种函数。
更好的方法是可以采用与值域属性类似的层次式聚集方法自顶向下的构造层次树。或者也可以在值域属性的层次式聚集后,按照聚集的结果将同一组兴趣表达式中的属性值合并在一个属性值中,从而形成单个兴趣表达式。


图1为本发明的聚集示意2为本发明的实施例流程图一个好的聚集算法必须保证聚集后的区域中多余区域(附图1右图中虚线框内但又不属于原来黑框的部分)最小化,否则冗余的通讯量将大为增加。
具体实施方法本发明的方法主要借鉴IP协议中超网/子网的构建方式,利用TCP/IP网络中计算网络地址和掩码的方法。超网(SuperNetting)和子网(SubNetting)是类似的概念超网技术是把一些小网络组合成一个大网络--超网。而子网把大网络分成若干小网络,IP地址根据子网掩码分为相对独立的网络地址和主机地址,子网使我们可以拥有新的规模的网络,包括很小的用于点到点连接的网络,子网掩码实际上是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
本发明的方法与上述技术类似,可以应用到多个领域。
实施例类似温度、湿度等多类数据都可以通过上述的基于IP掩码技术的属性值聚集方法,经过聚集、概括等操作后表现为较高的形式,从而便于进一步的处理。
第一阶段,将需要聚集的数据如温度、湿度等通过散列函数映射为一个32位的位向量,即一个二进制整数。不论属性值是何种类型(如字符串或者整数),都可以进行这样的映射。假设有n个数据,则它们分别被映射到位向量V1、V2、...、Vn。
第二阶段,计算TAG-ID=V1&V2&...&Vn,其中“&”表示“按位与”运算。
“与”操作将n个初始位向量中不同的位置零,相同的位保持不变。因此TAG-ID表示n个位向量的相同部分,相当于子网中的网络地址。
之后第三阶段,计算V1|V2|...|Vn,其中|表示“按位或”运算。
所得的向量中值为1的位表示至少有一个初始位向量在该位置是1。也就是将n个初始位向量中不同的位都置1,而相同的位不变。
将这个向量与第二阶段计算所得的TAG-ID进行逻辑异或运算后将得到一个掩码MASK=~((V1&V2&...&Vn)^(V1|V2|...|Vn))其中“~”表示逻辑非运算,“^”表示逻辑与运算。
由此,多个数据可以用一个向量TAG-ID/MASK来表示,从而不需再使用具体的数值或字符。
聚集完成后,可以使用下述判断方法来判断某个数据是否属于之前的数据向量集合{V1、V2、...Vn}。判断方法如下a.给定某个数据映射到的位向量P,如果(P&MASK)^TAG-ID!=0,那么这个数据向量必定不在集合{V1、V2、...Vn}中。
b.反之,不能判断这个数据是否在上述集合中。
当前,随着Internet的广泛使用及网络条件的不断改善,基于Internet的分布式虚拟环境应用领域不断扩大,特别在军事仿真、教育、娱乐及其他商业领域有着广阔的发展前景,但作为一个比较大的研究领域,分布式虚拟环境涉及很多技术,面临不少的问题,最迫切需要的就是建立能容纳大量的用户进行快速准确的动态通讯架构,因此,对于参与的用户的兴趣表示进行聚集,是分布式虚拟环境领域发展的趋势,而本发明的算法可以说正是适应了这种需求,填补了现有聚集技术在值聚集方面的空白,不仅在分布式虚拟环境领域,同时其它现实生活中的应用领域,例如邮政系统等,都可以运用同样的思想来解决扩展性问题,因此有着良好的市场前景。
生产条件和成本本发明是提供该方法的实现思想和计算机程序,不需要特别的生产条件,一旦研究成功成本几乎可忽略不计。
权利要求
1.基于IP掩码技术的属性值聚集方法其特征是包括计算方法和判断方法,计算方法的过程如下1.)将值属性通过散列函数映射为一个32位的位向量,即一个二进制整数。不论属性值是何种类型(如字符串或者整数),都可以进行这样的映射。对n个表达式中的相同属性,假设它们分别被映射到位向量V1、V2、…、Vn。2.)计算TAG-ID=V1&V2&…&Vn,其中&表示“按位与”运算。“与”操作将n个初始位向量中不同的位置零,相同的位保持不变。因此TAG-ID表示n个位向量的相同部分,相当于子网中的网络地址;3.)计算V1|V2|…|Vn,其中|表示“按位或”运算,这个向量中值为1的位表示至少有一个初始位向量在该位置是1,也就是将n个初始位向量中不同的位都置1,而相同的位不变;将这个向量与TAG-ID进行逻辑异或运算后得到一个掩码MASK=~((V1&V2&...&Vn)^(V1|V2|…|Vn))其中“~”表示逻辑非运算,“^”表示逻辑与运算。由此,兴趣表达式中的值属性可以用TAG-ID/MASK表示,从而不需再使用具体的数值或字符;判断方法的过程如下有了TAG-ID/MASK就可以用来判断一个向量是否(不)在集合{V1、V2、…Vn}中。判断方法如下a.给定位向量P,如果(P&MASK)^TAG-ID!=0,那么P必定不在集合{V1、V2、…Vn}中;b.反之,不能判断P是否在上述集合中;在(P&MASK)^TAG-ID=0的条件下,误判的概率是(1-n/2k),其中k是MASK中0的个数,也就是n个位向量中值不相同的位的个数,这些不相同的位本可以表示2k个不同的位向量,这里只用来表示n个位向量,因此也就有(2k-n)个位向量虽然不在集合中,但满足(P&MASK)^TAG-ID=0的条件。
全文摘要
基于IP掩码技术的属性值聚集方法包括计算方法和判断方法,计算方法的过程如下1.将值属性通过散列函数映射为一个32位的位向量,即一个二进制整数。2.计算TAG-ID=V
文档编号H04L12/24GK1697400SQ20051004061
公开日2005年11月16日 申请日期2005年6月20日 优先权日2005年6月20日
发明者潘金贵, 贝佳, 翟磊, 曾定浩, 卢威 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1