首页> 中国专利> 一种基于大规模网络节点的内容分发方法及系统

一种基于大规模网络节点的内容分发方法及系统

摘要

本发明公开了一种基于大规模网络节点的内容分发方法及系统,所述方法首先根据所要分发的内容,将存储有该内容的节点作为源节点,存入激活节点集合中,然后查找各个激活节点的所有相邻节点,获取各相邻节点的度的信息,并对相邻节点进行划分,然后根据相邻节点的划分结果,优先推送到度数较大的节点,并将节点放入激活节点集合中,然后重复执行上述的两个步骤,直到所有节点全部推送完毕,或者满足用户设定的某一截止条件为止。本发明能够快速的遍历所有节点,在每个节点每次推送的节点数量有限的约束下,提高千万量级及其以上节点时内容分发的效率,以达到高效、快速地推送网络信息的目的。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-10-27

    未缴年费专利权终止 IPC(主分类):H04L29/08 专利号:ZL2015106909506 申请日:20151022 授权公告日:20190806

    专利权的终止

  • 2019-08-06

    授权

    授权

  • 2017-05-31

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20151022

    实质审查的生效

  • 2017-05-03

    公开

    公开

说明书

技术领域

本发明涉及网络技术和通信技术领域,尤其涉及一种基于大规模网络节点的内容分发方法及系统。

背景技术

随着网络技术和通信技术的不断发展,智能路由器和业务服务器的规模不断增加,可以为用户提供的服务种类也不断丰富,包括音频服务、视频服务、多媒体服务、新闻提供、搜索服务、台风预报、海啸警报、灾难通知、交通情况、舆情传播等。那些对实时性要求低的服务,其提供方式一般是由用户主动去获取的,即用户使用连接在因特网上的各类终端,主动与因特网上的特定业务服务器建立连接,向业务服务器发送特定的业务请求,然后从业务服务器得到响应,该响应中包含了用户所需要的各类信息。但是,这样的提供方式对很多服务来说是不适合的,或者是过于低效的,比如台风预报、海啸警报、灾难通知等。对于这些实时性要求很高的服务,用户希望业务服务器可以主动推送给用户,而不需要等到用户主动去访问业务服务器来获取,因为等待用户的主动访问会影响预报信息的及时性。其中,信息传播速度是一个关键因素。

另一方面,用户对信息传播的及时性和网络服务质量的要求越来越高,如何提升寻址速度和降低服务拒绝率都是影响用户体验的重要问题。其中,快速内容分发和就近提供服务是一种有效的解决方案。内容分发的目的是通过将内容发布到最接近用户的网络边缘,使用户可以就近取得所需的内容。具体而言,通过应用分布式缓存、负载均衡和流量工程等技术,提供各种内容分布和服务发送的功能,包括动态地部署网络内容到边缘,根据网络内容处理通信量,将访问请求转发给最近的服务器,使得用户能以最快的速度,从最接近用户的地方获得所需的内容,从而缩短服务提供点与用户之间的网络距离,提高响应速度和服务质量,减少延迟、解决网络拥挤等问题。简而言之,为了降低网络资源的消耗和减轻用户查找信息的负担,可以将各种信息以文件形式预先推送到作为分布式缓存的智能路由器或业务服务器上。其中,信息推送速度是一个重要因素。

此外,在自组织网络中,网络拓扑的动态变化引起的路由更新分组需要快速传播到全网。路由更新分组在传播的过程中还会涉及到路由计算和路由表更新。如果能快速的传播路由更新分组,可以有效地降低拓扑变化对网络的影响,减少丢包,提高网络利用率,改善用户体验。

因此,针对大规模网络节点,有必要提供更高效和更快速的信息推送方法,以解决现有技术所存在的内容分发效率低和更新速度慢等问题。

发明内容

本发明目的在于,为克服上述问题,本发明提供一种针对大规模网络节点的信息推送方法及系统。

为了实现上述方法,本发明提供了一种基于大规模网络节点的内容分发方法,所述方法包含:

步骤101)根据所要分发的内容,将存储有该内容的节点作为源节点,并将源节点放入激活节点集合中;其中,所述激活节点集合是指所有激活节点组成的集合,所述的激活节点是指节点本身已完成内容推送且相邻节点中仍存在未推送消息的节点。

步骤102)查找各个激活节点的所有相邻节点,并获取各相邻节点的度的信息,并对相邻节点依据获取的度信息进行划分。

步骤103)根据相邻节点的划分结果,优先将所要分发的内容推送到度数较大的节点,并将接收到推送内容的节点放入激活节点集合中。

步骤104)重复执行步骤102)和步骤103),直到所有节点全部推送完毕,或者满足用户设定的截止条件为止。

可选的,上述激活节点集合中的节点采用并发推送的方式向各自的相邻节点推送所要分发的内容。

上述步骤102)进一步包含:

步骤102-1)给定节点的度的阈值d0

步骤102-2)将相邻节点的度大于等于d0的节点划分为第一类,将相邻节点的度小于d0的节点划分为第二类。

优选的,在每个节点每次进行内容推送的节点数量不大于3的约束条件下,所述d0取值为大于1且小于7的自然数。

上述步骤103)进一步包括以下具体步骤:

步骤103-1)检查第一类相邻节点集合中的节点数目,若大于等于单个推送消息限制的节点数P0,则从第一类相邻节点结合中选择P0个相邻节点进行内容推送;将接收到推送内容的节点从第一类相邻节点结合中取出放入激活节点集合中;转入步骤103-3)。

步骤103-2)检查第一类相邻节点集合中的节点数目,若小于单个推送消息限制的节点数P0,则对所有的相邻节点进行内容推送,推送的节点数量为P1;检查第二类相邻节点集合中的节点数目,从中选择最多“P0-P1”个相邻节点进行内容推送;将接收到推送内容的节点从第一类相邻节点集合和第二类相邻节点集合中取出后放入激活节点集合中。

步骤103-3)再次检查第一类相邻节点集合和第二类相邻节点集合,若都为空,则将完成推送的节点从激活节点集合中删除。

上述步骤103-1)和步骤103-2)均随机选择推送节点。

此外,本发明提供了一种基于大规模网络节点的内容分发系统,所述系统包含:

激活节点集合存储模块,用于根据所要分发的内容,将存储有该内容的节点作为源节点,放入激活节点集合中;其中,激活节点集合是指所有激活节点组成的集合,所述的激活节点是指节点本身已完成内容推送,相邻节点中仍存在未推送消息的节点。

划分模块,用于查找各个激活节点的所有相邻节点,并获取各相邻节点的度的信息,并对相邻节点依据获取的度的信息进行划分。

推送处理模块,用于根据相邻节点的划分结果,优先将所要分发的内容推送到度数较大的节点,并将接收到推送内容的节点放入激活节点集合中。

检测模块,用于检测所有激活节点集合中的节点是否均完成了推送或者是否满足用户设定的推送截止条件,如果没有满足上述两个条件中的任意一个则重复执行划分模块和推送处理模块直至满足两个条件中的一个。

可选的,上述激活节点集合中的节点采用并发推送的方式向各自的相邻节点推送所要分发的内容。

进一步可选的,上述划分模块进一步包含:

阈值设置子模块,用于给定节点的度的阈值d0;和分类子模块,用于将相邻节点的度大于等于d0的节点划分为第一类,将相邻节点的度小于d0的节点划分为第二类。

上述推送处理模块进一步包括:

第一处理子模块,用于检查第一类相邻节点集合中的节点数目,若大于等于单个推送消息限制的节点数P0,则从第一类相邻节点结合中选择P0个相邻节点进行内容推送。

第二处理子模块,用于检查第一类相邻节点集合中的节点数目,若小于单个推送消息限制的节点数P0,则对所有的相邻节点进行内容推送,推送的节点数量为P1

第三处理子模块,用于检查第二类相邻节点集合中的节点数目,从中选择最多“P0-P1”个相邻节点进行内容推送。

第四处理子模块,用于将接收到推送内容节点从第一类相邻节点集合和第二类相邻节点集合中取出并放入激活节点集合中。

第五处理子模块,用于再次检查第一类相邻节点集合和第二类相邻节点集合,若都为空,则将完成推送的节点从激活节点集合中删除。

上述第一处理模块、第二处理模块和第三处理模块均随机选择推送节点。

本发明的优点在于:采用本发明的基于大规模网络节点的内容快速分发方法,能够提高当存在大量节点时分发内容的效率。即本发明的技术方案在每个节点每次推送的节点数量有限的约束下,提高千万量级及其以上节点时分发内容的效率。

附图说明

图1是本发明的基于大规模网络节点的内容快速分发方法的流程示意图;

图2是本发明实施例提供的具体的基于大规模网络节点的内容快速分发方法的流程图;

图3为实现本发明内容分发方法的对应的系统组成框图,即内容分发子系统组成框图。

具体实施方式

以下结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1和图2是本发明的基于大规模网络节点的内容快速分发方法的流程图,该方法包括:

步骤一,根据所要分发的内容,找到存储有该内容的节点,作为源节点,放入激活节点集合中;

步骤二,查找各个激活节点的所有相邻节点以及各节点的度的信息,并对相邻节点进行划分;

步骤三,根据相邻节点的划分结果,优先推送到度数较大的节点,并将接收到推送内容的节点放入激活节点集合中;

步骤四,重复执行步骤二和步骤三,直到所有节点全部推送完毕,或者满足用户设定的某一截止条件为止。

其中,所述步骤一中的激活节点集合是指所有激活节点组成的集合,所述的激活节点是指节点本身已完成内容推送,而相邻节点中仍存在未推送消息的节点。

优选地,在所述步骤一中所有在激活节点集合中的节点是并发推送的。

具体地,在一种具体实施方式中,步骤二首先从激活节点中获取所有相邻节点的信息,从相邻节点中筛选出未推送过消息的节点,然后根据给定节点的度的阈值d0,将节点的度大于等于d0的节点划分为第一类,将节点的度小于d0的节点划分为第二类。

在一种具体的实施方式中,步骤二中所述的对相邻节点的筛选可以通过在节点的属性中增加一个属性,用于标识当前节点是否已被推送过当前消息。

在筛选出未推送消息的节点后,还要根据给定节点的度的阈值d0,对节点进行划分。

具体来说,需要首先确定节点的度的阈值d0。该阈值可以根据不同的网络环境自动设置或由技术人员预先设置。比如:该阈值d0可以设置为6。

具体地,在所述步骤三中进一步包括以下具体步骤:

检查第一类相邻节点集合中的节点数目,若大于等于单个推送消息限制P0,则从中选择P0个相邻节点进行内容推送;

若小于单个推送消息限制P0,则对所有的相邻节点进行内容推送,推送的节点数量为P1

检查第二类相邻节点集合中的节点数目,从中选择最多(P0-P1)个相邻节点进行内容推送;

将接收到推送内容的相邻节点从第一类相邻节点集合和第二类相邻节点集合中取出,放入激活节点集合中;

再次检查第一类相邻节点集合和第二类相邻节点集合,若都为空,则将该节点从激活节点集合中删除。

其中,在一种具体实施方式中,单个推送消息限制P0是由网络环境的硬件限制所决定的,或者也可以由技术人员预先进行设置。比如:每个节点每次进行内容推送的节点数量为2。

步骤三中所述推送节点的选择优选但不限于随机选择。比如:可以对一类相邻节点和二类相邻节点按照度的大小进行排序,选择推送节点时可以按照度的大小从大到小的顺序进行推送。

具体地,步骤四中所述的用户设定的截止条件由技术人员设置。比如:截止条件可以设置为遍历的节点数达到1400万。

仿真验证结果表明,如果P0是有限的,而且节点的度分布是泊松分布、幂分布、不规则分布等,那么本发明中所提议方法的平均推送速度都超过了现有洪泛方法的平均推送速度,而且在每个节点每次进行内容推送的节点数量不大于3的约束条件下,在理想的拓扑结构中,阈值d0为6就已经接近并发式推送速度的上限,这个阈值无需再大了。

如图3所示,本发明提供了一种基于大规模网络节点的内容分发系统,所述系统包含:

激活节点集合存储模块,用于根据所要分发的内容,将存储有该内容的节点作为源节点,放入激活节点集合中;其中,激活节点集合是指所有激活节点组成的集合,所述的激活节点是指节点本身已完成内容推送,相邻节点中仍存在未推送消息的节点。

划分模块,用于查找各个激活节点的所有相邻节点,并获取各相邻节点的度的信息,并对相邻节点依据获取的度的信息进行划分。

推送处理模块,用于根据相邻节点的划分结果,优先将所要分发的内容推送到度数较大的节点,并将接收到推送内容的节点放入激活节点集合中。

检测模块,用于检测所有激活节点集合中的节点是否均完成了推送或者是否满足用户设定的推送截止条件,如果没有满足上述两个条件中的任意一个则重复执行划分模块和推送处理模块直至满足两个条件中的一个。

可选的,上述激活节点集合中的节点采用并发推送的方式向各自的相邻节点推送所要分发的内容。

进一步可选的,上述划分模块进一步包含:

阈值设置子模块,用于给定节点的度的阈值d0;和分类子模块,用于将相邻节点的度大于等于d0的节点划分为第一类,将相邻节点的度小于d0的节点划分为第二类。

上述推送处理模块进一步包括:

第一处理子模块,用于检查第一类相邻节点集合中的节点数目,若大于等于单个推送消息限制的节点数P0,则从第一类相邻节点结合中选择P0个相邻节点进行内容推送。

第二处理子模块,用于检查第一类相邻节点集合中的节点数目,若小于单个推送消息限制的节点数P0,则对所有的相邻节点进行内容推送,推送的节点数量为P1

第三处理子模块,用于检查第二类相邻节点集合中的节点数目,从中选择最多“P0-P1”个相邻节点进行内容推送。

第四处理子模块,用于将接收到推送内容的节点从第一类相邻节点集合和第二类相邻节点集合中取出并放入激活节点集合中。

第五处理子模块,用于再次检查第一类相邻节点集合和第二类相邻节点集合,若都为空,则将完成推送的节点从激活节点集合中删除。

上述第一处理模块、第二处理模块和第三处理模块均随机选择推送节点。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号