什么是点对点 (P2P)?
在计算机科学中,点对点(P2P)网络由一组共同存储和共享文件的设备组成。每个参与者(节点)充当单独的对等点。所有节点通常具有相同的权力并执行相同的任务。
在金融技术中,术语“点对点”通常是指通过分布式网络进行货币或数字资产的交换。 P2P平台允许买家和卖家直接执行交易,无需中间商。在某些情况下,网站还可能提供连接贷款人和借款人的 P2P 环境。
P2P 架构适用于许多不同的用例,但在 20 世纪 90 年代第一个文件共享软件创建时变得特别流行。如今,P2P网络已经成为大多数数字货币的核心,构成了区块链行业的很大一部分。然而,它目前也得到其他分布式计算应用程序的支持,包括网络搜索引擎、流媒体平台、在线市场和星际文件系统(IPFS)网络协议。
P2P如何运作?
基本上,P2P 系统由分布式用户网络维护,通常没有中央管理员或服务器,因为每个节点都包含文件的副本并充当其他节点的客户端和服务器。因此每个节点都可以从其他节点下载文件或上传文件到其他节点。这就是 P2P 网络与传统服务器系统的区别,在传统服务器系统中,设备从中央服务器下载文件。
连接在 P2P 网络上的设备使用旨在调解数据和文件共享的软件应用程序共享存储在其硬盘驱动器上的文件。用户还可以查询网络上的其他连接设备来查找和下载文件。一旦用户下载了特定文件,他们就可以充当该文件的来源。
换句话说,当一个节点充当客户端时,它会从其他网络节点下载文件。但是当节点充当服务器时,它们就成为其他节点可以下载文件的源。然而,实际上这两个功能可以同时执行(例如下载文件A和上传文件B)。
随着用户群的增长,P2P 网络往往会变得更快、更高效,因为每个节点都存储、传输和接收文件。此外,其分布式架构使得 P2P 系统具有很强的抵御网络攻击的能力,因为与传统模型不同,P2P 网络不存在单点故障。
我们可以根据点对点系统的架构对其进行分类。 P2P 网络的三种主要类型称为非结构化、结构化和混合。
不受监管的 P2P 网络
非结构化P2P网络不提供任何特定的节点组织。参与者彼此随机交流。当存在高活动状态时(例如,许多节点频繁加入和离开网络),这些系统是有效的。
尽管非结构化 P2P 网络很容易构建,但它们可能需要更高的 CPU 和内存使用率,因为搜索查询会发送给尽可能多的对等点。这往往会使网络充满查询,尤其是在只有少数节点提供所请求内容的情况下。
有组织的 P2P 网络
相反,结构化 P2P 网络顾名思义提供了有组织的结构。即使内容不广泛可用,这也允许节点有效地搜索文件。在大多数情况下,这是通过使用便于数据库搜索的哈希函数来实现的。
尽管有组织的网络可能更高效,但它们往往会引入更高级别的集中化,并且通常需要更高的设置和维护成本。否则,有组织的网络在面临高中断率时也会变得不那么稳健。
混合P2P网络
混合 P2P 网络将传统的客户端-服务器模型与对等架构的某些方面相结合。例如,您设计一个中央服务器来促进对等点之间的通信。
与其他两种类型的对等网络相比,混合类型往往会提供更高的整体性能。因为它通常结合了每种类型的一些主要优点。这同时实现了极大程度的效率和去中心化。
分布式和去中心化
尽管P2P环境本质上是分布式的,但需要注意的是,存在不同程度的去中心化。所以并不是所有的 P2P 网络都是去中心化的。
事实上,许多系统依赖中央机构来指导网络活动,这使得它们在某种程度上变得中心化。例如,一些P2P文件共享系统允许用户搜索和下载其他用户的文件,但无法参与其他操作,例如管理搜索。
此外,我们可以说,尽管缺乏中央网络基础设施,但由具有共同目标的有限用户群控制的小型网络具有较高的中心化程度。
点对点(P2P)在区块链中的作用
在比特币的早期阶段,中本聪将其定义为“点对点电子现金系统”。比特币是作为一种数字形式的货币而创建的。它可以通过运行称为区块链的分布式账本的 P2P 网络从一个用户转移到另一个用户。
在这种背景下,区块链技术固有的 P2P 架构使得比特币和其他数字货币可以在世界范围内轻松转移/转移,而无需中介机构或任何中央服务器。如果任何人希望参与验证和验证区块的过程,也可以在比特币区块链上设置节点。
因此,比特币网络中没有银行处理或记录交易。相反,区块链充当分布式数字分类账,公开记录所有活动,以便其他参与者可以看到它。基本上,每个节点都维护区块链的副本,并将其与其他节点进行比较,以确保数据的准确性。网络会快速拒绝任何恶意或不准确的活动。
在加密货币区块链中,节点可以扮演各种不同的角色。例如,全节点是通过根据系统共识规则验证交易来为网络提供安全性的节点。
每个完整节点都维护着区块链的完整、最新副本,使其能够参与验证分布式账本当前状态的集体工作。但需要注意的是,并非所有全验证节点都是由矿工代表的。
优点
区块链的点对点结构提供了许多好处。其中最主要的是 P2P 网络比传统的客户端-服务器安排提供更高的安全性。由于区块链分布在大量节点上,因此它几乎不会受到感染许多系统的拒绝服务 (DoS) 攻击。
此外,由于大多数节点在将数据添加到区块链之前必须达成共识,因此攻击者几乎不可能更改数据。对于像比特币网络这样的大型网络尤其如此。较小的区块链网络更容易受到攻击,因为一个人或一个团体最终可以控制大多数节点(这称为 51% 攻击或多数攻击)。
因此,分布式点对点网络与多数共识要求相结合,使区块链网络对恶意活动具有相对较高的抵抗力。 P2P模式是比特币(和其他区块链)能够实现所谓拜占庭容错的原因之一。
除了提供保护之外,加密货币区块链中 P2P 架构的使用也使其能够抵抗中央当局的审查。与传统银行账户不同,数字货币钱包不能被政府冻结或兑现。这种阻力还延伸到私人支付和内容平台进行的审查工作。一些内容创建者和在线商家已经采用加密货币支付来避免其付款被第三方阻止。
限制
尽管有很多优点,但在区块链上使用 P2P 网络也有一定的局限性。
由于分布式账本必须在每个参与节点而不是中央服务器上更新,因此向区块链添加交易需要大量的计算能力。虽然这种措施提供了更高的安全性,但它大大降低了效率,并且是广泛扩展和采用时的主要缺点之一。然而,那些对密码学和区块链感兴趣的开发人员目前正在寻找可用作这种扩展解决方案的替代方案。著名的例子包括闪电网络、以太坊 Plasma 和 Mimblewimble 协议。
另一个潜在的限制与硬分叉事件期间可能出现的攻击有关。由于大多数区块链网络都是去中心化和开源的,节点组可以自由复制和修改代码,从主链分叉并形成新的并行网络。硬分叉是完全正常的,本身不会构成威胁,但如果某些安全方法实施不当,两条链都可能容易受到重放攻击。
此外,P2P 网络的分布式性质使其相对难以控制和合法化,而不仅仅是在区块链领域。许多P2P应用程序和公司都涉及非法活动和侵犯版权。
结论性想法
点对点架构可以通过多种不同的方式进行开发和使用。区块链的核心使数字货币成为可能。 P2P 架构通过在大型节点网络上分布交易账本来提供安全性、去中心化和抗审查性。
除了在区块链技术中的实用性之外,P2P 系统还可以用于其他分布式计算应用,从文件共享网络到能源交易平台。
