一种基于社交关系的分布式缓存调度系统与方法

文档序号:8006474阅读:386来源:国知局
一种基于社交关系的分布式缓存调度系统与方法
【专利摘要】本发明涉及一种基于社交关系的分布式缓存调度系统,包括一安装在网络通信系统中的代理服务器,包括:社交关系计算模块、聚类模块、缓存服务器管理模块、请求管理模块和通信模块;社交关系计算模块根据用户的社会信息计算出用户间远近不同的社交关系;聚类模块对用户的社交关系进行聚类,将社交关系相近的用户聚类为相同的社会团体;请求管理模块用于创建请求、发送请求和处理请求;缓存服务器管理模块用于管理本地缓存服务器中所存储的资源,并根据需求对内容进行查找或进行标签的添加;通信模块用于实现代理服务器与用户之间的通信,代理服务器之间的通信以及代理服务器与缓存服务器之间的通信。
【专利说明】一种基于社交关系的分布式缓存调度系统与方法

【技术领域】
[0001] 本发明涉及网络通信领域中的内容分发技术,特别涉及一种基于社交关系的分布 式缓存调度系统与方法。

【背景技术】
[0002] 近年来,随着电脑数量的增加,智能手机和移动平板等设备的普及,网络流量产生 了爆炸式的增长。根据Cisco的官方资料统计显示:全球的IP流量在过去的5年中增加了 8倍;预计2016年,全球的IP流量将会达到1. 3泽它字节(ZB)。巨大的流量使当前网络面 临带宽紧张、网络传输效率低下等诸多问题。因此,缓存技术被引入以缓解现有网络面临的 流量压力问题。
[0003] 缓存技术主要分为两种:集中式缓存和分布式缓存。集中式缓存系统在处理成千 上万的用户请求时,会对缓存服务器产生较大的负载。因此,国内外运营商倾向于采用分布 式缓存系统来缓解当前网络压力,即将缓存服务器部署在靠近用户的网络边缘,并通过分 布式的调度方式实现缓存共享。当用户请求内容时,可以直接从距离用户最近的缓存服务 器中进行获取,而不需要去请求位于远端的源服务器。在分布式缓存系统中,全网用户的请 求由多个缓存服务器分散处理。因此,与集中式缓存服务器相比,分布式缓存系统中单个缓 存服务器中存储的资源相对有限。当用户请求网络资源时,如果本地缓存服务器中没有可 满足该请求的资源,而网络中其它缓存服务器存有相应的资源时,就需要使用缓存调度的 方法将其它缓存服务器中存储的内容调度到本地缓存服务器中,以满足本地用户的需求。 通过缓存调度,不仅提高了缓存服务器中内容的使用率,而且多个缓存服务器的协作也提 升了系统整体的缓存命中率。
[0004]另一方面,我们可以看到,当今网络中由用户产生的内容(UserGenerated Content,UGC)已经成为网络流量的重要组成部分。逐渐兴起的微博,人人等社交网络,已 经成为了UGC传播的主要媒介,并逐渐改变了人们使用网络的方式。虽然网络规模庞大,且 用户的关系复杂,但是用户之间往往具有一些共同的社会特征,比如相同的兴趣,相似的教 育背景,相同的工作经验,直接或间接的好友关系等等。
[0005]虽然缓存调度技术可以调度分布式缓存系统中的缓存内容,从而帮助解决网络流 量问题。但是,传统的缓存调度技术仍然属于粗放型的技术,仅仅依靠本地用户的局部特征 来预测未来的内容需求,很难满足用户重复性、复杂性和个性化的需求。国内外学者提出很 多的优化方案,但是这些方案尚且存在以下不足:1)依靠局部特征来优化网络,很难完全解 决以上提出的问题;2) -些方法仅仅考虑到用户社会属性的相似性来计算用户社交关系, 却没有考虑到社交关系的传递性;3)大部分方法仅仅考虑到对用户服务质量的提升,却没 有考虑到服务器的负载能力。
[0006]使用社交关系求解最优化问题的方法已经被广泛用于解决了社会问题、经济问题 和科学问题中,并取得了理想的效果。在分布式缓存系统中社交关系同样可以用来精准的 预测用户的行为和需求,并以此来优化缓存的调度。
[0007] 基于社交关系的缓存调度方法包括内容的调度和社交关系的建模两个关键问题。
[0008] 缓存调度方法将用户所需内容调度到靠近用户的网络边缘的缓存服务器中,当 用户请求相应的内容时,可以直接从附近的缓存服务器中取得相应内容,从而大大缩短了 用户获取内容的时间。在参考文献l"Z.Xu,Y.HuandLBhuyan,"EfficientServer CooperationMechanisminContentDeliveryNetwork,^inProc.IEEEInternational. Performance,Computing,andCommunicationsConference,2006(IPCCC2006)2006, pp. 433-440" 和参考文献 2 "J.M.ChenandL.D.Chou,"ActiveDispatchingSchemes forWebCachesinMobileNetworks,,'inProc.17thInternationalConferenceon AdvancedInformationNetworkingandApplications(AINA,03),2003" 中,研究者米用 对系统中缓存服务器进行聚类的方法。如图I所示,该方法将拓扑中距离相近的缓存服务 器聚类成簇,同一簇内的缓存服务器通过资源的共享与合作实现簇内缓存的调度。这一方 法中所涉及的缓存结构被称为双层的分布式缓存结构,其中的上层包含了所有的分布式缓 存服务器,下层则为缓存服务器聚类形成的簇。根据该方法,用户发起请求时,若本地的缓 存服务器没有可满足该请求的资源,则对簇内其它缓存服务器进行查找,匹配完成后,用户 可立刻接收到相应的内容;如果簇内所有缓存服务器中都没有满足该请求的内容,则请求 会转发给网络远端的源服务器。该方法既可以通过缓存的协作提高缓存的命中率,又可以 有效降低服务器的负载。此类方法的缺陷包括:对簇与簇之间的调度和全网的内容分发没 有任何的优化;用户所请求的资源很可能需要从本地以外的缓存服务器中进行调度,使得 该方法对于用户服务质量的提升并不明显。
[0009]国外学者SalvatoreScellato在参考文献 3 "S.ScellatoandC.Mascolo, "TrackGlobally,DeliverLocally:ImprovingContentDeliveryNetworksby TrackingGeographicSocialCascades,,'inProc.20thInternationalWorldWideWeb ConferenceCommittee(IW3C2),2011,pp. 457-466"中提出:利用从多媒体流中提取的地理 位置信息,来优化多媒体文件在网络缓存间的分发方式。该文献的研究者利用多媒体流量 在有限地理区域内的传播特征,来预测该多媒体文件在未来的传播时间、传播区域和传播 的广度。最后,根据预测结果,提前定制缓存部署策略以进行高效的内容分发。该方法着重 于对网络中热点内容所传播区域和将要传播区域的地理位置分布进行分析,而缺少对用户 参与网络活动及用户与用户间互动关系的分析。
[0010]参考文献 4 "K.Chard,S.Caton,0·RanaandD.S.Katz,"ASocialContent DeliveryNetworkforScientificCooperation:Vision,Design,andArchitecture,,'in Proc. 3rdInternationalWorkshoponDataIntensiveComputingintheClouds,2012, pp. 1058-1067"研究了社交网络平台所构建的社交关系网络,并将其覆盖在传统的内容分 发网络之上,构建重叠网。该架构被命名为社交内容分发网络(SocialContentDelivery Network,S⑶N),该结构通过引入社交关系来提高内容分发网络的可拓展性、可用性和高效 性,使得服务器可以满足网络高峰期的海量用户需求。图2为所述SCDN的架构图。存储服 务器除了对内容进行存储以外,还负责对网络信息进行采集。配置服务器则根据社交关系 对下层的内容分发网络进行综合的管理,包括:分发内容的选择、内容分发目的地的选择、 数据的发现和数据的传输等等。该方案有以下不足:(1)该方案所优化的目标为用户之间 信息的传输和内容在用户之间的共享,而并网络运营商所提供的内容;(2)该方案更加偏 向于处理和存储大型数据,用户需要网络内容时,采用从"好友"的缓存存储中进行提取的 方式,而并非将数据分发到本地的缓存服务器中。
[0011] 由于在大部分的社交网络中,网友间的社交关系和用户的地理位置信息是对用户 开放的。鉴于此,在参考文献 5 "X.Liu,S.Li,J.Zhang,H.HuangandΧ·Κ·Fan,"SCORE:A Social-AwareContentDistributionMethodforSocialNetworks,,'inProc.4th InternationalConferenceonMultimediaInformationNetworkingandSecurity, 2012,pp. 458-462"中,XiaodongLiu等作者提出了一种基于社会感知的内容分发方法。在 社交网络中大部分的电影、音乐等资源是由数量小但影响力大的用户所上传,所以该方法 中分发内容的选择是由影响力大的用户上传及下载的内容来决定,以用户地理位置聚类所 形成簇的中心作为部署缓存服务器的位置,在避开网络使用的高峰期的前提下,将系统将 内容提前分发到缓存服务器中。该方法旨在满足网络用户普遍的兴趣偏好,并提高具有普 遍偏好用户的内容获取速度。但是该方案缺少对用户喜好的个性化分析,无法满足不同地 区、不同时间和不同用户对网络资源的个性化喜好需求。
[0012] 在参考文献 6 "M.Kataoka,K.Toumura,H.Okita,J.YamamotoandT.Suzuki, "DistributedCacheSystemforLarge-ScaleNetworks,,'inProc.International Multi-ConferenceonComputingintheGlobalInformationTechnology(ICCGIJ 06), 2006,pp. 40-45"中提出了一种中央控制的缓存系统来管理网络中的分布式缓存服务器。对 于用户所请求的内容,只要网络中有任何一个缓存服务器中存有用户所需内容,中心管理 系统即将内容调度到距离用户近的缓存服务器中。该方法通过中心管理系统在缓存服务器 间进行资源的调度,可以有效地降低骨干网的流量压力和服务器负载。此类系统的缺陷包 括:中心管理系统承担着大量的计算和通信工作,随着网络内容的增长和缓存服务器数目 的不断增加,中心管理系统的负荷也越来越大,导致中央控制系统负载过重;而中心管理系 统的负载过重甚至崩溃将会导致整个网络无法运行。所以此类架构给网络稳定性带来很大 的隐患。


【发明内容】

[0013] 本发明的目的在于克服现有技术中的基于社交关系的分布式调度方法所存在的 缺陷,从而提供一种无需改变原有网络中分布式缓存系统的架构、适应性强、部署方便的分 布式缓存调度系统与方法。
[0014] 为了实现上述目的,本发明提供了一种基于社交关系的分布式缓存调度系统,包 括一能够安装在网络通信系统中的代理服务器,所述代理服务器包括:社交关系计算模块、 聚类模块、缓存服务器管理模块、请求管理模块和通信模块;其中,
[0015] 所述的社交关系计算模块根据用户包括兴趣爱好、教育背景、工作经验、用户偏 好、共同好友在内的社会信息计算出用户间远近不同的社交关系;
[0016] 所述的聚类模块对用户的社交关系进行聚类,将社交关系相近的用户聚类为相同 的社会团体;
[0017] 所述的请求管理模块用于创建请求、发送请求和处理请求;
[0018] 所述的缓存服务器管理模块用于管理本地缓存服务器中所存储的资源,并根据需 求对内容进行查找或进行标签的添加;所述缓存服务器属于所述的网络通信系统;
[0019] 所述的通信模块用于实现代理服务器与用户之间的通信,代理服务器之间的通信 以及代理服务器与缓存服务器之间的通信。
[0020] 上述技术方案中,所述的社交关系计算模块对用户的社会信息进行相关性分 析,将网络用户的社会关系进行量化包括:假设用户Vi和Vj为网络中两个用户,用户具 有包括兴趣爱好、教育背景、工作经验、用户偏好、共同好友在内的η个不同的社会属性, =Iv,·,,',···,〇,A ,则Vi和Vj的相似度t (Vi, Vj)表示为

【权利要求】
1. 一种基于社交关系的分布式缓存调度系统,其特征在于,包括一能够安装在网络通 信系统中的代理服务器,所述代理服务器包括:社交关系计算模块、聚类模块、缓存服务器 管理模块、请求管理模块和通信模块;其中, 所述的社交关系计算模块根据用户包括兴趣爱好、教育背景、工作经验、用户偏好、共 同好友在内的社会信息计算出用户间远近不同的社交关系; 所述的聚类模块对用户的社交关系进行聚类,将社交关系相近的用户聚类为相同的社 会团体; 所述的请求管理模块用于创建请求、发送请求和处理请求; 所述的缓存服务器管理模块用于管理本地缓存服务器中所存储的资源,并根据需求对 内容进行查找或进行标签的添加;所述缓存服务器属于所述的网络通信系统; 所述的通信模块用于实现代理服务器与用户之间的通信,代理服务器之间的通信W及 代理服务器与缓存服务器之间的通信。
2. 根据权利要求1所述的基于社交关系的分布式缓存调度系统,其特征在于,所述的 社交关系计算模块对用户的社会信息进行相关性分析,将网络用户的社会关系进行量化包 括:假设用户Vj.和Vi为网络中两个用户,用户具有包括兴趣爱好、教育背景、工作经验、用户 偏好、共同好友在内的11个不同的社会属性,^,=知^;,...,^"),节^.=("八^...,"^。),则乂冲 Vi的相似度t(Vi,Vj)表示为
3. 根据权利要求1所述的基于社交关系的分布式缓存调度系统,其特征在于,所述聚 类模块对用户的社交关系进行聚类的方法包括:划分聚类算法,层次聚类算法,基于密度的 聚类算法,基于网格的聚类算法,基于模型的聚类算法中的任意一种。
4. 根据权利要求1所述的基于社交关系的分布式缓存调度系统,其特征在于,所述的 请求管理模块对于不同的请求有着不同的响应;(1)本地的缓存服务器中存有用户所需内 容时;如果请求来自于本地用户,则直接响应给用户;如果请求来自于其它代理服务器,贝U 将内容响应给其它代理服务器;(2)本地的缓存服务器中没有请求对应的内容时;当收到 请求后,向其它代理服务器发送请求。
5. 基于权利要求1-4之一所述的基于社交关系的分布式缓存调度系统所实现的方法, 包括: 步骤1)、代理服务器通过对全网终端用户之间的包括兴趣爱好、教育背景、工作经验、 用户偏好和共同好友在内的信息计算用户的社交关系,并使用聚类算法将社交关系相近的 用户聚类成为社会团体;在聚类的过程中需要为用户添加其所属社会团体的标签; 步骤2)、代理服务器接收到来自于本地用户或代理服务器的内容请求后,根据该内容 请求查找本地缓存服务器中是否保存有对应的内容,如果本地缓存服务器中有相应内容, 响应请求者的请求,并转到步骤4);否则,代理服务器将该内容请求转发给其他代理服务 器,然后执行步骤3);
步骤3)、其他代理服务器若第一次收到所述内容请求,则执行步骤2)中所述操作,若 网络中的其他代理服务器均已收到过所述内容请求,则由请求的发起者向源服务器发起内 容请求; 步骤4 )、内容请求结束后,内容请求者所需求的内容会被存储在缓存服务器中,代理服 务器为该内容添加请求用户所在的社会团体的标签; 步骤5)、全网的代理服务器将本地用户的社会团体标签与步骤4)中添加标签的内容 的社会团体标签进行比较,如果某一个代理服务器本地所有的用户都不属于该内容的社会 团体,则结束查找;否则,代理服务器会对自己发送一个请求,并转到步骤2),直到所有代 理服务器都结束查找,内容分发完成。
【文档编号】H04L29/06GK104426979SQ201310397513
【公开日】2015年3月18日 申请日期:2013年9月4日 优先权日:2013年9月4日
【发明者】覃毅芳, 周旭, 杨磊, 慈松, 谭红艳 申请人:中国科学院声学研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1