CN110868466B - 一种用于分布式存储网络的存储方法、系统及设备 - Google Patents

一种用于分布式存储网络的存储方法、系统及设备 Download PDF

Info

Publication number
CN110868466B
CN110868466B CN201911108653.0A CN201911108653A CN110868466B CN 110868466 B CN110868466 B CN 110868466B CN 201911108653 A CN201911108653 A CN 201911108653A CN 110868466 B CN110868466 B CN 110868466B
Authority
CN
China
Prior art keywords
storage
access
node
service
storage node
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
CN201911108653.0A
Other languages
English (en)
Other versions
CN110868466A (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.)
Shanghai Kunyao Network Technology Co ltd
Original Assignee
Shanghai Kunyao Network 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 Shanghai Kunyao Network Technology Co ltd filed Critical Shanghai Kunyao Network Technology Co ltd
Priority to CN201911108653.0A priority Critical patent/CN110868466B/zh
Publication of CN110868466A publication Critical patent/CN110868466A/zh
Application granted granted Critical
Publication of CN110868466B publication Critical patent/CN110868466B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请的目的是提供一种用于分布式存储网络的存储方法、系统及设备,该系统包括:服务节点、存储节点及终端用户;所述服务节点用于获取所述终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;所述终端用户用于与确定的所述终端用户的访问存储节点建立连接;所述存储节点用于存储与所述终端用户建立连接后生成的存储数据及生成访问报告,并将所述访问报告发送至所述服务节点。能够有效解决当前去中心化分布式存储系统缺乏用户管理、内容管理和服务质量保证等问题。同时,可以有效地解决了中心化存储的存储瓶颈和单点故障的问题。另外,存储更能靠近用户,能有效地提高用户访问效率。

Description

一种用于分布式存储网络的存储方法、系统及设备
技术领域
本申请涉及计算机领域,尤其涉及一种用于分布式存储网络的存储方法、系统及设备。
背景技术
分布式存储技术是当今云存储采用的主要技术,它使用多节点组成的网络来存储数据到多个节点之中,以实现数据的冗余和备份,以消除单点故障对用户数据的影响,同时,也可以通过多节点存储来提升用户访问的性能。现有的分布式存储技术主要通过集群的方式组织节点,通过可管理节点的紧耦合的方式进行统一的管理来为用户提供服务。其服务节点的部署、升级、检测、管理统一进行,实现起来较为容易,也比较成熟。这种方式组成的存储系统也称为中心化的存储网络,而中心化的存储网络完全属于同一个管理实体,投入高,存储集中,扩展起来难度很大。
分布式存储技术发展至今,已经由中心化的方式向去中心化的方式演进。去中心化存储网络是分布式存储技术的最新发展。其存储和管理方式和中心化的分布式存储有很大的不同,比如,服务节点的加入和退出自由化,不受中心化管理的控制,服务节点更加分散化。去中心化存储网络还处于发展之中,目前已经提出多种技术,包括:IPFS(InterPlanetary File System,星际文件系统),BitTorrent,Sia,Swarm(一种基于以太坊的去中心化文件系统)。但这些去中心化的存储技术都是建立在点对点网络上的基础文件系统。这些系统缺乏有效的管理和服务质量保证。
发明内容
本申请的一个目的是提供一种用于分布式存储网络的存储方法、系统及设备,解决现有技术中传统的中心化分布式存储系统投入高、扩展难的问题,以及当前去中心化分布式存储系统缺乏用户管理、内容管理和服务质量保证等问题。
根据本申请的一个方面,提供了一种在服务节点用于分布式存储网络的存储方法,该方法包括:
确定分布式存储网络中当前的存储节点的信息;
获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;
接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。
进一步地,确定分布式存储网络中当前的存储节点的信息,包括:
获取所述存储节点的连接请求,基于所述连接请求对所述存储节点进行登记,以更新所述服务节点中存储节点的列表;
获取更新后的存储节点的列表中所有存储节点的连接状态信息;
根据所有存储节点的连接状态信息确定分布式存储网络中当前的存储节点的信息。
进一步地,基于所述连接请求对所述存储节点进行登记之后,包括:
根据当前网络环境将服务许可发送至所述存储节点,以使所述存储节点基于所述服务许可与所述分布式存储网络中其他存储节点进行点对点连接。
进一步地,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点之后,包括:
将确定的终端用户的访问存储节点放入访问列表中;
将所述访问列表及关于所述访问列表中每一访问存储节点的访问证明发送至所述终端用户。
进一步地,所述方法包括以下任一项:
获取所述分布式存储网络中待离线存储节点的离线报告信息,根据所述离线报告信息更新所述服务节点中存储节点的列表;
根据所述分布式存储网络中所有存储节点上报的网络状态信息确定待离线存储节点,根据确定的待离线存储节点更新所述服务节点中存储节点的列表。
根据本申请又一个方面,提供了一种在存储节点用于分布式存储网络的存储方法,该方法包括:
基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;
根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;
生成访问报告,并将所述访问报告发送至所述服务节点。
进一步地,基于终端用户的访问证明与所述终端用户建立连接之前,包括:
生成当前存储节点的标识信息,对所述标识信息进行哈希计算确定哈希标识信息;
向服务节点发送所述当前存储节点的哈希标识信息以进行登记;
接收所述服务节点发送的服务许可,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接。
进一步地,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接,包括:
基于所述服务许可和分布式哈希表查找所述分布式存储网络中已有的存储节点,其中,所述分布式哈希表是根据所述分布式存储网络中的所有存储节点的哈希标识信息建立的;
根据所述已有的存储节点的连接数阈值确定与所述当前存储节点进行连接的目标连接存储节点;
将所述当前存储节点与所述目标连接存储节点进行点对点连接。
根据本申请另一个方面,提供了一种在终端用户端用于分布式存储网络的存储方法,该方法包括:
向服务节点发送终端用户的访问请求;
接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;
根据所述访问证明与所述访问列表中每一访问存储节点建立连接。
根据本申请再一个方面,提供了一种用于分布式存储网络的存储系统,该系统包括:服务节点、存储节点及终端用户;
所述服务节点用于获取所述终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;
所述终端用户用于与确定的所述终端用户的访问存储节点建立连接;
所述存储节点用于存储与所述终端用户建立连接后生成的存储数据及生成访问报告,并将所述访问报告发送至所述服务节点。
根据本申请另一个方面,还提供了一种用于分布式存储网络的存储的服务节点设备,该服务节点设备包括:
确定装置,用于确定分布式存储网络中当前的存储节点的信息;
获取装置,用于获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;
接收报告装置,用于接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。
根据本申请另一个方面,还提供了一种用于分布式存储网络的存储的存储节点设备,该存储节点设备包括:
连接装置,用于基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;
存储装置,用于根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;
上报装置,用于生成访问报告,并将所述访问报告发送至所述服务节点。
根据本申请另一个方面,还提供了一种用于分布式存储网络的存储的终端用户设备,该终端用户设备包括:
发送装置,用于向服务节点发送终端用户的访问请求;
接收装置,用于接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;
建立连接装置,用于根据所述访问证明与所述访问列表中每一访问存储节点建立连接。
根据本申请再一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的方法。
与现有技术相比,本申请用于分布式存储网络的存储系统包括:服务节点、存储节点及终端用户;所述服务节点用于获取所述终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;所述终端用户用于与确定的所述终端用户的访问存储节点建立连接;所述存储节点用于存储与所述终端用户建立连接后生成的存储数据及生成访问报告,并将所述访问报告发送至所述服务节点。能够有效解决当前去中心化分布式存储系统缺乏用户管理、内容管理和服务质量保证等问题。同时,每一个存储节点在管理端的指导下都可以独立地为用户提供数据存取服务,有效地解决了中心化存储的存储瓶颈和单点故障的问题。另外,由于存储更为分散,存储更能靠近用户,能有效地提高用户访问效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请的一个方面提供的一种在服务节点用于分布式存储网络的存储方法的流程示意图;
图2示出根据本申请又一个方面提供的一种在存储节点用于分布式存储网络的存储方法的流程示意图;
图3示出根据本申请另一个方面提供的一种在终端用户端用于分布式存储网络的存储方法的流程示意图;
图4示出根据本申请再一个方面提供的一种用于分布式存储网络的存储系统的结构示意图;
图5示出本申请一实施例中服务节点的架构示意图;
图6示出本申请一实施例中存储节点加入分布式存储网络时的流程示意图;
图7示出本申请一实施例中终端用户访问时的流程示意图;
图8示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的服务节点设备的结构示意图;
图9示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的存储节点设备的结构示意图;
图10示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的终端用户设备的结构示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(例如中央处理器(Central Processing Unit,CPU))、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RandomAccess Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(Phase-Change RAM,PRAM)、静态随机存取存储器(Static Random Access Memory,SRAM)、动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能光盘(Digital Versatile Disk,DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
图1示出根据本申请的一个方面提供的一种在服务节点用于分布式存储网络的存储方法的流程示意图,该方法包括:步骤S11~步骤S13,
在步骤S11中,确定分布式存储网络中当前的存储节点的信息;在此,服务节点管理分布式存储网络中的存储节点,在服务节点中存储有有关存储节点的信息列表,可以根据该信息列表确定分布式存储网络中当前已有的存储节点的信息,从而为请求访问的终端用户分配存储节点。
在步骤S12中,获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;在此,访问存储节点为与终端用户进行数据交互的存储节点,终端用户需要访问存储节点时,通过服务节点进行鉴权,服务节点根据访问请求以及服务节点中已有的存储节点的信息确定终端用户可以访问的存储节点,即服务节点通过跟终端用户和存储节点的沟通,确定哪些存储节点可以被终端用户访问,还可以通过访问控制列表进行访问控制,其中,访问控制列表包含终端用户可以访问的访问存储节点。
在步骤S13中,接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。在此,确定与终端用户进行数据交互的访问存储节点后,通知终端用户是哪些访问存储节点以使终端用户开始与访问存储节点进行数据交互,接收终端用户发送的访问报告,该访问报告包括终端用户与访问存储节点进行数据交互的情况信息,比如包括访问时间、访问时的网络状态、交互的数据等。
通过上述步骤S11~步骤S13,当用户获得数据访问许可后,可以直接跟存储节点进行数据交互,数据交互过程无需通过服务节点,由于存储节点的分散化,终端用户所访问的存储节点也可以分散化,从而实现高扩展性。
在本申请一实施例中,在步骤S11中,获取所述存储节点的连接请求,基于所述连接请求对所述存储节点进行登记,以更新所述服务节点中存储节点的列表;获取更新后的存储节点的列表中所有存储节点的连接状态信息;根据所有存储节点的连接状态信息确定分布式存储网络中当前的存储节点的信息。在此,当存储节点进行加入分布式存储网络时,存储节点会连接服务节点,服务节点接到连接请求对该存储节点进行登记,即将该存储节点的信息登记至服务节点中已有的存储节点列表中,从而可以使服务节点可以管理整个分布式存储网络的存储节点;更新存储节点的列表后,获取列表中所有存储节点的连接状态信息,从而根据连接状态信息确定出连接网络正常的存储节点、连接网络异常的存储节点,可以给予服务许可的存储节点。
接着,基于所述连接请求对所述存储节点进行登记之后,可以根据当前网络环境将服务许可发送至所述存储节点,以使所述存储节点基于所述服务许可与所述分布式存储网络中其他存储节点进行点对点连接。在此,当存储节点满足要求时,获得服务节点的服务许可才可进行正常服务。服务节点对当前的存储节点进行判断,确定出哪些不可以再进行服务,哪些可进行正常服务的存储节点,可以给予服务许可,进行判断时,根据当前网络环境进行判断,该当前网络环境包括程序运行情况、网络连接情况及存储空间等,当加入分布式存储网络的存储节点达到程序运行正常、网络连接通畅、存储空间符合要求等时,该存储节点获得服务节点给的服务许可,从而存储节点基于该服务许可自动连接其他存储节点,连接时通过点对点网络协议进行连接,形成点对点网络,其中,程序运行为安装的去中心化的存储软件的运行。服务节点可以根据存储节点上报的连接网络情况、与其他存储节点的连接情况以及数据访问情况确定终端用户的访问存储节点,还可以为每个存储节点配置可连接数,还可以根据可连接数、存储节点上报的连接网络情况、与其他存储节点的连接情况以及数据访问情况确定该存储节点可与哪些存储节点进行点对点连接,告知该存储节点,在存储节点数量庞大时,无需所有存储节点都两两互联,节省网络资源。
在本申请一实施例中,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点之后,可以将确定的终端用户的访问存储节点放入访问列表中;将所述访问列表及关于所述访问列表中每一访问存储节点的访问证明发送至所述终端用户。在此,通过对存储节点的管理,确定出终端用户可进行访问的访问存储节点后,将访问存储节点放入访问列表中,将该访问列表以及访问列表中的每一访问存储节点的访问证明发送给终端用户,从而终端用户根据访问列表去查找访问存储节点,并使用访问证明让访问存储节点进行鉴权,从而终端用户与访问存储节点进行数据交互。
在本申请一实施例中,所述方法包括以下任一项:获取所述分布式存储网络中待离线存储节点的离线报告信息,根据所述离线报告信息更新所述服务节点中存储节点的列表;根据所述分布式存储网络中所有存储节点上报的网络状态信息确定待离线存储节点,根据确定的待离线存储节点更新所述服务节点中存储节点的列表。在此,存储节点可以离开分布式存储网络,当服务节点获取分布式存储网络中待离线存储节点上报的离线报告信息时,该待离线存储节点退出分布式存储网络,服务节点更新当前的存储节点的列表,即在列表中除去已离去的存储节点的信息。存储节点还可能因为电力或网络故障离开分布式存储网络,服务节点可以根据分布式存储网络中各个存储节点上报的网络状况信息,来判断是否存在存储节点已经离线,若一个存储节点被其他存储节点报告服务不佳或连接问题,该存储节点将被做离线处理,确定离线的存储节点后,更新现有的存储节点的列表。
图2示出根据本申请又一个方面提供的一种在存储节点用于分布式存储网络的存储方法的流程示意图,该方法包括:步骤S21~步骤S23,其中,在步骤S21中,基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;在此,根据终端用户出示的访问证明判断该终端用户是否具有访问权限,若有访问权限,则与该终端用户建立连接,进行数据交互。接着,在步骤S22中,根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;与终端用户进行交互,确定存储至存储节点的数据以及从存储节点拉取的数据,并在步骤S23中,生成访问报告,并将所述访问报告发送至所述服务节点。在存储节点进行数据存取服务后,生成相关的访问报告,将该访问报告发送至服务节点,以方便服务节点对存储节点进行内容管理,存储节点及终端用户的数据交换会通过存储节点自动报告给服务节点,从而服务节点可以更好地统计数据,实现现有去中心化存储网络不具备的管理功能。通过存储节点间的数据通信通过去中心化服务程序根据用户需求自动拉取,无需服务节点干预,拉取的数据在节点缓存,自动具有分发网络的功能,因此可以有效提升数据访问效率。
本申请一实施例中,基于终端用户的访问证明与所述终端用户建立连接之前,可以生成当前存储节点的标识信息,对所述标识信息进行哈希计算确定哈希标识信息;向服务节点发送所述当前存储节点的哈希标识信息以进行登记;接收所述服务节点发送的服务许可,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接。在此,初始化,存储节点自动生成节点标识信息(ID),节点ID由随机数产生,并通过哈希算法进行运算生成可识别的字符串,即生成哈希标识信息,随机数空间应大于 128位,优先应用256位,以足够大的空间避免碰撞。自动连接服务节点,向服务节点发送该哈希标识信息以在服务节点中进行登记,从而接收服务节点根据哈希标识信息返回的服务许可,根据服务许可以及当前已有的存储节点建立点对点连接,形成点对点网络。
在本申请一实施例中,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接时,可以基于所述服务许可和分布式哈希表查找所述分布式存储网络中已有的存储节点,其中,所述分布式哈希表是根据所述分布式存储网络中的所有存储节点的哈希标识信息建立的;根据所述已有的存储节点的连接数阈值确定与所述当前存储节点进行连接的目标连接存储节点;将所述当前存储节点与所述目标连接存储节点进行点对点连接。在此,可以通过分布式哈希表进行内容寻址,寻址到具有服务许可的存储节点,根据寻址到的每个具有服务许可的存储节点的连接数阈值确定目标连接存储节点,其中,目标存储节点为还可以进行连接其他存储节点的存储节点。例如,存储节点的连接数阈值为N,即达到的最大可连接数为N,则根据当前的已连接数以及连接数阈值N确定该存储节点是否还可以连接其他存储节点以及还可以连接的数量,若还可以连接,则为目标存储节点,将当前存储节点与目标存储节点进行点对点连接。需要说明的是,分布式哈希表是根据当前网络中的所有存储节点的标识信息(ID)进行哈希运算建立的,从而便于快速索引和扩展,分布式哈希表的内容分布在所有存储节点上,每个存储节点仅包含部分内容,所有存储节点结合起来为整个哈希表的数据备份。
图3示出根据本申请另一个方面提供的一种在终端用户端用于分布式存储网络的存储方法的流程示意图,该方法包括:步骤S31~步骤S33,其中,在步骤S31中,向服务节点发送终端用户的访问请求;在此,终端用户对存储数据进行访问时需要通过服务节点进行鉴权,向服务节点发送访问请求;接着,在步骤S32中,接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;在此,接收服务节点返回的访问证明以及包含访问存储节点的访问列表,从而方便终端用户在步骤S33中,根据所述访问证明与所述访问列表中每一访问存储节点建立连接。数据访问通过存储节点直接进行,进而既做到了访问控制,同时也没有数据访问带宽瓶颈。
图4示出根据本申请再一个方面提供的一种用于分布式存储网络的存储系统的结构示意图,该系统包括:服务节点100、存储节点200及终端用户300;所述服务节点100用于获取所述终端用户300的访问请求,基于所述访问请求及所述当前的存储节点200的信息确定所述终端用户的访问存储节点;所述终端用户300用于与确定的所述终端用户的访问存储节点建立连接;所述存储节点200用于存储与所述终端用户建立连接后生成的存储数据及生成访问报告,并将所述访问报告发送至所述服务节点100。在此,服务节点100优选为管理服务节点,通过管理服务节点、存储节点以及终端用户形成联盟式存储,可实现服务节点管理、存储空间管理、存储设备管理、内容管理、统计和计费管理、存储需求用户管理、终端用户管理等。能够有效解决当前去中心化分布式存储系统缺乏用户管理、内容管理和服务质量保证等问题。同时,每一个存储节点在管理端的指导下都可以独立地为用户提供数据存取服务,有效地解决了中心化存储的存储瓶颈和单点故障的问题。另外,由于存储更为分散,存储更能靠近用户,能有效地提高用户访问效率。
具体地,本申请所述的系统提供多个分散的存储节点,存储节点上可运行一种去中心化服务程序,该程序用于自动构建去中心化存储网络。每个存储节点之间通过点对点网络连接,存储节点之间的关系为对等关系,形成一个网状网络,任何存储节点只要遵循联盟式存储网络的协议均可以加入,任何存储节点也可以随时退出网络。网络的数据通信通过点对点网络进行,无需通过中心化的管理节点。本申请所述的系统提供一个服务节点,如图5所示,在服务节点上提供联盟管理套件,联盟管理仅仅对存储网络实施管理,联盟管理套件可以包含多种服务,该多种服务包括:存储节点管理、存储空间管理、内容管理或合规管理、统计和计费管理、计费管理、存储用户管理、应用管理等子模块。本申请所述的系统提供多个终端用户,在用户端运行分布式存储访问程序,该程序用于存储用户进行存储访问。分布式存储访问程序通过与上述联盟管理套件进行交互实现用户鉴权、统计和计费管理等。同时,分布式存储访问程序根据管理套件提供的存储服务器地址直接与存储服务器交互进行文件的存取服务。
在本申请一实施例中,当存储节点加入分布式存储网络时,如图6所示,具体步骤如下:安装去中心化的存储软件,(1)初始化,存储节点自身独自产生节点ID,节点ID由随机数产生,并通过哈希算法进行运算生成可识别的字符串;(2)自动连接服务节点进行登记,(3)若运行程序正确、网络连接通畅,则该存储节点获得服务节点给的服务许可;(4)获得服务许可后,自动连接其他已加入的存储节点,加入点对点网络。每一存储节点的点对点网络连接数可配置,当存储节点数量庞大时,无需所有存储节点都两两互联。存储节点之间可以通过相互通信和分布式哈希表查找了解所有存储节点,其中,哈希表是通过所有存储节点的标识信息ID进行哈希运算建立的。(5)新加入的存储节点连接其他存储节点后,加入点对点网络中,可以提供服务。服务节点要求存储节点周期性报告连接情况以便了解各个存储节点的运行状况,其中,连接情况包括本存储节点的网络连接以及和本存储节点有连接的其他存储节点的网络连接情况。(6)在存储节点进行数据存取服务后,存储节点周期性地发送数据访问报告给服务节点的数据统计模块。当存储节点离开存储网络时需要主动报告至服务节点,报告后可以关闭程序;存储节点也可能因为电力或网络故障离开网络,服务节点可以根据网络中各个存储节点报告的网络状况信息来判断是否有存储节点已经离线。如果一个存储节点被其他存储节点报告服务不佳或连接问题,此存储节点将被做离线处理。
在本申请一实施例中,如图7所示,终端用户向服务节点发送申请访问的请求,服务节点根据用户管理向终端用户发送访问证明和访问节点列表,其中,用户管理包括对存储节点管理以及终端用户管理,根据用户访问信息进行更新访问控制模块,存储节点管理是对存储节点周期性上报的节点状态进行管理;访问证明为一段时间内有效的Token,当终端用户访问节点列表中的存储节点时,需要出示此Token,否则,该存储节点将拒绝该终端用户的访问。当终端用户获得访问证明和节点列表后,可以直接跟节点列表中的存储节点进行数据交互,存储节点周期性给服务节点发送数据访问报告,从而服务节点进行访问统计管理。
图8示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的服务节点设备的结构示意图,该服务节点设备包括:确定装置11、获取装置12及接收报告装置13,其中,确定装置11用于确定分布式存储网络中当前的存储节点的信息;获取装置12用于获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;接收报告装置13用于接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。
需要说明的是,确定装置11、获取装置12及接收报告装置13执行的内容分别与上述步骤S11、S12和S13中的内容相同或相应相同,为简明起见,在此不再赘述。
图9示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的存储节点设备的结构示意图,该存储节点设备包括:连接装置21、存储装置22及上报装置23,其中,连接装置21用于基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;存储装置22用于根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;上报装置23用于生成访问报告,并将所述访问报告发送至所述服务节点。
需要说明的是,连接装置21、存储装置22及上报装置23执行的内容分别与上述步骤S21、S22和S23中的内容相同或相应相同,为简明起见,在此不再赘述。
图10示出根据本申请另一个方面还提供的一种用于分布式存储网络的存储的终端用户设备的结构示意图,该终端用户设备包括:发送装置31、接收装置32及建立连接装置33,其中,发送装置31用于向服务节点发送终端用户的访问请求;接收装置32用于接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;建立连接装置33用于根据所述访问证明与所述访问列表中每一访问存储节点建立连接。
需要说明的是,发送装置31、接收装置32及建立连接装置33执行的内容分别与上述步骤S31、S32和S33中的内容相同或相应相同,为简明起见,在此不再赘述。
此外,本申请实施例还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述一种用于分布式存储网络的存储方法。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构) 可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (13)

1.一种在服务节点中用于分布式存储网络的存储方法,其特征在于,所述方法包括:
确定分布式存储网络中当前的存储节点的信息;
根据当前网络环境将服务许可发送至所述当前的存储节点,以使所述当前的存储节点基于所述服务许可与所述分布式存储网络中其他存储节点进行点对点连接;
获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;
接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。
2.根据权利要求1所述的方法,其特征在于,确定分布式存储网络中当前的存储节点的信息,包括:
获取所述存储节点的连接请求,基于所述连接请求对所述存储节点进行登记,以更新所述服务节点中存储节点的列表;
获取更新后的存储节点的列表中所有存储节点的连接状态信息;
根据所有存储节点的连接状态信息确定分布式存储网络中当前的存储节点的信息。
3.根据权利要求1所述的方法,其特征在于,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点之后,包括:
将确定的终端用户的访问存储节点放入访问列表中;
将所述访问列表及关于所述访问列表中每一访问存储节点的访问证明发送至所述终端用户。
4.根据权利要求1所述的方法,其特征在于,所述方法包括以下任一项:
获取所述分布式存储网络中待离线存储节点的离线报告信息,根据所述离线报告信息更新所述服务节点中存储节点的列表;
根据所述分布式存储网络中所有存储节点上报的网络状态信息确定待离线存储节点,根据确定的待离线存储节点更新所述服务节点中存储节点的列表。
5.一种在存储节点中用于分布式存储网络的存储方法,其特征在于,所述方法包括:
获取服务节点发送的服务许可,基于所述服务许可与分布式存储网络中其他存储节点进行点对点连接,其中,所述服务许可由所述服务节点根据当前网络环境确定;
基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;
根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;
生成访问报告,并将所述访问报告发送至所述服务节点。
6.根据权利要求5所述的方法,其特征在于,基于终端用户的访问证明与所述终端用户建立连接之前,包括:
生成当前存储节点的标识信息,对所述标识信息进行哈希计算确定哈希标识信息;
向服务节点发送所述当前存储节点的哈希标识信息以进行登记;
接收所述服务节点发送的服务许可,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接。
7.根据权利要求6所述的方法,其特征在于,基于所述服务许可与分布式存储网络中已有的存储节点建立点对点连接,包括:
基于所述服务许可和分布式哈希表查找所述分布式存储网络中已有的存储节点,其中,所述分布式哈希表是根据所述分布式存储网络中的所有存储节点的哈希标识信息建立的;
根据所述已有的存储节点的连接数阈值确定与所述当前存储节点进行连接的目标连接存储节点;
将所述当前存储节点与所述目标连接存储节点进行点对点连接。
8.一种在终端用户端中用于分布式存储网络的存储方法,其特征在于,所述方法包括:
向服务节点发送终端用户的访问请求,以使所述服务节点根据当前网络环境将服务许可发送至当前的存储节点,以使所述当前的存储节点基于所述服务许可与分布式存储网络中其他存储节点进行点对点连接;
接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;
根据所述访问证明与所述访问列表中每一访问存储节点建立连接。
9.一种用于分布式存储网络的存储系统,其特征在于,所述系统包括:服务节点、存储节点及终端用户;
所述服务节点用于获取所述终端用户的访问请求,基于所述访问请求及当前的存储节点的信息确定所述终端用户的访问存储节点;
所述服务节点用于根据当前网络环境将服务许可发送至所述当前的存储节点,以使所述当前的存储节点基于所述服务许可与所述分布式存储网络中其他存储节点进行点对点连接;
所述终端用户用于与确定的所述终端用户的访问存储节点建立连接;
所述存储节点用于存储与所述终端用户建立连接后生成的存储数据及生成访问报告,并将所述访问报告发送至所述服务节点。
10.一种用于分布式存储网络的存储的服务节点设备,其特征在于,所述服务节点设备包括:
确定装置,用于确定分布式存储网络中当前的存储节点的信息,并根据当前网络环境将服务许可发送至所述当前的存储节点,以使所述当前的存储节点基于所述服务许可与所述分布式存储网络中其他存储节点进行点对点连接;
获取装置,用于获取终端用户的访问请求,基于所述访问请求及所述当前的存储节点的信息确定所述终端用户的访问存储节点;
接收报告装置,用于接收所述访问存储节点发送的由所述终端用户对所述访问存储节点进行访问的访问报告。
11.一种用于分布式存储网络的存储的存储节点设备,其特征在于,所述存储节点设备包括:
连接装置,用于获取服务节点发送的服务许可,基于所述服务许可与分布式存储网络中其他存储节点进行点对点连接,其中,所述服务许可由所述服务节点根据当前网络环境确定;以及,用于基于终端用户的访问证明与所述终端用户建立连接,其中,所述终端用户的证明由服务节点基于所述终端用户的访问请求确定;
存储装置,用于根据所述终端用户的访问确定存储数据,将所述存储数据存储至存储节点;
上报装置,用于生成访问报告,并将所述访问报告发送至所述服务节点。
12.一种用于分布式存储网络的存储的终端用户设备,其特征在于,所述终端用户设备包括:
发送装置,用于向服务节点发送终端用户的访问请求,以使所述服务节点根据当前网络环境将服务许可发送至当前的存储节点,以使所述当前的存储节点基于所述服务许可与分布式存储网络中其他存储节点进行点对点连接;
接收装置,用于接收所述服务节点基于所述访问请求返回的包含访问存储节点的访问列表及对所述访问列表中每一访问存储节点的访问证明;
建立连接装置,用于根据所述访问证明与所述访问列表中每一访问存储节点建立连接。
13.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至8中任一项所述的方法。
CN201911108653.0A 2019-11-13 2019-11-13 一种用于分布式存储网络的存储方法、系统及设备 Active CN110868466B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911108653.0A CN110868466B (zh) 2019-11-13 2019-11-13 一种用于分布式存储网络的存储方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911108653.0A CN110868466B (zh) 2019-11-13 2019-11-13 一种用于分布式存储网络的存储方法、系统及设备

Publications (2)

Publication Number Publication Date
CN110868466A CN110868466A (zh) 2020-03-06
CN110868466B true CN110868466B (zh) 2021-08-17

Family

ID=69653972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911108653.0A Active CN110868466B (zh) 2019-11-13 2019-11-13 一种用于分布式存储网络的存储方法、系统及设备

Country Status (1)

Country Link
CN (1) CN110868466B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114567647A (zh) * 2022-02-28 2022-05-31 浪潮云信息技术股份公司 一种基于ipfs的分布式云文件存储方法及系统
CN116893789B (zh) * 2023-09-08 2024-01-19 苏州浪潮智能科技有限公司 一种数据管理方法、系统、装置、设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442671B1 (en) * 2010-12-23 2016-09-13 Emc Corporation Distributed consumer cloud storage system
CN109194718A (zh) * 2018-08-09 2019-01-11 玄章技术有限公司 一种区块链网络及其任务调度方法
CN109450996A (zh) * 2018-10-25 2019-03-08 国信优易数据有限公司 一种数据上链管理方法、装置、设备和区块链系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3472994B1 (en) * 2016-06-20 2020-10-21 Innogy Innovation Gmbh Software defined networking system
CN108898492A (zh) * 2018-07-17 2018-11-27 北京猎户星空科技有限公司 一种基于联盟链的众包任务实现方法和装置及系统
CN110062034B (zh) * 2019-04-01 2021-11-12 中科天御(苏州)科技有限公司 一种区块链大文件安全存储方法及系统
CN110046521B (zh) * 2019-04-24 2023-04-18 成都派沃特科技股份有限公司 去中心化隐私保护方法
CN110348830B (zh) * 2019-06-20 2022-09-27 国家信息中心 一种基于区块链的网络系统、认证方法、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442671B1 (en) * 2010-12-23 2016-09-13 Emc Corporation Distributed consumer cloud storage system
CN109194718A (zh) * 2018-08-09 2019-01-11 玄章技术有限公司 一种区块链网络及其任务调度方法
CN109450996A (zh) * 2018-10-25 2019-03-08 国信优易数据有限公司 一种数据上链管理方法、装置、设备和区块链系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
区块链的存储容量可扩展模型;贾大宇等;《计算机科学与探索》;20170928;第12卷(第4期);第525-535页 *

Also Published As

Publication number Publication date
CN110868466A (zh) 2020-03-06

Similar Documents

Publication Publication Date Title
EP4195605A1 (en) Data processing method and apparatus based on blockchain network, computer device and computer readable storage medium
US10972463B2 (en) Blockchain-based NB-IoT devices
US20210297410A1 (en) Mec platform deployment method and apparatus
US10348721B2 (en) User authentication
CN107800565B (zh) 巡检方法、装置、系统、计算机设备和存储介质
EP3905598B1 (en) Message processing method and apparatus, control plane device, and computer storage medium
US20210320845A1 (en) Network function nf management method and nf management device
EP3654619B1 (en) A dynamic content distribution protocol for an enterprise environment
US20150305008A1 (en) Method and apparatus for updating information regarding specific resource in wireless communication system
CN110677383B (zh) 防火墙开墙方法、装置、存储介质及计算机设备
US11743099B2 (en) Systems, methods and devices for networked media distribution
CN110868466B (zh) 一种用于分布式存储网络的存储方法、系统及设备
CN110730081B (zh) 基于区块链网络的证书吊销方法、相关设备及介质
US20100067369A1 (en) Information management method and information processing device
US8200811B2 (en) Automatic server administration of serial numbers in a replicated certificate authority topology
CN111866993B (zh) 无线局域网连接管理方法、装置、软件程序及存储介质
CN108566421B (zh) 一种基于网络附属存储器的网络式分布方法及系统
CN112468350B (zh) 一种电力物联网的运行参数配置管理方法及装置
JP2024505147A (ja) ファブリック可用性および同期化
CN114650281B (zh) 基于复杂网络的文件下载方法、装置、设备及存储介质
CN111817860A (zh) 一种通信认证方法、装置、设备及存储介质
WO2023207567A1 (zh) 网络服务方法、主节点、子节点、计算机可读介质
CN112968863B (zh) 一种基于r树的分布式授权管理方法、设备及存储介质
CN112787864B (zh) 一种电力物联网的分组配置方法及装置
US20220353093A1 (en) Systems and methods for assigning a cryptographic identity to node-based systems

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
GR01 Patent grant
GR01 Patent grant