互联网的核心协议,得名的互联网协议(IP),定义了一个解决方案,计算机使用与彼此沟通。这个方案将地址赋给特定devices-people的电脑以及服务器和使用这些地址发送数据根据需要在它们之间。
这是一个模型,该模型适用于发送独特的信息从一个点到另一个,说,你的银行对账单或爱人的一封信。这种方法是有意义的,当有人利用互联网主要是对于不同的人提供不同的内容。但这种设计并不适合大众消费的静态内容,如电影或电视节目。
今天的现实是,互联网是更经常用于发送同样的事情对许多人来说,做大量的,现在,大部分以视频的形式。要求变得更高,因为我们的屏幕获得不断增加的决议,与4 k视频已经在广泛使用和8 k在地平线上。
的内容分发网络(cdn)所使用的流媒体服务,如Netflix帮助解决这一问题,暂时存储内容接近,甚至在许多互联网服务提供商。但是这个策略依赖于互联网服务提供商和发布商能够交易和部署所需的基础设施。,它仍然可以离开网络的边缘要比实际需要处理更多的交通流。
真正的问题与其说是内容通过围绕它的体积就是被交付,从中央到许多不同的遥远的用户来源,即使这些用户都位于旁边。
计划使用点对点系统来确定一个文件的位置是保持该信息在一个集中的数据库。纳普斯特,第一个大规模p2p内容交付系统,使用这种方法。卡尔·德·托雷斯
一个更有效的分配方案在这种情况下将数据从你的邻居,你的设备的设备直接点对点的方式。但如何将你的设备甚至知道该去问谁?欢迎来到星际文件系统(ipf)。
星际文件系统得名,因为从理论上讲,它可以扩展到计算机之间共享数据甚至在不同的太阳系的行星。现在,虽然,我们专注于为地球就滚出来!
ipf的关键是解决所谓的内容。而不是要求一个特定的提供者,“请给我这个文件,您的机器问网络,“谁能给我这个文件?”It starts by querying peers: other computers in the user’s vicinity, others in the same house or office, others in the same neighborhood, others in the same city—expanding progressively outward to globally distant locations, if need be, until the system finds a copy of what you’re looking for.
这些查询是由使用ipf的另一种选择超文本传输协议(HTTP)权力万维网。建立在对等网络和基于内容寻址的原则,ipf允许分散和分布式网络为数据存储和交付。
ipf的好处包括更快更高效的分配内容。但是他们并没有止步于此。ipf还可以提高安全性和内容完整性检查,数据无法篡改的中介角色。和ipf,网络可以继续操作,即使连接到原始服务器是削减或如果最初提供的服务内容正在经历一个outage-particularly重要的地方只能间歇性的网络。ipf还提供抵抗审查。
更充分了解ipf不同于大多数今天在线发生什么,让我们来快速浏览互联网的架构和一些早期的点对点的方法。
正如上面提到的,今天的互联网架构,你请求内容基于服务器的地址。这个来自互联网和底层协议管理如何从点对点的数据流,计划首先Vint Cerf和Bob Kahn描述1974年的一篇论文在IEEE通信现在被称为互联网协议。万维网是建立在互联网协议。浏览网页的要求一个特定的机器,由一个IP地址,对于一个给定的数据。
而不是要求一个特定的提供者,“请给我这个文件,您的机器问网络,“谁能给我这个文件?”
这个过程开始于一个用户输入一个URL到浏览器的地址栏,将主机名部分并将其发送到域名系统服务器(DNS)。DNS服务器返回一个对应的数字IP地址。用户的浏览器将连接到IP地址和请求的Web页面位于URL。
换句话说,即使计算机在同一座楼的副本所需的数据,它既不会看到请求,也不能够匹配内容复制保存,因为没有一种内在的它不是内含寻址。
content-addressing模型对于互联网会给数据,没有设备,主导作用。请求者将要求内容明确,使用一个惟一的标识符(类似于DOI数量《华尔街日报》一篇文章或国际标准图书编号一本书的),和互联网将处理请求转发到一个可用的同行一个副本。
这样做的主要挑战是,它需要改变核心互联网基础设施,这是由全世界成千上万的互联网服务提供商,拥有和经营的,没有中央权威能够控制他们都做什么。虽然这种分布式体系结构是互联网最大的优势之一,这使得它几乎不可能使系统的根本性的变化,这将破坏东西的很多人使用它。甚至常常很难实现改进。一个很好的例子引入变化时遇到的困难IPv6,扩展了许多可能的IP地址。近25年后的今天,它的引入,它还没有达到50%。
在这个惯性是实现更高的抽象层的变化,现有的互联网协议,无需修改底层网络软件栈或中间设备。
ipf以外的其他点对点系统,如bt和Freenet,试图通过引入系统,可以在万维网的同时,尽管通常与网络接口。例如,您可以点击一个网页链接的bt tracker关联到一个文件,但这个过程通常需要跟踪数据被传递到一个单独的应用程序从Web浏览器处理转移。如果你不能找到一个追踪链接,你找不到数据。
Freenet还使用一个分布式p2p系统来存储内容,可以要求通过一个标识符,甚至可以使用Web的HTTP协议访问。但Freenet和ipf有不同的目标:Freenet有强烈关注匿名和管理数据的复制的方式服务于这一目标,但降低性能和用户控件。ipf提供灵活、高效共享和检索机制但保持控制数据的用户。
另一种方法来找到一个文件在一个对等网络中被称为查询洪水。寻求一个文件的节点广播到所有节点的请求它。如果节点收到请求没有文件(红色),它将请求转发给所有的节点连接,直到最后一个节点的文件复制回请求者(蓝色)。的努特拉点对点网络使用这个协议。卡尔·德·托雷斯
我们设计了ipf作为协议升级网络,而不是创建另一个版本。是为了使网络更好,允许人们离线工作,永久链接,更快和更安全,让它尽可能容易使用。
ipf始于2013年作为一个开源项目的支持协议实验室,我们工作,由一个充满活力的社区和生态系统的组织和成千上万的开发者。ipf的以前的工作是建立在一个坚实的基础的点对点(P2P)网络和基于内容的处理。
所有P2P系统的核心宗旨是用户同时参与客户(别人的请求和接收文件)和作为服务器(存储和发送文件给其他人)。内容寻址和P2P的结合提供了合适的原料获取的数据最接近的对等持有一份想要的或者更准确,最接近的一个网络拓扑而言,虽然不一定在物理距离。
实现这一目标,ipf产生指纹的内容(称为哈希),没有其他物品。散列可以被认为是一个独一无二的地址那一块的内容。改变单一的内容将产生一个完全不同的地址。电脑想卖这段内容广播请求一个文件,这个散列。
因为标识符是唯一的,永远不会改变,人们通常指ipf的“永久的网络。与标识符”,永远不会改变,网络将能够找到一个特定的文件只要一些计算机网络上的商店。
名字本身持久性和不变性提供另一个重要属性:可验证性。的内容和其标识符,用户可以验证收到的是什么要求没有被篡改,在运输途中或提供者。这不仅提高了安全性,也有助于维护公共记录,防止历史被改写。
您可能想知道会发生什么和需要更新的内容包括新鲜的信息,如一个Web页面。这是一个有效的担忧,ipf确实有自己的一套机制,将用户的最新内容。
减少数据的重复移动通过网络和采购它附近的来源会让互联网服务提供商提供更快的服务,更低的成本。
世界上有机会观察内容寻址在2017年4月,土耳其政府屏蔽了维基百科因为在这个平台上的一篇文章描述了土耳其一个资助恐怖主义的国家。一周内,土耳其的一个完整副本版本的维基百科ipf补充说,它依然可以在近三年的国家,禁止继续。
类似的示威活动发生半年后,当西班牙政府试图抑制加泰罗尼亚独立公投,要求互联网服务提供商阻止相关网站。再一次,这些信息仍然可以通过ipf。
ipf是一个开放的、无许可网络:任何用户都可以加入和获取或提供内容。尽管许多开源的成功故事,当前互联网在很大程度上基于封闭的平台,其中许多采用锁定策略,还为用户提供极大的便利。虽然ipf可以提高效率、隐私和安全,给这个分散平台的可用性水平,人们习惯于仍然是一个挑战。
你看,点对点,非结构化ipf的性质既是它的长处和弱点。而cdn已经建立了庞大的基础设施和先进的技术来提供高质量的服务,ipf节点是由最终用户。网络因此依赖behavior-how长他们的计算机网络,他们的连接是多么好,他们决定哪些数据缓存。通常这些都不是最优的。
的一个关键研究问题的人在协议实验室是如何保持ipf网络弹性尽管节点,使其不断地缺点,即使这些节点表现出自私或恶意的行为。我们需要克服这些问题如果我们保持ipf的性能与传统的分销渠道竞争。
你可能已经注意到我们还没有提供的一个例子ipf的地址。这是因为在url基于散列的处理结果,不容易拼出或类型。
例如,你可以找到维基百科标志ipf通过使用以下地址在一个合适的浏览器:ipf: / / QmRW3V9znzFW9M5FYbitSEvd5dQrPWGvPvgQD6LM22Tv8D/。长字符串可以被认为是一个数字指纹的文件认为标志。
跟踪哪些节点持有哪些文件,星际文件系统使用所谓的分布式哈希表。在这个简化的视图,三个节点的不同部分的表有两列,一列(钥匙)包含散列存储的文件;另一列(记录)包含文件本身。根据其散列键是什么,一个文件存储在适当的位置(左)在这里描述的系统检查散列的第一个字母和字母的不同部分存储在不同的地方。分发文件的实际算法比较复杂,但是这个概念是相似的。检索一个文件是有效的,因为它有可能找到文件根据其哈希(右)。卡尔·德·托雷斯
还有其他content-addressing使用人类可读的命名方案,或分层,url命名,但每个有自己的权衡。发现实际可行的方法来使用人类可读名称与ipf会对提高用户友好性。这是一个目标,但我们没有。
协议实验室,解决这些技术和其他技术,可用性,和社会问题在过去十年的大部分时间里。在这一次,我们看到采用ipf的迅速增加,网络规模同比翻番。加强以这样的速度带来了许多挑战。但这是意料之中的事当你的目的是改变我们所知道的互联网。
广泛采用的内容寻址和ipf应该帮助整个互联网生态系统。通过赋予用户请求的内容和确认他们收到它没有改变,ipf将提高信任和安全。减少数据的重复移动通过网络和采购它附近的来源会让互联网服务提供商提供更快的服务,更低的成本。使网络继续提供服务,即使它成为分区将使我们的基础设施更适应自然灾害和其他大规模的破坏。
但权力下放有黑暗的一面?我们经常听到担忧对等网络如何使用坏的演员来支持非法活动。这些问题很重要,但有时夸大了。
一个领域ipf改善在允许HTTP是存储数据的全面审计。例如,由于其content-addressing功能,特别是,独特的和永久的使用内容标识符,ipf更易于确定是否存在某些内容在网络上,和哪些节点存储它。此外,ipf使得它微不足道的用户发布的内容作决定和他们停止什么内容分发(通过仅仅是删除它从他们的机器)。
同时,ipf没有提供机制允许审查,因为它是一个分布式P2P文件系统没有中央权威。所以没有演员的技术手段禁止存储和传播的一个文件或删除一个文件从其他同行的存储。因此,审查的内容在技术上无法执行,代表用户的言论自由的保障是受到威胁。合法请求记下的内容仍然是可能的,但他们需要解决用户实际存储它,避免普遍滥用(如非法DMCA撤除请求)对大型平台维护的困难。
最终,ipf是一个开放的网络,由社区规则,向每个人开放。今天,你可以成为其中的一部分!的勇敢的浏览器附带内置ipf支持一样,Android歌剧。有浏览器Chrome和Firefox扩展,和ipf桌面很容易运行一个本地节点。几个组织提供IPFS-based托管服务,而其他公共网关操作允许您从ipf通过浏览器获取数据,没有任何特殊的软件。
这些网关作为条目到P2P网络,采用引导是非常重要的。通过一些简单的DNS魔法,可以配置一个域,这样用户的访问请求将导致相应的内容被检索和服务网关的方式对用户是完全透明的。
到目前为止,ipf被用于构建不同的应用程序,包括系统电子商务,安全科学数据集的分布,镜像维基百科,创建新的社交网络,癌症数据共享,区块链创建、安全加密的个人档案存储和共享,开发人员工具,数据分析。
你可以使用这个网络已经:如果你曾经参观了协议实验室网站(Protocol.ai),你网站的检索页面ipf不知不觉!
这篇文章发表在2022年11月打印问题“星际文件系统!”