Sending Network:重構 TCP/IP,打造 Web3 通信基礎設施
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生態的互聯互通,共創一個更安全、私密和去中心化的網絡世界,重塑未來的數字通信基礎設施。