CN101951591B - 根据移动终端的ua匹配资源的方法和装置 - Google Patents
根据移动终端的ua匹配资源的方法和装置 Download PDFInfo
- Publication number
- CN101951591B CN101951591B CN2010102561549A CN201010256154A CN101951591B CN 101951591 B CN101951591 B CN 101951591B CN 2010102561549 A CN2010102561549 A CN 2010102561549A CN 201010256154 A CN201010256154 A CN 201010256154A CN 101951591 B CN101951591 B CN 101951591B
- Authority
- CN
- China
- Prior art keywords
- resource
- coupling
- hash bucket
- mobile terminal
- portable terminal
- 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.)
- Active
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种根据移动终端的UA匹配资源的方法,包括:根据移动终端的UA展开移动终端的资源;以所述移动终端的UA为索引建立散列桶;改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;以及在所述散列桶中进行资源和移动终端的匹配。通过本发明,不仅能够在海量的匹配资源中快速地为目标移动终端匹配到资源,并且由于匹配的速度快,在相同的负荷下也增加了资源匹配服务器的处理能力。
Description
技术领域
本发明涉及终端资源匹配技术领域,更为具体地,涉及一种根据移动终端的UA匹配资源的方法和装置。
背景技术
随着社会的进步和技术的发展,人们越来越多地使用接入终端以无线的方式接入因特网来获取各种各样的信息,包括信息浏览和文件下载等。但是,由于手机的品牌和各品牌的手机的型号多种多样,使得每个型号的手机必须匹配的资源都不尽相同。而目前的匹配算法多使用遍历思想,在海量的手机资源配置中查找与目标手机匹配的资源,效率十分低下。
比如,有两部手机:nokia N72和nokia E63,两个手机的屏幕是不同的,最适合它们屏幕显示的图片分辨率必然也不相同,如果采用常规的匹配方法,假设在SP(增值服务提供商)的服务器上有10000个适应不同类型手机的图片,那么,这两部手机要求下载图片的话,最坏的情况是,前面的9998个图片与目标手机都不匹配,只有最后两个图片才匹配到并且下发到目标手机,这样服务器的效率就很低了。
因此,需要一种能够有效提高手机资源匹配效率的解决方案。
发明内容
鉴于上述问题,本发明的目的是提供一种根据移动终端的UA匹配资源的方法和装置,其能够在海量的匹配资源中快速地为目标移动终端匹配到资源,并且由于匹配的速度快,在相同的负荷下也增加了资源匹配服务器的处理能力。
根据本发明的一个方面,提供了一种根据移动终端的UA匹配资源的方法,包括:
根据移动终端的UA展开移动终端的资源;
以所述移动终端的UA为索引建立散列桶;
改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;以及
在所述散列桶中进行资源和移动终端的匹配。
另一方面,本发明还提供一种根据移动终端的UA匹配资源的装置,包括:
资源展开单元,用于根据移动终端的UA展开移动终端的资源;
散列桶建立单元,用于以所述移动终端的UA为索引建立散列桶;
散列桶改进单元,用于改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;以及
资源匹配单元,用于在所述散列桶中进行资源和移动终端的匹配。
采用上述技术方案后,能够快速地为目标移动终端匹配到合适的资源,并且由于匹配的速度快,在相同的负荷下也增加了资源匹配服务器的处理能力,从而提高了移动终端资源匹配的效率。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
通过下面结合附图对其实施例进行描述,本发明的上述特征和技术优点将会变得更加清楚和容易理解。
图1表示本发明根据移动终端的UA匹配资源的方法的流程示意图;
图2表示本发明根据移动终端的UA匹配资源的装置的逻辑结构示意图;
图3是表示本发明在具体应用环境中的匹配流程示意图。
在所有附图中相同的标号指示相似或相应的特征或功能。
具体实施方式
以下将结合附图和具体实施例对本发明做进一步详细的描述。
本发明根据移动终端的UA(User Agent,用户代理)来实现资源的快速匹配。由于UA是SIP(Session Initiation Protocol,会话发起协议)中的一个逻辑实体,其物理实体可以是SIP终端(如SIP软、硬件电话终端,SIP多媒体终端)、基于SIP的接入网元、IAD以及SIP网络中的其它网元等设备。以手机为例,UA就是指用户的手机信息,通过UA,可以知晓用户的手机类型,是Moto的还是索爱的,是Moto的哪一款等等信息。因此,根据UA,可以向移动终端提供与其相匹配的相关服务,如分辨率大小合适的图片、格式准确的铃声等。
图1表示本发明根据移动终端的UA匹配资源的方法的流程示意图。
如图1所示,在移动终端的资源匹配服务器向终端用户提供匹配资源或者终端用户向资源匹配服务器请求匹配资源时,移动终端的资源匹配服务器会根据以下步骤进行资源匹配,由于资源匹配服务器在初始化阶段就建立了关于移动终端UA和匹配资源的配置项集合(相当于整个系统运行的基础),因此,在步骤S110中,需要首先根据移动终端的UA展开移动终端的资源,展开包括移动终端的UA、匹配资源在内的配置项集合;然后,在步骤S120中,以上述移动终端的UA为索引建立散列(Hash)桶,在Hash桶中,配置项的key为UA,其它包含的内容可以应具体应用环境的需要而不同,可以是图片,也可以是软件型号,只要能根据UA快速匹配到相应的资源即可;在步骤S130中,改进上述散列桶,将散列桶内的所有配置项置于一条链表上;在步骤S140中,在上述散列桶中通过散列查找进行资源和移动终端的匹配。
其中,在散列桶改进之前,散列桶里的配置项之间没有任何联系,但是经过步骤S130的散列桶改进,散列桶里的所有配置项都处于一条链表上,便于在步骤S140中通过散列查找无法进行资源和目标移动终端的精确匹配时,通过遍历的手段进行资源和目标移动终端的模糊匹配。
由于Hash桶本身就是一个散列矩阵,因此可以通过双向链表的方式将Hash桶里所有的配置项置于同一条链表上。另外,由于移动终端软、硬件提供商所提供的终端产品的多样性,经常会出现一些UA不同但匹配资源相同的情形,比如像手机UA中的nokia5300和nokia5300plus这样的情况,由于UA不同,如果资源匹配服务器中仅存在nokia5300的UA及其匹配资源,那么即使与nokia5300plus匹配的资源也存在于资源匹配服务器中(即nokia5300的匹配资源),通过上述Hash查找仍然不能Hash到精确匹配的资源,因此本发明通过这种以链表为Hash桶里的配置项建立联系的方式实现资源和目标移动终端的模糊匹配。
在本发明的一个优选实施方式中,如果在散列桶中通过散列不到与移动终端匹配的资源,则资源匹配服务器在链表上遍历查找匹配的资源进行模糊匹配。具体来说,在遍历查找的过程中,如果资源匹配的UA是A,目标移动终端的UA是B,则在遍历时,B被A包含或者B=A的情形都认为资源和目标移动终端是匹配的。
图2表示本发明根据移动终端的UA匹配资源的装置的逻辑结构示意图。
如图2所示,与上述根据移动终端的UA匹配资源的方法相对应,本发明还提供一种根据移动终端的UA匹配资源的装置,也就是上述根据移动终端的UA匹配资源的方法中提及的资源匹配服务器,包括资源展开单元210、散列桶建立单元220、散列桶改进单元230以及资源匹配单元240。
其中,资源展开单元210用于根据移动终端的UA展开资源匹配服务器重的移动终端的资源;散列桶建立单元220用于在资源匹配服务器中以移动终端的UA为索引建立散列桶;散列桶改进单元230用于改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;资源匹配单元240用于在所述散列桶中通过散列查找进行资源和移动终端的匹配。
另外,资源匹配单元还包括精确匹配单元242和模糊匹配单元244,其中,精确匹配单元242用于在散列桶中通过散列查找进行资源和移动终端的匹配;当在散列桶中通过散列查找不到与移动终端匹配的资源时,模糊匹配单元244则在链表上遍历查找匹配的资源进行模糊匹配。
本发明在具体的应用过程中采用客户端-服务器的模式,图3是本发明在具体应用环境中的匹配流程示意图。
如图3所示,以作为常用移动终端的手机为例,本发明在应用过程中,资源匹配服务器通过接收手机的上行数据获得手机的UA,此处UA=A,然后在资源匹配服务器中进行Hash计算,查找与UA为A的手机相匹配的资源;如果Hash命中,则组织相应的匹配资源给手机,如果Hash没有命中,则在资源匹配服务器改进的Hash桶中遍历UA资源查找与UA=A的手机匹配的资源。假设资源匹配服务器中的单个UA配置项(即用一个字符串来表示的配置中的UA)为B,则当A=B以及A包含B时,认为为UA=A的手机匹配到了相应的资源,则组织相应的匹配资源给手机;否则,将无资源匹配的消息返回手机。
下面的例子能够更直观地说明本发明的有益效果。理想情况下,假定SP的后台有M种不同UA的手机资源,如果采用普通的匹配算法,那么,理论上,平均每个用户在访问时的匹配时间复杂度是M/2(最坏情况为背景技术中描述的情形),而采用了hash算法后,其时间复杂度为1,并且不会因为M的增长而增长。如果单纯采用标准的hash算法,会出现一种情况,比如,某个用户手机UA是nokia6100E,而服务器资源配置只有nokia6100的条目,这种情况下是匹配不到的,而采用本发明提供的改进的hash算法,在无法精确匹配的情况下,将会再尝试一次遍历做模糊匹配。
相对于传统的匹配算法,本发明所提供的此种快速匹配方法具有不可比拟的优势:在最好情况下,时间复杂度为1,远远优于传统匹配的时间复杂度M/2;在最坏情况下,时间复杂度为1+M/2,也非常接近于传统匹配的时间复杂度M/2。因此,可以确定本发明所提供的快速匹配方法远优于传统的循环匹配算法。
在本发明的上述教导下,本领域技术人员应当理解,对于上述本发明所提出的根据移动终端的UA匹配资源的方法及装置,本领域技术人员可以在上述实施例的基础上进行各种改进和变形,而这些改进和变形,都落在本发明的保护范围内,本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围由权利要求及其等同物限定。
Claims (5)
1.一种根据移动终端的用户代理UA匹配资源的方法,包括:
根据移动终端的用户代理UA展开移动终端的资源;
以所述移动终端的用户代理UA为索引建立散列桶;
改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;以及
在所述散列桶中进行资源和移动终端的匹配;其中,
所述用户代理UA是会话发起协议SIP中的一个逻辑实体;并且,
在所述散列桶中进行资源和移动终端的匹配的过程中,
首先在散列桶中通过散列查找进行资源和移动终端的匹配;
如果找到与移动终端匹配的资源,则将所述资源提供给移动终端;否则,
资源匹配服务器在链表上遍历查找匹配的资源进行模糊匹配。
2.如权利要求1所述的根据移动终端的用户代理UA匹配资源的方法,其中,在遍历查找匹配的资源进行模糊匹配的过程中,
如果资源匹配的用户代理UA是A,目标移动终端的用户代理UA是B,则在遍历时,B被A包含或者B=A的情形都认为资源和目标移动终端是匹配的。
3.如权利要求1所述的根据移动终端的用户代理UA匹配资源的方法,其中,在所述根据移动终端的用户代理UA展开移动终端的资源的步骤之前,还包括:
建立关于移动终端用户代理UA和匹配资源的配置项集合的步骤。
4.如权利要求1所述的根据移动终端的用户代理UA匹配资源的方法,在将所述散列桶内的所有配置项置于一条链表上的过程中,
通过双向链表的方式将散列桶里所有的配置项置于同一条链表上。
5.一种根据移动终端的用户代理UA匹配资源的装置,包括:
资源展开单元,用于根据移动终端的用户代理UA展开移动终端的资源;
散列桶建立单元,用于以所述移动终端的用户代理UA为索引建立散列桶;
散列桶改进单元,用于改进所述散列桶,将所述散列桶内的所有配置项置于一条链表上;以及
资源匹配单元,用于在所述散列桶中进行资源和移动终端的匹配;其中,
所述用户代理UA是会话发起协议SIP中的一个逻辑实体;并且,
所述资源匹配单元还包括:
精确匹配单元,用于在散列桶中通过散列查找进行资源和移动终端的匹配;
模糊匹配单元,用于在散列桶中通过散列查找不到与移动终端匹配的资源时,在链表上遍历查找匹配的资源进行模糊匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102561549A CN101951591B (zh) | 2010-08-17 | 2010-08-17 | 根据移动终端的ua匹配资源的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102561549A CN101951591B (zh) | 2010-08-17 | 2010-08-17 | 根据移动终端的ua匹配资源的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101951591A CN101951591A (zh) | 2011-01-19 |
CN101951591B true CN101951591B (zh) | 2012-11-07 |
Family
ID=43454920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102561549A Active CN101951591B (zh) | 2010-08-17 | 2010-08-17 | 根据移动终端的ua匹配资源的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101951591B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102316557A (zh) * | 2011-07-25 | 2012-01-11 | 李秀川 | 手持设备自动优选无线接入点的系统及方法 |
CN104809135B (zh) * | 2014-01-27 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 一种数据存取方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382959A (zh) * | 2008-10-28 | 2009-03-11 | 清华大学 | 一种多媒体资源获取方法、装置及系统 |
CN101640613A (zh) * | 2009-09-11 | 2010-02-03 | 中兴通讯股份有限公司 | 一种网络资源关联管理的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0607294D0 (en) * | 2006-04-11 | 2006-05-24 | Nokia Corp | A node |
-
2010
- 2010-08-17 CN CN2010102561549A patent/CN101951591B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382959A (zh) * | 2008-10-28 | 2009-03-11 | 清华大学 | 一种多媒体资源获取方法、装置及系统 |
CN101640613A (zh) * | 2009-09-11 | 2010-02-03 | 中兴通讯股份有限公司 | 一种网络资源关联管理的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101951591A (zh) | 2011-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8572248B2 (en) | Efficient service discovery for peer-to-peer networking devices | |
CN103119583B (zh) | 用于表示对可用项目的感兴趣程度的装置和方法 | |
KR102191986B1 (ko) | 무선 환경에서 다수 개의 서비스 탐색을 제공하는 방법 및 시스템 | |
WO2008104131A1 (fr) | Procédé, appareil et système de recherche et de téléchargement d'un fichier de téléphone mobile | |
CN1988703A (zh) | 基于可拍照移动终端实现信息交互式操作的方法 | |
CN102216894A (zh) | 用于发送和接收数据的方法和装置 | |
CN103200224A (zh) | 一种信息分享的方法、装置及终端 | |
CN102487375A (zh) | 一种在线下载视频的方法、装置和系统 | |
CN102427469B (zh) | 利用手持式电子装置控制目标设备的系统及方法 | |
CN101951591B (zh) | 根据移动终端的ua匹配资源的方法和装置 | |
CN103248678A (zh) | 一种数据资源共享方法、服务端和客户端 | |
CN103049445B (zh) | 一种查询图片信息的方法、系统和图片状态服务器 | |
CN103079194B (zh) | 业务适配方法、装置及系统 | |
CN201585139U (zh) | 移动终端图形适配系统 | |
CN102629919A (zh) | 即时通信中用以添加联系人的方法、客户端及系统 | |
CN106332556A (zh) | 传输云端文件的方法、终端及云端服务器 | |
CN103036983A (zh) | 一种信息获取的方法、网络节点、服务器及系统 | |
CN106034065B (zh) | 信息展示方法及装置 | |
CN104507058B (zh) | 一种基于二维码的信息传输方法、系统及移动终端 | |
WO2001041398A1 (en) | Accessing ad hoc bluetooth devices from a java application | |
CN103389993A (zh) | 移动设备获取网络信息的方法及系统 | |
CN202615375U (zh) | 图片分享系统及电子设备 | |
CN101827127A (zh) | 一种移动终端基于应用程序的计费提示方法、装置和系统 | |
CN101252750A (zh) | 一种移动搜索的方法、系统和设备 | |
KR101003826B1 (ko) | 근거리 무선 통신을 이용한 3d 게임 시스템 및 게임서비스 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200528 Address after: 310051 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Alibaba (China) Co.,Ltd. Address before: 100080 building 16, building 1610-1620, building 18, Building 29, Suzhou Street, Beijing, Haidian District Patentee before: UC MOBILE Ltd. |
|
TR01 | Transfer of patent right |