这个技术的出现,可能会颠覆阿里云、AWS!
2018-12-06来源:omnigeeker

图片

在大数据和人工智能的带动下,越来越多的大型公司开始争夺云服务市场这块香饽饽。

AWS、阿里云、Azure,这些耳熟能详的云服务商依然牢牢占据着全球70%以上的市场,但是随着去年“区块链”这个领域的兴起,未来云服务市场可能发生改变。

目前我们所知道的云服务商、云存储机构都属于中心化存储,而去中心化存储反而拥有更高速,更廉价,更隐私的特点。此前去中心化存储一直无法解决文件上传、下载的信任问题,而“区块链”的出现,正好弥补了去中心化存储的信任问题。

今天,就从传输速度方面来讲讲,去中心化存储,为何能颠覆阿里云、AWS。

去中心化存储拥有比传统云存储数据传输更快的速度,原因是:

首先, 我要讲解的是互联网底层架构。

影响网络传输速度的因素:

  1. 中间经过的路由的数量,一般来说中间经过的路由数量越多,传输速度越慢
  2. 两端的带宽大小,以及剩余情况,特别是服务器端,如果服务器端带宽爆满了,速度肯定会变慢。
  3. 两端中间路由的带宽大小,瓶颈往往是中间最慢的路由,特别是在跨越运营商的时候,或者跨越国界的时候,非常容易遇到瓶颈
  4. 局部的热点事件,也很容易引起网络的拥塞,因为带宽总量不变,当别人用多了,你自然就用少了。

互联网在实际运行的过程中,就像一个城市的交通,其实非常复杂,存在着巨大的不确定性,很难预测。所以不能简单理解为地址位置距离越近,网速越快;但是有一点可以肯定,如果地理位置距离远的,网速一定不会快。下面这个图就是美国的网络运行示意图。

图片

下面再看一组关于东南亚国家网络调查数据,数据来源于https://www.terabitconsulting.com/mt-content/uploads/2018/01/20150602-broadband-infrastructrure-in-the-asean-region.pdf

这是东南亚各国的带宽总览,可以看出不少国家的总接入带宽是很少的。

图片

另外,国际流量的调查表格如下:

图片

从表中可以看出,东南亚各国平均到每个人头的跨国带宽是非常低的,另外不少国家的跨国网络也是非常弱的。在此,我抛出一个问题,像Amazon这样的全球顶级云服务提供商, 能够保证每个地方都高速访问吗?

下面来解释这个问题。我们先看一张图,这是Amazon的云服务的全球机房部署图。

图片

可以看出,亚马逊云服务在东南亚地区只在新加坡重点部署了两个节点。 我猜测这样做的原因可能是:新加坡国内环境安全且经济实力较为强大,在这里布置节点,使得管理成本最低。

但是,从前面的报告来看,东南亚不少国家的国际互联网连接是很弱的。想象一下,一个泰国的用户,如果把文件存放在新加坡的亚马逊服务器节点上,他必须通过跨国连接才能访问,而柬埔寨整个国家的跨国互联网非常弱,可以推断,他的传输速度一定是很低的。

那么我设计的PPIO去中心化存储为什么能解决这个问题?

因为一旦PPIO项目主网启动,很快,我们的服务方将会遍布全球各地。为什么我们的服务方会遍布全球各地?大家都会有闲置的硬盘空间或者带宽,如果这些闲置空间可以出租赚钱,相信没有人会拒绝。PPIO就是将用户闲置的硬盘空间和带宽进行出租,再通过区块链技术,保证激励是公开透明的,只要用户把存储和带宽接入PPIO提供服务,就能获得激励。

当世界各地都有服务方接入PPIO之后,就相当于在世界各地部署了机房来提供存储服务,用最近的距离服务最近的人,传输速度自然就得到提高。想象一下,上网人数多的地方,同样提供服务的人也会更多,这样,人越多上网速度反而越快。

图片

这是将来世界各地的PPIO服务方地图

我在设计PPIO的时候,引入了P2P的经典重叠网络。所谓重叠网络,简单地说就是在基本物理互联网之上,再做一层基于节点与节点之间的平等逻辑互联网。

图片

PPIO重叠网络就是采用自组织非结构网络的方式,这个方式鼓励就近连接(网络距离)。保持就近连接,存储时会将数据优先存储在就近的租户上,分发时也会优先从距离用户近的节点传输数据,这样能充分利用本地带宽,极大提高传输速度。

当更多的节点加入PPIO网络,每个节点就更容易找到更近更快的临近节点,用于存储或者发布下载。服务器带宽不再是瓶颈,用户增长带来的是更快的传输速度和更好的用户体验。

图片

P2P自组织网络的建立过程

PPIO网络中每个节点会随时维持自己的长连接节点。这些节点我们称为邻居。每个节点维持连接的邻居,会自动进行淘汰,从而使每个节点在长期的在线过程中,适中动态保持连接自己的相对快的邻居,就形成了自组织的P2P重叠网络:

为实现以上操作,每个节点要维持两个实时的库,一个是邻居库,一个是有效候选节点库,这两个库对于重叠网络选择节点至关重要。另外每个节点还要维护历史邻居库,该库记录了历史上成为过邻居的节点和其相关信息。

图片

优先就近存储原则

有邻居节点后,当每个用户上传数据时,PPIO会把大部分资源副本优先放置在邻居服务方或者足够快的邻居服务方上,这样用户再获取资源的时候,就能获得就近传输了,获得非常快的传输体验。当租户节点非常多遍及全球各地的时候,每个地方的存储传输速度都能足够快。

普通的用户一般是很少变更区域的,但是也有特殊情况,我在设计PPIO的时候适应了两种特殊的情况。

1、关于跨越地域的用户

可能存在以下的情况,有用户长期来回在两个地方,这样两个地方的传输速度都需要比较快。PPIO对于这种情况要做专门的优化,由于用户在一个地方A,其邻居也是A地方的邻居,当用户去另外一个地方B的时候,其邻居换成地方B的节点。而再用户的历史邻居节点库里面,有两个地方的节点。

每在一个地方的时候,该地方邻居节点的历史权重就会被提高,另外一个地方的邻居节点的权重就会下降。如果用户长期来回于两地,这种情况会交替出现,导致其历史邻居节点权重差不多。这样用户在上传资源的时候,检索调度节点在选择副本存储租户节点的时候,两个地方的节点都会有。这样该用户不论在哪个地方都能获得较好的用户体验。

2、如果用户永久变更地域

另外,用户可能出现长期或永久变更地点的情况,PPIO给用户设计了一个重新调度操作,只要启动这个操作,就会根据最新的历史邻居节点库的权重重新调度。

不论之前副本书存储在什么租户节点上,都会重新选择租户节点存储新的副本,而新的副本里面,大部分会才采用优先就近存储原则存储数据。这样用户之前存储的数据可以和新存储的数据一样可以享受到高速传输的用户体验。

经过这些努力,我们能做到比中心化存储方案更快地传输速度。

PPIO的官网已经上线:https://pp.io/

一个问题:下图是用户存储数据位置图,左边是AWS的S3中心化存储服务,右边是PPIO的去中化化存储网络,你认为哪种方案传输速度会更快?

图片
形状

文章作者:Wayne Wong,转载请注明出处。

如果有关于PPIO的交流,可以通过下面的方式联系我:

WeChat:omnigeeker

加我微信,注意备注来源

图片