CN101710904A - P2p流量优化方法及其系统 - Google Patents
P2p流量优化方法及其系统 Download PDFInfo
- Publication number
- CN101710904A CN101710904A CN200910242797A CN200910242797A CN101710904A CN 101710904 A CN101710904 A CN 101710904A CN 200910242797 A CN200910242797 A CN 200910242797A CN 200910242797 A CN200910242797 A CN 200910242797A CN 101710904 A CN101710904 A CN 101710904A
- Authority
- CN
- China
- Prior art keywords
- node
- network
- neighbor node
- candidate collection
- neighbor
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及P2P流量优化方法及其系统,方法包括:步骤1,获得网络拓扑和网络状态,根据网络拓扑构造覆盖网络,初始时由应用文件的源节点的邻居节点请求数据;步骤2,节点接收到请求后,对节点已有的数据块进行编码,生成编码块和全局编码系数,将编码块和全局编码系数封装成数据包发送给请求的节点;步骤3,节点接收到请求的数据包,获得全局编码系数,将全局编码系数添加到节点的全局编码系数矩阵中,将全局编码系数矩阵发送给邻居节点;步骤4,节点在请求获得应用文件数据时,根据网络状态、节点的全局编码系数矩阵和邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向下载点发送请求。本发明能够减少网络间数据流量节约带宽资源。
Description
技术领域
本发明涉及网络编码领域,尤其涉及P2P流量优化方法及其系统。
背景技术
P2P技术已经被广泛地应用于文件共享、实时媒体流分发等各类网络应用中。由于P2P技术具有可扩展性、高性价比、健壮性、负载均衡等众多优点,并且终端能力的增强和网络带宽的增加使得P2P技术能更加充分利用网络终端的计算能力、存储能力以及传输能力,从而使P2P应用吸引了越来越多的互联网用户。如今P2P应用产生的流量已成为网络流量的主要部分。测量数据显示,P2P流量现已占用了50%以上的网络带宽。
造成网络流量巨大消耗的主要原因在于网络资源利用率低。P2P网络是建立在应用层的一个覆盖(Overlay)网络,构建时大都不考虑底层的拓扑结构,因而造成覆盖网络结构及路由的低效性。举例而言,同属于一个AS域的节点在覆盖网中可能并不直接接邻,而是通过若干其它AS(AutonomousSystem,自治系统)域中的节点相连,这样既影响应用程序的性能,还会占用很多域间带宽。对于网络运营商而言,问题是包括:(1)P2P流量的动态性使得网络运营商难以管理和进行有效的流量工程;(2)P2P流量往往多次跨越网络边界,可能导致域间流量成本增加,或是引发对等AS节点之间的流量不平衡,从而潜在的违反了运营商之间的对等条约。除上述两点外,域间流量的增加会导致更严重的网络拥塞。测量表明,超过50%的网络瓶颈链路是ISP之间的域间链路,而非ISP内部骨干网的链路。
网络运营商和网络管理者希望尽量减少网络之间或ISP之间的P2P流量,使得P2P流量不过度消耗域间带宽。目前解决P2P应用占据大量带宽这一现状的主要办法包括:(1)P2P应用程序通过探测获取粗粒度的拓扑知识,并依此建立拓扑位置感知的覆盖网络;(2)网络运营商在边缘网络部署Cache对P2P流量进行缓存;(3)网络运营商和P2P内容提供商进行合作,由网络运营商提供网络位置和状态信息服务,而P2P应用程序通过该服务来优化邻居节点选择和下载决策。
随着网络运营商为P2P内容提供商提供网络位置和状态信息服务,网络的拓扑和状态信息的准确度得到了提高,从而由拓扑位置感知技术带来的P2P流量本地化效应将达到其极限能力。但在传统的P2P数据传输模式下,P2P节点仅能依靠局部信息做出数据下载决策,如local rarest下载策略,这可能导致网络中的数据块分布不均匀。因此,传统的数据传输模式限制了P2P流量本地化程度的进一步提升。若在P2P数据传输时采用网络编码则可以解决该问题,能够大幅降低域间流量。
网络编码改变了传统网络中路由器或网络中间节点简单的数据转发模式,中间节点不仅接收、复制并转发数据包,还可以编码数据包。在P2P中应用网络编码,网络中传输的数据块不再是原始数据块,而是对多个原始数据块进行随机编码后的编码数据块,接收端在接收到足够数量的数据包后可解码出原始数据。网络编码已经部分用于P2P内容传输和P2P流媒体应用,它的优点主要在于能够简化传统的数据块调度算法,从而加速数据的分发,很好地适应网络的动态性,解决由于部分节点离开导致的最后一块无法下载的问题。但是,网络编码也会增加节点的计算量,这也是基于网络编码的P2P应用迟迟得不到广泛应用的原因。
发明内容
为解决上述问题,本发明提供了P2P流量优化方法及其系统,能够减少网络间数据流量节约带宽资源。
本发明公开了一种P2P流量优化方法,包括:
步骤1,获得网络拓扑和网络状态,根据所述网络拓扑构造覆盖网络,所述覆盖网络中初始时由应用文件的源节点的邻居节点向所述源节点请求数据;
步骤2,覆盖网络中节点接收到发送给自身的请求后,利用随机网络编码对所述节点已有的数据块进行编码,生成编码块和所述编码块对应的全局编码系数,将所述编码块和所述全局编码系数封装成数据包发送给请求的节点;
步骤3,覆盖网络中节点接收到请求的数据包,获得所述数据包中的全局编码系数,将所述全局编码系数添加到所述节点的全局编码系数矩阵中,所述节点将所述全局编码系数矩阵发送给邻居节点;
步骤4,覆盖网络中节点在请求获得应用文件的数据时,根据所述网络状态、所述节点的全局编码系数矩阵和所述节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向所述下载点发送请求。
所述步骤4进一步为,
步骤21,对于节点的每个邻居节点,根据网络状态确定所述节点的邻居节点带宽是否已被占满,如果是,则忽略所述邻居节点,否则,计算如下公式的值,
其中,A(X)为所述节点的全局编码系数矩阵,A(Y)为所述邻居节点的全局编码系数矩阵, 为A(X)和A(Y)的并置,r[]表示求矩阵的秩;
步骤22,根据所得值确定是否将邻居节点加入候选邻居集合;
步骤23,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
所述步骤22进一步为,
步骤31,如果所得值等于0,则忽略所得值对应的邻居节点;
步骤32,如果所得值不等于0,则判断所得值是否小于等于所述节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略所述邻居节点,否则,将所述邻居节点加入候选集合。
所述步骤23进一步为,
步骤41,从候选集合中选择同所述节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的节点,则从所述候选集合中选择同所述节点最短自治系统跳数的邻居节点为下载点,并发送请求;
步骤42,如果候选集合为空,则放弃本次下载尝试。
所述步骤1中获得网络拓扑和网络状态进一步为,
步骤51,通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
每个所述节点对应一个网络坐标,
所述步骤23进一步为,
步骤61,从候选集合中选择同所述节点网络坐标的欧式距离最近的邻居节点为下载点;
步骤62,如果候选集合为空,则放弃本次下载尝试。
所述步骤23进一步为,
步骤71,由位置服务对请求应用文件的源节点同候选集合中邻居节点的网络距离进行排序,所述节点按排序选择下载点;
步骤72,如果候选集合为空,则放弃本次下载尝试。
所述步骤23进一步为,
步骤81,节点通过主动探测的方式获取自身到候选集合中邻居节点的延迟信息,选择延迟最小的邻居节点作为下载点;
步骤82,如果候选集合为空,则放弃本次下载尝试。本发明还公开了一种P2P流量优化系统,包括初始化模块和节点:
所述初始化模块,用于获得网络拓扑和网络状态,根据所述网络拓扑构造覆盖网络,并在初始时,仅允许应用文件的源节点的邻居节点向所述源节点请求数据;
所述节点包括:
请求响应模块,用于在节点接收到发送给自身的请求后,利用随机网络编码对所属节点已有的数据块进行编码,生成编码块和所述编码块对应的全局编码系数,将所述编码块和所述全局编码系数封装成数据包发送给请求的节点;
系数添加模块,用于在节点接收到请求的数据包,获得所述数据包中的全局编码系数,将所述全局编码系数添加到所述节点的全局编码系数矩阵中,并将所述全局编码系数矩阵发送给邻居节点;
下载选择模块,用于在节点请求获得应用文件的数据时,根据所述网络状态、所述节点的全局编码系数矩阵和所述节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向所述下载点发送请求。
下载选择模块进一步包括,
数值计算子模块,用于对于节点的每个邻居节点,根据网络状态确定所述节点的邻居节点带宽是否已被占满,如果是,则忽略所述邻居节点,否则,计算如下公式的值,
其中,A(X)为所述节点的全局编码系数矩阵,A(Y)为所述邻居节点的全局编码系数矩阵, 为A(X)和A(Y)的并置,r[]表示求矩阵的秩;
候选集合生成子模块,用于根据所得值确定是否将邻居节点加入候选邻居集合;
下载点确定子模块,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
所述候选集合生成子模块进一步用于判断如果所得值等于0,则忽略所得值对应的邻居节点;如果所得值不等于0,则判断所得值是否小于等于所述节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略所述邻居节点,否则,将所述邻居节点加入候选集合。
所述下载点确定子模块进一步用于从候选集合中选择同所述节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的节点,则从所述候选集合中选择同所述节点最短自治系统跳数的邻居节点为下载点,并发送请求;如果候选集合为空,则放弃本次下载尝试。
所述初始化模块在获得网络拓扑和网络状态时进一步用于通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
每个所述节点对应一个网络坐标,
所述下载点确定子模块进一步用于从候选集合中选择同所述节点网络坐标的欧式距离最近的邻居节点为下载点;如果候选集合为空,则放弃本次下载尝试。
所述系统还包括位置服务器,
所述位置服务器用于对接收到的请求应用文件的源节点同候选集合中邻居节点的网络距离进行排序,返回排序结果;
所述下载点确定子模块进一步用于向位置服务器发送请求应用文件的源节点和候选集合中邻居节点,按排序结果选择下载点;如果候选集合为空,则放弃本次下载尝试。
所述下载点确定子模块进一步用于通过主动探测的方式获取自身到候选集合中邻居节点的延迟信息,选择延迟最小的邻居节点作为下载点;如果候选集合为空,则放弃本次下载尝试。
本发明的有益效果是通过在邻居节点间交互全局编码系数矩阵和利用位置感知技术,能够选择更优的邻居节点作为下载点,进而减少网络中数据流量;通过网络编码能使得数据块在网络中的分布更随机和均匀;通过位置感知技术,P2P节点能够以较高的概率从邻居节点发现并下载对自己有用的数据块,从而有效地优化P2P流量;通过优选同一个AS中的邻居节点为下载点,能够减少AS间的流量,节省带宽资源。
附图说明
图1是本发明P2P流量优化方法流程图;
图2是本发明P2P流量优化方法具体实施方式的流程图;
图3(a)是现有技术中随机下载决策的P2P流量示意图,图3(b)是现有技术中本地最稀缺下载决策的P2P流量示意图,图3(c)是本发明的P2P流量示意图;
图4是本发明的方法同本地稀缺优先的效果比较图;
图5是本发明的P2P流量优化系统结构图;
图6是本发明节点的结构图。
具体实施方式
下面结合附图,对本发明做进一步的详细描述。
本发明的P2P流量优化方法流程如图1所示。
步骤S100,获得网络拓扑和网络状态,根据该网络拓扑构造覆盖网络,覆盖网络中节点初始时向应用文件的源节点请求数据。
通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
步骤S200,覆盖网络中节点接收到发送给自身的请求后,利用随机网络编码对该节点已有的数据块进行编码,生成编码块和该编码块对应的全局编码系数,将该编码块和该全局编码系数封装成数据包发送给请求的节点。
随机网络编码具体为覆盖网络中节点接收到发送给自身的数据块请求后,随机选择m个自己拥有的编码数据块b1,b2,…,bm,并随机生成m个局部编码系数c1,c2,…,cm,生成编码数据块b=c1×b1+c2×b2+…+cm×bm,并计算全局编码系数
其中,(gi1,gi2,...,gin)是编码数据块bi中包含的全局编码系数,n是原始文件划分的总数据块个数。节点然后将编码块b和该编码块对应的全局编码系数g封装成数据包发送给请求的节点。
步骤S300,覆盖网络中节点接收到请求的数据包,获得该数据包中的全局编码系数,将该全局编码系数添加到该节点的全局编码系数矩阵中,该节点将该全局编码系数矩阵发送给邻居节点。
具体实施方式中,节点周期性的将自身的全局编码系数矩阵发送给该节点的邻居节点。
步骤S400,覆盖网络中节点在请求获得应用文件的数据时,根据网络状态、该节点的全局编码系数矩阵和该节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向该下载点发送请求。
较佳的,所述步骤S400进一步为,
步骤S410,对于节点的每个邻居节点,根据网络状态确定该节点的邻居节点带宽是否已被占满,如果是,则忽略该邻居节点,否则,计算
的值,其中,A(X)为该节点的编码系数矩阵,A(Y)为该邻居节点的编码系数矩阵,
步骤S420,根据所得值决定是否将该邻居节点加入候选集合。
如果所得值等于0,则忽略所得值对应的邻居节点;
如果所得值不等于0,则判断所得值是否小于等于该节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略该邻居节点,否则,将该邻居节点加入候选集合;
步骤S430,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
从候选集合中选择同该节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的邻居节点,则从候选集合中选择同该节点最短自治系统跳数的邻居节点为下载点,并发送请求。
如果候选集合为空,则放弃本次下载尝试。
除了基于自治系统的位置感知技术,节点还可以依据其它的位置感知技术来判断两个节点的网络距离远近。
根据IP前缀匹配的方式,节点将与自身的IP地址具有最长前缀匹配的节点认为是与自己网络距离最近的节点。
基于网络坐标的方式,网络坐标系统由第三方提供,每个节点将被赋予一个网络坐标,利用两个坐标节点之间的欧氏距离来近似两个节点之间的网络距离。从而,当需要比较两对节点之间的网络距离时,利用坐标之间的欧氏距离大小进行比较。
基于运营商提供的位置服务,当一个节点需要进行下载点决策时,将源节点和目标候选节点发送给运营商提供的位置服务,由该位置服务来决定源节点和这组目标候选节点之间的网络距离排序,并将排序结构返回给请求节点。请求节点根据返回结果选择下载点。
基于节点自身的探测,节点可以通过主动探测的方式获取自身到一组候选目标节点之间的延迟信息,并依据延迟信息对候选目标节点进行排序,从而选择延迟最小的节点作为下载点。
本发明P2P流量优化方法具体实施方式的流程如图2所示。
步骤S201,利用网络拓扑和网络状态构建拓扑位置感知的覆盖网络。
在一个节点加入网络时,以概率p选择网络中已有的与该节点位于同一自治系统的节点作为邻居节点,以概率1-p选择与该节点不属于同一自治系统的节点作为邻居节点。通过控制类似Tracker实体的初始邻居节点分配、切换邻居节点时的选择算法、以及ISP的proxy-tracker的邻居节点分配算法来实现。
步骤S202,覆盖网络中节点基于PULL模式的网络编码数据传输模式,初始时由源节点的邻居向应用文件的源节点请求数据。
覆盖网络中节点接收到发送给自身的请求后,利用随机网络编码对该节点已有的数据块进行编码,生成编码块和该编码块对应的全局编码系数,将该编码块和该全局编码系数封装成数据包发送给请求的节点。
步骤S203,覆盖网络中节点接收到请求的数据包,获得该数据包对应的全局编码系数,将该全局编码系数添加到该节点的全局编码系数矩阵中,该节点将该全局编码系数矩阵定期发送给邻居节点。
步骤S204,当节点要请求数据时,对于该节点的每个邻居节点,根据网络状态确定该节点的邻居节点带宽是否已被占满,如果是,则忽略该邻居节点,否则,计算
的值,其中,A(X)为该节点的编码系数矩阵,A(Y)为该邻居节点的编码系数矩阵,
步骤S205,根据计算的值,选择邻居节点,组成候选集合。
如果
则表示邻居节点的数据块对节点无用,均是线性相关的,故略过该节点。
如果
则表示邻居节点可对自身数据通过k次随机编码生成k个编码块,该k个数据块将以较大的概率和节点已有的数据块线性无关。邻居节点和该节点之间正在传输的数据块个数为q,则如果k≤q,表示节点已经向邻居节点请求了至少k个数据块了,新的请求将得不到有用数据,故略过该邻居节点;如果k>q,则将该邻居节点加入候选集合。
步骤S206,从候选集合中选择下载点。
若候选集合为空,则表明当前邻居节点不存在有用数据可以下载,节点放弃本次数据请求尝试;
如果候选集合不为空,则采用基于位置感知机制下载数据。
基于位置感知机制下载数据具体为确定拥有可用数据块的邻居节点中与节点处在同一个AS中的下载点,如果不存在该下载点,则选择距离节点具有最短AS跳数的邻居节点作为下载点。
步骤S207,向下载点发送请求,请求该节点传输一个编码数据块。
仿真效果比较。
图3(a)表示现有技术中随机下载决策的P2P流量;图3(b)表示现有技术中采用本地最稀缺优先(local rarest first)下载决策的P2P流量;图3(c)表示本发明的P2P流量。椭圆表示ISP,A-E表示参与下载的节点。假设初始时刻只有节点A拥有数据块a、数据块b、数据块c、数据块d。图3(a)中,由于采用随机下载决策,节点B、节点C、节点D、节点E可能都向节点A请求同一个数据块,如数据块a,这将导致节点B、节点C、节点D、节点E之间的连接在接下来的数据传输周期内无法被利用,数据依然需要经过域间链路传输。图3(b)中,节点采用local rarest first策略进行下载决策,但即使如此,也会导致数据分布的不均匀。例如,节点B先向节点A请求数据块a,然后节点C向节点A请求数据块,根据local rarest first策略,则节点C可以向节点A请求数据块b,然后节点D向A请求数据,根据localrarest first策略,节点D可能会向节点A请求数据块a,同样,节点E可能向节点A请求数据块b,这样,节点B、节点C、节点D、节点E只拥有数据块a和数据块b,在经过另一个传输周期后,节点B、节点C、节点D、节点E之间的域内链路将无法利用,新数据只能从节点A获取。图3(c)是采用网络编码的情况,在这种情况下,节点A分别向节点B、节点C、节点D、节点E发送进行随机编码的编码数据块,当有限域足够大时,如F(28)或F(216),即可保证传输给节点B、节点C、节点D、节点E的四个数据块以很高的概率是线性无关,这样,节点B、节点C、节点D、节点E之间可以通过域内链路完成数据的传输从而解码出原始数据块,实现最优化的资源利用。
图4是采用本发明进行仿真实验的结果,其中仿真实验的配置如下:覆盖网平均节点连接度为10;域内与域外边之比为7∶3;节点带宽采用对称带宽;源文件仅存在于一个节点上;源文件大小为100个数据块;仿真中不考虑网络的动态性。图4中显示的是在同样的拓扑位置感知信息支持下(即相同的Overlay拓扑和相同的用于做下载决策的拓扑信息),传统的采用了localrarest first下载策略的P2P系统与使用网络编码的P2P系统分发相同大小文件时造成的域间流量。
本发明的P2P流量优化系统如图5所示。
初始化模块100和节点200。
初始化模块100,用于获得网络拓扑和网络状态,根据所述网络拓扑构造覆盖网络,并在初始时,仅运行源节点的邻居节点向应用文件的源节点请求数据。
节点200结构如图6所示。
请求响应模块210,用于在节点200接收到发送给自身的请求后,利用随机网络编码对所属节点已有的数据块进行编码,生成编码块和所述编码块对应的全局编码系数,将所述编码块和所述全局编码系数封装成数据包发送给请求的节点200。
系数添加模块220,用于在节点200接收到请求的数据包,获得所述数据包中的全局编码系数,将所述全局编码系数添加到所述节点的全局编码系数矩阵中,并将所述全局编码系数矩阵发送给邻居节点。
下载选择模块230,用于在节点200请求获得应用文件的数据时,根据所述网络状态、所述节点的全局编码系数矩阵和所述节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向所述下载点发送请求。
较佳的,下载选择模块230进一步包括,
数值计算子模块231,用于对于节点的每个邻居节点,根据网络状态确定所述节点的邻居节点带宽是否已被占满,如果是,则忽略所述邻居节点,否则,计算如下公式的值,
其中,A(X)为所述节点的全局编码系数矩阵,A(Y)为所述邻居节点的全局编码系数矩阵, 为A(X)和A(Y)的并置,r[]表示求矩阵的秩。
候选集合生成子模块232,用于根据所得值确定是否将邻居节点加入候选邻居集合。
下载点确定子模块233,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
较佳的,候选集合生成子模块232进一步用于判断如果所得值等于0,则忽略所得值对应的邻居节点;如果所得值不等于0,则判断所得值是否小于等于所述节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略所述邻居节点,否则,将所述邻居节点加入候选集合。
较佳的,下载点确定子模块233进一步用于从候选集合中选择同所述节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的节点,则从所述候选集合中选择同所述节点最短自治系统跳数的邻居节点为下载点,并发送请求;如果候选集合为空,则放弃本次下载尝试。
较佳的,每个所述节点对应一个网络坐标,
下载点确定子模块233进一步用于从候选集合中选择同所述节点网络坐标的欧式距离最近的邻居节点为下载点;如果候选集合为空,则放弃本次下载尝试。
较佳的,系统还包括位置服务器,
位置服务器用于对接收到的请求应用文件的源节点同候选集合中邻居节点的网络距离进行排序,返回排序结果;
下载点确定子模块233进一步用于向位置服务器发送请求应用文件的源节点和候选集合中邻居节点,按排序结果选择下载点;如果候选集合为空,则放弃本次下载尝试。
较佳的,下载点确定子模块进一步用于通过主动探测的方式获取自身到候选集合中邻居节点的延迟信息,选择延迟最小的邻居节点作为下载点;如果候选集合为空,则放弃本次下载尝试。
较佳的,初始化模块100在获得网络拓扑和网络状态时进一步用于通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由权利要求书的范围来确定的。
Claims (16)
1.一种P2P流量优化方法,其特征在于,包括:
步骤1,获得网络拓扑和网络状态,根据所述网络拓扑构造覆盖网络,所述覆盖网络中初始时由应用文件的源节点的邻居节点向所述源节点请求数据;
步骤2,覆盖网络中节点接收到发送给自身的请求后,利用随机网络编码对所述节点已有的数据块进行编码,生成编码块和所述编码块对应的全局编码系数,将所述编码块和所述全局编码系数封装成数据包发送给请求的节点;
步骤3,覆盖网络中节点接收到请求的数据包,获得所述数据包中的全局编码系数,将所述全局编码系数添加到所述节点的全局编码系数矩阵中,所述节点将所述全局编码系数矩阵发送给邻居节点;
步骤4,覆盖网络中节点在请求获得应用文件的数据时,根据所述网络状态、所述节点的全局编码系数矩阵和所述节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向所述下载点发送请求。
2.根据权利要求1所述的P2P流量优化方法,其特征在于,
所述步骤4进一步为,
步骤21,对于节点的每个邻居节点,根据网络状态确定所述节点的邻居节点带宽是否已被占满,如果是,则忽略所述邻居节点,否则,计算如下公式的值,
其中,A(X)为所述节点的全局编码系数矩阵,A(Y)为所述邻居节点的全局编码系数矩阵, 为A(X)和A(Y)的并置,r[]表示求矩阵的秩;
步骤22,根据所得值确定是否将邻居节点加入候选邻居集合;
步骤23,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
3.根据权利要求2所述的P2P流量优化方法,其特征在于,
所述步骤22进一步为,
步骤31,如果所得值等于0,则忽略所得值对应的邻居节点;
步骤32,如果所得值不等于0,则判断所得值是否小于等于所述节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略所述邻居节点,否则,将所述邻居节点加入候选集合。
4.根据权利要求2所述的P2P流量优化方法,其特征在于,
所述步骤23进一步为,
步骤41,从候选集合中选择同所述节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的节点,则从所述候选集合中选择同所述节点最短自治系统跳数的邻居节点为下载点,并发送请求;
步骤42,如果候选集合为空,则放弃本次下载尝试。
5.根据权利要求1所述的P2P流量优化方法,其特征在于,
所述步骤1中获得网络拓扑和网络状态进一步为,
步骤51,通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
6.根据权利要求2所述的P2P流量优化方法,其特征在于,
每个所述节点对应一个网络坐标,
所述步骤23进一步为,
步骤61,从候选集合中选择同所述节点网络坐标的欧式距离最近的邻居节点为下载点;
步骤62,如果候选集合为空,则放弃本次下载尝试。
7.根据权利要求2所述的P2P流量优化方法,其特征在于,
所述步骤23进一步为,
步骤71,由位置服务对请求应用文件的源节点同候选集合中邻居节点的网络距离进行排序,所述节点按排序选择下载点;
步骤72,如果候选集合为空,则放弃本次下载尝试。
8.根据权利要求2所述的P2P流量优化方法,其特征在于,
所述步骤23进一步为,
步骤81,节点通过主动探测的方式获取自身到候选集合中邻居节点的延迟信息,选择延迟最小的邻居节点作为下载点;
步骤82,如果候选集合为空,则放弃本次下载尝试。
9.一种P2P流量优化系统,其特征在于,包括初始化模块和节点:
所述初始化模块,用于获得网络拓扑和网络状态,根据所述网络拓扑构造覆盖网络,并在初始时,仅允许应用文件的源节点的邻居节点向所述源节点请求数据;
所述节点包括:
请求响应模块,用于在节点接收到发送给自身的请求后,利用随机网络编码对所属节点已有的数据块进行编码,生成编码块和所述编码块对应的全局编码系数,将所述编码块和所述全局编码系数封装成数据包发送给请求的节点;
系数添加模块,用于在节点接收到请求的数据包,获得所述数据包中的全局编码系数,将所述全局编码系数添加到所述节点的全局编码系数矩阵中,并将所述全局编码系数矩阵发送给邻居节点;
下载选择模块,用于在节点请求获得应用文件的数据时,根据所述网络状态、所述节点的全局编码系数矩阵和所述节点的邻居节点的全局编码系数矩阵从邻居节点中选择下载点,并向所述下载点发送请求。
10.根据权利要求9所述的P2P流量优化系统,其特征在于,
下载选择模块进一步包括,
数值计算子模块,用于对于节点的每个邻居节点,根据网络状态确定所述节点的邻居节点带宽是否已被占满,如果是,则忽略所述邻居节点,否则,计算如下公式的值,
其中,A(X)为所述节点的全局编码系数矩阵,A(Y)为所述邻居节点的全局编码系数矩阵, 为A(X)和A(Y)的并置,r[]表示求矩阵的秩;
候选集合生成子模块,用于根据所得值确定是否将邻居节点加入候选邻居集合;
下载点确定子模块,根据网络拓扑从候选邻居集合中选择网络距离最近的节点为下载点,并发送请求。
11.根据权利要求10所述的P2P流量优化系统,其特征在于,
所述候选集合生成子模块进一步用于判断如果所得值等于0,则忽略所得值对应的邻居节点;如果所得值不等于0,则判断所得值是否小于等于所述节点同对应邻居节点间正在传输的数据块的个数,如果是,则忽略所述邻居节点,否则,将所述邻居节点加入候选集合。
12.根据权利要求10所述的P2P流量优化系统,其特征在于,
所述下载点确定子模块进一步用于从候选集合中选择同所述节点在同一个自治系统的邻居节点为下载点,如果没有同一个自治系统的节点,则从所述候选集合中选择同所述节点最短自治系统跳数的邻居节点为下载点,并发送请求;如果候选集合为空,则放弃本次下载尝试。
13.根据权利要求9所述的P2P流量优化系统,其特征在于,
所述初始化模块在获得网络拓扑和网络状态时进一步用于通过节点之间的主动延迟探测方法、IP地址前缀匹配方法、BGP路由表的IP和AS号映射方法、IP位置解析服务方法或运营商提供的位置信息服务获得网络拓扑和网络状态。
14.根据权利要求2所述的P2P流量优化系统,其特征在于,
每个所述节点对应一个网络坐标,
所述下载点确定子模块进一步用于从候选集合中选择同所述节点网络坐标的欧式距离最近的邻居节点为下载点;如果候选集合为空,则放弃本次下载尝试。
15.根据权利要求2所述的P2P流量优化系统,其特征在于,
所述系统还包括位置服务器,
所述位置服务器用于对接收到的请求应用文件的源节点同候选集合中邻居节点的网络距离进行排序,返回排序结果;
所述下载点确定子模块进一步用于向位置服务器发送请求应用文件的源节点和候选集合中邻居节点,按排序结果选择下载点;如果候选集合为空,则放弃本次下载尝试。
16.根据权利要求2所述的P2P流量优化系统,其特征在于,
所述下载点确定子模块进一步用于通过主动探测的方式获取自身到候选集合中邻居节点的延迟信息,选择延迟最小的邻居节点作为下载点;如果候选集合为空,则放弃本次下载尝试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102427975A CN101710904B (zh) | 2009-12-21 | 2009-12-21 | P2p流量优化方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102427975A CN101710904B (zh) | 2009-12-21 | 2009-12-21 | P2p流量优化方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101710904A true CN101710904A (zh) | 2010-05-19 |
CN101710904B CN101710904B (zh) | 2013-01-09 |
Family
ID=42403664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102427975A Expired - Fee Related CN101710904B (zh) | 2009-12-21 | 2009-12-21 | P2p流量优化方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101710904B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883052A (zh) * | 2010-06-25 | 2010-11-10 | 中兴通讯股份有限公司 | 一种实现对等网络中流量优化的方法和系统 |
CN101969458A (zh) * | 2010-11-26 | 2011-02-09 | 西安电子科技大学 | 支持层次化网络拓扑的p2p流量优化方法 |
CN102340515A (zh) * | 2010-07-16 | 2012-02-01 | 中国电信股份有限公司 | 动态调整p2p节点以减少p2p域外流量的方法和系统 |
CN102904830A (zh) * | 2012-11-06 | 2013-01-30 | 北京交通大学 | 在p2p网络软件自身上实现流量优化的方法 |
CN103095827A (zh) * | 2013-01-11 | 2013-05-08 | 中国传媒大学 | 一种基于随机网络编码的本地多客户端协同数据下载方法 |
CN103931159A (zh) * | 2011-10-05 | 2014-07-16 | 皮里亚埃利斯姆有限公司 | 实时流媒体p2p网络中配置对等端的方法和设备 |
CN105611425A (zh) * | 2015-09-25 | 2016-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种节点优化方法及装置 |
CN106101174A (zh) * | 2016-05-25 | 2016-11-09 | 广州酷狗计算机科技有限公司 | 一种传输数据的方法和装置 |
CN110298194A (zh) * | 2019-06-11 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 基于区块链的文件处理方法、装置、设备及存储介质 |
US11122110B2 (en) | 2019-06-11 | 2021-09-14 | Advanced New Technologies Co., Ltd. | Blockchain-based file processing method, apparatus, and device, and storage medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1331331C (zh) * | 2004-04-27 | 2007-08-08 | 国家数字交换系统工程技术研究中心 | 自组织网络的实现方法 |
CN100367726C (zh) * | 2005-01-27 | 2008-02-06 | 中国科学院计算技术研究所 | 结构化p2p系统的拓扑匹配方法 |
-
2009
- 2009-12-21 CN CN2009102427975A patent/CN101710904B/zh not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883052A (zh) * | 2010-06-25 | 2010-11-10 | 中兴通讯股份有限公司 | 一种实现对等网络中流量优化的方法和系统 |
CN102340515A (zh) * | 2010-07-16 | 2012-02-01 | 中国电信股份有限公司 | 动态调整p2p节点以减少p2p域外流量的方法和系统 |
CN102340515B (zh) * | 2010-07-16 | 2014-12-17 | 中国电信股份有限公司 | 动态调整p2p节点以减少p2p域外流量的方法和系统 |
CN101969458A (zh) * | 2010-11-26 | 2011-02-09 | 西安电子科技大学 | 支持层次化网络拓扑的p2p流量优化方法 |
CN101969458B (zh) * | 2010-11-26 | 2012-12-26 | 西安电子科技大学 | 支持层次化网络拓扑的p2p流量优化方法 |
CN103931159A (zh) * | 2011-10-05 | 2014-07-16 | 皮里亚埃利斯姆有限公司 | 实时流媒体p2p网络中配置对等端的方法和设备 |
CN103931159B (zh) * | 2011-10-05 | 2017-03-15 | 皮里亚埃利斯姆有限公司 | 实时流媒体p2p网络中配置对等端的方法和设备 |
CN102904830A (zh) * | 2012-11-06 | 2013-01-30 | 北京交通大学 | 在p2p网络软件自身上实现流量优化的方法 |
CN103095827A (zh) * | 2013-01-11 | 2013-05-08 | 中国传媒大学 | 一种基于随机网络编码的本地多客户端协同数据下载方法 |
CN103095827B (zh) * | 2013-01-11 | 2016-12-28 | 中国传媒大学 | 一种基于随机网络编码的本地多客户端协同数据下载方法 |
CN105611425A (zh) * | 2015-09-25 | 2016-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种节点优化方法及装置 |
CN106101174A (zh) * | 2016-05-25 | 2016-11-09 | 广州酷狗计算机科技有限公司 | 一种传输数据的方法和装置 |
CN110298194A (zh) * | 2019-06-11 | 2019-10-01 | 阿里巴巴集团控股有限公司 | 基于区块链的文件处理方法、装置、设备及存储介质 |
US11122110B2 (en) | 2019-06-11 | 2021-09-14 | Advanced New Technologies Co., Ltd. | Blockchain-based file processing method, apparatus, and device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN101710904B (zh) | 2013-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101710904B (zh) | P2p流量优化方法及其系统 | |
US9503308B2 (en) | Method, device and system for processing content | |
Qazi et al. | Optimal content caching in content‐centric networks | |
CN104717304B (zh) | 一种cdn‑p2p内容优化选择系统 | |
JP5048134B2 (ja) | パケットルーティングの方法、システム、装置、及びバックアップリソースを選択する方法、システム | |
Jiang et al. | Orchestrating massively distributed CDNs | |
CN101202746B (zh) | 节点标识符生成方法及负载均衡方法及装置 | |
CN101127714B (zh) | 一种无线网状网络中路由管理方法及设备 | |
CN113453038B (zh) | 一种cdn-p2p混合架构下效用最优协同缓存管理方法 | |
CN110113761B (zh) | 一种流数据处理应用在边缘计算网络中的部署方法和装置 | |
WO2024104284A1 (zh) | 一种基于nwdaf对计算资源的管理和决策的方法 | |
CN102724064B (zh) | 一种网络应用仿真系统构建方法 | |
Coutinho et al. | Information-centric strategies for content delivery in intelligent vehicular networks | |
Khodaparas et al. | A software-defined caching scheme for the Internet of Things | |
CN101854387B (zh) | 分布式索引服务器架构下的p2p流量优化方法和系统 | |
CN102651886A (zh) | 一种基于能量感知的gpsr动态路由选择方法及系统 | |
CN103179045B (zh) | 支持p2p流量优化的资源节点选择方法 | |
CN101977159A (zh) | 窄带网络带宽资源的管理方法 | |
CN109474696B (zh) | 一种网络服务方法、装置、电子设备及可读存储介质 | |
CN107040466A (zh) | 基于物联网分层架构的多域协同数据传输的路径选择方法 | |
CN101668037B (zh) | 一种p2p网络的调度方法 | |
Wang et al. | Resource optimization protocol based on multicommunity model for intermittently connected mobile networks | |
JP5238793B2 (ja) | 通信管理装置、通信管理方法 | |
Wu et al. | Routing algorithm based on ant colony optimization for mobile social network | |
CN105072159A (zh) | 一种p2p组网中的节点管理列表结构及其管理方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130109 Termination date: 20191221 |