一种建立P2P网络的方法、装置、终端设备及存储介质制造方法及图纸

技术编号:20657347 阅读:23 留言:0更新日期:2019-03-23 08:44
本申请公开了一种建立P2P网络的方法、装置、终端设备及存储介质,所述方法包括步骤:检测到加入一P2P网络的指令后,向所述P2P网络中至少一个节点发送连接请求,其中,所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;与响应所述请求的节点建立连接,以更新所述P2P网络。旨在优化P2P网络的建立。

A Method, Device, Terminal Equipment and Storage Medium for Establishing P2P Network

The present application discloses a method, device, terminal device and storage medium for establishing a P2P network. The method comprises steps: after detecting instructions to join a P2P network, a connection request is sent to at least one node in the P2P network, in which the number of other nodes actively connected by any node in the P2P network is not greater than the first set threshold, and any node actively connects. The number of other nodes is not greater than the second set threshold, and the first set threshold is greater than the second set threshold; a connection is established with the node responding to the request to update the P2P network. The purpose is to optimize the establishment of P2P network.

【技术实现步骤摘要】
一种建立P2P网络的方法、装置、终端设备及存储介质
本申请涉及互联网领域,尤其涉及P2P网络领域。
技术介绍
Peer-to-peer(P2P)是一种分布式网络,P2P网络的参与者共享他们所拥有的一部分硬件资源数据(处理能力、存储能力、网络连接能力、打印机等),这些共享资源数据需要由网络提供服务和内容,能被其它对等节点(peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源数据(服务和内容)提供者,又是资源数据获取者。但是现有的P2P网络,易出现饱和现象,而使得新入网的节点无法从其他节点获得资源数据。例如,参照图1a,节点1、2及3两两互为资源数据提供者及资源数据获取者,如每个节点最多作为两个节点的资源数据提供者,那么在有新的节点进入时,节点1、2及3无法给新进入的节点提供资源数据。
技术实现思路
基于此,本申请提供建立P2P网络的方法、装置、终端设备及存储介质。在本申请的第一方面,提供一种建立P2P网络的方法,包括步骤:检测到加入一P2P网络的指令后,向所述P2P网络中至少一个节点发送连接请求,其中,所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;与响应所述请求的节点建立连接,以更新所述P2P网络。在一些例子中,所述向所述P2P网络中至少一个节点发送连接请求,包括步骤:从服务器获取节点列表,所述节点列表包括符合预设条件的节点的地址信息;根据所述节点列表中的节点的地址信息,向所述节点列表中至少一个节点请求连接。在一些例子中,所述预设条件根据本节点所在的终端设备的位置信息确定。在一些例子中,所述与响应所述请求的节点建立连接之后,还包括:向至少一个与本节点建立连接的节点请求资源数据,所述资源数据被封装成数据包,所述数据包由服务器将获取的共享资源数据切割而成,并由服务器按照自定义的格式封装,所述自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性,所述数据包由所述P2P网络中的节点直接或间接从服务器获取。在一些例子中,本节点与已连接的节点间基于不可靠协议传输数据包;检测到加入一P2P网络的指令后,还包括步骤:与服务器建立连接,在检测到存在数据包丢失后,向所述服务器请求传输所述丢失的数据包,其中,本节点与所述服务器间基于可靠协议传输数据包。在一些例子中,所述方法还包括步骤:记录与本节点已连接的节点数量;当与本节点已连接的节点数量少于预设值时,再次向所述P2P网络中的节点发送连接请求。在本申请的第二方面,提供一种建立P2P网络的装置,包括:处理模块,用于检测到加入一P2P网络的指令后,向所述P2P网络中至少一个节点发送连接请求,其中,所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;连接模块,用于与响应所述请求的节点建立连接,以更新所述P2P网络。在一些例子中,所述处理模块用于与响应所述请求的节点建立连接之后,还用于:向至少一个与本节点建立连接的节点请求资源数据,所述资源数据被封装成数据包,所述数据包由服务器将获取的共享资源数据切割而成,并由服务器按照自定义的格式封装,所述自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性,所述数据包由所述P2P网络中的节点直接或间接从服务器获取。在本申请的第三方面,提供一种终端设备,包括:处理器;以及存储器,所述存储器被配置成存储计算机程序,所述计算机程序被配置成被所述处理器执行如前述第一方面任意一项方法所述的操作。在本申请的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行如前述第一方面任意一项方法所述的操作。不同于传统的P2P网络的组建方法,本申请实施例提出的P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值。也就是说,本申请实施例中使每个节点的允许被主动连接的节点数(第一设定阈值)大于允许主动连接其他节点数(第二设定阈值),使得按照本申请实施例的方法,无论整个P2P网络如何组建,一定存在被其他节点主动连接的机会,以致通过本申请实施例组建的P2P网络不可能发生饱和,最终使得新加入的节点能够更容易接入P2P网络中。附图说明图1a为现有的P2P网络示意图;图1b本申请实施例示例性示出的一种P2P场景示意图;图2为本申请实施例示例性示出的一建立P2P网络的方法的部分流程;图3为本申请实施例示例性示出的一P2P网络示意图;图4为本申请实施例示例性示出的步骤S210的具体流程图;图5a为本申请实施例示例性示出的步骤S220的具体流程图;图5b为本申请实施例示例性示出的一P2P网络示意图;图6为本申请实施例示例性示出的直播场景示意图;图7为本申请实施例示例性示出的一建立P2P网络的方法的流程图;图8a-图8c为本申请实施例中三种不同的服务器架构下搭建的网络;图9为本申请实施例示例性示出的一P2P网络示意图;图10为本申请实施例示例性示出的建立P2P网络的装置的示意图;图11为本申请实施例示例性示出的一终端设备的示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。图1b是本申请实施例提出的一种网络架构,该网络架构中包括服务器设备100和客户端设备(110、120、130),客户端设备可以借助服务器设备相互搭建成P2P网络。由于不同的应用环境下,用户对网络设备的功能需求可能不同,因此,每个应用场景中服务器和客户端设备的数量以及功能可以不同。为了解决现有的P2P网络,易出现饱和现象,使得新入网的节点无法从其他节点获得资源数据的问题,本申请实施例提供一种建立P2P网络的方法、装置、终端设备及存储介质。参照图2,为本申请实施例提供一种建立P2P网络的方法的流程图,所述方法运用于客户端,所述客户端可以被运行或被安装在终端设备上,该终端设备可以具有连网功能,例如移动终端(例如智能手机、智能平板及笔记本电脑等)及固定终端(台式电脑、服务器、智能电视及车载终端等)本文档来自技高网...

【技术保护点】
1.一种建立P2P网络的方法,其特征在于,包括步骤:检测到加入一P2P网络的指令后,向所述P2P网络中至少一个节点发送连接请求,其中,所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;与响应所述请求的节点建立连接,以更新所述P2P网络。

【技术特征摘要】
1.一种建立P2P网络的方法,其特征在于,包括步骤:检测到加入一P2P网络的指令后,向所述P2P网络中至少一个节点发送连接请求,其中,所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;与响应所述请求的节点建立连接,以更新所述P2P网络。2.根据权利要求1所述的方法,其特征在于,所述向所述P2P网络中至少一个节点发送连接请求,包括步骤:从服务器获取节点列表,所述节点列表包括符合预设条件的节点的地址信息;根据所述节点列表中的节点的地址信息,向所述节点列表中至少一个节点请求连接。3.根据权利要求2所述的方法,其特征在于,所述预设条件根据本节点所在的终端设备的位置信息确定。4.根据权利要求1所述的方法,其特征在于,所述与响应所述请求的节点建立连接之后,还包括:向至少一个与本节点建立连接的节点请求资源数据,所述资源数据被封装成数据包,所述数据包由服务器将获取的共享资源数据切割而成,并由服务器按照自定义的格式封装,所述自定义的格式中包括第一标识,第一标识用于描述每个数据包唯一性,所述数据包由所述P2P网络中的节点直接或间接从服务器获取。5.根据权利要求4所述的方法,其特征在于,本节点与已连接的节点间基于不可靠协议传输数据包;检测到加入一P2P网络的指令后,还包括步骤:与服务器建立连接,在检测到存在数据包丢失后,向所述服务器请求传输所述丢失的数据包...

【专利技术属性】
技术研发人员:冯修杰
申请(专利权)人:广州虎牙信息科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1