为什么因特网需要星际文件系统

点对点文件共享将大大提高互联网的效率

12分钟读取
水平
一个系列的插图
卡尔·德·托雷斯
LightBlue

当COVID-192020年初新冠肺炎疫情爆发,全球实现了前所未有的远程工作转型。作为预防措施,一些互联网供应商暂时降低了服务水平,尽管对于亚洲、欧洲和北美国家来说可能没有必要这样做,因为这些国家通常能够应对人们远程办公(和刷剧)带来的需求激增网飞公司).这是因为他们的大多数网络都超额配置了,容量超过了他们通常需要的容量。但在没有同等水平的网络基础设施投资的国家,情况就不那么乐观了:互联网服务提供商(ISPs)在中国南非而且委内瑞拉例如,据报道有很大的压力。

但超额拨备是确保弹性的唯一方法吗?我们不这么认为。不过,要理解我们所倡导的另一种方法,首先需要回顾一下互联网是如何工作的。


因特网的核心协议,被恰当地命名为互联网协议(IP)定义了一种寻址方案,计算机之间使用它进行通信。该方案将地址分配给特定的设备(人们的计算机和服务器),并根据需要使用这些地址在它们之间发送数据。

这种模式在将独特的信息从一个点发送到另一个点时效果很好,比如,你的银行对账单或来自爱人的信件。当互联网主要用于向不同的人传递不同的内容时,这种方法是有意义的。但是这种设计并不适合静态内容的大众消费,比如电影或电视节目。

今天的现实是,互联网更经常被用来向许多人发送完全相同的东西,现在它正在做大量的事情,其中大部分是以视频的形式。随着我们的屏幕获得越来越高的分辨率,4K视频已经广泛使用,8K视频即将问世,需求也越来越高。

内容交付网络流媒体服务(如Netflix)使用的cdn通过临时将内容存储在许多isp附近,甚至内部,帮助解决了这个问题。但这一战略依赖于isp和cdn能够达成交易并部署所需的基础设施。而且它仍然会使网络边缘不得不处理比实际需要的更多的流量。

真正的问题不在于传递内容的数量,而在于如何从一个中心来源传递给许多不同的远方用户,即使这些用户就在彼此相邻的地方。

该图描述了数据库表中的信息,包含两列:Node和Content。该图还显示了网络中查询数据库以查找它们正在查找的文件位置的节点。点对点系统用于确定文件位置的一种方案是将该信息保存在一个集中的数据库中。纳普斯特第一个大规模的点对点内容交付系统使用了这种方法。卡尔·德·托雷斯

在这种情况下,更有效的分配方案是将数据以直接点对点的方式从邻居的设备上提供给您的设备。但你的设备怎么知道该问谁呢?欢迎来到星际文件系统(IPFS)。

星际文件系统之所以得名,是因为在理论上,它可以扩展到在太阳系不同行星上的计算机之间共享数据。不过现在,我们只专注于在地球上推广!

IPFS的关键是所谓的内容寻址。你的机器问网络,“谁能把这个文件发给我”,而不是问某个特定的提供商“请把这个文件发给我”?它从查询同伴开始:用户附近的其他计算机,同一房子或办公室的其他计算机,同一社区的其他计算机,同一城市的其他计算机——如果需要,逐步向外扩展到全球范围内遥远的位置,直到系统找到您正在寻找的副本。

这些查询是使用IPFS进行的,IPFS是超文本传输协议(HTTP),它为万维网提供动力。基于点对点网络和基于内容的寻址原则,IPFS允许数据存储和传递的分散和分布式网络。

IPFS的好处包括更快、更有效地分发内容。但他们并没有就此止步。IPFS还可以通过内容完整性检查提高安全性,这样数据就不会被中间参与者篡改。使用IPFS,即使与原始服务器的连接被切断,或者最初提供内容的服务出现中断,网络也可以继续运行——这在网络只能间歇性工作的地方尤其重要。IPFS还提供了对审查的抵抗。

为了更全面地理解IPFS与今天在线上发生的大多数事情的不同之处,让我们快速了解一下Internet的架构和一些早期的点对点方法。

如上所述,在当今的互联网架构下,您需要根据服务器地址来请求内容。这来自于互联网的基础协议,并管理着数据如何从一点到点的流动,该方案首先由Vint Cerf和Bob Kahn在1974年的一篇论文IEEE通讯汇刊现在被称为互联网协议。万维网是建立在因特网协议之上的。浏览Web包括向特定的机器(由IP地址标识)请求给定的数据。

你的机器问网络,“谁能把这个文件发给我”,而不是问某个特定的提供商“请把这个文件发给我”?

当用户在浏览器的地址栏中输入一个URL时,该过程开始,该地址栏接受主机名部分并将其发送给域名系统服务器(DNS)。DNS服务器返回相应的数字IP地址。然后,用户的浏览器将连接到该IP地址,并请求位于该URL的Web页面。

换句话说,即使同一建筑物中的计算机拥有所需数据的副本,它也不会看到请求,也无法将其与它所持有的副本进行匹配,因为内容没有内在标识符——它不是内容寻址的。

互联网的内容寻址模型将让数据而不是设备发挥主导作用。请求者将显式地使用唯一标识符(类似于DOI数量一篇期刊文章或国际标准图书编号),互联网将处理将请求转发到拥有副本的可用对等点。

这样做的主要挑战是,它需要改变核心互联网基础设施,这些基础设施由全球数千家互联网服务提供商拥有和运营,没有中央权威机构能够控制他们所有人的行为。虽然这种分布式架构是互联网最大的优势之一,但它几乎不可能对系统进行根本性的改变,而这将破坏许多使用它的人的生活。通常情况下,即使实现增量改进也非常困难。在引入变更时遇到的困难的一个很好的例子是IPv6,可以扩展IP地址的数量。今天,在它被引入近25年后,它的采用率仍然没有达到50%。

绕过这种惯性的一种方法是在现有互联网协议之上的更高抽象层上实现更改,不需要修改底层网络软件栈或中间设备。

除了IPFS之外的其他点对点系统,例如bt而且他们试图通过引入可以与万维网并行运行的系统来实现这一目标,尽管这些系统通常带有Web接口。例如,您可以单击与文件关联的BitTorrent跟踪器的Web链接,但是这个过程通常要求跟踪器数据从Web浏览器传递到一个单独的应用程序来处理传输。如果你找不到追踪器链接,你就找不到数据。

Freenet还使用分布式点对点系统来存储内容,这些内容可以通过标识符请求,甚至可以使用Web的HTTP协议访问。但是Freenet和IPFS有不同的目标:Freenet强烈关注匿名性,并以服务于该目标的方式管理数据复制,但降低了性能和用户控制。IPFS提供灵活的、高性能的共享和检索机制,但将数据的控制权保留在用户手中。

该图简要地显示了查询泛洪在相互连接的节点网络中的工作原理,其中请求在定位目标文件之前必须进行多次跳转。在对等网络中查找文件的另一种方法称为查询泛洪。寻找文件的节点向所有附加该文件的节点广播请求。如果接收请求的节点没有文件[红色],它会将请求转发给所有附加该文件的节点,直到最后拥有该文件的节点将副本传递回请求方[蓝色]。的努特拉点对点网络采用此协议。卡尔·德·托雷斯

我们将IPFS设计为一个协议来升级Web,而不是创建一个替代版本。它的设计目的是使Web更好,允许人们离线工作,使链接永久存在,更快更安全,并使其尽可能易于使用。

IPFS开始于2013年作为开源项目获得协议实验室这是一个充满活力的社区和生态系统,由数百家组织和数千名开发人员组成。IPFS是建立在先前在点对点(P2P)网络和基于内容的寻址方面的强大基础之上的。

所有P2P系统的核心原则是用户同时作为客户端参与(从其他人那里请求和接收文件)。而且作为服务器(存储文件并将文件发送给其他人)。内容寻址和P2P的组合为从最近的对等点获取数据提供了正确的元素,该对等点拥有所需内容的副本——或者更准确地说,从网络拓扑来看是最近的对等点,尽管在物理距离上不一定如此。

为了实现这一点,IPFS生成它所持有内容的指纹(称为指纹)哈希),这是其他任何物品都无法拥有的。该散列可以被认为是该内容的唯一地址。改变内容中的一个比特将产生一个完全不同的地址。想要获取这段内容的计算机广播一个具有这个特定散列的文件请求。

因为标识符是唯一的且永不更改,所以人们通常将IPFS称为“永久Web”。有了永远不变的标识符,只要网络上的某台计算机存储了某个文件,网络就能找到它。

名称持久性和不可变性固有地提供了另一个重要属性:可验证性。有了内容和它的标识符,用户就可以验证所接收的内容就是所请求的内容,并且没有被篡改(无论是在传输过程中还是被提供者篡改)。这不仅提高了安全性,还有助于保护公共记录,防止历史被改写。

您可能想知道需要更新内容以包含新信息(比如Web页面)会发生什么。这是一个合理的担忧,IPFS确实有一套机制,可以将用户指向最新的内容。

减少在网络中移动的重复数据,并从附近的来源获取数据,将使isp以更低的成本提供更快的服务。

2017年4月,当土耳其政府发布时,世界有机会观察到内容寻址是如何工作的禁止访问维基百科因为该平台上的一篇文章将土耳其描述为支持恐怖主义的国家。在一周内,维基百科的土耳其版完整副本被添加到IPFS中,在禁令持续的近三年里,该国人民仍然可以访问它。

半年后,西班牙政府试图压制加泰罗尼亚的独立公投,命令互联网服务提供商屏蔽相关网站,也发生了类似的示威活动。再说一次,信息仍可通过IPFS获得

IPFS是一个开放的、无权限的网络:任何用户都可以加入并获取或提供内容。尽管有很多开源的成功案例,但目前的互联网在很大程度上是基于封闭平台的,其中许多平台采用了锁定策略,但也为用户提供了极大的便利。虽然IPFS可以提供更高的效率、隐私和安全性,但要让这个去中心化平台达到人们习惯的可用性水平仍然是一个挑战。

您可以看到,IPFS的点对点、非结构化性质既是优点也是缺点。cdn已经建立了庞大的基础设施和先进的技术来提供高质量的服务,而IPFS节点由最终用户操作。因此,网络依赖于他们的行为——他们的计算机在线多长时间,他们的连接有多好,以及他们决定缓存什么数据。通常这些都不是最优的。

对于协议实验室的工作人员来说,一个关键的研究问题是,如何在组成IPFS网络的节点存在缺陷的情况下,甚至在这些节点表现出自私或恶意行为的情况下,保持IPFS网络的弹性。如果我们想要保持IPFS与传统分销渠道的竞争力,我们就需要克服这些问题。

你可能有请注意,我们还没有提供IPFS地址的示例。这是因为基于哈希的寻址导致url不容易拼写或键入。

例如,您可以在合适的浏览器中使用以下地址在IPFS上找到维基百科的徽标:ipf: / / QmRW3V9znzFW9M5FYbitSEvd5dQrPWGvPvgQD6LM22Tv8D/。这个长字符串可以被认为是包含该标志的文件的数字指纹。

这个图表示意图地显示了网络中存储的文件和正在检索的文件。它的存储位置(以及找到它的位置)由文件的散列值决定。为了跟踪哪个节点持有哪个文件,星际文件系统使用了所谓的分布式哈希表。在这个简化的视图中,三个节点持有一个有两列的表的不同部分:一列(Keys)包含存储文件的散列;另一列(记录)包含文件本身。根据它的散列键是什么,文件被存储在适当的位置[左]-这里描述的好像系统检查了散列的第一个字母,并将字母表的不同部分存储在不同的位置。分发文件的实际算法更复杂,但概念是相似的。检索文件是有效的,因为可以根据文件的哈希值来定位文件。卡尔·德·托雷斯

还有其他一些内容寻址方案使用人类可读的命名或分层的url风格的命名,但每种方案都有自己的一组权衡。找到在IPFS中使用人类可读名称的实用方法将大大提高用户友好性。这是一个目标,但我们还没有达到。

协议实验室(Protocol Labs)在过去十年的大部分时间里一直在解决这些以及其他技术、可用性和社会问题。在此期间,我们看到IPFS的采用迅速增加,其网络规模每年翻一番。以这样的速度扩大规模带来了许多挑战。但当你的目的是改变我们所知的互联网时,这是意料之中的。

内容寻址和IPFS的广泛采用应该有助于整个互联网生态系统。通过授权用户请求准确的内容并验证他们收到的内容是否原封不动,IPFS将提高信任和安全性。减少在网络中移动的重复数据,并从附近的来源获取数据,将使isp以更低的成本提供更快的服务。使网络即使在被分割时也能继续提供服务,将使我们的基础设施更能抵御自然灾害和其他大规模中断。

但去中心化是否也有阴暗面呢?我们经常听到有关点对点网络可能被不良行为者用来支持非法活动的担忧。这些担忧很重要,但有时被夸大了。

IPFS改进HTTP的一个方面是允许对存储的数据进行全面审计。例如,由于其内容寻址功能,特别是由于使用了唯一的永久内容标识符,IPFS可以更容易地确定网络上是否存在某些内容,以及哪些节点正在存储这些内容。此外,IPFS使得用户决定他们分发什么内容和停止分发什么内容变得很简单(只需从他们的机器中删除它)。

同时,IPFS没有提供允许审查的机制,因为它是作为一个分布式P2P文件系统运行的,没有中央权限。因此,没有具有技术手段的参与者来禁止文件的存储和传播,或者从其他对等点的存储中删除文件。因此,对不受欢迎的内容的审查在技术上无法执行,这为言论自由受到威胁的用户提供了保障。删除内容的合法请求仍然是可能的,但它们需要针对实际存储内容的用户,避免常见的滥用(比如非法的DMCA下架请求)而大型平台则难以防御。

归根结底,IPFS是一个开放的网络,由社区规则管理,对所有人开放。你今天就可以成为其中的一员!的勇敢的浏览器附带内置IPFS支持,就像Opera for Android.Chrome和Firefox都有浏览器扩展ipf桌面使运行本地节点变得容易。一些组织提供基于IPFS的托管服务,而其他组织则运营公共网关,允许您通过浏览器从IPFS中获取数据,而无需任何特殊软件。

这些网关充当P2P网络的入口,对于引导采用非常重要。通过一些简单的DNS魔法,可以配置一个域,这样用户的访问请求将导致网关以一种对用户完全透明的方式检索和提供相应的内容。

到目前为止,IPFS已被用于构建各种应用程序,包括用于电子商务科学数据集的安全分发镜像维基百科创建新的社交网络共享癌症数据区块链创建、安全加密的个人文件存储和共享开发人员工具,数据分析

您可能已经使用过这个网络:如果您曾经访问过协议实验室站点(Protocol.ai),你甚至没有意识到你已经从IPFS检索了一个网站的页面!

本文发表在2022年11月的印刷版上,题为“到星际文件系统及更远!”

对话(5)
拉里Gadeken 2022年10月12日
LM

Michael Van Voorhis 2022年10月17日
INDV

我们20年前做过这个,用音频文件,叫做Napster,后来因为侵犯版权被关闭了。让我们把它叫做《Awakester》,然后再用视频文件做一次。订购频谱业务,还有一台2U服务器。

史蒂夫·海勒 2022年10月16日
INDV

这个网络是否需要一个可以直接保存可变长度记录的快速可伸缩哈希表?因为我知道一个…

3种方法帮助NASA的全电动飞机起飞

N3-X计划于2040年推出,最多可搭载300名乘客

3分钟读取
一架飞机在云层中飞行的插图

美国宇航局提出的全电动N3-X飞机载客量将是目前电动飞机的10倍。

美国国家航空航天局

这篇文章是我们独家报道的一部分IEEE期刊手表系列与IEEE Xplore合作。

全电动飞机的竞争正在进行中,一些早期设计正在成为头条新闻。在过去的九月,一个原型Eviation爱丽丝完成了8分钟的首飞,以及更多的型号等Heart Aerospace的ES-30,预计将在未来几年内首次亮相。然而,到目前为止,所有这些型号的设计都只能搭载30名或更少的乘客,而且飞行距离很短。

例如,Eviation Alice只能让两名机组人员和九名乘客在200米的距离上飞行463公里ES-30的全电动型号虽然设计最多可搭载30名乘客,但其航程仅为200公里。为了真正降低温室气体排放,缓解气候变化的影响,需要更大的全电动飞机。值得注意的是,大型飞机的温室气体排放占航空业温室气体排放的75%以上,考虑到历史上航空旅行每年增长4%至5%,这些排放可能会随着时间的推移而恶化。

继续阅读↓ 显示更少

无线AI

现代无线系统设计中克服复杂性的关键

4分钟读取
显示机器学习工作流程的图表
MathWorks

这篇文章是由MathWorks

移动无线技术的发展,从3G/4G到5G,以及工业4.0的引入,导致无线系统设计的复杂性不断增加。无线网络也变得更加难以管理,因为需要优化有价值的资源共享以扩大用户集。这些挑战迫使工程师超越传统的基于规则的方法,许多人转向人工智能(AI)作为应对现代系统引入的挑战的首选解决方案。网上亚博Ayabo2016

从管理自动驾驶车辆之间的通信,到优化移动呼叫中的资源分配,人工智能为现代无线应用程序带来了必要的复杂性。随着连接到网络的设备数量和范围的扩大,人工智能在无线领域的作用也将扩大。工程师们必须准备好将其引入日益复杂的系统。了解人工智能在无线系统中的好处和当前应用,以及优化实施所需的最佳实践,将是该技术未来成功的关键。

继续阅读↓ 显示更少
{“imageShortcodeIds”:[]}
Baidu