CN116633918A - 分布式文件传输方法及装置 - Google Patents
分布式文件传输方法及装置 Download PDFInfo
- Publication number
- CN116633918A CN116633918A CN202310658985.6A CN202310658985A CN116633918A CN 116633918 A CN116633918 A CN 116633918A CN 202310658985 A CN202310658985 A CN 202310658985A CN 116633918 A CN116633918 A CN 116633918A
- Authority
- CN
- China
- Prior art keywords
- node
- file transmission
- result
- data
- network
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 211
- 238000000034 method Methods 0.000 title claims abstract description 87
- 238000012546 transfer Methods 0.000 claims description 93
- 230000004044 response Effects 0.000 claims description 38
- 238000004891 communication Methods 0.000 claims description 29
- 239000011159 matrix material Substances 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 23
- 238000003860 storage Methods 0.000 claims description 16
- 238000010606 normalization Methods 0.000 claims description 14
- 238000013500 data storage Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 7
- 239000000872 buffer Substances 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B17/00—Monitoring; Testing
- H04B17/30—Monitoring; Testing of propagation channels
- H04B17/309—Measuring or estimating channel quality parameters
- H04B17/318—Received signal strength
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种分布式文件传输方法及装置,本申请涉及区块链领域,也可以应用于金融领域,方法包括:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以得到多个节点的评分结果;响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;本申请在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
Description
技术领域
本申请涉及区块链领域,也可以应用于金融领域,具体涉及一种分布式文件传输方法及装置。
背景技术
当前,在使用分布式文件传输系统(如星际文件系统IPFS)时,常会遇到严重的卡顿和低效问题。这是由于目前的分布式文件传输系统使用了分布式哈希表搜索和分发文件,当向其他节点请求查找某个节点时,会向预设数目个节点发送请求。
然而,节点的可用性与性能、网络情况密切相关:当前的节点查找方法只能将所有节点进行统一处理,无法根据节点的特殊情况进行优化,在性能较差或网络状况不佳的节点上执行请求可能会导致延迟和低效。
此外,竞争对手可以通过分析请求的数量和方式来推断节点存储的数据类型。这可能泄露有关数据的敏感信息,导致安全隐患。
最后,所选节点的顺序一旦确定即不易调整,网络性能可能因此长期受到拖慢,而无法进行优化。
发明内容
针对现有技术中的问题,本申请提供一种分布式文件传输方法及装置,能够在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
根据本申请实施例的第一方面,本申请提供一种应用于星际文件传输网络的分布式文件传输方法,包括:
在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;
将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,包括:
在文件传输过程中,分别确定节点在最近预设数目个发包过程中的平均延时数据,并分别确定节点在预设时间段内的平均发包量;
将所述节点的平均延时数据和所述平均发包量存储至区块链网络。
根据本申请的任一实施方式,在得到所述排名结果后,还包括:
响应于经过预设周期,检测所述节点的联通状态;
将检测到的处于无法联通状态的节点进行删除,并从所述排名结果中移除。
根据本申请实施例的第二方面,本申请提供一种应用于区块链网络的分布式文件传输方法,包括:
接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述历史发包数据包括节点在最近预设数目个发包过程中的平均延时数据,以及所述节点在预设时间段内的平均发包量;
所述接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,包括:
根据所述节点在最近预设数目个发包过程中的平均延时数据,确定所述星际文件传输网络的延时矩阵;
根据所述节点预设时间段内的平均发包量,确定所述星际文件传输网络的强度矩阵;
分别对所述延时矩阵和所述强度矩阵进行归一化处理,并根据归一化结果进行文件传输状态评分,确定所述节点的评分结果。
根据本申请实施例的第三方面,本申请提供一种应用于星际文件传输网络的分布式文件传输装置,包括:
发包数据存储模块,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果获取模块,用于:响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块,用于:将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述发包数据存储模块在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络时,具体用于:
在文件传输过程中,分别确定节点在最近预设数目个发包过程中的平均延时数据,并分别确定节点在预设时间段内的平均发包量;
将所述节点的平均延时数据和所述平均发包量存储至区块链网络。
根据本申请的任一实施方式,在得到所述排名结果后,还包括节点删除模块,用于:
响应于经过预设周期,检测所述节点的联通状态;
将检测到的处于无法联通状态的节点进行删除,并从所述排名结果中移除。
根据本申请实施例的第四方面,本申请提供一种应用于区块链网络的分布式文件传输装置,包括:
发包数据处理模块,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述历史发包数据包括节点在最近预设数目个发包过程中的平均延时数据,以及所述节点在预设时间段内的平均发包量;
所述发包数据处理模块在接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到多个节点的评分结果时,具体用于:
根据所述节点在最近预设数目个发包过程中的平均延时数据,确定所述星际文件传输网络的延时矩阵;
根据所述节点预设时间段内的平均发包量,确定所述星际文件传输网络的强度矩阵;
分别对所述延时矩阵和所述强度矩阵进行归一化处理,并根据归一化结果进行文件传输状态评分,确定所述节点的评分结果。
根据本申请实施例的第五方面,本申请提供一种分布式文件传输系统,包括星际文件传输网络和区块链网络;
所述星际文件传输网络包括:
发包数据存储模块,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
评分结果获取模块,用于:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块,用于:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
所述区块链网络包括:
发包数据处理模块,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
根据本申请实施例的第六方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的分布式文件传输方法的步骤。
根据本申请实施例的第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的分布式文件传输方法的步骤。
根据本申请实施例的第七方面,本申请提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的分布式文件传输方法的步骤。
由上述技术方案可知,本申请提供一种分布式文件传输方法及装置,通过在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以得到多个节点的评分结果;响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中分布式文件传输方法的流程示意图之一;
图2为本申请实施例分布式文件传输方法的流程示意图之二;
图3为本申请实施例中分布式文件传输方法的流程示意图之三;
图4为本申请实施例中分布式文件传输方法的流程示意图之四;
图5为本申请实施例中分布式文件传输方法的流程示意图之五;
图6为本申请实施例中的分布式文件传输装置的结构图之一;
图7为本申请实施例中的分布式文件传输装置的结构图之二;
图8为本申请实施例中的分布式文件传输系统的结构图之二;
图9为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
本申请首先对星际文件系统(Inter Planetary File System,简称IPFS)的分布式文件传输方法进行简单介绍:
在IPFS协议中,为了实现点对点的分布式文件存储和查询,可以使用例如kadelima算法等分布式哈希表(DHT)算法,下面将详细介绍所述算法的原理和执行步骤。
每个处在IPFS网络中的节点都有一个节点ID(Node ID,简称NID),用于定位节点。每个文件经过分片后,每个子文件都有一个Key,用于索引所述分片。同时,所述Key也代表分片的内容。在IPFS协议中存在两个哈希表,一个是从节点ID到IP地址的映射表,另一个是从Key到Value(分片内容)的映射表。
k-bucket表征按照节点ID和距离分层建立的路由表。距离D(NID,Key)通过简单的异或运算计算,可以通过下述公式表示:
k-bucket分层存储与本节点的距离为1的节点放入路由表k-bucket1,距离为2的节点放入路由表k-bucket2,依此类推。每个k-bucket最多容纳k个节点,超过k个节点时,只保留最新的k个节点。
根据距离,将文件存储到离文件“距离最近”的节点中,即节点ID等于Key的节点是最佳存储节点。为了防止单点故障,将文件存储在距离最近的前S个节点中,其中S是手动指定的。
当需要查询或下载文件时,节点A假设为当前节点,存储所需文件的节点为节点B,需要获取的文件为Z,具体的传输过程如下:
a)如果节点A中存在文件Z,则直接下载所述文件。
b)如果节点A中没有文件Z,则计算节点A与文件Z之间的距离d,其中,所述距离处于区间[2^(i-1),2^i]内。
c)如果在A的k-bucketi中有节点B,其中B的节点ID等于文件Z的Key,则将请求发送给节点B。
d)如果在A的k-bucketi中没有节点B,则从k-bucketi中随机选择若干个节点C,并将请求转发给这些节点。
e)节点C如果存储了文件Z,则将文件内容Value传回给节点A。
f)如果节点C没有文件Z,则重复步骤d和e,这时距离D(C,Z)与距离D(A,Z)相比至少减少了一半。不断重复所述流程直到找到文件Z。
g)如果在步骤d和e中某个节点C无法响应请求(ping不通),则将所述节点从k-bucket中删除。
每个k-bucket中的节点按照最后一次接触的时间倒序排列。每次执行四个指令中的任意一个都会触发k-bucket的更新。当一个节点与自己接触时,检查它是否在k-bucket中:
如果在k-bucket中,将其移动到列表的最底部(表示最新接触)。
如果不在k-bucket中,则PING列表最顶部(表示最旧接触)的节点:
如果PING通,将旧节点移动到列表最底部,并丢弃新节点。
如果PING不通,删除旧节点,并将新节点加入列表。
通过以上机制,kadelima算法保证了任意节点加入和离开不会影响整体网络的稳定性和可用性。
然而,在日常使用IPFS服务时,常会遇到严重的卡顿和低效现象,这使得该系统难以满足对可用性和稳定性的需求。
在现有的IPFS系统中,使用了分布式哈希表Kadelima方法来进行节点搜索和文件分发,在每次请求查找某个节点时,会向预设数目个节点发送请求。
其中,由于Kadelima方法对所有节点一视同仁,无法根据节点的可用性和性能以及网络情况进行优化,导致请求发送到不可用或性能较差的节点上,进而导致系统卡顿低效。
此外,尽管IPFS系统中的数据经过加密分片,但由于现实因素考量,仍存在数据泄露的潜在风险,竞争对手可以对特定节点的请求数量和方式进行数据分析,从而可能推断出该节点所存储的数据类型。这可能会引发隐私和安全方面的问题。
最后,由于k-bucket节点的顺序在确定后很难改变。可能会长期拖慢网络性能而无法进行优化。即使网络中存在更优的节点可用,由于节点顺序无法灵活调整,可能无法充分利用更好的节点资源,从而影响了整体网络的性能和效率。
考虑到分布式文件传输系统存在可用性和稳定性的问题,本申请提供一种分布式文件传输方法及装置。
本申请提供一种应用于星际文件传输网络的分布式文件传输方法的实施例,参见图1,所述分布式文件传输方法具体包含有如下内容:
步骤S101:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态。
其中,在文件的存储和/或下载过程中,对参与文件传输的多个节点,收集和记录它们在过去的传输过程中发送的数据包的相关信息。并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据的内容,包括了多个节点在传输过程中的发包延迟数据(即数据包传输的延迟时间)和发包量(即节点发送的数据包数量)。
示例性的,所述区块链可以将所述历史发包数据归一化,得到多个节点的评分结果。其中,在归一化过程中,区块链可以根据智能合约的逻辑和算法,对多个节点的历史发包数据进行评估和计算,得出每个节点的评分结果。
所述评分结果表征所述节点中每个节点的延迟状态和强度状态:表示通过评分结果来反映多个节点的特征,其中包括每个节点的延迟状态(即节点的传输延迟水平)和强度状态(即节点传输能力的强弱程度)。
在本申请的分布式文件传输方法的一实施例中,所述在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,参见图2,还可以具体包含如下内容:
S101A:在文件传输过程中,分别确定节点在最近预设数目个发包过程中的平均延时数据,并分别确定节点在预设时间段内的平均发包量。
S101B:将所述节点的平均延时数据和所述平均发包量存储至区块链网络。
首先,可以分别确定星际文件传输网络多个节点在最近预设数目个发包过程中的平均延时数据:针对每个节点,在最近的一段时间内进行预设数目个发包过程的记录,计算这些发包过程的延时数据,并求取平均值,以得到每个节点的平均延时数据。
之后,可以分别确定所述节点在预设时间段内的平均发包量:对于每个节点,在预设的时间段内记录其发包的数量,并计算这些发包量的平均值,以得到每个节点在预设时间段内的平均发包量。
最后,将上述计算得到的每个节点的平均延时数据和平均发包量保存到区块链中。
S102:响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果。
其中,在所述星际文件传输网络接收到文件传输指令后,可以根据区块链中存储的历史发包数据和智能合约的逻辑,获取多个节点的评分结果。所述评分结果基于节点的历史发包数据进行归一化计算得到,用于反映节点的延迟状态和强度状态。
之后,根据所获取的评分结果,从评分最高的节点到评分最低的节点进行排列,以使得评分越高的节点排名越靠前,生成节点排名结果。
示例性的,以IPFS和以太坊区块链为例,本申请提供一种评分结果的具体获取方法:
在该协议规范中,使用JSON格式作为协议消息的编码方式。这种编码方式可以方便地表示请求和响应消息的字段和值。
定义请求消息字段:请求消息中包含需要查询的IPFS节点的地址(nodeAddress)。
定义响应消息字段:响应消息中包含IPFS节点的历史评分信息(scoreHistory)。
IPFS节点注册:IPFS节点使用以太坊钱包创建交易,并调用注册智能合约的注册函数,将其地址和其他相关信息注册到以太坊智能合约中,以将IPFS节点的身份和相关数据与以太坊智能合约进行关联。
发起评分信息查询:请求方构建一个请求消息,以查询特定IPFS节点的评分信息,其中,所述请求消息是一个JSON格式的消息,其中包含要查询的IPFS节点的地址。
发送请求消息:使用以太坊钱包或其他合约调用工具,将构建好的请求消息发送到特定的智能合约地址,并调用相应的查询函数。
智能合约处理:智能合约接收到请求消息后,解析请求消息中的(nodeAddress)字段,利用该字段查找存储在以太坊中的相关数据,以获取指定IPFS节点的历史评分信息。
构建响应消息:智能合约根据查询结果构建响应消息,将IPFS节点的历史评分信息填充到响应消息的(scoreHistory)字段中。
返回响应消息:智能合约将构建好的响应消息作为合约调用的返回值返回给请求方,完成查询操作。
解析响应消息:请求方接收到响应消息后,解析JSON格式的响应消息,提取(scoreHistory)字段中的IPFS节点的历史评分信息。这样请求方就可以获取到所查询的IPFS节点的评分数据,并进行后续处理和分析。
综上所述,在本申请提供的示例中,可以通过使用JSON格式的消息,结合以太坊智能合约的注册和查询功能,可以实现对IPFS节点的评分信息进行查询和获取。
S103:将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
一旦目标节点确定,即可执行文件传输任务。例如,在IPFS系统接收到需要获取文件的请求时,根据节点的历史评分高低,按照评分较高的节点优先的顺序发送询问消息。通过选择评分较高的节点作为目标节点,以提高文件传输的效率和可靠性。
本申请在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
在本申请的分布式文件传输方法的一实施例中,在得到所述排名结果后,参见图3,还可以具体包含如下内容:
S104:响应于经过预设周期,检测所述节点的联通状态;
S105:将检测到的处于无法联通状态的节点进行删除,并从所述排名结果中移除。
在获取多个节点的排名结果之后,还可以进行周期性的联通状态检测,即在一定的预设周期内,对多个节点进行联通性的检测。
所述联通状态检测的目的是确定节点是否能够正常通信和交互。通过周期性地检测节点的联通状态,可以及时发现出现故障或无法联通的节点。
一旦检测到处于无法联通状态的节点,需要将这些节点从系统中删除,并从排名结果中将其移除。以确保在文件传输任务中只选择处于可联通状态的节点作为目标节点。通过定期检测联通状态并删除无法联通的节点,可以维护节点列表的准确性和可用性。
示例性的,本申请提供一种节点联通状态的具体判断方法:
首先,对计数器进行初始化:成功响应计数器=0:用于记录成功收到响应的次数;以及总请求计数器=0:用于记录总共发送的请求次数。
之后,发送请求到目标节点,如果收到响应或达到超时时间,则将总请求计数器加一,表示已发送一次请求。
如果成功收到来自目标节点的响应,将成功响应计数器加一。
如果收到响应的延迟时间超过预设的阈值(例如500毫秒),记录下该延迟时间,用于后续分析和判断。
如果成功响应计数器与总请求计数器的比例低于预设的阈值(例如80%),则认为节点无法联通。
上述实施例通过发送请求并观察响应情况来判断节点的联通状态。通过统计成功响应的次数和总请求次数的比例,可以评估节点的可用性。若节点的成功响应比例低于阈值,判断该节点无法联通。
本申请通过周期性地检测节点的联通状态,并作出相应的判断和处理,维护节点列表的准确性和可用性,并确保在文件传输任务中选择可联通的节点作为目标节点。
本申请提供一种应用于区块链网络的分布式文件传输方法的实施例,参见图4,所述分布式文件传输方法具体包含有如下内容:
S201:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
S202:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
其中,区块链通过智能合约的功能接收并处理星际文件传输网络的多个节点在文件传输生成的历史发包数据,并利用智能合约的功能,对收集到的历史发包数据进行归一化处理。归一化后的数据可以用于对多个节点进行评分,以评估它们的延迟状态和强度状态。评分结果可以表示节点的性能和可靠性。
当星际文件传输网络发送请求指令到区块链时,区块链将相应的多个节点的评分结果发送给星际文件传输网络。所述星际文件传输网络通过与区块链进行通信,获取评分结果并根据结果做出相应的决策,例如选择评分较高的节点进行文件传输。
在本申请的分布式文件传输方法的一实施例中,所述接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,参见图5,还可以具体包含如下内容:
S201A:根据所述节点在最近预设数目个发包过程中的平均延时数据,确定所述星际文件传输网络的延时矩阵;
S201B:根据所述节点预设时间段内的平均发包量,确定所述星际文件传输网络的强度矩阵;
S201C:分别对所述延时矩阵和所述强度矩阵进行归一化处理,并根据归一化结果进行文件传输状态评分,确定所述节点的评分结果。
示例性的,首先星际文件传输网络在存储和下载过程中,可以记录m个可用节点的历史上最近n次发包的平均延时数据,形成一个m*n的延时矩阵D,同时,记录m个可用节点在单位时间内的平均发包量,形成一个m*n的强度矩阵P。所述矩阵D和矩阵P用于评估节点的延迟和强度情况,并用于后续的评分计算。
之后,可以对矩阵D和P进行Z-score归一化,通过减去均值并除以标准差来调整数据的分布从而将数据的数值范围限制在均值为0、方差为1的正态分布内。一种归一化公式如下,其中为μ均值,σ为方差:
之后,通过将D和P加入评分算法,重新调同等距离下不同节点的优先级:
对于每个延迟dij和强度pij,可以通过下述公式计算得分score。
上述评分算法同事考虑了延迟和强度因素,接下来,对所有得分进行归一化,将每个得分除以它们的总和,以确保总分数为1。
最后,根据得分从高到低的顺序对节点进行排名,所述排名结果可以反映节点的性能和可靠性,星际文件传输网络可以根据排名结果选择性能较好的节点进行存储和下载任务。
本申请通过记录节点的历史发包数据矩阵,并使用评分算法对延迟和强度进行综合评估,提供基于节点性能的优先级顺序,帮助星际文件传输网络选择最合适的节点进行文件传输任务,确保评分结果的可比性和可用性,提高了系统的性能和效率。
为了在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响,本申请提供一种应用于星际文件传输网络的分布式文件传输方法的全部或部分内容的分布式文件传输装置的实施例,参见图6,所述分布式文件传输装置具体包含有如下内容:
发包数据存储模块1101,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果获取模块1102,用于:响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块1103,用于:将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述发包数据存储模块在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络时,具体用于:
在文件传输过程中,分别确定节点在最近预设数目个发包过程中的平均延时数据,并分别确定节点在预设时间段内的平均发包量;
将所述节点的平均延时数据和所述平均发包量存储至区块链网络。
根据本申请的任一实施方式,在得到所述排名结果后,还包括节点删除模块,用于:
响应于经过预设周期,检测所述节点的联通状态;
将检测到的处于无法联通状态的节点进行删除,并从所述排名结果中移除。
从上述描述可知,本申请实施例提供的分布式文件传输装置,能够在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
为了在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响,本申请提供一种应用于区块链网络的分布式文件传输方法的全部或部分内容的分布式文件传输装置的实施例,参见图7,所述分布式文件传输装置具体包含有如下内容:
发包数据处理模块2201,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块2202,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
根据本申请的任一实施方式,所述历史发包数据包括节点在最近预设数目个发包过程中的平均延时数据,以及所述节点在预设时间段内的平均发包量;
所述发包数据处理模块在接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到多个节点的评分结果时,具体用于:
根据所述节点在最近预设数目个发包过程中的平均延时数据,确定所述星际文件传输网络的延时矩阵;
根据所述节点预设时间段内的平均发包量,确定所述星际文件传输网络的强度矩阵;
分别对所述延时矩阵和所述强度矩阵进行归一化处理,并根据归一化结果进行文件传输状态评分,确定所述节点的评分结果。
从上述描述可知,本申请实施例提供的分布式文件传输装置,能够在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
为了在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响,本申请提供一种分布式文件传输方法的全部或部分内容的分布式文件传输系统的实施例,参见图8,包括星际文件传输网络和区块链网络;
所述星际文件传输网络包括:
发包数据存储模块1101,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
评分结果获取模块1102,用于:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块1103,用于:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
所述区块链网络包括:
发包数据处理模块2201,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块2202,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
从上述描述可知,本申请实施例提供的分布式文件传输系统,能够在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
从硬件层面来说,为了在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响,本申请提供一种用于实现所述分布式文件传输方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现分布式文件传输装置与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的分布式文件传输方法的实施例,以及分布式文件传输装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,分布式文件传输方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9为本申请实施例的电子设备9600的系统构成的示意框图。如在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,分布式文件传输方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
S101:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
S102:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
S103:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
S201:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
S202:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
从上述描述可知,本申请实施例提供的电子设备,在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
在另一个实施方式中,分布式文件传输装置可以与中央处理器9100分开配置,例如可以将分布式文件传输装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现分布式文件传输方法功能。
如在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9中所示的所有部件;此外,电子设备9600还可以包括在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9中没有示出的部件,可以参考现有技术。
如在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足图9所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的分布式文件传输方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的分布式文件传输方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S101:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
S102:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
S103:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
S201:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
S202:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
从上述描述可知,本申请实施例提供的计算机可读存储介质,在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的分布式文件传输方法中全部步骤的一种计算机程序产品,该计算机程序/指令被处理器执行时实现所述的分布式文件传输方法的步骤,例如,所述计算机程序/指令实现下述步骤:
S101:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
S102:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
S103:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
S201:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
S202:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
从上述描述可知,本申请实施例提供的计算机程序产品,在文件传输过程中,选择评分较高的节点作为目标节点,以提供更好的传输性能和可用性,从而满足对文件传输的高效和可靠性的需求,降低节点的网络波动和单点故障造成的影响。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种分布式文件传输方法,其特征在于,应用于星际文件传输网络,所述方法包括:
在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,确定所述评分结果由高至低对应的节点排名结果;
将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
2.根据权利要求1所述的方法,其特征在于,所述在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,包括:
在文件传输过程中,分别确定节点在最近预设数目个发包过程中的平均延时数据,并分别确定节点在预设时间段内的平均发包量;
将所述节点的平均延时数据和所述平均发包量存储至区块链网络。
3.根据权利要求1所述的方法,其特征在于,在得到所述排名结果后,还包括:
响应于经过预设周期,检测所述节点的联通状态;
将检测到的处于无法联通状态的节点进行删除,并从所述排名结果中移除。
4.一种分布式文件传输方法,其特征在于,应用于区块链网络,所述方法包括:
接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
5.根据权利要求4所述的方法,其特征在于,所述历史发包数据包括节点在最近预设数目个发包过程中的平均延时数据,以及所述节点在预设时间段内的平均发包量;
所述接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,包括:
根据所述节点在最近预设数目个发包过程中的平均延时数据,确定所述星际文件传输网络的延时矩阵;
根据所述节点预设时间段内的平均发包量,确定所述星际文件传输网络的强度矩阵;
分别对所述延时矩阵和所述强度矩阵进行归一化处理,并根据归一化结果进行文件传输状态评分,确定所述节点的评分结果。
6.一种分布式文件传输装置,其特征在于,应用于星际文件传输网络,所述装置包括:
发包数据存储模块,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,以使所述区块链网络对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果获取模块,用于:响应于接收到文件传输指令,从所述区块链网络得到所述节点的评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块,用于:将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
7.一种分布式文件传输装置,其特征在于,应用于区块链网络,所述装置包括:
发包数据处理模块,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络,以使所述星际文件传输网络确定所述评分结果由高至低对应的节点排名结果,将所述排名结果中排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务。
8.一种分布式文件传输系统,其特征在于,包括星际文件传输网络和区块链网络;
所述星际文件传输网络包括:
发包数据存储模块,用于:在文件传输过程中,采集节点的历史发包数据,并将所述历史发包数据存储至对应的区块链网络,其中,所述历史发包数据包括所述节点的发包延迟数据和发包量;
评分结果获取模块,用于:响应于接收到文件传输指令,从所述区块链得到节点评分结果,并确定所述评分结果由高至低对应的节点排名结果;
目标节点确定模块,用于:依次将所述排名结果中,排名首位的节点确定为目标节点,并通过所述目标节点执行文件传输任务;
所述区块链网络包括:
发包数据处理模块,用于:接收星际文件传输网络节点的历史发包数据,并对所述历史发包数据进行文件传输状态评分,得到节点评分结果,其中,所述评分结果表征所述节点中每个节点的延迟状态和强度状态;
评分结果返回模块,用于:响应于接收到星际文件传输网络的请求指令,将所述节点的评分结果发送至星际文件传输网络。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述的分布式文件传输方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5任一项所述的分布式文件传输方法的步骤。
11.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至5任一项所述的分布式文件传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658985.6A CN116633918A (zh) | 2023-06-05 | 2023-06-05 | 分布式文件传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658985.6A CN116633918A (zh) | 2023-06-05 | 2023-06-05 | 分布式文件传输方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116633918A true CN116633918A (zh) | 2023-08-22 |
Family
ID=87613257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310658985.6A Pending CN116633918A (zh) | 2023-06-05 | 2023-06-05 | 分布式文件传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116633918A (zh) |
-
2023
- 2023-06-05 CN CN202310658985.6A patent/CN116633918A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108009028B (zh) | 消息处理方法、装置、设备及计算机可读存储介质 | |
US7877082B2 (en) | Combined short range radio network and cellular telephone network for interpersonal communications | |
JP4122341B2 (ja) | クライアント端末装置とサーバーとの間のセッション再設定のためのシステム及び方法 | |
CN115004673B (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
CN110912805B (zh) | 消息读取状态的同步方法、终端、服务端及系统 | |
CN101521633A (zh) | 即时通讯中的消息传送方法及装置 | |
US20160253388A1 (en) | Method and Apparatus for Sharing Environment Context | |
CN114338063B (zh) | 消息队列系统、业务处理方法及计算机可读存储介质 | |
CN114338650A (zh) | 文件传输方法、装置、电子设备及可读存储介质 | |
CN111221649A (zh) | 边缘资源存储方法、访问方法及装置 | |
CN114257532B (zh) | 服务端状态探测方法及装置 | |
CN106156258B (zh) | 一种在分布式存储系统中统计数据的方法、装置及系统 | |
US20060020708A1 (en) | System and method for peer-to-peer communication | |
CN105516271A (zh) | 业务处理系统、业务处理方法及装置 | |
US20090216864A1 (en) | Methods, apparatuses, and computer program products, for automatically finding configuration settings for services | |
CN116303072A (zh) | 全链路性能测试方法及装置 | |
CN116821215A (zh) | 基于端口查询的opc ua服务器搜索方法 | |
CN104065684A (zh) | 信息处理方法、电子设备和终端设备 | |
CN111092952A (zh) | 一种数据交互方法及相关产品 | |
CN116633918A (zh) | 分布式文件传输方法及装置 | |
CN111815339B (zh) | 一种营销信息推送方法及设备 | |
US20110264763A1 (en) | Method for retrieving object from device management client and associated device management system | |
CN114374614A (zh) | 网络拓扑配置方法及装置 | |
CN110808051B (zh) | 一种技能选取的方法以及相关装置 |
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 |