Sending Network:重构 TCP/IP,打造 Web3 通信基础设施

行业速递
2024年4月15日 20:16
收藏
针对 TCP/IP 的中心化属性引发的根本性问题,Sending Labs 正在开发一个去中心化的通信协议栈,支持使用钱包地址直接进行点对点通信,从而重构互联网基础设施,显著提升安全性、隐私性和用户控制权。

Web2的TCP/IP协议栈概述

在Web2时代,通讯、计算与存储共同构成了互联网的基石。其中,TCP/IP协议栈是网络通信的最基本最广泛的表现形式,它贯穿了其中的各个层次,为从物理层到应用层的各个层级提供了统一的通信框架和标准。几乎所有Web2应用都直接或间接地依赖于这一体系。因此,TCP/IP协议栈已经成为互联网通信的标准化基础。

Web2时代TCP/IP协议的问题

随着互联网技术的演进,TCP/IP协议栈开始显露出一些结构性问题。这些缺陷潜藏在我们的日常网络使用中。以两位用户通过聊天应用交流为例,可以具体展示这些问题的影响。假设用户A向用户B发送消息,这条消息首先被拆分成若干数据包,随后通过互联网上的多个服务器传送至用户B。

  • 在应用层,当用户访问应用网站时,需要依赖DNS来解析服务地址。如果DNS受到污染或攻击,用户可能会错误地访问一个恶意服务器,导致隐私泄露或数据被篡改。
  • 在传输层,如果SSL/TLS协议依赖的证书授权机构(CA)遭到攻击或者失信,那么用户间的通信就可能被第三方窃听或篡改。例如,如果用户的消息通过不安全的通道传输,黑客可能截取这些数据包,甚至伪造不良信息。同时,对这些中心化CA的依赖带来了信任风险。
  • 在网络层,由于应用服务的IP地址是由少数几个机构控制分配,IP地址的有限性及其集中化的分配问题导致资源控制权大多集中在少数国家和组织手中,这不仅造成了分配不公,也使得整个网络架构容易受到中心化控制的威胁。

这些都是由TCP/IP的中心化属性引发的根本性问题,仅靠局部修补无法根治,我们需要通过全面技术革新,彻底实现协议栈的去中心化,以解决这些深层次的问题。Sending Labs正在开发一个去中心化的通信协议栈,该协议栈将重塑TCP/IP模型,支持使用钱包地址直接进行点对点通信,从而重构互联网基础设施,显著提升安全性、隐私性和用户控制权。

构建Web3时代的通信新标准:重建TCP/IP协议栈

在Web3时代,我们需要重构TCP/IP协议栈,以解决当前系统中的问题。Web3版本的TCP/IP协议栈将具备以下特点:首先,确保IP地址无限供应,避免资源被少数国家或组织垄断;其次,将传输层的信任认证转移到基于区块链的去中心化机制,不再依赖单一的认CA认证机构;再次,将DNS等关键协议转移到区块链,摆脱对传统DNS服务商的依赖;此外,鼓励大众自设路由器,以搭建去中心化物理层基础设施;最后,赋予网络通信终端金融属性,使其与区块链账户系统直接关联,自然而然地支持金融功能。

借助这套全新的协议栈,未来上网的方式将大为改变:用户打开浏览器,输入ENS域名,浏览器通过区块链解析出相应的地址并发起连接请求。在连接建立前,系统通过终端的数字签名及基于区块链的DID系统认证,确认通信双方的身份后才建立连接。此过程中,所有数据均通过庞大的物理路由系统处理,确保数据从一端传至另一端。当涉及到支付时,由于通信终端具备金融属性,用户可以直接向ENS对应钱包地址进行支付,避免钓鱼诈骗的风险,确保支付安全可靠。无论是社交、电商还是其他应用,都将继承网络层和传输层的安全与去中心化特性。

接下来,我们将详细介绍如何在网络层、传输层、应用层和物理层实现这些去中心化特性。

网络层

网络层的设计需满足四个核心要求:一是IP地址必须充足,确保地址的区域编码是全球公平分配的;二是IP地址需具备金融属性,能与区块链账户直接关联;三是在完全过渡到Web3网络之前,保持与IPv4/IPv6的兼容性;四是确保域名解析的去中心化。为此,我们设立两种主要地址类型:单播地址和任播地址。其中:

  • 单播地址:具有唯一确定性,由网段ID、子网ID、主机ID、网卡ID等几大ID共同组成,能唯一确定网络中一个网卡设备。基于网段和子网的ID前缀进行快速路由,以降低路由表的复杂度。
  • 任播地址:与钱包地址相对应,可绑定多个单播地址,实现高效的数据传输。这种设计不仅优化了网络的路由效率,还大幅提高了IP地址的供应能力。当发送方向任播地址发起连接请求时,路由器会根据路由距离将数据包发送至绑定该任播地址的最近单播地址。因为所有绑定至该任播地址的单播地址提供的服务是相同的,发送方通过与任意一个单播地址通信便可满足其通信需求。

单播地址通过地址前缀实现快速路由,其长度可设计超过160位的钱包地址,理论上可无限供应。任播地址相当于钱包地址,为IP地址赋予金融属性。

那么如何以去中心化的方式实现单播地址分配呢?在Web2时代,IP地址由中心机构分配。而在Web3中,这些地址通过智能合约来分配。智能合约根据网络规模,生成各种网段ID License NFT,授权运营商管理特定子网。持有网段ID的运营商能将子网细分后销售给下一级运营商或终端用户。运营商通过运行路由器节点,处理数据流量,实现盈利,确保IP地址公平且去中心化分配。

域名解析-DNS协议,虽然在Web3它被定义在应用层,但从逻辑上它更像是在网络层来给网络传输终端命名的协议,我们在这里将它视为网络层协议,是可以被其它应用层协议复用的。DNS在Web3应该是一个链上解析协议,实现应该是ENS这样的实现,由链上合约定义域名跟wallet-address的对应关系,从而实现对DNS域名组织的依赖,去除对中心的依赖,从而避免了DNS污染问题。

为了确保该网络在完全规模化之前能正常运行,解决冷启动问题,我们需要使网络与现有IPv4/IPv6兼容。当路由器在其直连网络中找不到目标地址时,它将把数据封装到IPv4/IPv6数据包中,并将其发送到其他子网的路由器。接收方的路由器会解析这些数据包并继续在子网内部路由,直到找到目标地址。这个过程类似IPv6早期阶段通过IPv4网络的隧道实现兼容性。

此外,路由器还负责内网穿透,当数据需要通过IPv4网关进入内网时,公网路由设备将转发这些连接。这些设备作为内网的反向代理,使得数据能够通过隧道安全地进入内网地址。

为了实现这些网络层的改造,必须在物理层和传输层进行相应的改进。物理层需要足够的路由器设备,同时激励终端用户、光纤服务商或当前ISP运营商采购这些设备,以形成网络效应,逐步取代现有的IP网络。在传输层,我们需要进一步改进以验证任播和单播地址的绑定关系并确保通信的安全与不可伪造性。

传输层

传输层确保数据安全传输的同时,要去除对CA的信任,将安全认证过程不需要依赖任何中心化组织。

通常情况下,确保互联网连接的安全性(如使用HTTPS的网站)需要依赖SSL/TLS协议,这些协议依赖CA机构来验证所访问网站的真实性。我们希望采用基于链上的DID文档来保持安全性,同时消除对中心化实体的依赖。

这一相互认证过程通过访问链上的DID文档来执行。由于双方的任播地址已经在区块链上注册并与其钱包地址链接,因此不再需要传统CA所需的DNS服务。一旦找到并关联了DID文档和钱包地址,并且通信方提供了有效的签名,就能确认你正在与其通信的实体是该标识符的合法所有者。

通通过这种方式,建立了基于钱包到钱包的连接,通过socket进行便捷的数据传输。类似于SSL/TLS在特定的套接字环境中的操作,这一系统为这些连接提供了一个新的选择。

Socket示例

我们已经提出了一些重建网络层和传输层的方法,下面的套接字代码就是一个例子。每一层都针对其特定的挑战进行解决。在这个基础上,因为钱包地址具有金融功能——这是普通IP地址所不具备的功能——我们可以使用套接字代码建立连接,然后通过它发送交易指令。

因此,这种新的TCP/IP技术栈集成了SSL/TLS、IP路由和金融交易的特性。下面是一个简短的示例代码。

应用层

TCP/IP协议栈的应用层协议非常多,常见的主要有HTTP(S)、XMPP、SMTP、POP3、FTP、SIP、RTMP、CDN等。这些协议传统上依赖于中心化务器,如XMPP的即时消息服务器和SMTP的邮件服务器。然而,在Web3时代,去中心化的网络节点将替代传统中心服务器,应用层协议不再关心应用的服务器。这些协议除了将数据包格式定义在传输层/网络层之上以外,整个应用均建立在网络层的去中心化网络基础设施之上,让网络层为各类应用提供坚实的去中心化的网络基础。

在所有应用层协议中,HTTPS、XMPP、SMTP等是最常见的,它们构成了我们日常社交活动的基础。在Web3的架构下,我们以类似XMPP的协议开发了第一个应用示例——一个去中心化的即时消息社交应用协议。在这个协议中,用户利用自己的钱包地址作为社交账户,可以进行端对端加密的聊天,建立私密或公开的聊天群组,以及发送语音视频消息,甚至进行音视频通话。这些都复用了传输层的安全通信能力和网络层广泛的节点网络,将钱包地址作为新的网络身份标识。

除了我们提供的类似XMPP的即时消息协议,应用层还有大量应用场景,比如:

  • 基于HTTP和HTTPS的Web应用:开发者可以简单地将网站部署在基于钱包地址/ENS域名的网络中,享受由网络提供的带宽分享带来的高速访问,同时保证应用的抗审查性和安全访问。
  • SMTP/POP3等邮件应用:依托这个网络,去中心化的邮件系统将变得轻而易举。当你需要给某个ENS域名拥有者发送一份邮件,你的应用只需要通过网络层寻址找到对应ENS地址的节点,将邮件上传,接收方即可从节点下载邮件。
  • CDN资源分发协议的应用:依托这个网络,开发者可以将他们的数据分发到各大路由器设备或者数据中心的节点,依靠激励机制构建的庞大的节点网络,将让节点几乎能遍布全世界,深入到每一个家庭,广阔的节点网络让CDN协议高效利用空闲带宽资源,让开发者和用户享用更高速的应用体验。
  • SIP/RTMP/WebRTC等流媒体协议的应用:靠广泛的节点资源和闲置带宽共享,让流媒体应用实现流媒体内容的分布式存储和缓存加速访问,提高流媒体的访问速度和流畅度。
  • FTP等文件传输和访问协议的应用:通过庞大的节点网络,结合web3去中心化存储项目,让网络主动缓存IPFS/Arweave等项目的内容资源,加速频繁访问的内容,提升项目的活跃度和应用范围。
  • OpenVPN等VPN协议的应用:VPN应用可以合理利用路由设备分享的IP资源,大幅扩大应用的IP资源范围,为VPN提供最基本的IP和带宽资源。
  • Kafka、RabitMQ等消息队列协议:消息队列是广泛应用在分布式和集群应用中的应用层协议,大量应用都需要他们来实现应用模块或者进程之间的通信。在web3时代,这些应用可以依托广泛的节点网络,将这些节点作为天然的消息队列承载者,为广泛的应用提供共享的、高速的消息队列服务。

物理层

物理层的核心思路是通过激励措施推广去中心化路由器,使其大面积被家庭采用并最终产生网络效应。这些路由器使用户能够利用闲置的家庭带宽提高整体网络容量。通过与我们的网络层协议集成,这些设备增强了数据缓存和加速功能,从而惠及生态内的去中心化应用程序。这些设备优化了带宽使用,并允许用户从他们的带宽贡献中获得收益。

初始阶段,我们可以基于IPv4架构,通过IPv4隧道建立传输链路直达通讯终端。随着节点普及,我们将进一步通过激励措施吸引更多光纤服务商加入,以实现我们硬件网络在物理层的完全互联。

最后

重建TCP/IP协议栈的影响将远远超出了技术层面的改变。通过将基于钱包地址的路由、域名解析和身份验证直接整合入互联网的核心协议中,我们正在积极构建一个去中心化网络的基础。以去中心化即时消息传通信为我们的初步应用层协议,未来将形成一个集消息传递、金融交易和数字资产管理为一体的去中心化生态系统。这种转变有望显著提升在线隐私、安全和自由,标志着实现一个开放互联网的关键一步。

如前所述,SendingNetwork 已推出去中心化消息传递协议,作为我们去中心化协议栈的首个应用层协议。用户可利用钱包地址发送端对端加密消息、参与私密或公开聊天,并进行语音及视频通话。网络由以下三种角色构成:

  • Edge节点:负责转发、中继消息并提交工作量证明。
  • WatchDog节点:向 Edge 节点发送随机挑战消息,检测其运行状态。
  • Guardian节点:验证 Edge 节点的工作量证明,并根据 WatchDog 的挑战结果评估其服务质量如稳定性。

该网络采用 Proof of Relay 作为消息中继的工作量证明,并利用 Proof of Availability 评估节点服务质量。目前我们已开放第一阶段测试网,其中 Edge 节点可通过消息转发获得积分。接下来,我们将陆续在网络中加入 WatchDog 和 Guardian 角色,确保网络能在去中心化环境下稳定运行。

我们邀请开发者和用户加入这个消息传递网络,通过这一跨平台协议,帮助Web3用户在不同应用间实现互连。同时,我们也邀请更多志同道合的朋友们加入我们,共同见证TCP/IP的转型,真正实现Web3生态的互联互通,共创一个更安全、私密和去中心化的网络世界,重塑未来的数字通信基础设施。

链捕手ChainCatcher提醒,请广大读者理性看待区块链,切实提高风险意识,警惕各类虚拟代币发行与炒作, 站内所有内容仅系市场信息或相关方观点,不构成任何形式投资建议。如发现站内内容含敏感信息,可点击 “举报”,我们会及时处理。
ChainCatcher 与创新者共建Web3世界