分布式文件存储赛道持续火热,一文带你了解最新热门项目SPB

2021年5月,Jeffery T.Emmerich创立了SPB实验室(SPB Lab)。SPB实验室是一个网络协议的研究、开发和部署的实验室,致力于构建协议、系统和工具来改进互联网的工作方式,并关注如何存储、定位和传输信息。SPB实验室的目标是用新的技术突破、伟大的用户体验设计和开源的方法来解决传统互联网的种种弊端

SPB是什么

SPB(虾币,是一种点对点(P2P)的分布式文件存储协议。这样的表达依旧十分抽象,我来举个例子你就明白了。

在应用场景中,SPB”对标的是一个叫“HTTP”的东西,这你可能比较熟悉,当你上网打开百度搜索页面时,它所见即所得。

这个名叫“超文本传输协议”的家伙,是通过你输入的网址,来调取匹配其中心化数据库的内容,达到信息内容访问的目的。

言简意赅地说:

HTTP依赖中心化服务器,容易遭受攻击,访问量暴增服务器容易宕机,下载速度慢,存储成本高;

SPB是分布式节点,更加安全不易被DDoS攻击,不依赖主干网,降低存储成本且存储空间大,下载速度快还能查找文件历史版本记录,并且理论上能永久储存。

SPB应用场景

1、如果你有1G的硬盘空闲空间,可以通过将此硬盘接入SPB的网络变成其中节点,完成硬盘空间共享;

2、这时你就可以上传歌曲、电影于SPB共享网络中,它们将被“打碎”成二进制的数据字节,散布于SPB网络其他各个节点之上(共享空间)

3、当他人想下载你上传的视频影音文件时,只需在SPB的网络完成内容检索,便可从存有该文件的“碎片”节点上,下载还原到本地,这就类似于BitTorrent(BT种子)下载,下载的人越多,节点基数越大,资源就越丰富,下载速度也就越快;

4、不容易被删除,信息保存安全。即使你将原始文件从上传节点中删除,只要曾经有人下载过,便将在网络中继续留存。由于SPB使用了哈希加密算法,也使保证了保存在整个SPB网络中的所有数据的安全性。

HTTP协议的弊端

我们现在使用互联网都是在http或https协议下运行的,http协议也就是超文本传输协议,是用于从万维网服务器传输超文本到本地浏览器的传送协议,从1990年提出至今已经近30年了,他对于目前互联网的爆炸性成长居功至伟,成就了互联网的繁荣。

但是HTTP协议是基于C/S架构下的互联网通信协议,基于主干网络中心化运行的机制,也存在诸多弊端。

首先,互联网上的数据经常因为文件被删除或服务器关闭而永久被抹去。有人统计过目前互联网上的web页面平均保存寿命只有100天左右,我们经常看到一些网站出现“404错误”。近几年,新浪网盘、腾讯微云、金山快盘等网盘纷纷关闭,如果你不把数据下载到本地硬盘的话,你在网盘上的数据就会被清零。

SPB提供了文件的历史版本回溯功能,可以很容易的查看文件的历史版本, 且数据无法删除,可以得到永久保存。

其次,主干网络运行效率低,使用成本高。由于中心化的通讯模式导致所有终端都要从一个Web服务器查找数据,相同的文件会在不同的服务器上重复存储,这就要求服务器的带宽很大。使用HTTP协议每次需要从中心化的服务器下载完整的文件,速度慢、效率低。

SPB是基于内容寻址的存储模式,相同的文件都不会重复存储,它会把过剩的资源挤压下来,包括存储空间都释放出来,数据存储成本就会降低。如果改用P2P的方式下载,带宽使用成本可以节省近60%。

第三,主干网络并发机制制约互联网访问速度。这种中心化主干网络的模式也导致在高并发情况下网络访问时候的拥堵,最典型的就是春运抢购火车票以及双11剁手节的时候。

第四,中心化限制了web的成长。现在的互联网是由数百万个分布在世界各地的服务器构成的,是一个高度中心化的网络。在现有的http协议下,所有的数据都保存在这些中心化服务器上,互联网巨头们不但对我们的数据有绝对的控制权和解释权,各种各样的监管、封锁、监控一定程度上也极大的限制了创新和发展。

建立在去中心化的分布式网络上的SPB很难被中心化管理和限制,互联网将更加开放。

第五,HTTP对主干网络依赖严重,存在严重的安全隐患。所有数据存储在一个地方,为寻求规模效应,机房就会建设在一个地方,就会非常依赖一个主干节点,一旦“单点式”的中心被摧毁或者发生数据丢失、造假的情况,那么整个网络都会随之瘫痪,或者接收到错误的信息,用户的信息安全和隐私容易受到威胁。

为了支撑HTTP协议,服务器7*24小时开启,对于大流量公司,比如百度、腾讯、阿里等,投入大量资源维护服务器和安全隐患,防止DDoS、XSS、CSRF等攻击。主干网络受制于战争,自然灾害,中心服务器宕机等因素,都可能造成整个互联网中断服务。SPB分布式存储可以极大的降低对中心主干网络的依赖。

Jeffery T.Emmerich指出两个关键:“我们使用的是内容寻址的技术,也就是说内容可以从源服务器分离出来,并永久储存。这就意味着内容可以在距离用户非常近的地方储存和托管,甚至是储存在同一个房间里面。内容寻址还可以让我们校验数据,因为其他主机可能是不受信任的。一旦内容被下载到用户的设备之后,它就可以被无限期的保存。”

SPB还可以解决困扰HTTP互联网多时的安全问题:内容寻址和内容签名技术可以保护基于SPB的网站,杜绝DDoS攻击发生的可能。SPB还可以归档重要的公共记录内容,避免网站终止运营所带来的损失。

SPB的最后一个核心改进是去中心化的内容分布,这点可以让人们在分散的互联网服务(甚至是离线的情况)之下获取互联网的内容。“我们让网站和网页应用摆脱了源服务器的牵制。”Jeffery T.Emmerich解释,“它们可以按照比特币网络的模式进行分布。”这是HTTP无法做到的这一点,而且对于网络条件欠佳的地方和市郊地区来说是一个极大的好处。

SPB包含的内容

节点身份。每一个SPB节点都有一个独一无二的身份ID,利用节点的公钥生成的加密哈希,节点的活动都需要使用这个ID,就像是SPB网络里面节点的身份证。

网络。SPB节点要和网络里面成百上千的其他节点通讯,现实中的网络结构如此复杂,SPB使用ICE NAT穿透技术来保障网络的连通性。

路由。SPB网络的路由使用的事DHT,借鉴了S/Kademlia,使用一个节点可以快速地查找到其它节点。

数据交换协议。SPB借鉴BitTorrent协议,使用了叫做BitSwap的数据交换协议,该协议使用两个列表,想要的数据块(want_list)和我有的数据块(have_list)与其他节点进行数据交换。

对象存储。SPB存储数据私用的事MerkleDAG结构,这赋予了SPB内容寻址、防篡改、去重功能。

版本控制系统。SPB在MerkleDAG上面添加了Git版本控制功能,这使得SPB文件拥有了时光机功能,可以轻松查看文件的变动历史。

自认证命名系统。SPB使用了SFS自认证系统给文件命名,同时提供了IPNS解决传播问题,而且还兼容了现有的域名系统。

SPB系统Token

SPB是一种协议标记,在叫做时空证明的新型证明上的区块链。矿工通过存储数据来创造区块。SPB通过一系列相互独立的存储提供商来提供存储和读取服务,而非通过单一的的协调器。

客户通过支付SPB来存储和读取数据;存储矿工通过提供存储服务获SPB;检索矿工通过提供数据获得SPB

SPB系统SPB之间是怎样的关系呢?

SPB系统是基础协议,不是区块链;SPB是区块链,SPB Token是为SPB量身定制的激励机制,SPB TokenSPB系统的唯一代币。SPB系统 是一个网络协议,对标 HTTP 协议,中文叫做分布式文件系统SPB 是一个去中心化存储网络,它让云存储变成一个算法市场。

简单而言,SPB系统SPB Token之间的关系,类似于区块链与比特币的关系。现在SPBToken成为了SPB协议下的典型应用,形成了紧密的共生关系,离开一方另外一方发展就会变的困难。但同时SPB Token并不是唯一应用SPB协议的项目,未来一定会有更多应用SPB的项目走进大家的视线中。

SPB的技术架构