CN104994004A - 机会网络环境下基于优先级和多粒度的内容共享方法 - Google Patents

机会网络环境下基于优先级和多粒度的内容共享方法 Download PDF

Info

Publication number
CN104994004A
CN104994004A CN201510385635.2A CN201510385635A CN104994004A CN 104994004 A CN104994004 A CN 104994004A CN 201510385635 A CN201510385635 A CN 201510385635A CN 104994004 A CN104994004 A CN 104994004A
Authority
CN
China
Prior art keywords
content
node
cont
priority
time
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
Application number
CN201510385635.2A
Other languages
English (en)
Inventor
赖永炫
廖明宏
林俊聪
李贵林
高星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen University
Original Assignee
Xiamen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xiamen University filed Critical Xiamen University
Priority to CN201510385635.2A priority Critical patent/CN104994004A/zh
Publication of CN104994004A publication Critical patent/CN104994004A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

机会网络环境下基于优先级和多粒度的内容共享方法,涉及机会网络的内容共享方法。1)用户定义分享的内容信息和包含粒度的请求信息;计算节点友谊度;2)建立通信链路,交换各自的请求集合和所携带的内容段声明;3)计算节点存储内容的优先级;4)若通信链路仍存在,则节点将优先级最高的内容段从缓存拷贝到转发队列;否则结束本次相遇的通信机会;5)若接受节点有足够存储空间,则节点把内容段发送给对方节点,实现共享内容的分发和传播;否则接收节点先缓存管理,即按重要性权重转换高粒度的内容段以腾出存储空间,进行数据传输;6)若节点还存在被设置了优先级的内容块,则转4);否则断开当前链路,等待下一个通信和内容传输的机会。

Description

机会网络环境下基于优先级和多粒度的内容共享方法
技术领域
本发明涉及机会网络的内容共享方法,特别是涉及移动节点之间的机会网络环境下基于优先级和多粒度的内容共享方法。
背景技术
随着现代通信手段的发展,一种由人为携带的无线设备组成的新式信息传播网络正悄然出现。在此环境下,节点(如传感器节点、智能手机)将直接进行通讯并分享本地的数据对象(如新闻、音乐和相片)。但由于节点的运动,连接链路往往不太稳定,且不存在稳定的端对端的路径,此类网络被称为“移动机会网络(Mobile Opportunistic Network)(见熊永平,孙利民,牛建伟等,机会网络.软件学报,20(1):124–137,2009.)。移动机会网络采取“存储-携带-转发”的信息传输机制,容忍一定的延迟,进行信息传输和内容的分发与共享(见Fall K.A delay-tolerant network architecture for challenged internets.InProceedings of the 2003 Conference on Applications,Technologies,Architectures,andProtocols for Computer Communications,Karlsruhe,Germany,ACM,2003;27–34.)。移动机会网络的一个很好的例子便是“口袋交换”网络,它由一系列带有蓝牙或WIFI接口的手持电子设备组成,它们协同工作以达到内容共享和互联网访问的目标(详见Hui P,Chaintreau A,Scott J,Gass R,Crowcroft J,Diot C.Pocket switched networks and humanmobility in conference environments.In Proceedings of the 2005 ACM SIGCOMM Workshopon Delay-tolerant Networking,Philadelphia,PA,ACM,2005;244–251.)。
机会网络的内容共享机制须考虑通信过程中的代价,并提高信息和内容传达率。节点Haggle项目将内容与元数据结合来辅助内容的搜索与组织。节点与其他节点共享数据,而元数据则被用于不同应用、甚至于不同节点间的本地内容检索(详见GunningbergP,Rohner C.A search-based network architecture for mobile devices.TechnicalReport,Department of Information Technology,Uppsala University,2009;3.)。在Social Cast方法中,发布者节点(Publisher)将某一固定数量的发布信息的拷贝分发给载体节点(Carrier Nodes),载体节点将会把这些信息分发给最终的订阅者,或是其他可能(接触订阅者的)载体节点。载体节点的选择是基于社群交互的度量来进行的(Costa P,MascoloC,Musolesi M,Picco GP.Socially-aware routing for publish-subscribe indelay-tolerant mobile ad hoc networks.IEEE Journal on Selected Areas inCommunications 2008;26(5):748–760.)。与Social Cast方法类似,也有研究者提出了一种基于机会网络的发布者/订阅者系统。其核心组件是社会化选择,它使用本地的通讯历史来计算节点的流行度,并由此决定节点的“角色”。算法动态地确定网络中中介节点(Broker)的个数,在效率和消耗之间取得一个平衡(详见Zhao Y,Wu J.Socially-awarepublish/subscribe system for human networks.In Wireless Communications andNetworking Conference(WCNC),2010IEEE,Sydney,Australia,2010;1–6.)。也有研究使用相关性分数(Relevance Score)来决定是否选择某一项目用于传送,并决定其发送的顺序。节点通过到接受者、抑或是整个网络的感知收益(Perceived Benefit)评分来决定是否传输某个项目。那些获得更高评分的项目将会被尽快地发送出去(详见Rohner C,BjureforsF,Gunningberg P,McNamara L,Making the most of your contacts:transferordering in data-centric opportunistic networks.In Proceedings of the Third ACMInternational Workshop on Mobile Opportunistic Networks,Zurich,Switzerland,ACM,2012;53–60.)。此外,社群关系也被引入用于移动机会网络中内容分享机制的设计。在Content Place方法中,用户们公示出自己感兴趣的数据对象,同时与其他节点交换自身携带的数据对象的摘要。当节点相遇时,它根据复制策略来决定哪些项目需要被复制到本地。复制策略基于项目的效用度(Utility Value)来计算,而该值是由访问概率的估计值和项目在各社群中的可用度(Availability)来决定的(详见Boldrini C,Conti M,Passarella A.Content place:social-aware data dissemination in opportunistic networks.InProceedings of the 11th International Symposium on Modeling,Analysis and Simulationof Wireless and Mobile Systems,Vancouver,British Columbia,Canada,ACM,2008;203–210.)。此方法的一个缺陷是其依赖于社群检测机制,这需要对大量参数进行估计。
内容共享方法包含了用户兴趣在网络中的各个节点间交换、传播;消息是基于内容,而不是基于地址的(见熊永平,孙利民,牛建伟等,机会网络.软件学报,20(1):124–137,2009.)。从以上的文献也可以看出,已有的机会网络中的内容共享方法,主要是基于“存储-携带-转发”的传输机制,采用了简单的“订阅/发布”(subscribe/publish)模型进行内容的匹配和分发。然而,在移动机会网络的内容分享方法中,依然未考虑两个关键要素。一是共享内容的排序问题,即被选择的内容应以何种顺序发送?机会网络中的通讯持续时间往往很短,并且持续时间和当时的时间和节点位置强相关。那些最有可能可以响应请求的内容需要在节点接触时尽快进行传输。其二是共享内容的粒度问题,即内容应以何种粒度来发送?因为移动机会网络有着资源受限的特性,以最高的精度来传输所有数据是一个近乎不可能的任务。并且,根据用户兴趣多样且易变,需要分享的数据在其类型和精度上会有不同,以不同粒度来进行数据的分享是一种既节约了网络资源,又满足用户需求的方案和协议。
发明内容
本发明的目的在于针对现有内容共享方法传输内容冗余、低效等问题,提供可为用户提供个性化的内容共享方案,同时减少不必要的内容数据的传输,降低共享的延迟,提高用户的使用体验的一种机会网络环境下基于优先级和多粒度的内容共享方法。
本发明包括以下步骤:
(1)用户定义分享的内容信息和包含粒度的请求信息;节点记录相遇的节点信息,相互交换元数据信息,计算节点友谊度;
(2)当节点相遇时,建立一个通信链路,并交换各自的请求集合和所携带的内容段声明;
(3)根据相遇节点之间的友谊度、内容和请求匹配程度,计算节点存储内容的优先级;
(4)若通信链路仍然存在,则节点将优先级最高的内容段从缓存拷贝到转发队列中;否则,结束本次相遇的通信机会;
(5)若接受节点有足够的存储空间,则节点直接把内容段发送给对方节点,实现共享内容的分发和传播;否则,接收节点先进行缓存管理,即按重要性权重转换高粒度的内容段以腾出存储空间,然后进行数据传输;
(6)若节点还存在被设置了优先级的内容块,则跳转到步骤(4)进行处理;否则,断开当前链路,等待下一个通信和内容传输的机会。
在步骤(1)中,所述元数据信息包括但不限于节点相遇请求信息和内容声明信息。
在步骤(1)中,所述节点友谊度综合频率、长度、通讯机会的规律性和行为特征,友谊度由下式定义:
w ( i , j ) = 1 s p m ( i , j ) , s p m ( i , j ) = ∫ t = 0 T f ( t ) d t T
其中,f(t)表示在时间t时,两个节点下一次相遇的还需要经过的时间,t表示到下一次相遇经过的时间,而节点进行相互通讯的时间可被记录后用于计算,在时间t,若两节点正在通讯中,则f(t)=0,否则,f(t)=tnext-t,这里tnext是节点si和sj下次相遇的时间,T是观察窗口,为用户选定的固定长度的滑动时间窗口,T默认值为7天,spm是社会压力度量,该值可被解释为推动“朋友”(即节点)相遇并分享其内容的一种社会压力,每一对节点间的友谊度w(i,j)被定义为spm值的倒数。
在步骤(3)中,所述计算节点存储内容的优先级采用基于请求匹配度、内容粒度和随机扰动的综合计算方法,具体地,节点si和sj相遇并建立通信链路,对于存储在节点si中的某一内容段cont(sid,cid,le,content),在计算其优先级时分为三种情况计算:
(1)若cont可以响应属于sj的一个或多个请求,则cont的优先级由下式计算:
cont.pr=Σre∈Sj.Rfd(re,cont)*P,if cont.cid=re.cid,re.sid=sj
fd是公式定义的响应度,cont.pr表示cont的优先级,sj.Re为节点sj所产生的请求集合,le为粒度级别,内容段从si到sj的传输是该内容被传送到目标的最后一跳,故P>1是一个用于放大的因子,用于保证cont会以高概率进行传输,P的值默认设定为10;
(2)若cont可以响应存储在sj但并不是由其生成的一个或多个请求,则cont的优先级由下式计算:
cont.pr=Σre∈Sj.Rfd(re,cont)*re.w,if cont.cid=re.cid,re.sid≠sj,re∈sj.R
sj.R是节点sj所存储的请求集合,re.w是请求的权重,该优先级的计算基于内容cont与存储在sj节点上所有的请求的可能匹配来进行计算;
(3)若cont无法应答存储在sj上的任何请求,则内容的优先级将以(1-γ)的概率被设置为0,以γ的概率设定为以下值:
c o n t . p r = w ( i , j ) c o n t . l e , i f c o n t . c i d ≠ r e . c i d , r e ∈ s j . R
γ∈(0,1)是一个预定义的参数,默认值为0.1,该优先级综合考虑内容的粒度等级、节点间的友谊度以及内容交换的随机性扰动。
在步骤(5)中,所述缓存管理采用基于内容重要性程度的降级和替换方法,且内容重要性程度综合了内容段的新鲜度和热度因素,具体地,内容段被存储在内容缓存区中,它们被组织成一个列表;该列表以重要性权重来进行排序,该值被定义为内容的“新鲜度”与“热度”的一个权衡,内容段cont的重要性权重被公式化定义为:
c o n t . i m p = T - ( n o w - c o n t . l s _ t i m e ) T * α + c o n t . n r m a x ( 1 , max _ r ) * ( 1 - α )
α∈(0,1)是一个平衡因子,默认值为0.5;T为用户定义的持续时间,now为当前时间,cont.ls_time为cont最后一次被请求时的时间,cont.nr是cont被请求的次数,max_r是存储在缓存列表的所有内容段的最大nr值;分子T、max(1,max_r)是为了使热度以及新鲜度两个指标进行归一化(Normalize),使其都落在[0,1]的值域之中,所有参数都由节点在本地记录并做相应更新,当缓存区满时,为了把内容段cont插入到节点的内容缓存区我们需要把内容段集合TS转换为低精度的内容,利用动态规划方法求解以下的线性规划问题,可获得TS集合:
最小化目标:Σc∈TSc.imp,
限制条件: Σ c ∈ T S size d ( c ) ≥ c o n t . s i z e , c 1. i m p ≥ c . i m p , ∀ c 1 ∈ ( s i . C - T S ) , ∀ c ∈ T S
其中si.C是si中所有内容段的集合,sized(c)为内容段c转变为低粒度后所释放出的空间;若hi为原粒度级别,lo<hi为目标粒度级别,则释放出的空间表示为sized(cont,hi,lo),这里仅允许一次降低一个粒度级别,故sized(c)实际代表sized(cont,cont.le,cont.le-1)。
本发明通过在机会网络内容共享机制中引入内容的粒度和优先级顺序,使得用户在分享其兴趣内容时能进行共享粒度的个性化设置,减少了不必要的内容数据的传输;同时,低粒度的内容能优先被分享给用户,降低了共享的延迟,提高了用户的体验。此外,通存储在缓存中内容的重要性权重的计算,权重低的数据段可转变为低粒度的数据以释放存储空间,进而提高网络中节点的整体存储利用率。本发明算法明确、结果鲁棒,该方法可以大大提高内容共享的效率,提高内容共享用户的用户体验。
附图说明
图1为共享数据(cont)的报文结构图;
图2为共享数据(advertise)的广告报文结构图;
图3为请求消息(re)的报文结构图。
具体实施方式
以下给出机会网络环境下基于优先级和多粒度的内容共享方法:
用户定义分享的内容信息和包含粒度的请求信息,节点记录相遇的节点信息,相互交换元数据信息(包括节点相遇请求信息和内容声明信息)并计算节点友谊度。当节点相遇时,建立一个通信链路并交换各自的请求集合和所携带的内容段声明;同时,根据相遇节点之间的友谊度、内容和请求匹配程度,节点计算节点存储内容的优先级。在通信链路仍然存在的前提下,节点按优先级顺序把内容段从缓存拷贝到转发队列中,准备发送给对方节点。若接受节点有足够的存储空间,节点直接把内容段发送给对方节点,实现共享内容的分发和传播;否则,接收节点先进行缓存管理,即按重要性权重转换高粒度的内容段以腾出存储空间,然后进行数据传输。当所有的传输内容传输完毕,或者通信机会消失,则断开当前链路,寻找下一个通信和内容传输的机会。具体流程参见图1。
本发明实施的关键有5点:数据内容和请求的格式定义、元数据与请求交换、内容优先级的计算、内容和消息传输、节点缓存的替换和管理。下面具体介绍关键的实现细节:
1、数据内容和请求的格式定义
提供者产生原始数据,它拥有数据的最精确版本。数据段的格式是data(time,sid,cid,content),其中time是数据产生时的时间戳,sid是创建它的节点的id,cid是分类标识符(即类别id),content为具体的数据内容。为进行内容的多粒度共享,数据可被提供者或中介者转换为内容段(Content Segment)。每一个内容段的格式为cont(time,sid,cid,le,content),le≥1是表示数据粒度的整数值,更大的le表示更高的粒度,而较小的le表示较低的粒度。共享内容段的分辨率级别和大小对照如表1所示。
表1
分辨率级别 内容大小
1 32K
2 64K
3 128K
4 512K
5 2048K
消费者产生对数据的请求,对某一内容段cont(time,sid,cid,le,content)和某一请求re(time,id,sid,cid,le)来说,若cont.cid=re.cid,则称内容段cont可以以响应度fd(re,cont)来响应请求re,其中fd(re,cont)由下式定义:
f d ( r e , c o n t ) = 1.0 i f r e . l e &le; c o n t . l e c o n t . l e r e . l e i f r e . l e > c o n t . l e                 (公式1)
响应度fd(re,cont)的值是由内容段的粒度值除以请求所要求的粒度值所计算出的。若fd(re,cont)=1,则cont完全响应了请求re;否则,re仅被部分响应。这里采用了较为直接的线性方法来计算响应度。
2、元数据与请求交换
在网络运行的开始阶段,本方法使用类Epidemic模式来进行消息传输和网络元数据的获取。每一个节点均记录其通讯历史并维护一个“朋友列表”(Friend List)。“朋友列表”记录它所遇到的其他节点的id及其“友谊度”(Friendship Degree)。节点i与j之间的友谊度w(i,j)由下式定义:
w ( i , j ) = 1 s p m ( i , j ) , s p m ( i , j ) = &Integral; t = 0 T f ( t ) d t T                       (公式2)
其中,f(t)表示在时间t时,两个节点下一次相遇的还需要经过的时间。在这里,t表示(到下一次相遇)经过的时间,而节点进行相互通讯的时间可被(另外)记录后用于计算。在时间t,若两节点正在通讯中,则f(t)=0,否则,f(t)=tnext-t,这里tnext是节点si和sj下次相遇的时间。T是观察窗口,为用户选定的固定长度的滑动时间窗口,本方法中T默认值为7天(一周)。spm是社会压力度量(Social Pressure Metric)的缩略,该值可被解释为推动“朋友”(即节点)相遇并分享其内容的一种社会压力。每一对节点间的友谊度w(i,j)被定义为spm值的倒数。它综合考虑了频率、长度、通讯机会的规律性等行为特征。
请求(request)与内容(content)被存储在两块隔离开的缓存区域:称为请求缓存和内容缓存。当存在一个通讯机会时,节点将从请求/内容缓存筛选并拷贝相应的数据到请求/内容队列中,然后它们将被转发给进行通讯的对方节点。请求会在节点之间进行共享。对于某一对节点,假设,si和sj,若其友谊度大于预定义的阈值δ:w(i,j)>=δ,则当二者进入通讯状态时,si节点的请求集合将被拷贝至sj节点的请求缓存区,反之亦然。用si.R来表示储存在节点si中的请求集合。基于友谊度的概念,也为每一个请求赋予一个权重,该权重的初值被设为1.0。当请求re被拷贝到其他节点上时,其权重re.w由下式进行更新:
re . w = re . w * w ( i , j ) , re &NotElement; s i . R                          (公式3)
由于w(i,j)是一个小等于1.0的值,所以当请求被拷贝到其他节点时,该权重将会下降。在大多数情况下,只有互为朋友的节点会被选为拷贝请求的对象,这避免了请求在网络中出现泛滥。由于请求的大小通常较小,故该部分所带来的额外开销相对较少,却可以显著地改善本方法的总体性能。
3、优先级计算
当节点处于彼此的通信范围内,它们可以建立通信链路。比如可以通过蓝牙来建立节点间的通信连接:节点首先工作在待命模式,主节点通过查询工作模式来搜集相邻节点的信息,并且通过寻呼工作模式来建立与相邻设备间的连接。通信链路一旦建立,内容请求的集合(Request)以及所携带内容的声明(Content Advertisement)将会首先与对方进行交换。内容声明是从内容段cont(time,sid,cid,le,content)中获取的,它的形式是:advertise(time,sid,cid,le)。这些声明信息将被交换以用于计算当前通讯中各内容的优先级。
对于存储在节点si中的某一内容段cont(sid,cid,le,content),在计算其优先级时共有三种情况:
(1)若cont可以响应属于sj的一个或多个请求,则cont的优先级由下式计算:
cont.pr=Σre∈Sj.Rfd(re,cont)*P,if cont.cid=re.cid,re.sid=sj           (公式4)
其中,fd是公式1中定义的响应度,cont.pr表示cont的优先级,sj.Re为节点sj所产生的请求集合,le为粒度级别。在这种情况下,内容段从si到sj的传输是该内容被传送到目标的最后一跳,故P>1是一个用于放大的因子,用于保证cont会以高概率进行传输。P的值默认设定为10。
(2)若cont可以响应存储在sj但并不是由其生成的一个或多个请求,则cont的优先级由下式计算:
cont.pr=Σre∈Sj.Rfd(re,cont)*re.w,if cont.cid=re.cid,re.sid≠sj,re∈sj.R      (公式5)
其中,sj.R是节点sj所存储的请求集合,re.w是请求的权重,该权重由上文提到的公式3进行更新。该优先级的计算基于内容cont与存储在sj节点上所有的请求的可能匹配来进行计算。
(3)若cont无法应答存储在sj上的任何请求,则内容的优先级将以(1-γ)的概率被设置为0,以γ的概率设定为以下值:
c o n t &CenterDot; p r = w ( i , j ) c o n t . l e , i f c o n t . c i d &NotEqual; r e . c i d , r e &Element; s j . R               (公式6)
其中γ∈(0,1)是一个预定义的参数,默认值为0.1。该优先级综合考虑内容的粒度等级、节点间的友谊度以及内容交换的随机性扰动。
存储在sj上的请求按同样的方法来计算优先级。优先级是基于与当前相遇节点之间的内容和请求匹配程度来进行计算的,当节点遇到另外一个节点的时候,这些优先级都会被重新进行计算。只有那些优先级大于0的内容段才有可能在本次通讯中被发送出去。
4、消息传输
当计算出内容段的优先级后,本方法使用一种基于优先级的策略来进行消息传输。有着最高优先级的内容段将被组装成消息并拷贝到转发队列中。若某一内容段过大,无法被组装进一个消息中,则它将被拆解为几个小段,并组装进不同的消息中去。每条消息被赋予与其装填的内容相同的优先级:msg.pr=cont.pr。若多个内容段被组装进一个消息中,则消息的优先级将等于这些内容段的优先级之和:msg.pr=Σcont∈msgcont.pr。转发队列按照优先级进行排序,在队首的消息拥有最高的优先级,它将被首先发送到对方节点。消息传输的顺序通过比较双方队列中消息的优先级来决定。
当某一节点,假设节点sj,接收到内容段cont,若cont可以响应某一请求re,且响应度fd大于当前记录的响应度re.fd(fd(re,cont)>re.fd),则请求re的响应度被更新为:re.fd=fd(re,cont)。若请求re被记录的响应度fd等于1.0,则该请求已被完全响应,re将从缓存中删除。若cont无法响应由si产生的任何请求,该内容段将保留在内容缓存区中,等待下一个通信机会时传递给其他节点。
5、缓存替换和管理
(1)请求缓存管理
请求由源节点产生并传递给其他节点以获取相应的内容。某一请求可能在整个网络中拥有数个拷贝。为了减少重复请求的数量,并防止当请求已被完全响应后仍然进行内容段的重复传输,采用基于阈值的策略来清理缓存区中已过期的请求。算法设定两种阈值,其一是最大存活时间maxt,其二是权重阈值wt。节点通过检查请求的存活时间和权重来判定其是否过期,若以下条件满足,则请求re将自动地被从缓存中删除:
now-re.time≥maxt or re.w<wt                     (公式7)
其中now为当前时间,re.time为请求re产生时的时间戳。由于请求占用空间较小,一般情况下所有请求都可被存储在一个预先定义好大小的请求缓存区中。当空间不足时,该方法将通过缩小内容缓存区的方式来扩大缓存区。
(2)内容缓存管理
当某一内容段经过长时间仍无法响应任何请求时,对其进行转换或从缓存中移除来为那些新产生或接收到的内容段腾出空间是一种较好的做法。使用基于优先级的策略来进行内容缓存区的管理。
内容段被存储在内容缓存区中,它们被组织成一个列表。该列表以重要性权重(Importance Weight)来进行排序,该值被定义为内容的“新鲜度”与“热度”的一个权衡。内容段cont的重要性权重被公式化定义为:
c o n t . i m p = T - ( n o w - c o n t . l s _ t i m e ) T * &alpha; + c o n t . n r m a x ( 1 , max _ r ) * ( 1 - &alpha; )        (公式8)
其中,α∈(0,1)是一个平衡因子,默认值为0.5;T为用户定义的持续时间,now为当前时间,cont.ls_time为cont最后一次被请求时的时间,cont.nr是cont被请求的次数,max_r是存储在缓存列表的所有内容段的最大nr值。这里,分子T、max(1,max_r)是为了使热度以及新鲜度两个指标进行归一化(Normalize),使其都落在[0,1]的值域之中。所有参数都由节点在本地记录并做相应更新。
当节点产生新数据或是从其他节点收到一个内容段时,它需要腾出空间来储存这些数据。若节点缓存中已经有足够的空间,则该内容段会被根据它的重要性权重直接插入排好序的缓存列表之中;若节点缓存中没有足够的空间,则那些有着较低重要度的内容段将被转换为低精度,或是从缓存中删除,以释放出存储空间。假设某一内容段cont将要被插入节点si的内容缓存区,而TS是那些被转换为低精度的内容集合,则我们求解以下最优化问题:
最小化目标:Σc∈TSc.imp,
限制条件:
&Sigma; c &Element; T S size d ( c ) &GreaterEqual; c o n t . s i z e , c 1. i m p &GreaterEqual; c . i m p , &ForAll; c 1 &Element; ( s i . C - T S ) , &ForAll; c &Element; T S         (公式9)
其中si.C是si中所有内容段的集合,sized(c)为内容段c转变为低粒度后所释放出的空间。若hi为原粒度级别,lo<hi为目标粒度级别,则释放出的空间表示为sized(cont,hi,lo)。在这里,仅允许一次降低一个粒度级别,故sized(c)实际代表sized(cont,cont.le,cont.le-1)。
节点扫描内容缓存区的排序列表,将某些内容段降级为低粒度级别并统计出新释放出的空间大小。当释放出的空间大小足以容纳内容段cont时,节点将停止扫描,重构缓存区并将内容段cont插入到列表中。由于列表是排好序的,故整个过程是十分高效的。若某一内容段已经处于它的最低粒度,但仍因重要性不足而需要被降级,它就将被从缓存列表中彻底删除。
共享数据(cont)的报文结构图参见图1,共享数据(advertise)的广告报文结构图参见图2,请求消息(re)的报文结构图参见图3。
本发明通过在机会网络内容共享机制中引入内容的粒度和优先级顺序,使得用户在分享其兴趣内容时可以进行共享粒度的个性化设置;低粒度的内容能优先被分享给用户,降低了共享的延迟,减少了不必要的内容数据的传输,提高了用户的体验。此外,本发明计算缓存内容的重要性权重,把低权重数据段转变为低粒度数据以释放存储空间,提高了网络节点的整体存储效率。本发明算法明确、结果鲁棒,该方法可以大大提高内容共享的效率,提高用户体验。

Claims (5)

1.机会网络环境下基于优先级和多粒度的内容共享方法,其特征在于包括以下步骤:
(1)用户定义分享的内容信息和包含粒度的请求信息;节点记录相遇的节点信息,相互交换元数据信息,计算节点友谊度;
(2)当节点相遇时,建立一个通信链路,并交换各自的请求集合和所携带的内容段声明;
(3)根据相遇节点之间的友谊度、内容和请求匹配程度,计算节点存储内容的优先级;
(4)若通信链路仍然存在,则节点将优先级最高的内容段从缓存拷贝到转发队列中;否则,结束本次相遇的通信机会;
(5)若接受节点有足够的存储空间,则节点直接把内容段发送给对方节点,实现共享内容的分发和传播;否则,接收节点先进行缓存管理,即按重要性权重转换高粒度的内容段以腾出存储空间,然后进行数据传输;
(6)若节点还存在被设置了优先级的内容块,则跳转到步骤(4)进行处理;否则,断开当前链路,等待下一个通信和内容传输的机会。
2.如权利要求1所述机会网络环境下基于优先级和多粒度的内容共享方法,其特征在于在步骤(1)中,所述元数据信息包括但不限于节点相遇请求信息和内容声明信息。
3.如权利要求1所述机会网络环境下基于优先级和多粒度的内容共享方法,其特征在于在步骤(1)中,所述节点友谊度综合频率、长度、通讯机会的规律性和行为特征,友谊度由下式定义:
w ( i , j ) = 1 s p m ( i , j ) , s p m ( i , j ) = &Integral; t = 0 T f ( t ) d t T
其中,f(t)表示在时间t时,两个节点下一次相遇的还需要经过的时间,t表示到下一次相遇经过的时间,而节点进行相互通讯的时间可被记录后用于计算,在时间t,若两节点正在通讯中,则f(t)=0,否则,f(t)=tnext-t,这里tnext是节点si和sj下次相遇的时间,T是观察窗口,为用户选定的固定长度的滑动时间窗口,T默认值为7天,spm是社会压力度量,该值可被解释为推动“朋友”(即节点)相遇并分享其内容的一种社会压力,每一对节点间的友谊度w(i,j)被定义为spm值的倒数。
4.如权利要求1所述的机会网络环境下基于优先级和多粒度的内容共享方法,其特征在于在步骤(3)中,所述计算节点存储内容的优先级采用基于请求匹配度、内容粒度和随机扰动的综合计算方法,具体地,节点si和sj相遇并建立通信链路,对于存储在节点si中的某一内容段cont(sid,cid,le,content),在计算其优先级时分为三种情况计算:
(1)若cont可以响应属于sj的一个或多个请求,则cont的优先级由下式计算:
c o n t . p r = &Sigma; r e &Element; S j . R f d ( r e , c o n t ) * P , i f c o n t . c i d = r e . c i d , r e . s i d = s j
fd是公式定义的响应度,cont.pr表示cont的优先级,sj.Re为节点sj所产生的请求集合,le为粒度级别,内容段从si到sj的传输是该内容被传送到目标的最后一跳,故P>1是一个用于放大的因子,用于保证cont会以高概率进行传输,P的值默认设定为10;
(2)若cont可以响应存储在sj但并不是由其生成的一个或多个请求,则cont的优先级由下式计算:
c o n t . p r = &Sigma; r e &Element; S j . R f d ( r e , c o n t ) * r e . w , i f c o n t . c i d = r e . c i d , r e . s i d &NotEqual; s j , r e &Element; s j . R
sj.R是节点sj所存储的请求集合,re.w是请求的权重,该优先级的计算基于内容cont与存储在sj节点上所有的请求的可能匹配来进行计算;
(3)若cont无法应答存储在sj上的任何请求,则内容的优先级将以(1-γ)的概率被设置为0,以γ的概率设定为以下值:
c o n t . p r = w ( i , j ) c o n t . l e , i f c o n t . c i d &NotEqual; r e . c i d , r e &Element; s j . R
γ∈(0,1)是一个预定义的参数,默认值为0.1,该优先级综合考虑内容的粒度等级、节点间的友谊度以及内容交换的随机性扰动。
5.如权利要求1所述的机会网络环境下基于优先级和多粒度的内容共享方法,其特征在于在步骤(5)中,所述缓存管理采用基于内容重要性程度的降级和替换方法,且内容重要性程度综合了内容段的新鲜度和热度因素,具体地,内容段被存储在内容缓存区中,它们被组织成一个列表;该列表以重要性权重来进行排序,该值被定义为内容的“新鲜度”与“热度”的一个权衡,内容段cont的重要性权重被公式化定义为:
c o n t . i m p = T - ( n o w - c o n t . l s _ t i m e ) T * &alpha; + c o n t . n r m a x ( 1 , max _ r ) * ( 1 - &alpha; )
α∈(0,1)是一个平衡因子,默认值为0.5;T为用户定义的持续时间,now为当前时间,cont.ls_time为cont最后一次被请求时的时间,cont.nr是cont被请求的次数,max_r是存储在缓存列表的所有内容段的最大nr值;分子T、max(1,max_r)是为了使热度以及新鲜度两个指标进行归一化(Normalize),使其都落在[0,1]的值域之中,所有参数都由节点在本地记录并做相应更新,当缓存区满时,为了把内容段cont插入到节点的内容缓存区我们需要把内容段集合TS转换为低精度的内容,利用动态规划方法求解以下的线性规划问题,可获得TS集合:
最小化目标:Σc∈TSc.imp,
限制条件:Σc∈TSsized(c)≥cont.size,c1.imp≥c.imp,
其中si.C是si中所有内容段的集合,sized(c)为内容段c转变为低粒度后所释放出的空间;若hi为原粒度级别,lo<hi为目标粒度级别,则释放出的空间表示为sized(cont,hi,lo),这里仅允许一次降低一个粒度级别,故sized(c)实际代表sized(cont,cont.le,cont.le-1)。
CN201510385635.2A 2015-07-03 2015-07-03 机会网络环境下基于优先级和多粒度的内容共享方法 Pending CN104994004A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510385635.2A CN104994004A (zh) 2015-07-03 2015-07-03 机会网络环境下基于优先级和多粒度的内容共享方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510385635.2A CN104994004A (zh) 2015-07-03 2015-07-03 机会网络环境下基于优先级和多粒度的内容共享方法

Publications (1)

Publication Number Publication Date
CN104994004A true CN104994004A (zh) 2015-10-21

Family

ID=54305760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510385635.2A Pending CN104994004A (zh) 2015-07-03 2015-07-03 机会网络环境下基于优先级和多粒度的内容共享方法

Country Status (1)

Country Link
CN (1) CN104994004A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107949000A (zh) * 2017-12-06 2018-04-20 常熟理工学院 一种低延迟的机会网络实现方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6546422B1 (en) * 1998-07-02 2003-04-08 Nec Corporation Caching of network contents by packet relays that determine cache priority utilizing contents access frequency and metrics in their routing tables representing relaying path lengths
CN101636976A (zh) * 2006-12-08 2010-01-27 Iwics公司 用于多站点网络的增强数据传输协议
CN102299854A (zh) * 2011-09-06 2011-12-28 北京航空航天大学 一种面向机会网络环境的多目标路由决策系统
CN102421161A (zh) * 2012-01-04 2012-04-18 北京工商大学 Epidemic机制下基于优先级的机会网络路由算法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6546422B1 (en) * 1998-07-02 2003-04-08 Nec Corporation Caching of network contents by packet relays that determine cache priority utilizing contents access frequency and metrics in their routing tables representing relaying path lengths
CN101636976A (zh) * 2006-12-08 2010-01-27 Iwics公司 用于多站点网络的增强数据传输协议
CN102299854A (zh) * 2011-09-06 2011-12-28 北京航空航天大学 一种面向机会网络环境的多目标路由决策系统
CN102421161A (zh) * 2012-01-04 2012-04-18 北京工商大学 Epidemic机制下基于优先级的机会网络路由算法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
EYUPHAN BULUT 等: "Exploiting Friendship Relations for Efficient Routing in Mobile Social Networks", 《IEEE》 *
YONGXUAN LAI 等: "Multiple-resolution Content Sharing in Mobile Opportunistic Networks", 《WILEY ONLINE LIBRARY》 *
赖永炫 等: "机会传感器网络中基于优先级的查询分发和处理算法", 《通信学报》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107949000A (zh) * 2017-12-06 2018-04-20 常熟理工学院 一种低延迟的机会网络实现方法
CN107949000B (zh) * 2017-12-06 2020-08-04 常熟理工学院 一种低延迟的机会网络实现方法

Similar Documents

Publication Publication Date Title
Wei et al. A survey of social-aware routing protocols in delay tolerant networks: Applications, taxonomy and design-related issues
Li et al. MOPS: Providing content-based service in disruption-tolerant networks
Saha et al. SeeR: Simulated annealing-based routing in opportunistic mobile networks
Zhuo et al. Contact duration aware data replication in delay tolerant networks
Gao et al. Cooperative caching for efficient data access in disruption tolerant networks
Xia et al. PIS: A multi-dimensional routing protocol for socially-aware networking
Zhang et al. Social-aware data diffusion in delay tolerant manets
Allen et al. Exploiting user interest similarity and social links for micro-blog forwarding in mobile opportunistic networks
Radenkovic et al. Efficient and adaptive congestion control for heterogeneous delay-tolerant networks
Gao et al. Distributed maintenance of cache freshness in opportunistic mobile networks
Rango et al. Exploiting online and offline activity-based metrics for opportunistic forwarding
Ciobanu et al. Opportunistic dissemination using context-based data aggregation over interest spaces
Batabyal et al. Analysing social behaviour and message dissemination in human based delay tolerant network
Xiaoqiang et al. An in-network caching scheme based on betweenness and content popularity prediction in content-centric networking
Pitkanen et al. Searching for content in mobile DTNs
Lu et al. Geoopp: Geocasting for opportunistic networks
CN104994004A (zh) 机会网络环境下基于优先级和多粒度的内容共享方法
Peng et al. The virtue of patience: Offloading topical cellular content through opportunistic links
Mardham et al. Opportunistic distributed caching for mission-oriented delay-tolerant networks
de Moraes Modesto et al. Utility-gradient implicit cache coordination policy for information-centric ad-hoc vehicular networks
Oesch et al. Nation scale mobile ad hoc network for normally isolated topologies
Choksatid et al. An epidemic routing with low message exchange overhead for delay tolerant networks
Magaia et al. Repsys: A robust and distributed incentive scheme for in-network caching and dissemination in vehicular delay-tolerant networks
Yuan et al. Percolation-theoretic bounds on the cache size of nodes in mobile opportunistic networks
Islam et al. Evaluation of Congestion Aware Social Metrics for Centrality‐Based Routing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151021