CN111131505A - 基于p2p网络的数据传输方法、设备、系统、装置及介质 - Google Patents

基于p2p网络的数据传输方法、设备、系统、装置及介质 Download PDF

Info

Publication number
CN111131505A
CN111131505A CN201911416651.8A CN201911416651A CN111131505A CN 111131505 A CN111131505 A CN 111131505A CN 201911416651 A CN201911416651 A CN 201911416651A CN 111131505 A CN111131505 A CN 111131505A
Authority
CN
China
Prior art keywords
service node
service
network
data transmission
client
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.)
Pending
Application number
CN201911416651.8A
Other languages
English (en)
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 Onething Technology Co Ltd
Original Assignee
Shenzhen Onething 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 Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201911416651.8A priority Critical patent/CN111131505A/zh
Priority to PCT/CN2020/080488 priority patent/WO2021134928A1/zh
Publication of CN111131505A publication Critical patent/CN111131505A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments

Abstract

本发明提供了一种基于P2P网络的数据传输方法、设备、系统、装置及介质,所述方法包括:响应于客户端的文件切片的请求指令,获取服务节点自身的负载及网络性能信息;当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;断开所述服务节点与所述客户端的连接。本发明能够通过动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,确保服务器集群不会由于负载过高而崩溃,进而保证了服务器集群的服务质量。

Description

基于P2P网络的数据传输方法、设备、系统、装置及介质
技术领域
本发明涉及互联网技术领域,尤其涉及基于P2P网络的数据传输方法、设备、系统、装置及介质。
背景技术
现有技术方案中,对于P2P网络(Peer to Peer,对等网络),随着客户端(client)连接数的不断增多,服务带宽将变得越来越大,因此,服务器集群(server)的负载也随之不断地增加,多个客户端之间相互抢占带宽,最终会导致客户端无法正常下载或播放文件,相应地,服务器集群也有由于负载太高导致崩溃的风险。
发明内容
本发明的主要目的在于提供基于P2P网络的数据传输方法、设备、系统、装置及介质,能够通过动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,确保服务器集群不会由于负载过高而崩溃,进而保证了服务器集群的服务质量。
为实现上述目的,本发明提供一种基于P2P网络的数据传输方法,应用于服务节点,所述服务节点与客户端相连接,每个服务节点用于向多个客户端提供数据传输服务,所述方法包括:
响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开所述服务节点与所述客户端的连接。
根据本发明优选实施例,所述方法还包括:
每隔预设时间间隔,检测所述服务节点自身的负载及网络性能信息。
根据本发明优选实施例,所述确定所述服务节点的服务异常包括:
当所述服务节点的负载大于或者等于配置负载时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定网络带宽,当所述网络带宽大于或者等于配置带宽时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定所述网络带宽,当所述网络带宽小于所述配置带宽时,从所述服务节点的网络性能信息中确定延时或丢包率,当所述延时超过配置延时或者所述丢包率超过配置丢包率时,确定所述服务节点的服务异常。
根据本发明优选实施例,所述方法还包括:
当确定所述服务节点的服务没有异常时,向所述客户端发送请求的文件切片。
根据本发明优选实施例,所述服务节点存储有多个不同的文件切片,所述服务节点接收不同客户端对于相同文件切片或者不同文件切片的请求指令。
为实现上述目的,本发明进一步提供一种基于P2P网络的数据传输方法,应用于客户端,所述客户端与服务节点相连接,每个客户端用于向多个服务节点请求数据传输服务,所述方法包括:
向存储有文件切片的服务节点分别发送请求指令;
当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
向具有所述目标文件切片的其他服务节点重新发送请求指令。
根据本发明优选实施例,所述方法还包括:
当接收到多个文件切片时对所述文件切片进行处理以拼接得到文件。
根据本发明优选实施例,所述客户端按照文件切片的顺序向存储有对应文件切片的服务节点发送请求指令。
为实现上述目的,本发明进一步提供一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述基于P2P网络的数据传输方法。
优选地,所述电子设备为组成内容分发网络或者区块链网络的节点。
为实现上述目的,本发明进一步提供一种基于P2P网络的数据传输系统,运行于服务节点,所述服务节点与客户端相连接,每个服务节点用于向多个客户端提供数据传输服务,所述系统包括:
获取单元,用于响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
确定单元,用于当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开单元,用于断开所述服务节点与所述客户端的连接。
根据本发明优选实施例,所述系统还包括:
检测单元,用于每隔预设时间间隔,检测所述服务节点自身的负载及网络性能信息。
根据本发明优选实施例,所述确定单元具体用于:
当所述服务节点的负载大于或者等于配置负载时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定网络带宽,当所述网络带宽大于或者等于配置带宽时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定所述网络带宽,当所述网络带宽小于所述配置带宽时,从所述服务节点的网络性能信息中确定延时或丢包率,当所述延时超过配置延时或者所述丢包率超过配置丢包率时,确定所述服务节点的服务异常。
根据本发明优选实施例,所述系统还包括:
发送单元,用于当确定所述服务节点的服务没有异常时,向所述客户端发送请求的文件切片。
根据本发明优选实施例,所述服务节点存储有多个不同的文件切片,所述服务节点接收不同客户端对于相同文件切片或者不同文件切片的请求指令。
为实现上述目的,本发明进一步提供一种基于P2P网络的数据传输装置,运行于客户端,所述客户端与服务节点相连接,每个客户端用于向多个服务节点请求数据传输服务,所述装置包括:
发送模块,用于向存储有文件切片的服务节点分别发送请求指令;
确定模块,用于当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
所述发送模块,还用于向具有所述目标文件切片的其他服务节点重新发送请求指令。
根据本发明优选实施例,所述装置还包括:
拼接模块,用于当接收到多个文件切片时对所述文件切片进行处理以拼接得到文件。
根据本发明优选实施例,所述客户端按照文件切片的顺序向存储有对应文件切片的服务节点发送请求指令。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于P2P网络的数据传输程序,所述基于P2P网络的数据传输程序可被一个或者多个处理器执行,以实现所述基于P2P网络的数据传输方法。
综上所述,本发明能够响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息,以便同时利用多个服务节点对文件进行分片下载,当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常,进而能够通过负载和网络性能信息对服务节点的服务进行监控,并及时发现服务异常,进一步断开所述服务节点与所述客户端的连接,进而动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,并进一步确保了服务器集群不会由于负载过高而崩溃,且保证了服务器集群的服务质量。
附图说明
图1为本发明一实施例的P2P网络的示意图;
图2为本发明一实施例的流程示意图;
图3为本发明另一实施例的流程示意图;
图4为本发明一实施例揭露的电子设备的内部结构示意图;
图5为本发明基于P2P网络的数据传输系统的功能模块示意图;
图6为本发明基于P2P网络的数据传输装置的功能模块示意图。
主要元件符号说明
Figure BDA0002351363380000051
Figure BDA0002351363380000061
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种基于P2P网络的数据传输方法。
参照图1,为本发明一实施例的P2P网络的示意图。
本实施例应用于P2P网络(Peer to Peer,对等网络)中,所述P2P网络是一个点对点服务的网络。
具体地,所述P2P网络中包括多个客户端及服务器集群(server),所述服务器集群可以包括多个服务节点。当在所述P2P网络中存在任意客户端向任意服务节点发出数据请求时,由被请求的服务节点向发出请求的客户端发送请求的相应数据。
所述基于P2P网络的数据传输方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,所述电子设备的硬件设备包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
在本实施例中,所述电子设备包括服务节点及客户端。
参照图2,为本发明一实施例的流程示意图。根据不同的需求,该流程示意图中步骤的顺序可以改变,某些步骤可以省略。
在一实施例中,一种基于P2P网络的数据传输方法,应用于服务节点,所述服务节点与客户端相连接,每个服务节点用于向多个客户端提供数据传输服务,该方法包括:
S10,响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息。
其中,所述服务节点存储有多个不同的文件切片,所述服务节点接收不同客户端对于相同文件切片或者不同文件切片的请求指令。
在本发明的至少一个实施例中,所述请求指令可以是对于所述文件的下载请求指令,还可以是对所述文件的其他传输请求指令,例如:视频播放数据的请求等。
相应地,所述文件可以是待下载的任意形式的文件,也可以是请求播放的视频文件等。
进一步地,在本实施例中,当所述客户端向服务器集群请求所述文件时,所述文件可以被切分为多个文件切片,对应于每个文件切片,所述客户端分别向一个服务节点发出请求,因此,将由多个服务节点为所述客户端同时提供对所述文件的发送服务,加快了数据传输的速度,也进一步提升了所述P2P网络中数据传输的性能。
具体地,由于所述客户端预先并没有存储所述服务器集群的各个服务节点的相关数据,因此,所述客户端在为所述文件的每个文件切片请求服务节点时,采取随机请求的方式,也可以按照预定的规则进行选择,例如,按照服务节点在过去预定时间段内的服务质量,选择服务质量满足预设条件的节点优先作为服务节点。
进一步地,所述文件可以被均分为多个文件切片,也可以根据其他策略进行切分,本发明不限制,例如,还可以采用冗余编码的方式对文件切片进行处理,以保证客户端即使没有接收到全部的文件切片,也可以较好的还原出文件的内容。
在本发明的至少一个实施例中,所述负载标志着所述服务节点的硬件性能,因此,所述服务节点被占用的负载越高,说明所述服务节点的硬件压力越大,则可以确定所述服务节点的硬件的当前性能越不好,反之,所述服务节点被占用的负载越低,说明所述服务节点的硬件压力越小,则可以确定所述服务节点的硬件的当前性能越好。
进一步地,所述网络性能信息可以包括,但不限于:网络带宽、延时、丢包率等。
其中,所述网络带宽包括,但不限于:带宽、连接数等。
可以理解的是,所述带宽被占用的越多,说明可用带宽越少,则可以确定网络性能不佳,反之,所述带宽被占用的越少,说明可用带宽越多,则可以确定网络性能较佳。
同样地,所述连接数越多,间接说明可用带宽越少,则可以确定网络性能不佳,反之,所述连接数越少,间接说明可用带宽越多,则可以确定网络性能较佳。
进一步地,所述带宽及所述连接数可以分别对应一个权重,所述带宽的权重高于所述连接数,这样,通过计算所述带宽及所述连接数的加权和,并将得到的加权和与配置网络带宽进行比较,以便进一步确定所述服务节点的网络性能。
在本实施例中,所述延时是指一个报文或分组从一个网络的一端传送到另一个端所需要的时间,能够表征每个服务节点是否能够进行及时的响应,因此,当所述延时较高时,则可以确定网络性能不佳,反之,则可以确定网络性能较佳。
在本实施例中,所述丢包率是指所丢失数据包的数量占所发送数据组的比率,正常传输时网络的丢包率应该控制在一定范围内,如果所述丢包率过高,则可以确定网络性能不佳,反之,如果所述丢包率较低,则可以确定网络性能较佳。
在本发明的至少一个实施例中,所述方法还包括:
每隔预设时间间隔,所述服务节点检测所述服务节点自身的负载及网络性能信息。
通过上述实施方式,能够对所述服务器集群的每个服务节点进行周期性的监控。
另外,所述服务节点存储每个服务节点的负载及网络性能信息,以便后续需要时及时调用,避免在需要时临时进行检测对所述P2P网络的正常服务造成延时。
S11,当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常。
需要说明的是,在确定所述服务节点的服务是否异常时,所述负载的优先级高于所述网络性能信息,而在所述网络性能信息中,所述网络带宽的优先级高于所述延时或丢包率。
在本发明的至少一个实施例中,所述服务节点确定所述服务节点的服务异常包括:
(1)当所述服务节点的负载大于或者等于配置负载时,所述服务节点确定所述服务节点的服务异常。
其中,所述配置负载可以进行自定义配置。
由于所述负载的优先级最高,因此,只要确定所述负载大于或者等于所述配置负载,则可以直接确定所述服务节点的服务异常,无需再进行网络性能信息的判断。
(2)当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定网络带宽,当所述网络带宽大于或者等于配置带宽时,确定所述服务节点的服务异常。
其中,所述配置带宽可以进行自定义配置。
当所述负载小于所述配置负载时,说明所述服务节点的负载正常,此时,根据优先级,则需要继续判断所述服务节点的网络性能信息中的网络带宽是否异常,只要确定所述网络带宽大于或者等于所述配置网络,则可以直接确定所述服务节点的服务异常,无需再进行所述网络性能信息中延时或丢包率的判断。
(3)当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定所述网络带宽,当所述网络带宽小于所述配置带宽时,从所述服务节点的网络性能信息中确定延时或丢包率,当所述延时超过配置延时或者所述丢包率超过配置丢包率时,确定所述服务节点的服务异常。
其中,所述配置延时及所述配置丢包率可以进行自定义配置。
当所述负载小于所述配置负载时,说明所述服务节点的负载正常,此时,根据优先级,则需要继续判断所述服务节点的网络性能信息中的网络带宽是否异常,当所述网络带宽小于所述配置带宽时,说明所述服务节点的网络带宽正常,那么根据优先级,则需要进一步判断所述服务节点的网络性能信息中的延时或丢包率是否异常,只要确定所述延时或所述丢包率中有一项异常,则可以直接确定所述服务节点的服务异常。
需要说明的是,由于每个服务节点的自身属性不同,则说明每个服务节点的自身性能也不同,因此,为了使每个服务节点都能够在自身性能的可承受范围内进行服务,可以根据每个服务节点的自身性能为每个服务节点配置不同的参数阈值,如:所述配置负载、所述配置带宽、所述配置丢包率及所述配置延时等。
通过上述实施方式,能够通过负载及网络性能信息对服务节点的服务进行监控,并及时发现服务异常。
S12,断开所述服务节点与所述客户端的连接。
可以理解的是,通过断开所述服务节点与所述客户端的连接,能够避免在所述服务节点无法提供正常数据传输时,所述客户端还进行无意义的等待,给所述P2P网络的服务造成影响,降低了数据传输的速度,同时影响了用户的使用。
在本发明的至少一个实施例中,所述方法还包括:
当确定所述服务节点的服务没有异常时,所述服务节点向所述客户端发送请求的文件切片。
通过上述实施方式,能够在确定所述服务节点没有异常时,及时响应所述客户端的数据请求。
在本发明的至少一个实施例中,所述方法还包括:
当每个服务节点的服务都异常时,添加新的服务节点至服务器集群。
需要说明的是,新增的服务节点具备所述客户端所需要的文件切片。
通过上述实施方式,能够在所述服务器集群超负荷运行时,及时添加新的服务节点至所述服务器集群,实现对所述服务器集群的横向扩展,确保所述服务器集群不会由于负载过高而崩溃,保证了服务器集群的服务质量。
综上所述,本发明能够响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息,以便同时利用多个服务节点对文件进行分片下载,当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常,进而能够通过负载和网络性能信息对服务节点的服务进行监控,并及时发现服务异常,进一步断开所述服务节点与所述客户端的连接,进而动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,并进一步确保了服务器集群不会由于负载过高而崩溃,且保证了服务器集群的服务质量。
参照图3,为本发明另一实施例的流程示意图。根据不同的需求,该流程示意图中步骤的顺序可以改变,某些步骤可以省略。
在一实施例中,一种基于P2P网络的数据传输方法,应用于客户端,所述客户端与服务节点相连接,每个客户端用于向多个服务节点请求数据传输服务,所述方法包括:
S20,向存储有文件切片的服务节点分别发送请求指令。
具体地,所述客户端按照文件切片的顺序向存储有对应文件切片的服务节点发送请求指令。
其中,所述文件可以是待下载的任意形式的文件,也可以是请求播放的视频文件等。
其中,每个文件切片的大小可以进行自定义配置。
对应于每个文件切片,所述客户端分别向一个服务节点发出请求,因此,将由多个服务节点为所述客户端同时提供对所述文件的发送服务,加快了数据传输的速度,也进一步提升了所述P2P网络中数据传输的性能。
S21,当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片。
在本发明的至少一个实施例中,所述方法还包括:
当接收到多个文件切片时,所述客户端对所述文件切片进行处理以拼接得到文件。
S22,向具有所述目标文件切片的其他服务节点重新发送请求指令。
通过上述实施方式,能够在一个服务节点异常时,向其他服务节点重新发送请求指令,不会对文件的请求造成影响,其他服务节点可以代替异常的服务节点继续服务。
需要说明的是,所述服务节点可以是P2P网络(Peer to Peer,对等网络)中对等节点对应的服务器,所述对等节点通常部署在用户家中,不需要额外建立机房,且数据的传输依靠对等节点的上行带宽,而上行带宽一般是闲置的,不会产生另外的成本,因此成本较低。
而当所述P2P网络不稳定时,所述服务节点还可以是基于http协议进行数据传输的服务器,能够提供稳定可靠的资源,进而提供稳定可靠的数据传输服务,本发明对所述服务节点的类型不限制。
综上所述,本发明能够将文件切分为多个文件切片,并向存储有文件切片的服务节点分别发送请求指令,以便同时利用多个服务节点对文件进行分片下载,当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片,并向具有所述目标文件切片的其他服务节点重新发送请求指令,能够及时发现服务异常,并动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,并进一步确保了服务器集群不会由于负载过高而崩溃,且保证了服务器集群的服务质量。
参见图4,在本实施例中,所述电子设备1可以是组成内容分发网络或者区块链网络的节点。
所述电子设备1可以包括存储器12、处理器13和总线,还可以包括存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如基于P2P网络的数据传输程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,所述电子设备1既可以是总线型结构,也可以是星形结构,所述电子设备1还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置,例如所述电子设备1还可以包括输入输出设备、网络接入设备等。
需要说明的是,所述电子设备1仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
其中,存储器12至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器12在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。存储器12在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,存储器12还可以既包括电子设备1的内部存储单元也包括外部存储设备。存储器12不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如基于P2P网络的数据传输程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器13在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。处理器13是所述电子设备1的控制核心(Control Unit),利用各种接口和线路连接整个电子设备1的各个部件,通过运行或执行存储在所述存储器12内的程序或者模块(例如执行基于P2P网络的数据传输程序等),以及调用存储在所述存储器12内的数据,以执行电子设备1的各种功能和处理数据。
所述处理器13执行所述电子设备1的操作系统以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个基于P2P网络的数据传输方法实施例中的步骤,例如图2所示的步骤S10、S11、S12及/或如图3所示的步骤S20、S21、S22。
或者,所述处理器13执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如:
响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开所述服务节点与所述客户端的连接。
或者,所述处理器13执行所述计算机程序时还实现上述各装置实施例中各模块/单元的功能,例如:
向存储有文件切片的服务节点分别发送请求指令;
当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
向具有所述目标文件切片的其他服务节点重新发送请求指令。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备1中的执行过程。例如,所述计算机程序可以被分割成获取单元111、确定单元112、断开单元113、检测单元114、发送单元115及/或发送模块223、确定模块224、拼接模块225。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、计算机设备,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指示相关的硬件设备来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,在图4中仅用一根箭头表示,但并不表示仅有一根总线或一种类型的总线。所述总线被设置为实现所述存储器12以及至少一个处理器13等之间的连接通信。
尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器13逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
图4仅示出了具有组件12-13的电子设备1,本领域技术人员可以理解的是,图4示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
结合图2,所述电子设备1中的所述存储器12存储多个指令以实现一种基于P2P网络的数据传输方法,所述处理器13可执行所述多个指令从而实现:
响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开所述服务节点与所述客户端的连接。
结合图3,所述电子设备1中的所述存储器12存储多个指令以实现一种基于P2P网络的数据传输方法,所述处理器13还可执行所述多个指令从而实现:
向存储有文件切片的服务节点分别发送请求指令;
当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
向具有所述目标文件切片的其他服务节点重新发送请求指令。
具体地,所述处理器13对上述指令的具体实现方法可参考图2及/或图3对应实施例中相关步骤的描述,在此不赘述。
参照图5,为本发明基于P2P网络的数据传输系统的功能模块示意图。所述基于P2P网络的数据传输系统11包括获取单元111、确定单元112、断开单元113、检测单元114、发送单元115。本发明所称的模块/单元是指一种能够被处理器13所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
应于所述客户端的文件切片的请求指令,获取单元111获取服务节点自身的负载及网络性能信息。
其中,服务节点存储有多个不同的文件切片,所述服务节点接收不同客户端对于相同文件切片或者不同文件切片的请求指令。
在本发明的至少一个实施例中,所述请求指令可以是对于所述文件的下载请求指令,还可以是对所述文件的其他传输请求指令,例如:视频播放数据的请求等。
相应地,所述文件可以是待下载的任意形式的文件,也可以是请求播放的视频文件等。
进一步地,在本实施例中,当所述客户端向服务器集群请求所述文件时,所述文件可以被切分为多个文件切片,对应于每个文件切片,所述客户端分别向一个服务节点发出请求,因此,将由多个服务节点为所述客户端同时提供对所述文件的发送服务,加快了数据传输的速度,也进一步提升了所述P2P网络中数据传输的性能。
具体地,由于所述客户端预先并没有存储所述服务器集群的各个服务节点的相关数据,因此,所述客户端在为所述文件的每个文件切片请求服务节点时,采取随机请求的方式,也可以按照预定的规则进行选择,例如,按照服务节点在过去预定时间段内的服务质量,选择服务质量满足预设条件的节点优先作为服务节点。
进一步地,所述文件可以被均分为多个文件切片,也可以根据其他策略进行切分,本发明不限制,例如,还可以采用冗余编码的方式对文件切片进行处理,以保证客户端即使没有接收到全部的文件切片,也可以较好的还原出文件的内容。
在本发明的至少一个实施例中,所述负载标志着所述服务节点的硬件性能,因此,所述服务节点被占用的负载越高,说明所述服务节点的硬件压力越大,则可以确定所述服务节点的硬件的当前性能越不好,反之,所述服务节点被占用的负载越低,说明所述服务节点的硬件压力越小,则可以确定所述服务节点的硬件的当前性能越好。
进一步地,所述网络性能信息可以包括,但不限于:网络带宽、延时、丢包率等。
其中,所述网络带宽包括,但不限于:带宽、连接数等。
可以理解的是,所述带宽被占用的越多,说明可用带宽越少,则可以确定网络性能不佳,反之,所述带宽被占用的越少,说明可用带宽越多,则可以确定网络性能较佳。
同样地,所述连接数越多,间接说明可用带宽越少,则可以确定网络性能不佳,反之,所述连接数越少,间接说明可用带宽越多,则可以确定网络性能较佳。
进一步地,所述带宽及所述连接数可以分别对应一个权重,所述带宽的权重高于所述连接数,这样,通过计算所述带宽及所述连接数的加权和,并将得到的加权和与配置网络带宽进行比较,以便进一步确定所述服务节点的网络性能。
在本实施例中,所述延时是指一个报文或分组从一个网络的一端传送到另一个端所需要的时间,能够表征每个服务节点是否能够进行及时的响应,因此,当所述延时较高时,则可以确定网络性能不佳,反之,则可以确定网络性能较佳。
在本实施例中,所述丢包率是指所丢失数据包的数量占所发送数据组的比率,正常传输时网络的丢包率应该控制在一定范围内,如果所述丢包率过高,则可以确定网络性能不佳,反之,如果所述丢包率较低,则可以确定网络性能较佳。
在本发明的至少一个实施例中,每隔预设时间间隔,检测单元114检测所述服务节点自身的负载及网络性能信息。
通过上述实施方式,能够对所述服务器集群的每个服务节点进行周期性的监控。
另外,所述检测单元114存储每个服务节点的负载及网络性能信息,以便后续需要时及时调用,避免在需要时临时进行检测对所述P2P网络的正常服务造成延时。
当所述负载及/或所述网络性能信息异常时,确定单元112确定所述服务节点的服务异常。
需要说明的是,在确定所述服务节点的服务是否异常时,所述负载的优先级高于所述网络性能信息,而在所述网络性能信息中,所述网络带宽的优先级高于所述延时或丢包率。
在本发明的至少一个实施例中,所述确定单元112确定所述服务节点的服务异常包括:
(1)当所述服务节点的负载大于或者等于配置负载时,所述确定单元112确定所述服务节点的服务异常。
其中,所述配置负载可以进行自定义配置。
由于所述负载的优先级最高,因此,只要确定所述负载大于或者等于所述配置负载,则可以直接确定所述服务节点的服务异常,无需再进行网络性能信息的判断。
(2)当所述服务节点的负载小于所述配置负载时,所述确定单元112从所述服务节点的网络性能信息中确定网络带宽,当所述网络带宽大于或者等于配置带宽时,所述确定单元112确定所述服务节点的服务异常。
其中,所述配置带宽可以进行自定义配置。
当所述负载小于所述配置负载时,说明所述服务节点的负载正常,此时,根据优先级,则需要继续判断所述服务节点的网络性能信息中的网络带宽是否异常,只要确定所述网络带宽大于或者等于所述配置网络,则可以直接确定所述服务节点的服务异常,无需再进行所述网络性能信息中延时或丢包率的判断。
(3)当所述服务节点的负载小于所述配置负载时,所述确定单元112从所述服务节点的网络性能信息中确定所述网络带宽,当所述网络带宽小于所述配置带宽时,所述确定单元112从所述服务节点的网络性能信息中确定延时或丢包率,当所述延时超过配置延时或者所述丢包率超过配置丢包率时,所述确定单元112确定所述服务节点的服务异常。
其中,所述配置延时及所述配置丢包率可以进行自定义配置。
当所述负载小于所述配置负载时,说明所述服务节点的负载正常,此时,根据优先级,则需要继续判断所述服务节点的网络性能信息中的网络带宽是否异常,当所述网络带宽小于所述配置带宽时,说明所述服务节点的网络带宽正常,那么根据优先级,则需要进一步判断所述服务节点的网络性能信息中的延时或丢包率是否异常,只要确定所述延时或所述丢包率中有一项异常,则可以直接确定所述服务节点的服务异常。
需要说明的是,由于每个服务节点的自身属性不同,则说明每个服务节点的自身性能也不同,因此,为了使每个服务节点都能够在自身性能的可承受范围内进行服务,可以根据每个服务节点的自身性能为每个服务节点配置不同的参数阈值,如:所述配置负载、所述配置带宽、所述配置丢包率及所述配置延时等。
通过上述实施方式,能够通过负载及网络性能信息对服务节点的服务进行监控,并及时发现服务异常。
断开单元113断开所述服务节点与所述客户端的连接。
可以理解的是,通过断开所述服务节点与所述客户端的连接,能够避免在所述服务节点无法提供正常数据传输时,所述客户端还进行无意义的等待,给所述P2P网络的服务造成影响,降低了数据传输的速度,同时影响了用户的使用。
在本发明的至少一个实施例中,当确定所述服务节点的服务没有异常时,发送单元115向所述客户端发送请求的文件切片。
通过上述实施方式,能够在确定所述服务节点没有异常时,及时响应所述客户端的数据请求。
在本发明的至少一个实施例中,当每个服务节点的服务都异常时,添加新的服务节点至所述服务器集群。
需要说明的是,新增的服务节点具备所述客户端所需要的文件切片。
通过上述实施方式,能够在所述服务器集群超负荷运行时,及时添加新的服务节点至所述服务器集群,实现对所述服务器集群的横向扩展,确保所述服务器集群不会由于负载过高而崩溃,保证了服务器集群的服务质量。
综上所述,本发明能够响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息,以便同时利用多个服务节点对文件进行分片下载,当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常,进而能够通过负载和网络性能信息对服务节点的服务进行监控,并及时发现服务异常,进一步断开所述服务节点与所述客户端的连接,进而动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,并进一步确保了服务器集群不会由于负载过高而崩溃,且保证了服务器集群的服务质量。
参照图6,为本发明基于P2P网络的数据传输装置的功能模块示意图。所述基于P2P网络的数据传输装置22包括发送模块223、确定模块224、拼接模块225。本发明所称的模块/单元是指一种能够被处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
发送模块223向存储有文件切片的服务节点分别发送请求指令。
具体地,客户端按照文件切片的顺序向存储有对应文件切片的服务节点发送请求指令。
其中,所述文件可以是待下载的任意形式的文件,也可以是请求播放的视频文件等。
其中,每个文件切片的大小可以进行自定义配置。
对应于每个文件切片,所述客户端分别向一个服务节点发出请求,因此,将由多个服务节点为所述客户端同时提供对所述文件的发送服务,加快了数据传输的速度,也进一步提升了所述P2P网络中数据传输的性能。
当检测到有服务节点断开与所述客户端的连接时,确定模块224将向断开连接的服务节点所请求的文件切片确定为目标文件切片。
在本发明的至少一个实施例中,当接收到多个文件切片时,拼接模块225对所述文件切片进行处理以拼接得到文件。
所述发送模块223向具有所述目标文件切片的其他服务节点重新发送请求指令。
通过上述实施方式,能够在一个服务节点异常时,向其他服务节点重新发送请求指令,不会对文件的请求造成影响,其他服务节点可以代替异常的服务节点继续服务。
需要说明的是,所述服务节点可以是P2P网络(Peer to Peer,对等网络)中对等节点对应的服务器,所述对等节点通常部署在用户家中,不需要额外建立机房,且数据的传输依靠对等节点的上行带宽,而上行带宽一般是闲置的,不会产生另外的成本,因此成本较低。
而当所述P2P网络不稳定时,所述服务节点还可以是基于http协议进行数据传输的服务器,能够提供稳定可靠的资源,进而提供稳定可靠的数据传输服务,本发明对所述服务节点的类型不限制。
综上所述,本发明能够将文件切分为多个文件切片,并向存储有文件切片的服务节点分别发送请求指令,以便同时利用多个服务节点对文件进行分片下载,当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片,并向具有所述目标文件切片的其他服务节点重新发送请求指令,能够及时发现服务异常,并动态地调整为客户端服务的多个服务节点,实现P2P网络中服务器集群的负载均衡,并进一步确保了服务器集群不会由于负载过高而崩溃,且保证了服务器集群的服务质量。
在上述实施例中,可以全部或部分地通过软件、硬件设备、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、移动硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态移动硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件设备的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动移动硬盘、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (12)

1.一种基于P2P网络的数据传输方法,应用于服务节点,所述服务节点与客户端相连接,每个服务节点用于向多个客户端提供数据传输服务,其特征在于,所述方法包括:
响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开所述服务节点与所述客户端的连接。
2.如权利要求1所述的基于P2P网络的数据传输方法,其特征在于,所述方法还包括:
每隔预设时间间隔,检测所述服务节点自身的负载及网络性能信息。
3.如权利要求1所述的基于P2P网络的数据传输方法,其特征在于,所述确定所述服务节点的服务异常包括:
当所述服务节点的负载大于或者等于配置负载时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定网络带宽,当所述网络带宽大于或者等于配置带宽时,确定所述服务节点的服务异常;或者
当所述服务节点的负载小于所述配置负载时,从所述服务节点的网络性能信息中确定所述网络带宽,当所述网络带宽小于所述配置带宽时,从所述服务节点的网络性能信息中确定延时或丢包率,当所述延时超过配置延时或者所述丢包率超过配置丢包率时,确定所述服务节点的服务异常。
4.如权利要求1所述的基于P2P网络的数据传输方法,其特征在于,所述方法还包括:
当确定所述服务节点的服务没有异常时,向所述客户端发送请求的文件切片。
5.如权利要求1所述的基于P2P网络的数据传输方法,其特征在于,所述服务节点存储有多个不同的文件切片,所述服务节点接收不同客户端对于相同文件切片或者不同文件切片的请求指令。
6.一种基于P2P网络的数据传输方法,应用于客户端,所述客户端与服务节点相连接,每个客户端用于向多个服务节点请求数据传输服务,其特征在于,所述方法包括:
向存储有文件切片的服务节点分别发送请求指令;
当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
向具有所述目标文件切片的其他服务节点重新发送请求指令。
7.如权利要求6所述的基于P2P网络的数据传输方法,其特征在于,所述方法还包括:
当接收到多个文件切片时,对所述文件切片进行处理以拼接得到文件。
8.如权利要求6所述的基于P2P网络的数据传输方法,其特征在于,所述客户端按照文件切片的顺序向存储有对应文件切片的服务节点发送请求指令。
9.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1-5中任意一项所述的基于P2P网络的数据传输方法及/或如权利要求6-8中任意一项所述的基于P2P网络的数据传输方法。
10.一种基于P2P网络的数据传输系统,运行于服务节点,所述服务节点与客户端相连接,每个服务节点用于向多个客户端提供数据传输服务,其特征在于,所述系统包括:
获取单元,用于响应于所述客户端的文件切片的请求指令,获取所述服务节点自身的负载及网络性能信息;
确定单元,用于当所述负载及/或所述网络性能信息异常时,确定所述服务节点的服务异常;
断开单元,用于断开所述服务节点与所述客户端的连接。
11.一种基于P2P网络的数据传输装置,运行于客户端,所述客户端与服务节点相连接,每个客户端用于向多个服务节点请求数据传输服务,其特征在于,所述装置包括:
发送模块,用于向存储有文件切片的服务节点分别发送请求指令;
确定模块,用于当检测到有服务节点断开与所述客户端的连接时,将向断开连接的服务节点所请求的文件切片确定为目标文件切片;
所述发送模块,还用于向具有所述目标文件切片的其他服务节点重新发送请求指令。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于P2P网络的数据传输程序,所述基于P2P网络的数据传输程序可被一个或者多个处理器执行,以实现如权利要求1-5中任意一项所述的基于P2P网络的数据传输方法及/或如权利要求6-8中任意一项所述的基于P2P网络的数据传输方法。
CN201911416651.8A 2019-12-31 2019-12-31 基于p2p网络的数据传输方法、设备、系统、装置及介质 Pending CN111131505A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911416651.8A CN111131505A (zh) 2019-12-31 2019-12-31 基于p2p网络的数据传输方法、设备、系统、装置及介质
PCT/CN2020/080488 WO2021134928A1 (zh) 2019-12-31 2020-03-20 基于p2p网络的数据传输方法、设备、系统、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911416651.8A CN111131505A (zh) 2019-12-31 2019-12-31 基于p2p网络的数据传输方法、设备、系统、装置及介质

Publications (1)

Publication Number Publication Date
CN111131505A true CN111131505A (zh) 2020-05-08

Family

ID=70506889

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911416651.8A Pending CN111131505A (zh) 2019-12-31 2019-12-31 基于p2p网络的数据传输方法、设备、系统、装置及介质

Country Status (2)

Country Link
CN (1) CN111131505A (zh)
WO (1) WO2021134928A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114465932A (zh) * 2021-07-30 2022-05-10 荣耀终端有限公司 Tcp通信质量评估方法、装置及电子设备
CN114374683A (zh) * 2021-12-20 2022-04-19 上海金仕达软件科技有限公司 一种档案文件的管理方法、系统及计算机可读存储介质
CN114567638B (zh) * 2022-02-14 2023-09-01 珠海迈科智能科技股份有限公司 一种根据节点实际网络动态调整分享策略的方法
CN114978964A (zh) * 2022-05-10 2022-08-30 未鲲(上海)科技服务有限公司 基于网络自检的通信公告配置方法、装置、设备及介质
CN115022657B (zh) * 2022-05-30 2023-12-26 上海哔哩哔哩科技有限公司 直播服务器的调度方法及装置
CN115348255B (zh) * 2022-07-27 2023-05-16 广州市金其利信息科技有限公司 一种操作系统的镜像安装方法、装置及存储介质
CN116566973B (zh) * 2023-06-20 2023-11-07 北京中宏立达科技发展有限公司 一种基于对等网络的文件传输系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7451209B1 (en) * 2003-10-22 2008-11-11 Cisco Technology, Inc. Improving reliability and availability of a load balanced server
CN102123179A (zh) * 2011-03-28 2011-07-13 中国人民解放军国防科学技术大学 应用于分布式应用系统的负载均衡方法和系统
CN105450760A (zh) * 2015-12-04 2016-03-30 中铁工程装备集团有限公司 一种基于p2p的自适应资源下载方法
CN105959369A (zh) * 2016-05-03 2016-09-21 叶江鹏 对等网络的资源下载方法
CN110213351A (zh) * 2019-05-17 2019-09-06 北京航空航天大学 一种面向广域高性能计算环境的动态自适应io负载均衡方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7451209B1 (en) * 2003-10-22 2008-11-11 Cisco Technology, Inc. Improving reliability and availability of a load balanced server
CN102123179A (zh) * 2011-03-28 2011-07-13 中国人民解放军国防科学技术大学 应用于分布式应用系统的负载均衡方法和系统
CN105450760A (zh) * 2015-12-04 2016-03-30 中铁工程装备集团有限公司 一种基于p2p的自适应资源下载方法
CN105959369A (zh) * 2016-05-03 2016-09-21 叶江鹏 对等网络的资源下载方法
CN110213351A (zh) * 2019-05-17 2019-09-06 北京航空航天大学 一种面向广域高性能计算环境的动态自适应io负载均衡方法

Also Published As

Publication number Publication date
WO2021134928A1 (zh) 2021-07-08

Similar Documents

Publication Publication Date Title
CN111131505A (zh) 基于p2p网络的数据传输方法、设备、系统、装置及介质
US10594606B2 (en) Wired data-connection aggregation
CN109618174B (zh) 一种直播数据传输方法、装置、系统以及存储介质
CN101102288A (zh) 一种实现大型即时通信的方法及系统
CN110120961B (zh) 一种分布式服务集群及其路由同步的方法
CN103581276A (zh) 集群管理装置、系统、业务客户端及相应方法
CN113900834B (zh) 基于物联网技术的数据处理方法、装置、设备及存储介质
CN111405052A (zh) 基于端口预测的p2p穿透方法、电子设备及介质
CN110677464A (zh) 边缘节点设备、内容分发系统、方法、计算机设备及介质
CN112398689A (zh) 网络恢复方法、装置、存储介质及电子设备
CN109428926B (zh) 一种调度任务节点的方法和装置
US7673056B1 (en) Redirection gateway
US9544371B1 (en) Method to discover multiple paths to disk devices cluster wide
CN110896362A (zh) 一种故障检测方法和装置
CN108551571B (zh) 一种监控视频分发方法、装置、系统以及分发服务器
CN110324384B (zh) 数据推送的方法和装置
CN109347743B (zh) 一种专线通信方法、计算机可读存储介质和终端设备
CN114257632B (zh) 断线重连的方法、装置、电子设备及可读存储介质
CN111245948A (zh) Dht网络连接方法、电子设备及介质
CN115378962A (zh) 一种基于iSCSI协议的存储集群的高可用性连通方法和系统
CN110971697B (zh) Redis单实例保护处理方法、装置、计算机设备及存储介质
CN113946376A (zh) 负载调整方法、装置、电子设备及存储介质
CN111082982B (zh) 数据传输方法、电子设备、系统及介质
US10237592B2 (en) Method and apparatus for video transmission
US20170289263A1 (en) System and Methods for Facilitating Communication Among a Subset of Connections that Connect to a Web Application

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200508