CN105007190B - 一种p2p组网质量优化方法 - Google Patents

一种p2p组网质量优化方法 Download PDF

Info

Publication number
CN105007190B
CN105007190B CN201510456246.4A CN201510456246A CN105007190B CN 105007190 B CN105007190 B CN 105007190B CN 201510456246 A CN201510456246 A CN 201510456246A CN 105007190 B CN105007190 B CN 105007190B
Authority
CN
China
Prior art keywords
node
layer
grade
quality
partner
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.)
Active
Application number
CN201510456246.4A
Other languages
English (en)
Other versions
CN105007190A (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.)
Hangzhou Strong Education Technology Co Ltd
Original Assignee
Hangzhou Strong Education Technology Co Ltd
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 Hangzhou Strong Education Technology Co Ltd filed Critical Hangzhou Strong Education Technology Co Ltd
Priority to CN201510456246.4A priority Critical patent/CN105007190B/zh
Publication of CN105007190A publication Critical patent/CN105007190A/zh
Application granted granted Critical
Publication of CN105007190B publication Critical patent/CN105007190B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出一种P2P组网质量优化方法,包括下列步骤:初始化节点管理列表,根据新增节点的上传能力将其分配加入不同的等级;当节点加入、退出、超时、以及运营商、省、市或等级属性有变化时,更新节点管理列表;定时检查所有等级的层状态并优化层结构,包括:当发现某层等级需要补充节点时,从下层节点中选择一个节点质量最好的节点补充上来;然后调整层结构,选出每层节点质量最好的节点和最差的节点,将节点质量最好的节点提升一层等级,并将节点质量最差的节点重新分配等级层。本发明能够对节点按照不同属性进行有效的分类管理,并自动对各等级层的节点进行层级调整、以便优化节点等级层质量,在进行伙伴节点匹配时能够迅速找到最佳节点。

Description

一种P2P组网质量优化方法
技术领域
本发明涉及互联网通讯中的点对点(Peer to Peer,简称P2P)技术,且特别涉及一种P2P组网质量优化方法。
背景技术
P2P是点对点对等连接peer to peer模式的简称。点对点对等网络是最近几年新兴的网络技术,相对于传统的C/S模式,P2P模式一个非常显著的特点就是节点无需依赖集中式服务器资源,各节点可以直接进行通信。每个节点具有相同的地位,既可以请求服务,也可以提供服务,同时扮演着C/S模式中服务器和客户机的双重角色,甚至还可以具有路由器和高速缓存的功能。在P2P模式下,由于每个节点都具有客户机和服务器的功能,这样每个节点在从别的节点接收数据流的同时还向其他节点发送数据流。利用这个特点,P2P网络技术可以应用现有的计算资源和有限网络带宽来实现大规模网络流媒体直播或点播以及进行文件传输。
P2P技术是一种用于不同终端用户之间、不经过中继设备直接交换数据或服务的技术。它打破了传统的Client/Server模式,在对等网络中,每个节点的地位都是相同的,具备客户端和服务器双重特性,可以同时作为服务使用者和服务提供者。P2P的核心是利用用户资源,通过对等方式进行文件传输,这完全不同于传统的客户服务器计算模型。P2P通过“非中心化”的设计和多点传输机制,实现了不依赖服务器而快速的交换文件。
依照P2P网络节点信息存储与搜索方式的不同,诸多P2P协议可以分为两大类:结构化(Structured)的系统与非结构化(Unstructured)的系统。在结构化P2P系统中,每个节点只存储特定的信息或特点信息的索引。当用户需要在P2P系统中获取信息时,他们必须知道这些信息(或索引)可能存在于哪些节点中。由于用户预先知道应该搜索哪些节点,避免了非结构化P2P系统中使用的泛洪式查找,因此提高了信息搜索的效率。
结构化P2P的核心技术是分布式哈希表(Distributed Hash Table,DHT)结构,其主要特点是通过将数据资源的特征(关键字)经过哈希运算,得到键值(Hash Key),数据资源的分布存储依据键值来进行。标准的DHT结构视整个网络标识(Identity,ID)空间为平面空间,因此数据资源以均匀概率密度随机哈希到整个空间中的某一点。
DHT类结构能够自适应节点的动态加入/退出,有着良好的可扩展性、鲁棒性、节点ID分配的均匀性和自组织能力。由于重叠网络采用了确定性拓扑结构,DHT可以提供精确的发现。只要目的节点存在于网络中,DHT总能发现它,发现的准确性得到了保证。但是DHT网络拓扑结构的缺点在于:额外开销比较大,随P2P网络规模的扩大,网络开销呈指数级增长。搜索请求遍历整个P2P网络要经过很多跳,完整的搜索结果延时比较大,存在着路由表容量不够和路由延时等方面的问题。总的来说,DHT结构的最大问题是DHT的维护机制较为复杂,尤其是节点频繁加入退出造成的网络波动(Churn)会极大增加DHT的维护代价。
采用DHT算法的P2P节点选择方法并未考虑下载节点间的流量和带宽差异,因而选择到的节点也并非最优下载节点。如果当前节点和某个邻居节点有数据交换,则此两者之间连接的质量就会变得非常重要,因为这将直接关系到用户体验,然而由于各个节点情况不同,通常会出现以下几个方面的问题:
1.较低的数据传输速度。在进行数据交换的时候,节点之间的距离往往会成为影响传输速度的一个因素。与远端节点进行数据交换,由于路由路径的加长、各种排队时延的增加等因素均会导致其速度将远小于和近距离节点的数据交换速度,这将直接影响用户的应用体验,特别是P2P流媒体等实时应用。
2.网络拥塞,降低网络的健壮性。大面积的长距离的节点之间的数据交换,会导致网络流量特别是骨干网流量的大幅增加,也进一步造成节点间的数据传输延时较大,影响用户的使用效果,从而用户希望建立更多的连接以提高数据传输速度,导致更严重的网络拥塞,使网络陷入恶性循环中。
3.不必要的跨运营商间流量。同一运营商(ISP)的互联网节点相互之间的连接延迟较低,带宽较高,而跨ISP连接的质量较低,也可能带来高额的ISP网间结算费用。当前P2P网络的实现忽略了运营商连接的代价,从而使得P2P系统大大增加了跨运营商的流量,增加了运营商的运营成本。
发明内容
本发明提出一种P2P组网质量优化方法,能够对节点按照不同属性进行有效的分类管理,并自动对各等级层的节点进行层级调整、以便优化节点等级层质量,在进行伙伴节点匹配时能够迅速找到最佳节点,保证节点数据传输速度,避免了大面积长距离数据传输和跨运营商间流量的问题,降低了运营成本的同时提高了用户体验。
为了达到上述目的,本发明提出一种P2P组网质量优化方法,包括下列步骤:
初始化节点管理列表,所述节点管理列表结构具有多层属性,其依次包括运营商信息、省信息、市信息、等级信息和节点信息,其中所述等级信息包括多层等级,根据新增节点的上传能力将所述节点分配加入不同的等级,所述多层等级的数量为预先设定;
当节点加入、退出、超时、以及运营商、省、市或等级属性有变化时,更新所述节点管理列表;
定时检查所有等级的层状态并优化层结构,其包括:
当发现某层等级需要补充节点时,从下层节点中选择一个节点质量最好的节点补充上来,一次只补充一层等级;
然后调整层结构,选出每层节点质量最好的节点和最差的节点,将所述节点质量最好的节点提升一层等级,并将所述节点质量最差的节点重新分配等级层。
进一步的,所述节点管理列表顶层属性为运营商信息和省信息组成的二维数组结构;所述市信息为所述顶层属性的从属属性,其为数图结构;所述等级信息为所述市信息的从属属性,其为数组结构;所述节点信息为所述等级信息的从属属性,其为数图结构。
进一步的,所述运营商信息、省市信息为根据节点的IP地址从IP地址数据库获取。
进一步的,当有节点正常退出时,其会发送退出消息给追踪服务器,并在所述节点管理列表中的节点信息中将所述节点删除。
进一步的,追踪服务器具有线程定时检查所有节点,并将超时汇报的节点从所述节点管理列表中的节点信息中删除。
进一步的,所述等级信息属性还包括每一级等级所具有的节点数量信息。
进一步的,当顶层等级节点数量未达到最小值时,新增节点加入顶层等级中,其中所述顶层等级的节点数量最小值为预设值。
进一步的,次顶层等级开始,所述新增节点等级分配采用以下判断方法:
(本层人数+1)*码率<上层的总上传能力,
本层总上传能力+新增节点上传能力>下层人数*码率,
当满足以上两个条件时,新增节点加入本层等级,如果全部等级层都不满足条件时,则加入顶层等级,其中所述码率为当前层的固定下载速率,上传能力为节点所能达到的最大上传速率,从次顶层等级开始,各等级层同样具有预设的节点数量最小值,当发现某等级层的节点数量未达到预设的最小值时,则优先判断新增节点是否可以加入当前等级层。
进一步的,所述节点质量的计算公式为:
节点上传能力+(最大服务人数-当前服务人数)+服务持续时间,其中最大服务人数-当前服务人数表示当前节点可服务人数,可服务人数越多节点质量越高,服务持续时间最大值为60分,持续时间越长代表该节点离开的可能性越低,节点质量越高。
进一步的,当节点选择伙伴节点时,按照以下方法进行:
选择伙伴节点时必须是同运营商的节点,如果同运营商的伙伴节点数量不够,也不向其他运营商寻找伙伴节点;
优先选择同城的伙伴节点,如果当前城市没选够伙伴节点,则在同省内用游标轮询的方式查询其他的城市,依次寻找伙伴节点,直到该省的城市都找完;
如果当前省内没选够伙伴节点,则在同运营商内随机用游标轮询的方式查询其他的省,依次寻找伙伴节点,直到该运营商的所有省都找完。
进一步的,当节点在某个城市选择伙伴节点时,根据其分配的等级层,只选择上层等级的伙伴节点。
进一步的,当节点在某个等级层选择伙伴节点时,通过游标轮询的方式选择连接数未达到上限的伙伴节点。
进一步的,当节点选择伙伴节点时,判断其是否为内网用户,与当前节点是否为同一内网,与当前节点能否内网直连。
进一步的,发布用户节点直接从CDN服务器获取数据,并且不提供P2P服务。
本发明提出的P2P组网质量优化方法,将节点根据所属运营商、所属省市的不同属性进行归类,并且根据各节点上传能力将其划分为不同等级进行管理,并在节点加入、退出、超时、以及运营商、省、市或等级属性有变化时,实时更新所述节点管理列表,同时本发明提出的P2P组网质量优化方法还会定时检查所有等级的层状态并优化层结构,通过动态调整节点所属的等级层,将质量较好的节点提升其所属等级层,并将质量较差的节点重新分配等级层,从而达到优化等级层结构的目的;在匹配伙伴节点时,优先选择同城的上层节点,并且只在同运营商内部进行选择伙伴节点,能够迅速找到传输距离较短、质量较好的最佳节点,保证节点数据传输速度,避免了大面积长距离数据传输和跨运营商间流量的问题,降低了运营成本的同时提高了用户体验。
附图说明
图1所示为本发明较佳实施例的P2P组网质量优化方法流程图。
图2所示为本发明较佳实施例的节点管理列表结构示意图。
图3所示为本发明较佳实施例的新增节点等级分配示意图。
具体实施方式
以下结合附图给出本发明的具体实施方式,但本发明不限于以下的实施方式。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比率,仅用于方便、明晰地辅助说明本发明实施例的目的。
请参考图1,图1所示为本发明较佳实施例的P2P组网质量优化方法流程图。本发明提出一种P2P组网质量优化方法,包括下列步骤:
步骤S100:初始化节点管理列表,所述节点管理列表结构具有多层属性,其依次包括运营商信息、省信息、市信息、等级信息和节点信息,其中所述等级信息包括多层等级,根据新增节点的上传能力将所述节点分配加入不同的等级,所述多层等级的数量为预先设定;
步骤S200:当节点加入、退出、超时、以及运营商、省、市或等级属性有变化时,更新所述节点管理列表;
步骤S300:定时检查所有等级的层状态并优化层结构,其包括:
当发现某层等级需要补充节点时,从下层节点中选择一个节点质量最好的节点补充上来,一次只补充一层等级;
然后调整层结构,选出每层节点质量最好的节点和最差的节点,将所述节点质量最好的节点提升一层等级,并将所述节点质量最差的节点重新分配等级层。
请参考图2,图2所示为本发明较佳实施例的节点管理列表结构示意图。根据本发明较佳实施例,所述运营商信息isp包括节点所属的运营商标识,所述省信息province和市信息city分别包括节点所属的省市标识,所述等级信息level包括节点所属的等级标识,所述节点信息peer包括节点标识。
所述节点管理列表顶层属性为运营商信息isp和省信息province组成的二维数组结构,即二维array(isp,province);所述市信息city为所述顶层属性的从属属性,其为数图结构map;所述等级信息level为所述市信息city的从属属性,其为数组结构array;所述节点信息peer为所述等级信息level的从属属性,其为数图结构map。
其中,所述运营商信息isp包括的节点所属的运营商标识,其为系统为该运营商所设定的运营商代码,在国内一般具有20个左右的ISP,分别为它们设定不同的运营商代码;所述省信息province包括的节点所属的省标识为系统为该省设定的省代码,省的数量可以设定为50个,中国具有34个省级行政区,预留16个常见的海外地区,同样也可以设定为某国具有50个左右的省(州),分别为它们设定不同的省代码以便进行区别,不是每个省都具有所有的ISP,一般来说每个省平均具有5个ISP;所述市信息city包括的节点所属的市标识为系统为该市设定的市代码,平均每个省具有20个左右的市;所述等级信息level包括的节点所属的等级标识,其为系统为该等级设定的等级代码,所述多层等级的数量为预先设定,例如系统设定具有5个等级(一般来说等级层数量设定为3个以上),分别为它们设定不同的等级代码;节点信息peer包括的节点标识为系统为该节点设定的节点代码以便区别不同的节点;假设每个等级具有10个节点,那么整个P2P网络就具有5*50*20*5*10=250000个节点。
将节点管理列表的结构在启动时就初始化好,初始化好之后就不再变化,由于运营商(isp)、省(province)、市(city)、等级(level)等属性层基本固定不变,这样可以在最底层即节点信息层加读写锁,极大地减少了锁等待时间,提高整体访问性能。
根据本发明较佳实施例,所述运营商信息、省市信息为根据节点的IP地址从IP地址数据库获取,IP地址数据库是根据IP地址地理位置映射技术建立的,此方法是最成熟的地理位置识别技术,适合大规模网络流量研究,区分精度可以达到具体的地理位置,其原理是IP地址在一定时间和一定网络范围内会被分配给特定地理位置。IP地址地理位置映射技术使用简单的数据库技术建立IP地址与实际地理位置的对应关系。现有IP地址地理位置映射数据库主要来源于IP地址管理机构、商业组织、民间机构。
IP地址地理位置映射目前最广泛的应用是将纯真版IP数据库集成到系统中,可以随时根据IP地址查询所属节点的地理位置。该数据库的数据来源于中国电信、中国网通、长城宽带、网通宽带、聚友宽带等ISP的最新准确IP地址地理位置数据。其地理位置信息能精确到区/县级,是目前地理位置映射记录数最多、最完善的IP数据库。该数据库只有一个QQWry.dat文件,可方便地嵌入到网络查询程序中,操作简单、快速,并可以通过网络随时更新记录。
所述等级信息属性还包括每一层等级所具有的节点数量信息,包括每层等级预先设定的节点数量最小值以及当前所具有的节点个数,例如最顶层预设节点数量最小值为5个,目前已经具有3个节点。
根据本发明较佳实施例,节点所具有的所述等级信息的多层等级按照以下方式划分:
当顶层等级节点数量未达到最小值时,新增节点加入顶层等级中,其中所述顶层等级的节点数量最小值为预设值,例如最顶层预设节点数量最小值为5个,目前已经具有3个节点,则新增节点直接加入顶层等级中,一直到顶层等级节点数量达到5个,即预设的节点数量最小值,然后优先考虑将新增节点加入从次顶层开始的等级层中;同时,当最顶层等级有节点离开导致其节点数量小于预设的节点数量最小值时,优先将新增节点直接加入最顶层等级中;
从次顶层等级开始,所述新增节点等级分配采用以下判断方法:
(本层人数+1)*码率<上层的总上传能力,
本层总上传能力+新增节点上传能力>下层人数*码率,
当满足以上两个条件时,新增节点加入本层等级,如果全部等级层都不满足条件时,则加入顶层等级,其中所述码率为当前层的固定下载速率,上传能力为节点所能达到的最大上传速率,从次顶层等级开始,各等级层同样具有预设的节点数量最小值,当发现某等级层的节点数量未达到预设的最小值时,则优先判断新增节点是否可以加入当前等级层。
例如最顶层等级(即第一等级层)的节点数量达到预设最小值5个节点时,新增节点加入次顶层等级(即第二等级层),在添加第二等级层的过程中,也可能会出现不满足节点等级划分的判断条件,此时直接将该节点加入第一等级层;例如第二等级层预设的节点数量最小值为4个,当第二等级层的新增节点数量达到最小值4个后,将新增节点加入第三等级层,当第三等级层的新增节点数量达到最小值4个,再将新增节点加入第四等级层,依次将所有预设数量的等级层节点数量都达到预设最小值后,根据新增节点等级分配判断方法将节点分配到各个相应的等级层中。同时,当某等级层有节点离开导致其节点数量小于预设的节点数量最小值时,优先判断新增节点是否可以加入当前等级层,直至当前等级层的节点数量达到预设的节点数量最小值,当有多个等级层出现节点数量小于预设的节点数量最小值时,按照所述等级层的层级从上到下依次判断新增节点是否可以加入当前等级层。
请参考图3,图3所示为本发明较佳实施例的新增节点等级分配示意图。以一较佳实施例作为说明,系统预设有3个等级层,其中顶层等级具有5个节点,其上传能力分别为50、40、30、20、10kBps,顶层等级总的上传能力为150KBps,该层码率设定为20KBps;第二等级层具有4个节点,其上传能力分别为50、40、30、20KBps,第二等级层总的上传能力为140KBps,该层码率设定为20KBps;第三等级层具有3个节点,其上传能力分别为40、30、20KBps,第三等级层总的上传能力为90KBps,该层码率设定为20KBps;3个等级层均达到节点数量最小值,此时有新增节点要求加入,此节点上传能力为10KBps,从次顶层即第二等级层开始判断是否可以加入该层:
(本层人数+1)*本层码率=(4+1)*20=100<上层的总上传能力=150,
本层总上传能力+新增节点上传能力=140+10=150>下层人数*下层码率=3*20=60,
满足以上2个判断条件,因此将新增节点加入第二等级层。
根据本发明较佳实施例,当节点加入、退出、超时、以及运营商、省、市或等级属性有变化时,需要更新所述节点管理列表。其中,运营商、省、市或等级属性变化几率较小,初始化之后一般不做改变,重点在于节点属性层的变化较为频繁,需要根据节点的实际情况实时更新节点管理列表。
当有节点加入时,按照上述新增节点等级分配方法,确定新增节点加入的等级层,对该层等级下属的节点信息位图(peer_map)加写锁,然后将所述节点(peerid)加入到节点信息位图(peer_map)中。
当有节点正常退出时,其会发送退出消息(logout)给追踪服务器,并在所述节点管理列表中的节点信息中将节点信息位图(peer_map)加写锁,然后将所述节点(peerid)删除。
如果节点非正常退出,即没有向所述追踪服务器发送退出消息,此时所述追踪服务器具有线程定时检查所有节点,将所有超时汇报的节点按照(运营商、省、市、等级)收集起来,遍历完所有节点后,将超时汇报的节点(peerid)从所述节点管理列表中的节点信息中删除并更新所述节点管理列表。
根据本发明较佳实施例,所述节点质量的计算公式为:
节点上传能力+(最大服务人数-当前服务人数)+服务持续时间,其中最大服务人数-当前服务人数表示当前节点可服务人数,可服务人数越多节点质量越高,服务持续时间最大值为60分,持续时间越长代表该节点离开的可能性越低,节点质量越高。
节点上传能力为节点所能达到的最大上传速率;最大服务人数为系统设定当前节点所能具有的伙伴节点最大数量,当节点连接数达到最大值后不再接收新的连接请求,当前服务人数为当前节点目前已经连接的伙伴节点数量,(最大服务人数-当前服务人数)代表当前节点还能链接的伙伴节点数量,数值越高代表当前节点的服务质量较高同时连接的成功几率较高;服务持续时间为当前节点在P2P网络中已经服务的连续累积时间,例如在P2P直播服务中,节点加入P2P网络观看直播的时间越长则其离开的可能性越低,节点质量越高。
根据节点质量计算公式得出各个节点的质量数值,从而找出每个等级层中质量最好的节点和质量最差的节点,例如某节点的上传能力为50KBps,其最大服务人数为20,当前服务人数为10,服务持续时间为30分钟,那么该节点的质量数值为50+(20-10)+30=90。
P2P系统中每个节点自己维护一个伙伴列表(Partnerlist),节点可以从伙伴节点(partners)获取媒体数据,节点和伙伴节点不断的交换各自的缓存信息,然后根据伙伴节点的缓存信息,通过一定的数据调度算法从伙伴节点获取媒体数据。P2P系统中每个节点借助其他节点的资源得到信息或服务,伙伴节点(partners)的选择对提高P2P网络性能,降低资源浪费都有重要意义。追踪服务器必须对所有的节点信息进行高效的管理,当有节点请求伙伴节点时,追踪服务器能够快速的在百万(甚至千万)级别的节点中找出最佳的伙伴节点。而且每秒可能处理10万个以上这样的请求,每个频道单独管理一个节点管理列表。
根据本发明较佳实施例,当节点选择伙伴节点时,按照以下方法进行:
选择伙伴节点时必须是同运营商的节点,如果同运营商的伙伴节点数量不够,也不向其他运营商寻找伙伴节点,避免出现跨运营商间流量,不仅能够有效较低数据传输的延时,提高用户体验,同时也降低了运营费用;
优先选择同城的伙伴节点,如果当前城市没选够伙伴节点,则在同省内用游标轮询的方式查询其他的城市,依次寻找伙伴节点,直到该省的城市都找完,尽量保证伙伴节点的数据传输能够实现短距离传输,有效降低数据传输的延时,提高用户体验;
如果当前省内没选够伙伴节点,则在同运营商内随机用游标轮询的方式查询其他的省,依次寻找伙伴节点,直到该运营商的所有省都找完。
当节点在某个城市选择伙伴节点时,根据其分配的等级层,只选择上层等级的伙伴节点,例如当前节点为第三等级层节点,那么其只选择第二等级层的节点,从而确保当前节点获取到较高质量的伙伴节点,保证节点得到优质的数据获取服务。进一步的,当节点在某个等级层选择伙伴节点时,通过游标轮询的方式选择连接数未达到上限的伙伴节点,所述节点的连接数为系统设定,当节点连接数达到上限值后,系统不再为其分配伙伴节点,例如某节点设定连接数最大值为10个,当有10个伙伴节点连接该节点获取数据后,系统不再为该节点分配新的伙伴节点。所述等级信息属性还包括每一级等级所具有的节点个数信息,当某层等级的节点个数为0时,就不再往下查找,减少了无效查询次数。
当节点选择伙伴节点时,判断其是否为内网用户,与当前节点是否为同一内网,与当前节点能否内网直连,如果伙伴节点处于同一内网中并且能够实现网内直连,则直接选择该节点作为当前节点的伙伴节点,由于伙伴节点之间可以直接享受内网数据传输速率并且具有较低的延时,从而实现伙伴节点之间的高速连接。
根据本发明较佳实施例,发布用户节点直接从CDN服务器获取数据,并且不提供P2P服务,源节点作为一个特殊的节点是所有节点的伙伴节点,但不承担下载数据的责任。
本发明提出的伙伴节点筛选方法的目的是实现流量本地化,也就是节点间的数据交换尽量在本自治域(Autonomous System,AS)内,例如尽量在同一省市内,尽量减少跨自治域的数据流量,同时避免出现跨运营商网络的数据流量。在P2P网络中选择伙伴节点时引入节点筛选策略或者节点筛选方法,将达到P2P业务提供商、用户、网络运营商三方多赢的效果:一方面可以提高P2P应用的服务质量,提高用户体验,另一方面也就提高了P2P业务提供商的用户量,为其实现盈利打下基础,同时还可以减少运营商间的流量,降低运营商运营成本,最终达到优化P2P组网的目的。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。

Claims (10)

1.一种P2P组网质量优化方法,其特征在于,包括下列步骤:
初始化节点管理列表,所述节点管理列表结构具有多层属性,其依次包括运营商信息、省信息、市信息、等级信息和节点信息,其中所述等级信息包括多层等级,根据新增节点的上传能力将所述节点分配加入不同的等级,所述多层等级的数量为预先设定;
当节点加入、退出、超时、以及运营商信息、省信息、市信息或等级信息属性有变化时,更新所述节点管理列表;
定时检查所有等级的层状态并优化层结构,其包括:
当发现某层等级需要补充节点时,从下层节点中选择一个节点质量最好的节点补充上来,一次只补充一层等级;
然后调整层结构,选出每层节点质量最好的节点和最差的节点,将所述节点质量最好的节点提升一层等级,并将所述节点质量最差的节点重新分配等级层,
其中,所述节点质量的计算公式为:节点上传能力+(最大服务人数-当前服务人数)+服务持续时间,其中最大服务人数-当前服务人数表示当前节点可服务人数,可服务人数越多节点质量越高,服务持续时间最大值为60分,持续时间越长代表该节点离开的可能性越低,节点质量越高;
当顶层等级节点数量未达到最小值时,新增节点加入顶层等级中,其中所述顶层等级的节点数量最小值为预设值;
从次顶层等级开始,所述新增节点等级分配采用以下判断方法:
(本层人数+1)*码率<上层的总上传能力,
本层总上传能力+新增节点上传能力>下层人数*码率,
当满足以上两个条件时,新增节点加入本层等级,如果全部等级层都不满足条件时,则加入顶层等级,其中所述码率为当前层的固定下载速率,上传能力为节点所能达到的最大上传速率,从次顶层等级开始,各等级层同样具有预设的节点数量最小值,当发现某等级层的节点数量未达到预设的最小值时,则优先判断新增节点是否可以加入当前等级层。
2.根据权利要求1所述的P2P组网质量优化方法,其特征在于,所述节点管理列表顶层属性为运营商信息和省信息组成的二维数组结构;所述市信息为所述顶层属性的从属属性,其为数图结构;所述等级信息为所述市信息的从属属性,其为数组结构;所述节点信息为所述等级信息的从属属性,其为数图结构。
3.根据权利要求1所述的P2P组网质量优化方法,其特征在于,所述运营商信息、省市信息为根据节点的IP地址从IP地址数据库获取。
4.根据权利要求1所述的P2P组网质量优化方法,其特征在于,当有节点正常退出时,其会发送退出消息给追踪服务器,并在所述节点管理列表中的节点信息中将所述节点删除。
5.根据权利要求1所述的P2P组网质量优化方法,其特征在于,追踪服务器具有线程定时检查所有节点,并将超时汇报的节点从所述节点管理列表中的节点信息中删除。
6.根据权利要求1所述的P2P组网质量优化方法,其特征在于,所述等级信息属性还包括每一级等级所具有的节点数量信息。
7.根据权利要求1所述的P2P组网质量优化方法,其特征在于,当节点选择伙伴节点时,按照以下方法进行:
选择伙伴节点时必须是同运营商的节点,如果同运营商的伙伴节点数量不够,也不向其他运营商寻找伙伴节点;
优先选择同城的伙伴节点,如果当前城市没选够伙伴节点,则在同省内用游标轮询的方式查询其他的城市,依次寻找伙伴节点,直到该省的城市都找完;
如果当前省内没选够伙伴节点,则在同运营商内随机用游标轮询的方式查询其他的省,依次寻找伙伴节点,直到该运营商的所有省都找完。
8.根据权利要求7所述的P2P组网质量优化方法,其特征在于,当节点在某个城市选择伙伴节点时,根据其分配的等级层,只选择上层等级的伙伴节点。
9.根据权利要求7所述的P2P组网质量优化方法,其特征在于,当节点在某个等级层选择伙伴节点时,通过游标轮询的方式选择连接数未达到上限的伙伴节点。
10.根据权利要求7所述的P2P组网质量优化方法,其特征在于,当节点选择伙伴节点时,判断其是否为内网用户,与当前节点是否为同一内网,与当前节点能否内网直连。
CN201510456246.4A 2015-07-30 2015-07-30 一种p2p组网质量优化方法 Active CN105007190B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510456246.4A CN105007190B (zh) 2015-07-30 2015-07-30 一种p2p组网质量优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510456246.4A CN105007190B (zh) 2015-07-30 2015-07-30 一种p2p组网质量优化方法

Publications (2)

Publication Number Publication Date
CN105007190A CN105007190A (zh) 2015-10-28
CN105007190B true CN105007190B (zh) 2018-10-26

Family

ID=54379717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510456246.4A Active CN105007190B (zh) 2015-07-30 2015-07-30 一种p2p组网质量优化方法

Country Status (1)

Country Link
CN (1) CN105007190B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112153682B (zh) * 2020-09-24 2023-03-24 重庆智慧水务有限公司 一种无线局域网的网络自动优化方法
CN113194134B (zh) * 2021-04-27 2023-01-10 上海哔哩哔哩科技有限公司 节点确定方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101500022A (zh) * 2009-03-09 2009-08-05 北大方正集团有限公司 一种数据访问资源的分配方法及其系统和设备
CN101562804A (zh) * 2009-05-12 2009-10-21 中兴通讯股份有限公司 一种基于移动p2p的区域管理服务器系统及其调度方法
CN102333116A (zh) * 2011-09-20 2012-01-25 华中科技大学 P2p网络构建方法及数据定位方法
CN102740165A (zh) * 2011-04-01 2012-10-17 中国电信股份有限公司 对等流媒体直播系统及其中的数据传输方法
CN104717304A (zh) * 2015-03-31 2015-06-17 北京科技大学 一种cdn-p2p内容优化选择系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761514B2 (en) * 2003-11-26 2010-07-20 International Business Machines Corporation Method and apparatus for providing dynamic group management for distributed interactive applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101500022A (zh) * 2009-03-09 2009-08-05 北大方正集团有限公司 一种数据访问资源的分配方法及其系统和设备
CN101562804A (zh) * 2009-05-12 2009-10-21 中兴通讯股份有限公司 一种基于移动p2p的区域管理服务器系统及其调度方法
CN102740165A (zh) * 2011-04-01 2012-10-17 中国电信股份有限公司 对等流媒体直播系统及其中的数据传输方法
CN102333116A (zh) * 2011-09-20 2012-01-25 华中科技大学 P2p网络构建方法及数据定位方法
CN104717304A (zh) * 2015-03-31 2015-06-17 北京科技大学 一种cdn-p2p内容优化选择系统

Also Published As

Publication number Publication date
CN105007190A (zh) 2015-10-28

Similar Documents

Publication Publication Date Title
CN104717304B (zh) 一种cdn‑p2p内容优化选择系统
CN104022911B (zh) 一种融合型内容分发网络的内容路由管理方法
JP4652435B2 (ja) 階層的ピアツーピア・ネットワークの最適運用
CN100544261C (zh) 一种基于网络信息的数据分布/获取方法
EP2091272B1 (en) Method and device for constructing a node identifier
CN103475719A (zh) 一种cdn-p2p融合网络中跨域流量最小化的内容分发方法
CN101217565B (zh) 一种对等网络视频共享系统中分类检索的网络组织方法
CN102546728A (zh) 一种对等网络资源下载方法
Sourlas et al. Cache-aware routing in information-centric networks
Yamamoto A survey of caching networks in content oriented networks
CN105072159B (zh) 一种p2p组网中的节点管理列表结构及其管理方法
CN105007190B (zh) 一种p2p组网质量优化方法
Bastos et al. A forwarding strategy based on reinforcement learning for Content-Centric Networking
Xiaoqiang et al. An in-network caching scheme based on betweenness and content popularity prediction in content-centric networking
Khan et al. Nice: Network-oriented information-centric centrality for efficiency in cache management
Wang et al. Understanding scoped-flooding for content discovery and caching in content networks
Wauters et al. Load balancing through efficient distributed content placement
Kerrouche et al. AC-QoS-FS: Ant colony based QoS-aware forwarding strategy for routing in Named Data Networking
Imai et al. Energy efficient data caching for content dissemination networks
CN107222539A (zh) 一种基于节点竞争时延代价模型的缓存部署方法
Ahmed et al. $\alpha $ Route: Routing on Names
CN114500374B (zh) 一种采用随路改变目的地址的报文路由转发方法
Ayyasamy et al. A qos-aware intelligent replica management architecture for content distribution in peer-to-peer overlay networks
Iqbal Cache-MCDM: A hybrid caching scheme in Mobile Named Data Networks based on multi-criteria decision making
Arvidsson Distance Based Server Selection in 5G 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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Hangzhou City, Zhejiang province Binjiang District 310052 shore road 1168

Applicant after: Hangzhou Strong Education Technology Co., Ltd.

Address before: Hangzhou City, Zhejiang province Binjiang District 310052 shore road 1168

Applicant before: Hangzhou Shi Qiang network technology Co., Ltd

GR01 Patent grant
GR01 Patent grant