CN101043695A - 一种在移动通信系统内存储和维护用户设备信息的方法 - Google Patents
一种在移动通信系统内存储和维护用户设备信息的方法 Download PDFInfo
- Publication number
- CN101043695A CN101043695A CNA2006100250159A CN200610025015A CN101043695A CN 101043695 A CN101043695 A CN 101043695A CN A2006100250159 A CNA2006100250159 A CN A2006100250159A CN 200610025015 A CN200610025015 A CN 200610025015A CN 101043695 A CN101043695 A CN 101043695A
- Authority
- CN
- China
- Prior art keywords
- user equipment
- equipment information
- mobile communication
- communication system
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
一种在移动通信系统中存储和维护用户设备信息的方法,应用于该移动通信系统的网络控制设备(1)中的用户设备信息维护控制单元(11)中,其将一个用户设备(3)信息存储在数据服务器(2)中的过程包括:使用一哈希函数对用户设备信息的关键字进行映射,确定其在哈希表中的第一存储位置的步骤;若第一存储位置与哈希表内数据不发生冲突,则进行有限次探索以探索下一个存储位置的步骤;以上述存储位置中的一个存储位置作为根节点建立二叉树,并将所述用户设备信息存储到二叉树的步骤。本发明提供的方法可以应用于宽带码分多址系统等移动通信系统中,可以大大节省存储空间并提供查找用户设备的效率。
Description
技术领域
本发明涉及电信领域,尤其是涉及移动通信系统以及移动通信系统中对用户设备相关信息进行存储和查找的方法。
背景技术
在移动通信系统中,相关的网络控制设备需要对用户设备的信息进行维护以便能够及时地查找到相应的用户设备并进行相应的处理。例如,负责一个区域的网络控制器需要对处于该区域内的所有移动通信设备的信息进行登记、存储,并在该等移动通信设备主动请求建立通信链路时,或者在其他通信设备请求与该等移动通信设备建立通信链路时查找到该等移动通信设备的相关信息。在这个过程中,如何合理地存储该等移动通信设备的信息,以及如何在网络控制设备中查找该等移动通信设备的信息是一个关键的问题。
以宽带码分多址(WCDMA,WideBand Code-Division Multiple Access)系统为例,其是第三代移动通信系统标准化组织提出的无线传输技术(RTT,Radio Transmission Technical)方案。在宽带码分多址系统中,无线网络控制器负责对本区域内的所有用户设备(UE,User Equipment)的信息进行存储和维护,并在需要的时候从数据库中查找该等信息。具体地说,在宽带码分多址系统中,使用UTRAN无线网络临时标识(U-RNTI,UTRAN-Radio Network Temporary Identity)和Cell无线网络临时标识(C-RNTI,Cell-Radio Network Temporary Identity)来标识不同的用户设备和维护相应上述标识下用户设备已被分配的资源,例如,被分配的语音信道,下载数据时的数据链路信道信息等。我们以现有标准为例,根据3GPP25.331标准,一个UTRAN无线网络临时标识的长度是32位(bit),一个Cell无线网络临时标识的长度是16位(bit),假设一个无线网络控制器有200000个用户,即其需要维护200000个用户设备的相关信息,如果采用直接映射的方法,假设仅该存储200000个用户设备UTRAN无线网络临时标识信息,所需要的存储空间约为16G字节(Bytes)左右。而实际的情况是,一个无线网络控制器所需要维护的用户设备数量远远大于上述假设的用户数200000个,因此,按照上述的直接映射的方法存储用户设备信息对于网络控制设备而言是一个沉重的负担,大大地浪费了硬件成本。
不仅如此,我们继续采用上述假设条件,采用上述的直接映射的方法存储用户设备信息的情况下,则当无线网络控制器需要查找一个特定的用户设备的信息时,所需要的平均时间也比较长,例如,在上述条件下,一般来说比较常用的查找方法是二分法,其查找的平均时间是log2 n次,尽管其已经比顺序查找法在效率上有了很大的提高,但实际上,这样的时间消耗仍然很大。
归纳而言,本领域的技术人员希望解决两个问题,即:如何优化存储用户设备相关信息所需要的存储空间,以及如何提高查找一个特定用户设备相关信息的时间。由于存储的问题和查找的问题是相关的,因此,上述两个实际上是一个问题。
为此,在申请号为:CN200410000520.9,发明名称为“一种UTRAN协作寻呼中的分布式数据存储处理方法”的中国专利申请中提出了一种对用户设备进行分布式存储从而提高RNC系统UTRAN协作寻呼的整体性能的方法,本发明尝试提出一种不同的用于对用户设备进行存储和维护的方法。
发明内容
发明人希望提供一种在移动通信系统中存储和维护用户设备信息的方法,以此来优化存储空间,相应地,也提供一种新型的查找用户设备的方法,以提高查找效率。
为此,本发明提供了一种基于哈希表和二叉树相结合的存储方法以解决上述问题。
一种在移动通信系统中存储和维护用户设备信息的方法,应用于该移动通信系统中的网络控制设备的用户设备信息维护控制单元中,其特征在于,该方法通过如下步骤完成将一个用户设备信息存储至数据服务器内的过程:
步骤一,使用一哈希函数对用户设备信息的关键字进行映射,确定其在哈希表中的第一存储位置;
步骤二,若所述第一存储位置与哈希表内数据不发生冲突,则按照所述第一存储位置存储所述用户设备信息,否则重复步骤一、二进行有限次数的探索以探索下一个存储位置,若在有限次内完成存储操作则存储过程完毕,否则转步骤三;
步骤三,以上述存储位置中的一个存储位置作为根节点建立二叉树,并按照二叉树存储规则将所述用户设备信息存储到二叉树相应的位置。
上述步骤一中所述的用户设备信息的关键字是用户设备的标识信息。例如,对于宽带码分多址系统其是UTRAN无线网络临时标识,也可以是Cell无线网络临时标识。
上述步骤一中所述的哈希函数是一除余函数,即:
H(K)=K mod P,其中,K表示所述用户设备信息的关键字,P为小于所述哈希表长度的最大指数。
上述P的取值范围与所述网络控制设备所维护的用户设备的个数a的关系符合如何要求时15%*P<a<85%*P为推荐范围。
但需要注意的是,上述哈希函数还可以采用其他方法构建,例如平方取中法,可以采用从高位开始选取关键字的平方的第2、3、4位作为该关键字的哈希地址。
上述步骤二中,采用开放定址法进行有限次探索,具体而言,采用如下函数:
Hi(k)=(H(k)+di)mod m(i=1,2,…,k(k≤m-1)),其中,K表示所述用户设备信息的关键字,m代表所述哈希表的长度,di代表探索所需要的增量。
上述增量di可以是如下的一种:
(1)di=1,2,3…;
(2)di=12,-12,22,-22…;
(3)di为伪随机序列。
上述探索的次数在每次启动所述用户设备信息维护控制单元时人工设定。
上述探索的次数是上述的用户设备信息维护控制单元根据系统的具体情况来动态决定的。该用户设备信息维护控制单元根据系统接入的用户设备的数量以及系统的内存空间、系统存储或查找一个用户设备的时间来决定探索的次数。
在上述步骤三中,作为根节点的存储位置是由管理员预先指定的,例如是第一存储位置,或者是第二存储位置,或者是最后一个存储位置,或者是其他存储位置。
上述网络控制设备应用于一个移动通信系统中,用于对一个区域内的所有用户设备进行维护,对该移动通信系统中的基站进行管理,提供无线资源管理、基站功率控制、用户接入管理和移动性管理等功能。该移动通信系统还包括所述的数据服务器,用于存储用户设备的相关信息,所述网络控制设备包括一用户设备信息维护控制单元,该单元用于对用户设备信息进行具体维护,上述的一种存储和维护用户设备信息的方法即应用于该单元中。
在上述存储过程中,所存储的用户设备信息是该用户设备信息的全部内容,包括关键字以及其他信息,例如用户设备的连接状态信息等。
在上述存储过程中,所存储的用户设备信息也可以仅仅是该用户设备信息的关键字,此时,用于存储该等关键字的存储位置或二叉树的节点所对应的存储单元还包括一个地址指针,该指针指向用于存储该用户设备其他信息的存储单元。在这样的情况下,先根据本方法确定该用户设备信息的关键字的存储单元,然后将该用户设备的其他信息存储到一个存储单元中,并将后一个存储单元的地址指针与该用户设备的关键字一并存储到前一个存储单元内。
在应用了上述一种存储用户设备信息的方法对用户设备信息进行存储后,在查找特定设备时就可以应用同样的方法予以查找。可以理解的是,进行查找时,在确定一个存储位置或二叉树的根节点后,不是在该位置判断是否冲突或进行存储,而是将该位置的关键字信息与待查找的关键字进行比较,如果一致则表明查找成功,否则继续查找。
当一个用户设备不再需要上述网络控制设备维护时,上述网络控制设备首先按照本发明提供的方法查找到该用户设备的存储位置,然后删除该用户设备的相应信息。可以理解的是,当上述存储位置对应的存储单元仅仅存储该用户设备的关键字时,则先行将该存储单元中包含的地址指针对应的存储信息,即该用户设备的其他信息删除,然后再删除该用户设备信息的关键字。
当一个用户设备信息需要更改时,上述网络控制设备首先按照本发明提供的方法查找到该用户设备的存储位置,然后修改该用户设备的相应信息。同样可以了解的是,当上述存储位置对应的存储单元仅仅存储该用户设备的关键字时,则实际修改该存储单元中包含的地址指针所指向的存储单元内的该用户设备的其他信息。
以一个网络控制设备需要维护的用户设备数量为200000个为例,在采用直接映射方法的情况下,存储上述用户设备的关键字索引所需要的存储空间约为16G字节,查找一个特定用户设备的时间复杂度为log2 n;而在采用本发明所述的方法的情况下,存储上述用户设备的关键字索引所需要的存储空间远低于上述的16G字节。例如,在上述情况下,假设所有用户全部被激活,并设定哈希表长度为最大用户数,即200000,此时,一个用户设备的关键字信息需要4个字节(Byte),因此,最终的关键字索引占用的存储空间为800000字节。相应地,查找一个特定用户设备的时间复杂度低于log2 n+1,因此,在查找效率上也有了很大的提高。不仅如此,采用本发明提供的查找方法,查找次数降低,也导致比较的次数减少,从而减少了对内存的占用。
实际上上述的例子是比较极端的情况,在实际应用中,所有用户设备均被激活,在这样的实际情况下,本发明提供的存储方法可以节省更多的空间。
本发明所提供的一种存储用户设备信息的方法,有效地节省了存储空间,同时可以快速地查找用户设备相关信息,提高了系统效率。应于该种方法的移动通信系统的性能有了显著的提高。
附图说明
图1是本发明的一个实施例所应用的移动通信系统的系统示意图。
图2是本发明的一个实施例存储一个用户设备信息的流程图。
图3a、3b、3c、3d、3e、3f是本发明的一个实施例中用于存储用户设备信息的二叉树哈希表的示意图。
图4是本发明的又一个实施例中用于存储用户设备信息的二叉树哈希表的示意图。
图5是本发明的一个实施例中哈希表二叉树的一个二叉树节点的数据结构示意图。
具体实施方式
参考图1,其描述了本方面的一个实施例所应用于的移动通信系统的系统示意图。在本实施例中,所述的移动通信系统是一个宽带码分多址(WCDMA)系统。参考图1,宽带码分多址系统至少包括网络控制设备1,即无线网络控制器(RNC),以及一数据服务器2。本领域的技术人员可以理解,在实际应用中,上述宽带码分多址系统还应包括其他设备,例如若干个节点(NodeB)、若干个用于中转的交换机(MSC)等,但由于本发明重点关心上述的网络控制设备1,因此对该等其他设备予以忽略,本领域的技术人员可以根据现有技术以及公知资料对其他设备予以理解并实施。在本实施例中,上述无线网络控制器采用了烽火科技集团生产的FH-RNC-3101-I产品,而采用何种无线网络控制器并不影响本发明的实质内容,例如,在其他类似的实施例中,也可以采用诺基亚公司生产的UltraSiteSupreme系列WCDMA基站产品。
参考图1,上述网络控制设备1又包括用户设备信息维护控制单元11,以及其他单元,例如单元一12、单元二12等。同样,在本实施例中,对单元一12等单元不再具体描述。上述用户设备信息维护控制单元11用于具体地对其所在的无线网络控制器所负责的区域内的用户设备3的信息进行维护。
参考图1,上述用户设备信息维护控制单元11与上述数据服务器2相互通讯,并可以向数据服务器2写入或读取数据。
参考图1,在上述无线网络控制器所负责的区域内存在多台用户设备3,在此不赘述。
本领域的技术人员可以理解,尽管在图1中仅仅描述了一个数据服务器2,但当上述络控制设备1负责维护的区域内的用户设备3过多的时候,则会造成上述数据服务器无法存储全部的用户设备3的信息,从而造成服务质量下降的问题。此时,可以增加上述数据服务器2的数量,例如两台,甚至多台。当然,也可以在不增加数据服务器2数量的前提下通过其他途径提高数据服务器2的性能,例如增加其存储空间等。由于本领域的技术人员对此部分内容可以理解,所以不再赘述。
参考图2,其描述了本发明的一个实施例中对一个用户设备信息进行存储的流程图。当上述用户设备信息维护控制单元11接收到存储一个用户设备的请求后,首先,用户设备信息维护控制单元11确定该用户设备的关键字(图中未示出),在本实施例中,该等关键字是Cell无线网络临时标识。而本领域的技术人员理解,在宽带码分多址系统中,上述关键字还可以采用UTRAN无线网络临时标识,在宽带码分多址系统以及其他的移动通信系统中,也可以用其他关键字,只要该关键字可以对用户设备进行唯一标识即可。
然后,使用一哈希函数对用户设备信息的关键字进行映射,确定其在哈希表中的第一存储位置,步骤401;
接下来,判断所述第一存储位置是否空闲,即第一存储位置与哈希表内数据是否发生冲突,步骤411,如果不冲突,则在该存储位置存储该用户设备信息,步骤402,本次存储过程结束,否则转步骤403;
接下来,使用探测函数探索下一个存储位置,步骤403;
接下来,判断探测到的存储位置是否空闲,即该存储位置与哈希表内数据是否发生冲突,步骤412,如果不冲突,则在该存储位置存储该用户设备信息,步骤402,本次存储过程结束,否则转步骤413;
接下来,判断是否已经达到规定的最大探测次数,413,若没有达到,则转步骤413,否则转步骤404;
接下来,以一存储位置为根节点建立二叉树,并将该用户设备的信息存储到该二叉树的相应位置,步骤404,本次存储过程结束。
在本实施例中,上述步骤401中所述的哈希函数是一除余函数(除留余数函数),如下所示:
H(K)=K mod P
其中,K表示所述用户设备信息的关键字,P为小于所述哈希表长度的最大指数。在本实施例中,上述P选择了199,此时的哈希表长度为200。本领域的技术人员可以理解,在其他实施例中,上述P还可以选择其他数值,例如201、399等。根据发明人的经验和试验,上述P的选择范围与上述网络控制设备1所维护的用户设备3的个数的关系符合经验公式:15%*P<a<85%*P时本方法的效果比较好,其中a表示用户设备3的个数,此时,上述哈希表的效率高,且冲突明显减少。
上述P的取值和用户设备的数量以及和上述网络控制设备的性能有间接的关系。当P值过小,冲突严重,会降低存储效率;P值也不是越大越好,因为如果系统容量较小,而使用较大的P值,运算将会浪费较多的时间。
而在与上述实施例类似的其他实施例中,上述步骤401中所述的哈希函数是一平方取中函数,即从高位开始选取关键字的平方的第2、3、4位。例如,以十进制表示的关键字1200按照上述平方取中函数处理后得到的哈希地址为440,即其平方的第2、3、4位。相应地,也可以从关键字的平方中选取其他位数,例如第3、4、5位等等,这并不影响本发明的实质内容。
同时本领域的技术人员也可以理解,上述将用户设备关键字映射到哈希表的方法也可以采取其他方法,例如直接定址法、数字分析法、折叠法、随机数法等。该部分的内容,可以参考现有技术和公知资料来作出适当的变化,例如可以参考《算法和数据结构——C语言描述》(张乃孝主编,高教出版社,2002)、《数据结构——C语言版》(严蔚敏、吴伟民,清华大学出版社,1997)、《实用数据结构基础》(陈明,清华大学出版社,2002)等书籍。本领域的技术人员通过现有技术和公知资料可以了解到更多的关于哈希函数构造的理论,例如可以知道上述P一般接近或等于哈希表的长度,一般选取质数,也可以是不包含小于20质因子的合数等等。
在本实施例中,在上述步骤403中采用开发定址法进行探索,具体而言,采用如下函数:
Hi(k)=(H(k)+di)mod m(i=1,2,…,k(k≤m-1))
其中,K表示所述用户设备信息的关键字,m代表所述哈希表的长度,di代表探索所需要的增量。在本实施例中,di=1,2,3,4,即进行探测的时候,首先在当前存储位置的基础上将K的值增加1并将增加后的存储位置作为下一个存储位置,如果仍然冲突,则再增加1,直到增加到4为止探测结束。关于增量的问题,可以参考现有技术和公知资料了解更多的内容,例如参考上述的书籍。
而本领域的技术人员可以理解,在其他实施例中,上述增量也可以选择其他的方式,例如在另一个实施例中,增量按照如下公式取得:
di=12,-12,22,-22
应用该增量的探测方法也称为平方探测法。由于本领域的技术人员可以参考现有技术和公知资料了解更多的内容,例如参考上述的书籍对该等增量的选择予以理解并实施,所以不再赘述。
而在又一个实施例中,该等增量也可以是一个伪随机序列。此时,则根据该伪随机序列进行探索。
在本实施例中,上述探索的次数为4,即当探索了4次后所确定的存储位置仍然是冲突的,则终止探测步骤,进入下一步骤404。
而在其他类似实施例中,尽管仍然采用本实施例中选用的增量,但探测的次数是6,即在本实施例的基础上多探测2次。本领域的技术人员可以理解,探测的次数并不影响本发明的实质内容。实际上,探测的次数主要取决于整个移动通信系统的繁忙程度和负载能力,理论上讲,如果系统并不繁忙,探测次数可以适当增加,负载能力比较大的时候,探测次数可以增加。根据经验和试验,发明人总结探测的次数在3~8次本方法的效果比较好,可以在时间和空间之间取一个比较合理的、被用户设备所接受的平衡。
在本实施例中,上述探测次数是由管理员预先设定的,在管理员下一次设定该探测次数之前,一直按照该设定的探测次数进行探测。而在其他实施例中,该等探测次数也可以根据系统的具体情况来动态决定,但一旦决定后,在上述网络控制设备下一次重新启动之前,该等探测次数将一直保持不变。实际上,本领域的技术人员可以理解,在动态决定探测次数的情况下,主要取决于接入的用户设备的数量以及系统的内存空间、系统存储或查找一个用户设备的时间等因素。
在本实施例中,在上述步骤404中将所探测到的最后一个存储位置作为根节点建立二叉树。不论该二叉树内是否存在除了根节点以外的其它节点数据,都根据二叉树的规则将上述用户设备3的关键字存储到二叉树的一个相应节点上。关于如何按照二叉树的规则进行存储,本领域的技术人员可以参考现有技术和公知资料予以理解,例如参考上述的书籍。
而在其他实施例中,在上述步骤404中也可以将探测到的第二个存储位置作为根节点建立二叉树。在又一个实施例中,还可以将按照步骤401确定的第一存储位置作为根节点建立二叉树。以哪一个存储位置作为根节点可以预先设定,具体的选择并不影响本发明的实质内容。
参考图2,经过图中所示的步骤,就可以将任何一个用户设备信息存储到按照本发明所述方法构建的哈希表二叉树内。具体而言,首先确定第一存储位置,如果存在冲突,则根据有限次探索来确定下一个存储位置,如果不能找到空闲的存储位置,则将其中的一个存储位置作为根节点将该用户设备信息存入二叉树的相应位置。只要上述的数据服务器2具有足够的存储空间,那么用户设备必然可以被存储至上述的哈希表二叉树内的一个位置。
相应地,当需要查找一个用户设备信息时,只要按照图2所示的以及本发明提供的方法进行查找,就可以查找到该用户设备的关键字,从而进一步查找到该用户设备的其它信息,例如用户设备IMSI(国际移动用户识别符)、连接状态、RAB(无线接入承载)业务资源分配、承载能力信息、功控信息等等。当上述用户设备信息的关键字与该用户设备的上述其他信息是分别存储的,则根据存储上述用户的关键字的存储单元包括的地址指针可以进一步查找到该用户设备的上述其他信息。
类似地,当需要删除一个用户设备时,按照上述步骤查找到该用户设备的关键字的存储位置。当上述用户设备的所有信息均存储在该存储位置,则直接删除该存储位置的数据内容即完成删除操作;当上述用户设备信息的关键字与该用户设备的上述其他信息是分别存储的,则根据存储上述用户设备信息的关键字的存储单元包括的地址指针进一步查找到该用户设备的上述其他信息的存储位置并予以删除,然后再从所述的哈希表二叉树中将用户设备的关键字信息删除。
类似地,也可以完成对一个用户设备的信息的修改,此过程与删除过程类似,本领域的技术人员可以理解,不再赘述。
参考图3a、3b、3c、3d、3e、3f,其共同描述了按照本发明提供的一种在移动通信系统中存储和维护用户设备信息的方法,对用户设备的关键字信息进行存储时数据服务器中数据存储的示意图。
在本实施例中,用户设备的数量为150个,上述哈希表的长度被设定为200,P的取值为199。假设我们需要处理临时标识为0000 0000 00000000 0000 0000 1100 1000的用户设备,以及临时标识为0000 0000 00000000 0000 0000 1100 1001的用户设备,以及其他用户设备。本领域的技术人员可以理解,上述用户设备的临时标识系采用二进制表示,为了表述方便,下面将用十进制来予以表示,相应地,上述第一个用户设备的临时标识为十进制的200,第二个用户设备的临时标识为十进制的201,即两个用户设备的关键字分别为200、201。类似地,其他用户设备的临时标识均采用十进制予以表示。
参考图3a,上述哈希表二叉树内已经存储了关键字为200、201和4的三个用户设备的关键字信息,为了详细地说明使用本发明提供的方法的存储过程,在下面的过程中,将连续有关键字为600、3、1、598、399、996等用户设备被存储到上述数据服务器中。
参考图3b,如前所述,上述用户设备信息维护控制单元11接受到存储关键字为600的用户设备信息的请求后,将按照图2所述的步骤运行。首先,确定该关键字600的第一存储位置,即600mod199=3;然后,判断该存储位置空闲,即不与上述哈希表二叉树中的数据发生冲突,所以直接将其存储到该第一存储位置,结果即如图3b所示。
参考图3c,类似地,上述用户设备信息维护控制单元11又按照图2所述步骤存储关键字为3的用户设备信息。首先,确定该关键字3的第一存储位置,即3mod199=3;然后,判断发现该存储位置不空闲,即已经与上述哈希表二叉树中的数据发生冲突,所以,开始有限次探测,本实施例按照增量di=1,2,3,4的方式探测,探测到下一个存储位置4,发现其仍然冲突,再探测到下一个存储位置5,发现其空闲,因此,将关键字3存储到该存储位置5,其结果即如图3c所示。
参考图3d,类似地,上述用户设备信息维护控制单元11又按照图2所述步骤存储关键字为1的用户设备信息。首先,确定该关键字1的第一存储位置,即1mod199=1;然后,判断发现该存储位置不空闲,即已经与上述哈希表二叉树中的数据发生冲突,所以,开始有限次探测,首先探测到下一个存储位置2,发现其冲突,再探测到下一个存储位置3,仍然冲突,以及探测到存储位置4、5,均冲突。此时,已经达到探测的最大次数4次,所以停止探测,并将所探测到的最后一个存储位置作为根节点建立二叉树并将关键字1存储到该二叉树中相应的位置。由于该二叉树的根节点已经存储了关键字3,所以,将关键字1存储到根节点的左分支上,结果即如图3d所示。
参考图3e,类似地,上述用户设备信息维护控制单元11又按照图2所述步骤存储关键字为598的用户设备信息。仍然类似地,首先发现第一存储位置1冲突,经过4次探测后发现探测到的下一个存储位置均冲突,所以以最后一个存储位置作为根节点建立二叉树并将关键字598存储到该二叉树中相应的位置。由于该二叉树的根节点已经存储了关键字3、1,所以,将关键字598存储到根节点的右分支上,结果即如图3e所示。
参考图3f,类似地,上述用户设备信息维护控制单元11又分别按照图2所述步骤存储关键字为399和关键字为996的用户设备信息。该两个关键字最终都存储到以存储位置5为根节点的二叉树内,结果即如图3f所示。
本领域的技术人员可以理解,二叉树的本身的定义决定了上述关键字1、598、399、996必然在该二叉树中有一个唯一的存储位置。该部分内容,本领域的技术人员可以参考现有技术以及公知资料予以理解并实施,例如参考上述列举的书籍。例如,通过该等公知资料,可以了解二叉树具有如下性质:1)一个节点最多只能有两个子节点;2)每一个节点存在一个键值(Key Value)来标识这个节点;3)左子树的键值必须小于父节点的键值;4)右子树的键值必须大于或者等于父节点的键值等等。
同样,本领域的技术人员可以理解,在一个实际应用的移动通信系统中,上述用户设备的数量要远远多于上述实施例中所述的150个,一般而言,在一个宽带码分多址系统中,用户设备往往高达数十万。而上述实施例,仅仅是为了描述清楚将系统的容量人为地缩小,但这并不影响本发明的实质内容,本领域的技术人员根据本发明内容以及上述实施例以及公知资料可以理解本发明并予以实施。
参考图4,其描述了另一个实施例中用于存储用户设备信息的二叉树哈希表的示意图。在该实施例中,与图3a~3f所示实施例不同的是,在确定二叉树的根节点时,不是以探测到的最后一个存储位置作为根节点,而是以探测到的第一个存储位置为根节点。所以,在该实施例中,图3e所示的存储结果就改变为图4所示的存储结果。本领域的技术人员可以理解,上述根节点的具体选择方式并不影响本发明的实质内容,技术人员在理解本发明内容的基础上可以对此作出适当的变化。例如,对探测方式作出适当的变化又可以形成新的实施例,此时图3a~3f所示的存储示意图又会有新的变化。
参考图3a、3b、3c、3d、3e、3f以及图4,该等图中仅仅示出了在所述哈希表二叉树中存储所述用户设备信息的关键字。在本实施例中,所述哈希表二叉树的每个存储单元还包括指向所述用户设备的其他信息的存储单元的地址指针,如图5所示,在实际操作中,先行按照现有技术将所述用户设备的其他信息存储到相应的存储单元内,然后将该存储单元的地址指针以及该用户设备信息的关键字存储到所述哈希表二叉树内,从而完成一个存储过程。而在其他实施例中,也可以直接将该用户设备的所有信息,包括关键字和其他信息,例如用户设备国际移动用户识别符、连接状态、无线接入承载、业务资源分配、承载能力信息、功控信息等直接存储到所述哈希表二叉树内。本领域的技术人员参考现有技术以及公知资料对此可以理解并实施,不再赘述。
参考图5,其描述了本发明的一个实施例中的哈希表二叉树结构中一个二叉树节点的数据结构。该数据结构包括四个数据域,分别为关键字域51,其存储用户设备的关键字信息,参考图5,在本实施例中,该关键字的内容为3;以及地址指针52,用于存储指向该用户设备其他信息存储地址的指针,在本实施例中即为关键字为3的用户设备的其他信息存储地址的指针;以及二叉树的左地址指针53,用于存储该二叉树节点的左子树的指针,参考图3e、3f,即为关键字为1的二叉树节点的地址指针;以及二叉树的右地址指针54,用于存储该二叉树节点的右子树的指针,参考图3e、3f,即为关键字为598的二叉树节点的地址指针。参考图5,尽管上述的地址52、二叉树的左地址指针53以及二叉树的右地址指针54均未示出,但本领域的技术人员可以理解上述数据结构的内容并可以具体实施,在此不赘述。
尽管本发明已经以如上所述的优选实施例予以说明,但上述实施例并非用来限定本发明,任何对该领域熟悉的技术人员,根据本发明的设计思想、具体发明内容以及实施例的启示,应该可以各种改动和调整,而通过这些改动和调整所得到的新的内容应被本发明内容所涵盖。
Claims (21)
1.一种在移动通信系统中存储和维护用户设备信息的方法,应用于该移动通信系统的网络控制设备(1)中的用户设备信息维护控制单元(11)中,其特征在于,该方法通过如下步骤完成将一个用户设备(3)信息存储至数据服务器(2)内的过程:
步骤一,使用一哈希函数对用户设备信息的关键字进行映射,确定其在哈希表中的第一存储位置;
步骤二,若所述第一存储位置与哈希表内数据不发生冲突,则按照所述第一存储位置存储所述用户设备信息,否则重复步骤一、二进行有限次数的探索以探索下一个存储位置,若在有限次内完成存储操作则存储过程完毕,否则转步骤三;
步骤三,以上述存储位置中的一个存储位置作为根节点建立二叉树,并按照二叉树存储规则将所述用户设备信息存储到二叉树相应的位置。
2.如权利要求1所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述的用户设备信息的关键字是用户设备(3)的标识信息。
3.如权利要求1或2所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述的移动通信系统是宽带码分多址系统,所述的用户设备信息的关键字是UTRAN无线网络临时标识。
4.如权利要求1或2所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述的移动通信系统是宽带码分多址系统,所述的用户设备信息的关键字是Cell无线网络临时标识。
5.如权利要求1所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,该方法通过如下步骤查找一个用户设备(3)信息:
步骤一,使用一哈希函数对用户设备信息的关键字进行映射,确定其在哈希表中的第一存储位置;
步骤二,若所述第一存储位置存储的关键字与待查找的关键字符合,则本次查找结束,否则重复步骤一、二进行有限次数的探索以探索下一个存储位置,若在有限次内完成查找则本次查找结束,否则转步骤三;
步骤三,以上述存储位置中的一个存储位置作为根节点按照二叉树规则进行查找直到找到一节点所存储的关键字与待查找的用户设备信息的关键字符合,或者查找失败。
6.如权利要求1或5所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述的存储位置或二叉树的节点对应的存储单元仅存储所述用户设备信息的关键字,且该存储单元还包括指向所述用户设备其他信息的存储单元的地址指针。
7.如权利要求1或5所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述哈希函数是一除余函数,即H(K)=K modP,其中,K表示所述用户设备信息的关键字,P为小于所述哈希表长度的最大指数。
8.如权利要求7所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述指数P与网络控制设备所维护的用户设备(3)的个数a的优选关系应符合关系式15%*P<a<85%*P。
9.如权利要求1或5所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,在所述步骤二中使用开放定址法进行有限次探索,即使用如下函数:Hi(k)=(H(k)+di)mod m(i=1,2,...,k(k≤m-1)),其中,K表示所述用户设备信息的关键字,m代表所述哈希表的长度,di代表探索所需要的增量。
10.如权利要求9所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述增量是di=1,2,3,4...n,其中n≤P。
11.如权利要求9所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述增量是di=12,-12,22,-22...-n2,其中n≤P。
12.如权利要求9所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述增量为一伪随机序列。
13.如权利要求1所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述有限次探索的次数是预先设定的。
14.如权利要求1所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述有限次探索的次数是动态确定的。
15.如权利要求1或10或11或13或14所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述有限次探索的优选次数以及增量的优选次数为大于等于3小于等于8。
16.如权利要求1或5所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述哈希函数是一平方取中函数,即将关键字平方后取其第2、3、4位作为哈希地址。
17.如权利要求1或5所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述步骤三中作为根节点的存储位置是预先指定的。
18.如权利要求17所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述步骤三中作为根节点的存储位置是所探测到的最后一个存储位置。
19.如权利要求17所述的一种在移动通信系统中存储和维护用户设备信息的方法,其特征在于,所述步骤三中作为根节点的存储位置是所探测到的第一个存储位置或第二个存储位置。
20.一种移动通信系统,包括网络控制设备(1),其提供基站管理、无线资源管理、基站功率控制、用户接入管理和移动性管理等功能,以及数据服务器(2),用于存储用户设备信息,该网络控制设备(1)包括一用户设备信息维护控制单元(11),对该移动通信系统中的用户设备信息进行存储和维护,其特征在于,所述单元(11)按照如权利要求1或2或5所述的方法对该等用户设备信息进行存储和维护。
21.如权利要求20所述的一种移动通信系统,其特征在于,所述的移动通信系统是宽带码分多址系统,所述的用户设备信息以UTRAN无线网络临时标识或Cell无线网络临时标识作为关键字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100250159A CN101043695A (zh) | 2006-03-23 | 2006-03-23 | 一种在移动通信系统内存储和维护用户设备信息的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100250159A CN101043695A (zh) | 2006-03-23 | 2006-03-23 | 一种在移动通信系统内存储和维护用户设备信息的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101043695A true CN101043695A (zh) | 2007-09-26 |
Family
ID=38808832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006100250159A Pending CN101043695A (zh) | 2006-03-23 | 2006-03-23 | 一种在移动通信系统内存储和维护用户设备信息的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101043695A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009100636A1 (zh) * | 2008-02-05 | 2009-08-20 | Huawei Technologies Co., Ltd. | 电信网络用户数据存储管理的方法及装置 |
CN101414917B (zh) * | 2007-10-19 | 2011-03-16 | 华为技术有限公司 | 节省内存空间的方法、数据管理网元及网络系统 |
CN101505473B (zh) * | 2008-02-05 | 2011-05-04 | 华为技术有限公司 | 电信网络用户数据存储管理的方法及装置 |
CN101483844B (zh) * | 2009-02-12 | 2011-12-07 | 北京阳光加信科技有限公司 | 索引移动电话号码的方法和系统 |
CN102314653A (zh) * | 2010-06-30 | 2012-01-11 | 腾讯科技(北京)有限公司 | 一种广告位纬度冲突计算方法及装置 |
US8230063B2 (en) | 2008-02-05 | 2012-07-24 | Huawei Technologies Co., Ltd. | User data server system, method and apparatus |
CN102880628A (zh) * | 2012-06-15 | 2013-01-16 | 福建星网锐捷网络有限公司 | 哈希数据存储方法和装置 |
US8412364B2 (en) | 2008-12-25 | 2013-04-02 | Huawei Technologies Co., Ltd. | Method and device for sending and playing streaming data |
CN103294678A (zh) * | 2012-02-24 | 2013-09-11 | 深圳市腾讯计算机系统有限公司 | 基于长度内容格式的数据存储及访问方法和系统 |
CN108172260A (zh) * | 2017-12-30 | 2018-06-15 | 盛科网络(苏州)有限公司 | 一种ASIC芯片中Hash模块的验证方法及装置 |
CN110688542A (zh) * | 2019-09-04 | 2020-01-14 | 中国铁道科学研究院集团有限公司 | 一种基础设施查找方法及装置 |
CN112836008A (zh) * | 2021-02-07 | 2021-05-25 | 中国科学院新疆理化技术研究所 | 基于去中心化存储数据的索引建立方法 |
CN113722312A (zh) * | 2021-11-03 | 2021-11-30 | 中国电力科学研究院有限公司 | 电网故障告警数据折叠方法、系统、设备及存储介质 |
CN115932532A (zh) * | 2023-03-09 | 2023-04-07 | 长鑫存储技术有限公司 | 半导体器件的测试方法、装置、设备及存储介质 |
CN117349483A (zh) * | 2023-12-05 | 2024-01-05 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
-
2006
- 2006-03-23 CN CNA2006100250159A patent/CN101043695A/zh active Pending
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414917B (zh) * | 2007-10-19 | 2011-03-16 | 华为技术有限公司 | 节省内存空间的方法、数据管理网元及网络系统 |
US7916629B2 (en) | 2008-02-05 | 2011-03-29 | Huawei Technologies Co., Ltd. | Methods and apparatuses for processing and managing subscriber data in telecommunication network |
CN101505473B (zh) * | 2008-02-05 | 2011-05-04 | 华为技术有限公司 | 电信网络用户数据存储管理的方法及装置 |
US8230063B2 (en) | 2008-02-05 | 2012-07-24 | Huawei Technologies Co., Ltd. | User data server system, method and apparatus |
WO2009100636A1 (zh) * | 2008-02-05 | 2009-08-20 | Huawei Technologies Co., Ltd. | 电信网络用户数据存储管理的方法及装置 |
US8412364B2 (en) | 2008-12-25 | 2013-04-02 | Huawei Technologies Co., Ltd. | Method and device for sending and playing streaming data |
CN101483844B (zh) * | 2009-02-12 | 2011-12-07 | 北京阳光加信科技有限公司 | 索引移动电话号码的方法和系统 |
CN102314653A (zh) * | 2010-06-30 | 2012-01-11 | 腾讯科技(北京)有限公司 | 一种广告位纬度冲突计算方法及装置 |
CN102314653B (zh) * | 2010-06-30 | 2016-09-14 | 腾讯科技(北京)有限公司 | 一种广告位纬度冲突计算方法及装置 |
CN103294678B (zh) * | 2012-02-24 | 2016-03-16 | 深圳市腾讯计算机系统有限公司 | 基于长度内容格式的数据存储及访问方法和系统 |
CN103294678A (zh) * | 2012-02-24 | 2013-09-11 | 深圳市腾讯计算机系统有限公司 | 基于长度内容格式的数据存储及访问方法和系统 |
CN102880628B (zh) * | 2012-06-15 | 2015-02-25 | 福建星网锐捷网络有限公司 | 哈希数据存储方法和装置 |
CN102880628A (zh) * | 2012-06-15 | 2013-01-16 | 福建星网锐捷网络有限公司 | 哈希数据存储方法和装置 |
CN108172260A (zh) * | 2017-12-30 | 2018-06-15 | 盛科网络(苏州)有限公司 | 一种ASIC芯片中Hash模块的验证方法及装置 |
CN108172260B (zh) * | 2017-12-30 | 2020-06-26 | 盛科网络(苏州)有限公司 | 一种ASIC芯片中Hash模块的验证方法及装置 |
CN110688542A (zh) * | 2019-09-04 | 2020-01-14 | 中国铁道科学研究院集团有限公司 | 一种基础设施查找方法及装置 |
CN110688542B (zh) * | 2019-09-04 | 2022-09-13 | 中国铁道科学研究院集团有限公司 | 一种基础设施查找方法及装置 |
CN112836008A (zh) * | 2021-02-07 | 2021-05-25 | 中国科学院新疆理化技术研究所 | 基于去中心化存储数据的索引建立方法 |
CN112836008B (zh) * | 2021-02-07 | 2023-03-21 | 中国科学院新疆理化技术研究所 | 基于去中心化存储数据的索引建立方法 |
CN113722312A (zh) * | 2021-11-03 | 2021-11-30 | 中国电力科学研究院有限公司 | 电网故障告警数据折叠方法、系统、设备及存储介质 |
CN115932532A (zh) * | 2023-03-09 | 2023-04-07 | 长鑫存储技术有限公司 | 半导体器件的测试方法、装置、设备及存储介质 |
CN117349483A (zh) * | 2023-12-05 | 2024-01-05 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
CN117349483B (zh) * | 2023-12-05 | 2024-04-09 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101043695A (zh) | 一种在移动通信系统内存储和维护用户设备信息的方法 | |
CN1294492C (zh) | 动态调整活动资源的工作负荷的方法和系统 | |
EP2727247B1 (en) | Database compression system and method | |
CN101064630A (zh) | 一种数据同步方法及系统 | |
EP1256885A3 (en) | Table management technique | |
CN102880628B (zh) | 哈希数据存储方法和装置 | |
CN1856786A (zh) | 分布式数据库系统 | |
CN1786962A (zh) | 完美双数组trie树词典管理与检索方法 | |
CN1171873A (zh) | 网络单元中比较可控对象表示式属性值的方法 | |
CN1929447A (zh) | 地址前缀查找方法和装置以及报文转发方法和系统 | |
CN101079042A (zh) | 一种快速查询黑白名单的系统及方法 | |
CN1545048A (zh) | 一种用二维表实现的树的存储、访问的方法 | |
CN1716916A (zh) | 通信系统路由器中的路由系统与方法 | |
CN106874370A (zh) | 一种目录文件的快速检索方法 | |
CN101047670A (zh) | 一种mac地址表老化、操作方法及其处理系统 | |
CN1878164A (zh) | E.164号码域名存储和查询方法 | |
CN101060539A (zh) | 采用统一入口网站地址集成和推送多网站内容的方法及系统 | |
CN1687899A (zh) | 将应用程序动态下载到用户识别模块的方法、系统及模块 | |
CN1859766A (zh) | 一种通信系统发起业务请求时对业务承载的处理方法 | |
CN1133337C (zh) | 资源分配 | |
CN1859208A (zh) | 一种tcam路由表管理方法和系统 | |
CN1834957A (zh) | 一种数据库多表信息初始化方法 | |
CN1946099A (zh) | 电话本实现系统及获取电话本资源的方法 | |
CN104253754A (zh) | 一种acl快速匹配的方法和设备 | |
CN1719769A (zh) | 在网络设备中对接收数据包进行分类的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |