CN101854387B - 分布式索引服务器架构下的p2p流量优化方法和系统 - Google Patents

分布式索引服务器架构下的p2p流量优化方法和系统 Download PDF

Info

Publication number
CN101854387B
CN101854387B CN201010175975XA CN201010175975A CN101854387B CN 101854387 B CN101854387 B CN 101854387B CN 201010175975X A CN201010175975X A CN 201010175975XA CN 201010175975 A CN201010175975 A CN 201010175975A CN 101854387 B CN101854387 B CN 101854387B
Authority
CN
China
Prior art keywords
terminal
server
index
information
index server
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.)
Expired - Fee Related
Application number
CN201010175975XA
Other languages
English (en)
Other versions
CN101854387A (zh
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.)
Shenzhen Calculator Express Technology Co., Ltd.
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201010175975XA priority Critical patent/CN101854387B/zh
Publication of CN101854387A publication Critical patent/CN101854387A/zh
Application granted granted Critical
Publication of CN101854387B publication Critical patent/CN101854387B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了分布式索引服务器架构下的P2P流量优化方法和系统。所述方法包括下列步骤:结合P4P思想互联网服务提供商将网络划分区域,并部署策略服务器和定位服务器,P2P内容提供商在各区域中部署索引服务器;各所述区域中的终端定位自身所属的区域和本地索引服务器;各区域中的终端拥有新资源时将新资源的信息上报本地索引服务器,本地索引服务器维护由新资源的信息建立的索引信息,并借助策略服务器获取策略矩阵信息;终端从种子服务器下载种子文件,并根据种子文件中的资源哈希值向本地索引服务器发送请求索引信息,本地索引服务器根据策略矩阵,按比例向终端返回索引信息;终端根据返回的索引信息与相应终端进行连接并进行资源下载。

Description

分布式索引服务器架构下的P2P流量优化方法和系统
技术领域
本发明涉及互联网上数字媒体的P2P应用领域,特别是涉及一种融合了P4P思想的分布式索引服务器架构下的P2P流量优化方法和系统。
背景技术
随着国际互联网和数字化技术的快速发展,P2P技术作为一种数字媒体内容分发技术得到了广泛应用。P2P是英文Peer-to-Peer的简称,又被称为“点对点”。“对等”技术,是一种网络新技术,不同于传统的C/S结构,P2P技术充分利用网络中用户的计算能力和带宽,而不是把服务需求都聚集在较少的服务器上,用户在下载的同时,也为其他用户提供上传服务,这种下载方式,人越多速度越快。一般来说,随着用户数的增加系统服务能力也会增强,具有很好的可扩展性和健壮性,并且部署和维护成本较低。P2P技术虽然较传统C/S结构有众多优势,但自身同时也存在一些问题:一方面,P2P由于其重叠网络的特性,缺乏对底层网络拓扑信息的了解,常采用随机的Peer选择方法,造成大量的跨域流量,尤其是占有了大量互联网骨干流量,给网络运营商带来巨大的运营成本并且不利于保证P2P的下载性能,此外容易引起网络拥塞,对其他传统应用(WWW、Email等)造成不良影响;另一方面,P2P往往采用单索引服务器的架构,容易引起性能瓶颈和单点失效等问题,影响系统的可扩展性。
目前为了解决骨干流量巨大的问题,互联网服务提供商(InternetService Provider,ISP)采用了多种尝试:例如结合报文深度探测以及P2P特征对其进行流量限制,但存在影响用户体验的问题。一些研究通过Peer彼此测量来发现拓扑信息,虽然取得一些成效但准确度不高。此外,对于索引服务器压力的问题,目前也存在一些多索引服务器的系统,但往往服务器间缺乏联系和协作,系统整体性能不高。
为了解决上述跨域流量巨大的问题,耶鲁大学提出了一种较新思想P4P,P4P全称“Proactive network Provider Participation for P2P”,是P2P技术的升级版,意在加强服务供应商(ISP)与客户端程序的通信,降低骨干网络传输压力和运营成本,并提高改良的P2P文件传输的性能。P4P是智能选取数据交换对象,更多的通过智能运算选择同一路由器或者地域性网络来进行数据交换,最大程度上解决大型节点和网络出口负载,同样通过智能选择数据交换对象也能大大提高数据传输能力。与P2P随机挑选Peer(对等机)不同,P4P协议可以协调网络拓扑数据,能够有效选择Peer,从而提高网络路由效率。
P4P的核心内容是将网络区域划分为AS(自治域)和PID(P4P研究人员提出的一种区域),通过引入ISP部署的一些服务器,将ISP底层拓扑和网络策略等信息告知P2P中索引服务器,再由后者指导终端进行Peer选择,使得Peer按照优先从本AS本PID内选择,再从本AS不同PID内选择,最后从不同AS内选择的次序选择Peer,以达到优化流量的目的。但是目前P4P的研究主要集中在单索引服务器的P2P系统中,仍存在性能瓶颈和单点失效等问题。
发明内容
本发明的目的在于提供分布式索引服务器架构下的P2P流量优化方法和系统,其能够实现流量优化并提高P2P的下载性能,同时能够解决单索引服务器架构下的性能瓶颈和单点失效问题,具有较好的可扩展性。
为实现本发明的目的而提供的一种分布式索引服务器架构下的P2P流量优化方法,所述方法,包括下列步骤:
步骤100.结合P4P思想,互联网服务提供商将网络划分区域,并部署策略服务器和定位服务器,P2P内容提供商在各所述区域中部署索引服务器;
步骤200.各所述区域中的终端通过所述定位服务器和策略服务器,定位自身所属的区域和本地索引服务器;
步骤300.各所述区域中的终端拥有新资源时将所述新资源的信息上报本地索引服务器,本地索引服务器维护由所述新资源的信息建立的索引信息,并根据所述索引信息借助所述策略服务器获取策略矩阵信息;
步骤400.终端从种子服务器下载种子文件,并根据种子文件中的资源哈希值向本地索引服务器发送请求索引信息,本地索引服务器根据所述策略服务器的策略矩阵,按比例向所述终端返回索引信息;
步骤500.所述终端根据索引服务器返回的索引信息与相应的终端进行连接并进行资源下载。
所述步骤100,包括下列步骤:
步骤110.将P2P网络划分成若干个区域,每个区域对应一个AS号和PID号;
步骤120,P2P内容提供商在各个区域内部署索引服务器,索引服务器之间构成DHT网络,索引服务器对其区域内的终端提供索引信息;
步骤130.互联网服务提供商部署策略服务器,来维护各AS号和PID号与对应区域中的索引服务器间的映射关系,所述策略服务器通过向索引服务器提供策略矩阵来指导索引服务器对终端的索引服务。
所述步骤200,包括下列步骤:
步骤210.终端向所述定位服务器请求获取所述终端对应区域的AS号和PID号;
步骤220.根据所述AS号和PID号,终端向所述策略服务器发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息;
步骤230.所述终端存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件。
所述终端将所属区域和所属索引服务器的信息存储在本地,下次启动可直接获得,除非当前索引服务器不可用,否则不重复获取索引服务器信息。
所述步骤300,包括下列步骤:
步骤S310,终端在向本地索引服务器请求索引信息的同时,定期向本地索引服务器发送新资源的信息,本地索引服务器记录并维护上述新资源的信息;
步骤S320,各个本地索引服务器会定期与策略服务器交互,策略服务器依据从各索引服务器搜集的索引信息,以及互联网服务提供商提供的网络链路信息以及路由策略来计算和更新策略矩阵,并定期将策略矩阵下发到各索引服务器;策略服务器同时维护各AS号PID号与各本地索引服务器间的映射关系。
所述新资源的信息,是指<资源哈希值,本终端信息>,其中本终端信息,包括终端身份ID标识、IP地址、端口号、各个资源文件的下载进度。
所述步骤400,包括下列步骤:
步骤410.终端从种子服务器下载种子文件,其中包含资源哈希值,以及关于资源的其他描述信息;
步骤420.终端根据所述资源哈希值以及终端自身期望返回的终端数目,请求索引服务器,以获得相应的索引信息;
步骤430.本地索引服务器收到请求后,根据期望返回的终端数目和策略矩阵记录的各个区域的AS号和PID号的百分比,计算各个区域内能够返回的终端数目;
步骤440.本地索引服务器通过与其他索引服务器交互,查询并判断各区域内能够返回的终端数目是否满足期望返回的终端数目,若是,则按比例将本地区域和其他区域内的索引信息返回给终端;否则执行步骤450;
步骤450.判断请求次数是否超过预设值,若是,则返回所述能够返回的终端数目;否则返回步骤420。
所述步骤500,包括下列步骤:
步骤510.所述终端根据索引服务器返回的包含终端端口和IP地址的索引信息,与相应的终端进行连接并进行资源下载;
步骤520.当终端与其他终端的连接数不足时,本地终端将再次向本地索引服务器请求索引信息,执行步骤420-460;
步骤530.当索引信息请求失败时,本地终端将定期重试请求,直至达到一个请求次数的上限,则放弃本次资源下载操作。
所述策略矩阵,是由策略服务器依据从各索引服务器搜集的终端分布信息以及互联网服务提供商提供的链路信息以及路由策略信息,计算得到各个不同区域间终端的理想比例关系。
所述索引信息,是指<资源哈希值,终端列表>信息对。
为实现本发明的目的还提供一种分布式索引服务器架构下的P2P流量优化系统,所述系统,包括:定位服务器、多个索引服务器、策略服务器和多个P2P终端,其中:
所述定位服务器由互联网服务提供商部署在经过区域划分的网络中,各所述区域中的终端通过所述定位服务器定位终端所在的区域;
所述索引服务器由P2P内容提供商部署在各区域中,用于维护本地终端上报的由新资源的信息建立的索引信息;并根据本地终端发送的请求索引信息以及策略服务器的策略矩阵信息,按比例向本地终端返回索引信息;
所述策略服务器由互联网服务提供商部署在经过区域划分的网络中,定期与各索引服务器交互,获取所述索引信息,更新策略矩阵信息并定期将策略矩阵下发到各索引服务器;
所述P2P终端根据索引服务器返回的索引信息与相应的终端进行连接并进行资源下载。
所述定位服务器,包括:
定位信息存储模块,用于存储所述P2P终端对应区域的AS号和PID号;
所述索引服务器之间构成DHT网络,所述索引服务器,包括:
索引信息维护模块,用于记录并维护由所述P2P终端定期发送的新资源信息组成的索引信息;
计算模块,用于根据本地终端发送的请求索引信息以及策略服务器的策略矩阵信息,计算各个区域内应该返回的终端数目;
判断模块,用于判断各区域内能够返回的终端数目是否满足期望返回的终端数目,以及判断请求次数是否超过预设值;
索引信息返回模块,用于根据所有其他区域的索引信息,并连同本区域内的索引信息一起返回给P2P终端。
所述策略服务器,包括:
映射关系维护模块,用来维护各AS号和PID号与对应区域中的索引服务器间的映射关系;
策略矩阵存储模块,用于存储指导索引服务器对终端的索引服务的策略矩阵;
策略矩阵计算模块,用于根据所述P2P终端的分布情况、网络链路状况以及路由策略,实时维护和更新策略矩阵。
所述P2P终端,包括:
文件下载模块,用于根据索引服务器返回的包含终端端口和IP地址的索引信息,与相应的终端进行连接并进行资源下载;
索引信息获取模块,用于根据种子文件的哈希值以及P2P终端自身期望返回的终端数目,请求索引服务器,以获得相应的索引信息;
终端判断模块,用于判断与终端连接的其他终端的数目是否足够,以及请求索引信息次数是否达到上限;
定位模块,用于向所述定位服务器请求获取所述终端对应区域的AS号和PID号,再根据所述AS号和PID号,向所述策略服务器发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息,并存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件。
所述新资源的信息,是指<资源哈希值,本终端信息>,其中本终端信息,包括终端身份ID标识、IP地址、端口号、各个资源文件的下载进度。
所述策略矩阵,是由策略服务器依据从各索引服务器搜集的终端分布信息以及互联网服务提供商提供的链路状况以及路由策略信息,计算得到各个不同区域间终端的理想比例关系。
所述索引信息,是指<资源哈希值,终端列表>信息对。
本发明的有益效果在于:
1.本发明借助ISP提供的服务器,更加有效地对流量进行区域化管理,与其他基于测量的技术相比,一方面避免了终端自身测量带来的额外开销,另一方面,由于ISP直接实时提供底层网络链路和路由策略等信息,结果更准确有效;
2.本发明借鉴P4P中的策略服务器思想,按照一定合理比例分配流量,优先从同一AS同一PID内选择Peer,然后再从同一AS不同PID内选择,最后再考虑不同AS内的Peer,这样一定程度上既限制了骨干流量,又避免了本地资源缺乏时服务质量不高的情况,有效地将流量优化和性能进行了有机结合;
3.本发明与现有单索引服务器架构的P2P系统相比,避免了单点失效和避免系统瓶颈,能将索引服务压力分摊到各个本地索引服务器中,有效地提高了系统的可扩展性;
4.本发明通过将P2P流量按比例地合理分布,保证系统弹性,即使在终端上下线频繁的网络环境中,也能保证终端的下载速度和服务质量。
附图说明
图1是本发明的分布式索引服务器架构下的P2P流量优化方法的步骤流程图;
图2是本发明中结合P4P思想划分区域并部署策略服务器、定位服务器和索引服务器的步骤流程图;
图3是本发明中策略矩阵的具体结构图;
图4是本发明中终端定位自身所属的区域和本地索引服务器的步骤流程图;
图5是本发明中本地索引服务器获得策略矩阵的步骤流程图;
图6是本发明中本地索引服务器根据策略矩阵返回索引信息的步骤流程图;
图7是本发明中终端根据索引信息与相应的终端进行连接并进行资源下载的步骤流程图;
图8是本发明的分布式索引服务器架构下的P2P流量优化系统中各装置布局图;
图9是本发明的分布式索引服务器架构下的P2P流量优化系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的分布式索引服务器架构下的P2P流量优化方法和系统进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明的分布式索引服务器架构下的P2P流量优化方法和系统,是基于P4P的思想,采用分布式索引服务器的架构,借助ISP的服务器对P2P中Peer选择进行指导,优化了P2P流量分布,减少骨干网流量,实现流量优化并提高P2P的下载性能,同时能够解决单索引服务器架构下的性能瓶颈和单点失效问题,具有较好的可扩展性。
下面结合上述目标详细介绍本发明的分布式索引服务器架构下的P2P流量优化方法,图1是本发明的分布式索引服务器架构下的P2P流量优化方法的步骤流程图,如图1所示,所述方法,包括下列步骤:
步骤100.结合P4P思想,互联网服务提供商(Internet Service Provider,ISP)将网络划分区域,并部署策略服务器和定位服务器,P2P内容提供商在各区域中部署索引服务器;
借助ISP提供的服务器,更加有效地对流量进行区域化管理,与其他基于测量的技术相比,一方面避免了终端自身测量带来的额外开销,另一方面,由于ISP直接实时提供底层拓扑和路由策略等信息,结果更准确有效。
图2是本发明中结合P4P思想划分区域并部署策略服务器、定位服务器和索引服务器的步骤流程图,如图2所示,所述步骤100,包括下列步骤:
步骤110.将P2P网络划分成若干个区域,每个区域对应一个AS号和PID号;
步骤120,P2P内容提供商在各个区域内部署索引服务器,索引服务器之间构成DHT网络,索引服务器对其区域内的终端提供索引信息;
与现有单索引服务器架构的P2P系统相比,分布式多索引服务器架构避免了单点失效和避免系统瓶颈,能将索引服务压力分摊到各个本地索引服务器中,有效地提高了系统的可扩展性。
步骤130.互联网服务提供商(ISP)部署策略服务器,来维护各AS号和PID号与对应区域中的索引服务器间的映射关系,所述策略服务器通过向索引服务器提供策略矩阵来指导索引服务器对终端的索引服务;
其中,所述策略矩阵,是由策略服务器依据从各索引服务器搜集的终端分布信息以及ISP提供的链路信息(终端数目、拥塞情况、远近情况)以及路由策略信息,计算得到各个不同区域(由AS号、PID号决定的区域)间peer的理想比例关系。
假设有AS1、AS2、AS3三个自治域,假设现有域内终端数目为:3∶2∶1,拥塞状况倒数的比例关系是3∶2∶1(越大越不拥塞),并假设根据其他域与AS1域的距离比例关系,得到的针对AS1的选取终端数目的比例为4∶3∶2。此时,计算AS1在策略矩阵中对应行的内容,方法是将上述比例加权相加,为简便起见,假设权重为1,则比例为:(3+3+4)∶(2+2+3)∶(1+1+2),即10∶7∶4。该比例表明,如果AS1内某终端选择peer列表,则为从本域、从AS2以及从AS3选取理想的比例关系为10∶7∶4。
其中终端数目信息可以通过索引服务器搜集,并上报策略服务器获得;拥塞状况、距离信息等可由ISP自身获得,并通知策略服务器。策略服务器收到上述信息后,从而定期重新计算测量矩阵。
图3是本发明中策略矩阵的具体结构图,如图3所示,本发明中的策略矩阵就是各个行列的矩阵,例如图中第一行表示:如果某个向索引服务器请求索引信息的终端在AS1/PID1区域内,则依据策略矩阵信息,索引服务器向它提供的peer的数目应为:从AS1/PID1内提供70%,从AS1/PID2内提供10%,从AS2/PID1内提供20%等等。步骤200.各所述区域中的终端通过所述定位服务器和策略服务器,定位自身所属的区域和本地索引服务器;
图4是本发明中终端定位自身所属的区域和本地索引服务器的步骤流程图,如图4所示,所述步骤200,包括下列步骤:
步骤210.终端向所述定位服务器请求获取所述终端对应区域的AS号和PID号;
步骤220.根据所述AS号和PID号,终端向所述策略服务器发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息;
步骤230.所述终端存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件。
较佳地,所述终端将所属区域和所属索引服务器的信息存储在本地,下次启动可直接获得,除非当前索引服务器不可用,否则不重复获取索引服务器信息。步骤300.各所述区域中的终端拥有新资源时将所述新资源的信息上报本地索引服务器,本地索引服务器维护由所述新资源的信息建立的索引信息,并根据所述索引信息借助所述策略服务器得到策略矩阵信息;
所述新资源的信息具体是指:<资源哈希值,本终端信息(ID号、IP地址、端口、下载进度等)>信息对。本地索引服务器维护由所有终端上报的信息对。
其中,所述索引信息,是指可提供资源下载的Peer列表,所述Peer列表中包含Peer端口和IP地址。
图5是本发明中本地索引服务器获得策略矩阵的步骤流程图,如图5所示,所述步骤300,包括下列步骤:
步骤S310,终端在向本地索引服务器请求索引信息(即<资源哈希值,Peer列表>信息对)的同时,定期向本地索引服务器发送新资源的信息<资源哈希值,本终端信息(ID号、IP地址、端口、下载进度等)>,本地索引服务器记录并维护上述新资源的信息;
所述信息的组织形式与上面是统一的,都是信息对,内容不同。
其中,所述本终端信息包括节点身份ID标识、IP地址、端口号、各个资源文件的下载进度等;索引服务器同时记录并维护上述的信息对。
步骤S320,各个本地索引服务器会定期与策略服务器交互,策略服务器依据从各索引服务器搜集的包含终端分布情况的索引信息,以及ISP提供的网络链路信息(如底层拓扑、链路拥塞、延迟等)以及路由策略来计算和更新策略矩阵,并定期将策略矩阵下发到各索引服务器;策略服务器同时维护各AS号PID号与各本地索引服务器间的映射关系;步骤400.终端从种子服务器下载种子文件,并根据种子文件中的资源哈希值向本地索引服务器请求索引信息,本地索引服务器根据所述策略服务器的策略矩阵,按比例向所述终端返回索引信息;
其中,所述索引信息,是指<资源哈希值,Peer列表>信息对。其中包含Peer的ID号、IP地址、端口等信息。
本发明借鉴P4P中的策略服务器思想,按照一定合理比例分配流量,优先从同一AS同一PID内选择Peer,然后再从同一AS不同PID内选择,最后再考虑不同AS内的Peer,这样一定程度上既限制了骨干流量,又避免了本地资源缺乏时服务质量不高的情况,有效地将流量优化和性能进行了有机结合;
图6是本发明中本地索引服务器根据策略矩阵返回索引信息的步骤流程图,如图6所示,所述步骤400,包括下列步骤:
步骤410.终端从种子服务器(一般为web站点)上下载种子文件,其中包含资源哈希值(可唯一标识资源),以及关于资源的其他一些描述信息;
步骤420.终端根据所述资源哈希值以及终端自身期望返回的终端(Peer)数目N,请求索引服务器,以获得相应的索引信息;
步骤430.本地索引服务器收到请求后,根据期望返回的终端数目N和策略矩阵记录的各个区域的AS号和PID号的百分比,计算各个区域内期望返回的终端数目;
如图3所示,假设N=100(即终端期望得到100个peer供下载资源),则按照策略矩阵的终端Peer1应向AS1/PID1内请求100*70%=70个Peer,同理从AS1/PID2、AS2/PID1内各取10个。如果是本区域AS1/PID1内的Peer则直接从本地获得,对于其他区域(如AS1/PID2)内的Peer,索引服务器借助策略服务器来获得AS1/PID1区域内的索引服务器信息(IP地址、端口),并向其请求数目为10的Peer列表信息。最终将本地以及其他域内全部的Peer列表信息返回给终端,指导其进行资源下载;
步骤440.本地索引服务器通过DHT网络与其他索引服务器交互,查询并判断自身区域以及其他各区域内能够返回的终端数目是否满足期望返回的终端数目,若是,则按比例将本地区域和其他区域内的索引信息返回给终端;否则,执行步骤450;
步骤450.判断请求次数是否超过预设值,若是,则返回所述能够返回的终端数目;否则返回步骤420;
步骤500.所述终端根据本地索引服务器返回的索引信息与相应的终端进行连接并进行资源下载;
图7是本发明中终端根据索引信息与相应的终端进行连接并进行资源下载的步骤流程图,如图7所示,所述步骤500,包括下列步骤:
步骤510.所述终端根据索引服务器返回的包含Peer端口和IP地址的索引信息,与相应的Peer进行连接并进行资源下载;
所述包含Peer端口和IP地址的索引信息将用于本地终端与这些终端连接,并进行其后的数据下载过程;
步骤520.当终端与其他终端的连接数不足时,本地终端将再次向本地索引服务器请求索引信息,执行步骤420-460;
由于有些其他终端当下载完后,可能会退出程序或关闭机器,就可能会造成连接数不足,因此,需要重新获取索引信息。
步骤530.当索引信息请求失败时,本地终端将定期重试请求,直至达到一个请求次数的上限,则放弃本次资源下载操作。
相应于本发明的一种分布式索引服务器架构下的P2P流量优化方法,还提供一种分布式索引服务器架构下的P2P流量优化系统。
图8是本发明的分布式索引服务器架构下的P2P流量优化系统中各装置布局图,图9是本发明的分布式索引服务器架构下的P2P流量优化系统的结构示意图,如图8和图9所示,所述系统,包括:定位服务器1、多个索引服务器2、策略服务器3和多个P2P终端4,其中:
所述定位服务器1由互联网服务提供商部署在经过区域划分的网络中,各所述区域中的P2P终端4通过所述定位服务器1定位P2P终端所在的区域;
所述索引服务器2由P2P内容提供商部署在各区域中,用于维护本地P2P终端上报的由新资源的信息建立的索引信息;并根据本地P2P终端发送的请求索引信息以及策略服务器3的策略矩阵信息,按比例向本地P2P终端返回索引信息;
所述策略服务器3由互联网服务提供商部署在经过区域划分的网络中,定期与各索引服务器2交互,获取所述索引信息,更新策略矩阵信息并定期将策略矩阵下发到各索引服务器2;
所述P2P终端4根据索引服务器2返回的索引信息与相应的P2P终端进行连接并进行资源下载。
所述定位服务器1,包括:
定位信息存储模块11,用于存储所述P2P终端4对应区域的AS号和PID号。
所述索引服务器2之间构成DHT网络,所述索引服务器2,包括:
索引信息维护模块21,用于记录并维护由所述P2P终端定期发送的新资源信息组成的索引信息;
计算模块22,用于根据本地P2P终端发送的请求索引信息以及策略服务器3的策略矩阵信息,计算各个区域内能够返回的P2P终端数目;
判断模块23,用于判断各区域内能够返回的P2P终端数目是否满足期望返回的P2P终端数目,以及判断请求次数是否超过预设值;
索引信息返回模块24,用于根据所有其他区域的索引信息,并连同本区域内的索引信息一起返回给P2P终端。
其中,所述策略服务器3,包括:
映射关系维护模块31,用来维护各AS号和PID号与对应区域中的索引服务器2间的映射关系;
策略矩阵存储模块32,用于存储指导索引服务器2对P2P终端4的索引服务的策略矩阵。
策略矩阵计算模块33,用于根据所述P2P终端4的分布情况、网络链路状况以及路由策略,实时维护和更新策略矩阵。
其具体实施方式可认为由网络运营商来决定,不作为我们讨论的重点。
所述P2P终端4,包括:
文件下载模块41,用于根据索引服务器2返回的包含终端端口和IP地址的索引信息,与相应的P2P终端进行连接并进行资源下载;
索引信息获取模块42,用于根据种子文件的哈希值以及P2P终端自身期望返回的终端数目,请求本地索引服务器2以获得相应的索引信息;
终端判断模块43,用于判断与P2P终端连接的其他P2P终端的数目是否足够,以及请求索引信息次数是否达到上限;
定位模块44,用于向所述定位服务器1请求获取所述终端对应区域的AS号和PID号,再根据所述AS号和PID号,向所述策略服务器3发送查询请求,查询自身所属的本地索引服务器2的IP地址和端口信息,并存储所述AS号和PID号以及所述索引服务器2的IP地址和端口信息到本地文件。
在本发明的一种分布式索引服务器架构下的P2P流量优化系统中,结合P4P思想,互联网服务提供商将网络划分区域,并部署策略服务器和定位服务器,P2P内容提供商在各所述区域中部署索引服务器;各所述区域中的P2P终端的定位模块,通过向所述定位服务器的定位信息存储模块请求获取所述P2P终端对应区域的AS号和PID号,再根据所述AS号和PID号,向所述策略服务器的映射关系维护模块发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息,并存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件;当各所述区域中的P2P终端拥有新资源时将所述新资源的信息上报本地索引服务器,本地索引服务器的索引信息维护模块维护由所述新资源的信息建立的索引信息,并根据所述索引信息借助所述策略服务器的策略矩阵存储模块获取策略矩阵信息;当P2P终端从种子服务器下载种子文件后,根据种子文件中的资源哈希值向本地索引服务器发送请求索引信息,本地索引服务器根据所述策略服务器的策略矩阵存储模块中存储的策略矩阵,有计算模块计算后由索引信息返回模块按比例向所述P2P终端返回索引信息;所述P2P终端根据索引信息返回模块返回的索引信息通过文件下载模块与相应的P2P终端进行连接并进行资源下载。
本发明的有益效果在于:
1.本发明借助ISP提供的服务器,更加有效地对流量进行区域化管理,与其他基于测量的技术相比,一方面避免了终端自身测量带来的额外开销,另一方面,由于ISP直接实时提供底层网络链路和路由策略等信息,结果更准确有效;
2.本发明借鉴P4P中的策略服务器思想,按照一定合理比例分配流量,优先从同一AS同一PID内选择Peer,然后再从同一AS不同PID内选择,最后再考虑不同AS内的Peer,这样一定程度上既限制了骨干流量,又避免了本地资源缺乏时服务质量不高的情况,有效地将流量优化和性能进行了有机结合;
3.本发明与现有单索引服务器架构的P2P系统相比,避免了单点失效和避免系统瓶颈,能将索引服务压力分摊到各个本地索引服务器中,有效地提高了系统的可扩展性;
4.本发明通过将P2P流量按比例地合理分布,保证系统弹性,即使在终端上下线频繁的网络环境中,也能保证终端的下载速度和服务质量。
通过结合附图对本发明具体实施例的描述,本发明的其它方面及特征对本领域的技术人员而言是显而易见的。
以上对本发明的具体实施例进行了描述和说明,这些实施例应被认为其只是示例性的,并不用于对本发明进行限制,本发明应根据所附的权利要求进行解释。

Claims (13)

1.一种分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述方法,包括下列步骤:
步骤100.将P2P网络划分成若干个区域,每个区域对应一个AS号和PID号;P2P内容提供商在各个区域内部署索引服务器,索引服务器之间构成DHT网络,索引服务器对其区域内的终端提供索引信息;互联网服务提供商部署策略服务器,来维护各AS号和PID号与对应区域中的索引服务器间的映射关系,所述策略服务器通过向索引服务器提供策略矩阵来指导索引服务器对终端的索引服务;
步骤200.各所述区域中的终端通过定位服务器和策略服务器,定位自身所属的区域和本地索引服务器;
步骤300.各所述区域中的终端拥有新资源时将所述新资源的信息上报本地索引服务器,本地索引服务器维护由所述新资源的信息建立的索引信息,并根据所述索引信息借助所述策略服务器获取策略矩阵信息;
步骤400.终端从种子服务器下载种子文件,并根据种子文件中的资源哈希值向本地索引服务器发送请求索引信息,本地索引服务器收到请求后,根据期望返回的终端数目和策略矩阵记录的各个区域的AS号和PID号的百分比,计算各个区域内能够返回的终端数目;
步骤500.所述终端根据索引服务器返回的索引信息与相应的终端进行连接并进行资源下载。
2.根据权利要求1所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述步骤200,包括下列步骤:
步骤210.终端向所述定位服务器请求获取所述终端对应区域的AS号和PID号;
步骤220.根据所述AS号和PID号,终端向所述策略服务器发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息;
步骤230.所述终端存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件。
3.根据权利要求2所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述终端将所属区域和所属索引服务器的信息存储在本地,下次启动可直接获得,除非当前索引服务器不可用,否则不重复获取索引服务器信息。
4.根据权利要求1所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述步骤300,包括下列步骤:
步骤S310,终端在向本地索引服务器请求索引信息的同时,定期向本地索引服务器发送新资源的信息,本地索引服务器记录并维护上述新资源的信息;
步骤S320,各个本地索引服务器会定期与策略服务器交互,策略服务器依据从各索引服务器搜集的索引信息,以及互联网服务提供商提供的网络链路信息以及路由策略来计算和更新策略矩阵,并定期将策略矩阵下发到各索引服务器;策略服务器同时维护各AS号PID号与各本地索引服务器间的映射关系。
5.根据权利要求4所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述新资源的信息,是指<资源哈希值,本终端信息>,其中本终端信息,包括终端身份ID标识、IP地址、端口号、各个资源文件的下载进度。
6.根据权利要求5所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述步骤400,包括下列步骤:
步骤410.终端从种子服务器下载种子文件,其中包含资源哈希值,以及关于资源的其他描述信息;
步骤420.终端根据所述资源哈希值以及终端自身期望返回的终端数目,请求索引服务器,以获得相应的索引信息;
步骤430.本地索引服务器收到请求后,根据期望返回的终端数目和策略矩阵记录的各个区域的AS号和PID号的百分比,计算各个区域内能够返回的终端数目;
步骤440.本地索引服务器通过与其他索引服务器交互,查询并判断各区域内能够返回的终端数目是否满足期望返回的终端数目,若是,则按比例将本地区域和其他区域内的索引信息返回给终端;否则执行步骤450;
步骤450.判断请求次数是否超过预设值,若是,则返回所述能够返回的终端数目;否则返回步骤420。
7.根据权利要求6所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述步骤500,包括下列步骤:
步骤510.所述终端根据索引服务器返回的包含终端端口和IP地址的索引信息,与相应的终端进行连接并进行资源下载;
步骤520.当终端与其他终端的连接数不足时,本地终端将再次向本地索引服务器请求索引信息,执行步骤420-460;
步骤530.当索引信息请求失败时,本地终端将定期重试请求,直至达到一个请求次数的上限,则放弃本次资源下载操作。
8.根据权利要求1所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述策略矩阵,是由策略服务器依据从各索引服务器搜集的终端分布信息以及互联网服务提供商提供的链路信息以及路由策略信息,计算得到各个不同区域间终端的理想比例关系。
9.根据权利要求1所述的分布式索引服务器架构下的P2P流量优化方法,其特征在于,所述索引信息,是指<资源哈希值,终端列表>信息对。
10.一种分布式索引服务器架构下的P2P流量优化系统,其特征在于,所述系统,包括:定位服务器、多个索引服务器、策略服务器和多个P2P终端,其中:
所述定位服务器由互联网服务提供商部署在经过区域划分的网络中,各所述区域中的终端通过所述定位服务器定位终端所在的区域;
所述索引服务器由P2P内容提供商部署在各区域中,用于维护本地终端上报的由新资源的信息建立的索引信息;并根据本地终端发送的请求索引信息以及策略服务器的策略矩阵信息,按比例向本地终端返回索引信息;
所述策略服务器由互联网服务提供商部署在经过区域划分的网络中,定期与各索引服务器交互,获取所述索引信息,更新策略矩阵信息并定期将策略矩阵下发到各索引服务器;
所述P2P终端根据索引服务器返回的索引信息与相应的终端进行连接并进行资源下载;
所述定位服务器,包括:
定位信息存储模块,用于存储所述P2P终端对应区域的AS号和PID号;
所述索引服务器之间构成DHT网络,所述索引服务器,包括:
索引信息维护模块,用于记录并维护由所述P2P终端定期发送的新资源信息组成的索引信息;
计算模块,用于根据本地终端发送的请求索引信息以及策略服务器的策略矩阵信息,计算各个区域内应该返回的终端数目;
判断模块,用于判断各区域内能够返回的终端数目是否满足期望返回的终端数目,以及判断请求次数是否超过预设值;
索引信息返回模块,用于根据所有其他区域的索引信息,并连同本区域内的索引信息一起返回给P2P终端;
所述策略服务器,包括:
映射关系维护模块,用来维护各AS号和PID号与对应区域中的索引服务器间的映射关系;
策略矩阵存储模块,用于存储指导索引服务器对终端的索引服务的策略矩阵;
策略矩阵计算模块,用于根据所述P2P终端的分布情况、网络链路状况以及路由策略,实时维护和更新策略矩阵;
所述P2P终端,包括:
文件下载模块,用于根据索引服务器返回的包含终端端口和IP地址的索引信息,与相应的终端进行连接并进行资源下载;
索引信息获取模块,用于根据种子文件的哈希值以及P2P终端自身期望返回的终端数目,请求索引服务器,以获得相应的索引信息;
终端判断模块,用于判断与终端连接的其他终端的数目是否足够,以及请求索引信息次数是否达到上限;
定位模块,用于向所述定位服务器请求获取所述终端对应区域的AS号和PID号,再根据所述AS号和PID号,向所述策略服务器发送查询请求,查询自身所属的本地索引服务器的IP地址和端口信息,并存储所述AS号和PID号以及所述索引服务器的IP地址和端口信息到本地文件。
11.根据权利要求12所述的分布式索引服务器架构下的P2P流量优化系统,其特征在于,所述新资源的信息,是指<资源哈希值,本终端信息>,其中本终端信息,包括终端身份ID标识、IP地址、端口号、各个资源文件的下载进度。
12.根据权利要求10所述的分布式索引服务器架构下的P2P流量优化系统,其特征在于,所述策略矩阵,是由策略服务器依据从各索引服务器搜集的终端分布信息以及互联网服务提供商提供的链路状况以及路由策略信息,计算得到各个不同区域间终端的理想比例关系。
13.根据权利要求10所述的分布式索引服务器架构下的P2P流量优化系统,其特征在于,所述索引信息,是指<资源哈希值,终端列表>信息对。
CN201010175975XA 2010-05-14 2010-05-14 分布式索引服务器架构下的p2p流量优化方法和系统 Expired - Fee Related CN101854387B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010175975XA CN101854387B (zh) 2010-05-14 2010-05-14 分布式索引服务器架构下的p2p流量优化方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010175975XA CN101854387B (zh) 2010-05-14 2010-05-14 分布式索引服务器架构下的p2p流量优化方法和系统

Publications (2)

Publication Number Publication Date
CN101854387A CN101854387A (zh) 2010-10-06
CN101854387B true CN101854387B (zh) 2013-03-27

Family

ID=42805651

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010175975XA Expired - Fee Related CN101854387B (zh) 2010-05-14 2010-05-14 分布式索引服务器架构下的p2p流量优化方法和系统

Country Status (1)

Country Link
CN (1) CN101854387B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102045399B (zh) * 2010-12-30 2013-09-18 中国联合网络通信集团有限公司 云计算模式文件系统及文件读取方法
CN102739622A (zh) * 2011-04-15 2012-10-17 北京兴宇中科科技开发股份有限公司 一种可扩展的数据存储系统
CN102855238A (zh) * 2011-06-28 2013-01-02 腾讯科技(深圳)有限公司 资源数据下载方法及系统
CN103457972B (zh) * 2012-06-01 2018-06-01 腾讯科技(深圳)有限公司 一种p2p系统的节点信息处理方法和系统
CN103731454B (zh) * 2012-10-12 2019-03-29 北京音之邦文化科技有限公司 一种在点对点网络中对请求进行响应的方法及服务器系统
WO2016015363A1 (zh) * 2014-08-01 2016-02-04 苏州阔地网络科技有限公司 一种资源控制架构及应用该架构的方法
CN106790609B (zh) * 2016-12-29 2020-03-03 北京奇艺世纪科技有限公司 数据传输方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355468A (zh) * 2007-07-23 2009-01-28 中国科学院声学研究所 一种p2p流媒体信息发布的方法
CN101483604A (zh) * 2009-02-16 2009-07-15 华为技术有限公司 资源列表发送方法、装置和系统
CN101572605A (zh) * 2009-06-01 2009-11-04 上海山牡泽牡网络科技有限公司 基于p2p&p4p平台架构及其处理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827279B2 (en) * 2004-01-30 2010-11-02 Hewlett-Packard Development Company, L.P. Selecting nodes close to another node in a network using location information for the nodes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355468A (zh) * 2007-07-23 2009-01-28 中国科学院声学研究所 一种p2p流媒体信息发布的方法
CN101483604A (zh) * 2009-02-16 2009-07-15 华为技术有限公司 资源列表发送方法、装置和系统
CN101572605A (zh) * 2009-06-01 2009-11-04 上海山牡泽牡网络科技有限公司 基于p2p&p4p平台架构及其处理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周巍 等.《基于P4P技术的互联网流量优化系统研究》.《电信科学》.2009, *

Also Published As

Publication number Publication date
CN101854387A (zh) 2010-10-06

Similar Documents

Publication Publication Date Title
CN101854387B (zh) 分布式索引服务器架构下的p2p流量优化方法和系统
Hu et al. EASM: Efficiency-aware switch migration for balancing controller loads in software-defined networking
US8606846B2 (en) Accelerating peer-to-peer content distribution
CN104618506B (zh) 一种众包的内容分发网络系统、方法与装置
JP5745169B2 (ja) コンテンツ処理方法、コンテンツ処理デバイス、およびコンテンツ処理システム
Wittie et al. Exploiting locality of interest in online social networks
CN102404378B (zh) 一种流媒体分发传输网络系统
CN104022911B (zh) 一种融合型内容分发网络的内容路由管理方法
US20090100128A1 (en) Accelerating peer-to-peer content distribution
US20110078230A1 (en) Method and system for providing a cdn with granular quality of service
CN102291447A (zh) 内容分发网络负载调度方法和系统
CN101217565B (zh) 一种对等网络视频共享系统中分类检索的网络组织方法
CN101014046B (zh) 服务承载网中服务定位和服务质量路由的集成方法
Ahnn et al. Geoserv: A distributed urban sensing platform
CN102098228A (zh) 一体化标识网络移动性管理系统及方法
CN101710904A (zh) P2p流量优化方法及其系统
CN100473007C (zh) 内容交换网络
CN101980505A (zh) 一种基于3Tnet的视频点播的负载均衡方法
WO2009076251A2 (en) Accelerating peer-to-peer content distribution
CN102594606A (zh) 基于多Agent的演进型智能节点重叠网络系统
CN103179045B (zh) 支持p2p流量优化的资源节点选择方法
CN102017568B (zh) 用于递送自主播放的内容的系统
CN101626336A (zh) 一种利用信任机制提高p2p覆盖网络交互性能的方法
CN115883657A (zh) 一种云盘服务加速调度的方法及系统
Shen et al. Hash-based proximity clustering for load balancing in heterogeneous DHT networks

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
TR01 Transfer of patent right

Effective date of registration: 20190109

Address after: Room 201, Building A, No. 1 Qianwan Road, Qianhai Harbour Cooperation Zone, Shenzhen, Guangdong 518000

Patentee after: Shenzhen Calculator Express Technology Co., Ltd.

Address before: 100080 No. 6 South Road, Zhongguancun Academy of Sciences, Beijing, Haidian District

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

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: 20130327

Termination date: 20190514