IPFS紅岸智能:IPFS Bitswap的新提升:更快的容器鏡像分發

2020-12-05 IPFS紅岸智能

Web 2.0服務越來越依賴大型計算基礎架構來支持快速迭代和部署周期。為了更快地構建,測試和發布軟體,這些服務通常在尋找方法來升級其系統,以利用分布式點對點網絡中的新知識和新工具。

在IPFS Camp 2019之後,Netflix和IPFS開始合作尋找將對等服務整合到Netflix開發人員工具中的方法。在一起,我們找到了一種利用IPFS加速雲構建,設計以及測試解決方案的方法,以通過高效的p2p容器鏡像分發提供支持更快的持續集成(CI)通道。

作為此次合作的一部分,我們在過去兩個季度中對Bitswap進行了重大改進,Bitswap是IPFS在兩個或更多對等端之間傳輸文件片段的機制。進行此項改進的一個關鍵因素是p2plab(一種由Netflix創建的性能基準測試工具,用於運行可重複的測試),使我們能夠確定和衡量改進。

我們特別關注的是Netflix想要解決的容器分發挑戰:如何在大規模,多區域環境中有效地提取容器圖像。圖像層通常位於不同的區域。

利用IPFS作為點對點CDN,可以使Netflix基礎架構內的節點進行協作並將共同的種子播種到相鄰節點,從而有助於更快地分發容器。

為了進一步加快速度,我們在Bitswap協議中添加了一些有用的新功能,該功能將圍繞容器分發基準用例的傳輸速度降低了一半。

在以前版本的Bitswap中,平均需要花費9.08秒將300 MiB圖像下載到32個下載節點上。經過優化的分支將這一時間縮短至3.16秒!比DockerHub(3.93秒)快20%!

當下載節點的數量超過種子節點時,我們觀察到下載的片段會被重新播種,從而減少了種子節點的紛爭。

獲取容器鏡像的總時效對比:

IPFS將文件分成稱為塊的碎片,由內容標識符(CID)進行識別。當運行Bitswap協議的節點要獲取文件時,它們會向其他對等方發送「請求列表」

為了找出哪些對等點具有構成文件的塊,Bitswap節點首先向其連接的所有對等點發送對根塊CID的需求。如果對等方沒有該塊,則該節點查詢分布式哈希表(DHT)來詢問誰擁有根塊。

任何使用根塊響應的對等方都將添加到會話中。從現在開始,Bitswap只向會話中的對等方發送請求,以免向網絡發送請求。

節點將每個CID的需求並行發送給會話中的多個對等方,因為並非所有對等方都會擁有所有塊。如果節點開始接收大量重複塊,則它將每個CID的需求發送給較少的對等方。

如果該節點等待塊超時,它將向每個對等方發送每個CID的請求。這樣,節點嘗試在沒有太多重複塊的情況下保持較高的下載速度。

為了提高Bitswap的性能和效率,IPFS團隊對Bitswap提取塊的方式進行了一些更改。

最初,一個節點想知道其哪個對等方具有根塊,但實際上並不想接收該塊本身(因為它向許多對等方發送了這個「發現」需求)。

因此,一個新的變化是,當Bitswap發送請求時,它可以請求HAVE消息作為響應(而不是取回整個塊)。

一旦節點將對等體添加到會話中,它也可以使用這些HAVE消息來找出哪個會話對等體具有相對便宜的其餘塊需求,因為它不必擔心重複的塊。

在此階段,節點還希望對等方說出它是否沒有該塊。因此,我們添加了一個DONT_HAVE響應。

通過這些更改,節點可以廉價地算出如何在其對等節點之間分配塊,並且可以更精確地定向對塊的請求,從而提高總體下載速度並減少重複塊的數量。該節點還可以快速識別會話中的所有沒包含它所需塊的節點,同時通過DHT找出誰擁有塊。

Netflix開發人員會定期在Netflix容器管理平臺 Titus上部署數百萬個容器。由於這些容器中有許多可以處理為Netflix提供支持的關鍵工作負載,因此通常需要將它們部署在世界各地的許多地區,以適應該地理位置的流量。

當開發人員將發布鏡像推送到生產環境時,該鏡像需要複製到其他區域的Docker註冊表中,否則部署將遭受跨區域數據成本和緩慢的傳輸速度的困擾。

Docker註冊表旨在將「alpine」之類的圖像引用以及通過內容尋址能力包含在圖像內部的數據分離開來。這與IPFS的數據模型並行,後者的數據始終由其CID表示。

p2plab

Netflix基礎架構部署在全球多個可用性區域和地區的Amazon Web Services(AWS)上。為了模擬這種環境,創建了p2plab來測量多區域集群中IPFS網絡上數據傳輸的吞吐量。

使用p2plab,我們可以可靠地確定IPFS的更改是否會提高性能。操作員能夠使用群集定義來配置活動群集,並使用方案定義對數據傳輸方案進行基準測試。

p2plab群集中的節點還可以熱交換被測IPFS二進位文件,從而使Protocol Labs和Netflix工程師能夠快速測試IPFS組件(如bitwap)的分支。

支持p2plab的內存驅動程序已經存在。可以嘗試拉取至自己的倉庫,並立即在本地系統上試用!

相關焦點

  • IPFS紅岸智能:IPFS2020年項目重點!
    我們構建了許多概念驗證(POC),例如apt-on-ipfs、npm-on-ipfs、clojars-on-ipfs和homebrew-on-ipfs,以分析IPFS在用戶對添加,更新的期望方面的表現如何,並獲取大型軟體包存儲庫-使我們能夠識別並修復主要的痛點。例如,我們的POC確定了將GB的數據添加到IPFS的巨大瓶頸。
  • 「IPFS紅岸智能」IPFS 0.5內容路由改進:更深入的研究
    原創:Adin Schmahmann原文連結:https://blog.ipfs.io/2020-07-20-dht-deep-dive/由紅岸智能編譯4月底,我們發布了迄今為止最大的go-ipfs更新:IPFS 0.5。
  • IPFS周刊51!IPFS Camp的第一批錄音已經發布!
    感謝您的支持星際文件系統 (IPFS)( https://ipfs.io/ ) 是一種新的超媒體分布協議,通過內容和標識來尋址。IPFS 支持創建完全分布式的應用程式。它的目標是使網絡更快、更安全、更開放。由於範圍廣大,本周刊旨在跟蹤整個生態系統的開發。想參與其中?
  • IPFS紅岸智能周雪松:IPFS的其他幾個優勢
    學員:請問ipfs是如何做到抵禦女巫攻擊,DDOS攻擊的?吳冀熱老師,除了eos,eth錢包使用了ipfs的存儲網絡外,還有哪些幣種也在使用ipfs的存儲網絡?學員:吳冀熱老師,除了eos,eth錢包使用了ipfs的存儲網絡外,還有哪些幣種也在使用ipfs的存儲網絡?吳冀熱:問到IPFS使用具體的場景,除了EOS,ETH外,還有去中心化的錢包IMTOKEN,以及前段時間很熱的VDS,都是使用的IPFS網絡來進行數據的存儲。
  • 讀懂IPFS-Filecoin|IPFS和Filecoin的區別與聯繫
    4、官方維護的主要語言是 go和 js,即 go-ipfs 和 js-ipfs。IPFS是一個去中心化的、點對點的分布式版本文件系統,目標是取代目前統治網際網路的超文本傳輸協議(HTTP),將全部裝有IPFS文件系統的計算設備連接在一起。
  • IPFS官方周報51期
    IPFS支持創建完全分布式應用程式,他的目標是使網絡更快,更安全,更開放。由於這個項目工程非常大,所以我們在每周的周報中匯總整個生態系統的開發進程。IPFS Camp的第一批錄音已經發布!你沒看錯,IPFS Camp的錄音開始發布了!
  • IPFS紅岸智能周雪松Filecoin:網絡的Encryption層設計
    IPFS紅岸智能周雪松Filecoin未來分布式存儲的演講  1.2 從IPFS網絡的局限性來看:  IPFS有潛力成為區塊鏈領域很棒的超級內容分發網絡,本身IPFS也自帶一些加密特性,但如果我們能通過一些有效的技術使得我們項目和業務在入網前(上傳到IPFS網絡前)前就加固一層安全屬性,將大大提高IPFS網絡的可用性和可信任性,讓更多企業和用戶願意投入使用這項技術
  • IPFS紅岸智能周雪松:分布式能自動恢復存儲
    紅岸智能 周雪松新系列知識點告警監控,這個必須運行在每個伺服器上,從而無論是物理機,還是VM,都需要運行這個監控程序,這樣才能進行告警通知管理……但是你說我是分布式,我為什麼還要告警呢?模板……template,自動安裝,必須自動,規劃之中,給你幾個ip,給你幾個物理機,你自動去安裝,你自己去寫配置文件,你的模板不同,生成的分布式存儲就不同,那麼……這個就看你怎麼設計你的模板了。所以每個人每天的時間都是24小時,不會多,也不會少,你怎麼去規劃?你怎麼去設計?
  • 「IPFS紅岸智能」HackFS:下一階段!
    原創:協議實驗室原文連結:https://filecoin.io/blog/hackfs-next/由紅岸智能編譯上周8月18日,數十支團隊在HackFS Finale上展現了實力,其中有10個入圍決賽,每個團隊成員人均獲獎為1,000美元,外加
  • IPFS紅岸智能周雪松:分布式文件系統
    紅岸智能 周雪松新系列知識點針對這幾種不同的數據類型,分布式存儲系統適合處理不同的類型的數據,將分布式存儲系統劃分為以下幾種:分布式文件系統:
  • 紅岸智能IPFS研討分享會在北京成功舉辦
    11月9日,紅岸智能IPFS分布式存儲應用研討沙龍在北京瑞吉酒店橡樹廳舉辦,此次活動由紅岸北京合作夥伴策劃和組織,邀請的都是網際網路、金融、教育等行業的朋友。在沙龍開始前,大家先做了簡單的自我介紹,很多朋友都是想要了解區塊鏈這個新興行業過來學習的,也有一些是紅岸智能CTO周雪松的忠實粉絲,特地趕過來與周總見面交流。周總首先分析了目前的網際網路行業狀況:高度中心化和壟斷化。
  • 紅岸智能CTO周雪松:IPFS分布式金融科技的未來之路
    其實紅岸的技術團隊從2018年年初就開始組建並著手研究。紅岸智能嚴格按照未來FILECOIN開採的要求,自主研發的主板5.0版本在FILECOIN主網上已經問世。紅岸將目標定位行業內頂級的分布式雲存儲服務商。
  • IPFS紅岸智能周雪松:有效容量計劃
    紅岸智能 周雪松新系列知識點該報告入圍了7家主流分布式存儲系統廠商產品用於評估,並針對8項核心關鍵能力中的每一項都給出了評分,見Table 2。
  • IPFS紅岸智能周雪松:日誌的增量備份
    紅岸智能 周雪松新系列知識點下面講一下我們怎麼做快照備份的,叫回檔。我們會持續將我們的數據備份,讓用戶構建出過去某個時間點的一個快照出來,其實這個回檔思想主要是,這分兩個,一個是備份,一個是恢復。然後Repalyer將所有的SG重放到指定LSN,MetaCenter建立新的pool並恢復出整個pool。關鍵問題是如何根據時間戳找到各個分片可以恢復的統一時間點,第二個問題是如何確定當前時間的分片數目。
  • IPFS紅岸智能周雪松:兩個層次的存儲
    紅岸智能 周雪松新系列知識點現在講一下我們定義的接口,想強調的是CynosStore是存儲計算接口很清晰的一個系統。
  • 紅岸智能_深圳紅岸天驅科技有限公司
    紅岸智能,深圳紅岸天驅科技有限公司,公司簡介深圳紅岸天驅科技有限公司是全國領先的IPFS-Filecoin終端提供商,致力於為用戶提供存儲伺服器研發生產、建設託管、軟體開發、應用開發等服務。紅岸智能, 低端智慧型手機市場正在成為終端廠商眼中的「香餑餑」。
  • IPFS紅岸智能周雪松:場景的節點部署
    紅岸智能 周雪松新系列知識點正因為應用架構多變,並不像傳統業務那樣在I/O方面完全標準化,所以派生了大量應用場景,帶來的問題也是顯然的,分布式存儲系統需要應對這些非標準化場景,對這些場景的節點部署、網絡、I/O方式、API接口等都需要進行精確評估
  • 「IPFS紅岸智能」關於測試網
    總體來說就是大家能看到誰家的有效存儲累計更快,也就是存力增長的更快,那就能搶佔區塊打包中更大的概率。在這個階段,紅岸的測試伺服器從早期全球排名13一直上升到後期全球排名第一。同時在這個階段,EPOST被提出,GPU開始加入硬體配置表,現在我們也許無法評判EPOST是否是一個一定有必要的環節,但至少它讓挖礦難度提升了,幫助市場篩選掉了一批技術無法跟上的礦商,從這一層面來說,這又是一件好事。
  • IPFS紅岸智能周雪松:針對一個分片的數據
    紅岸智能 周雪松新系列知識點副本針對一個分片的數據,只能有一個寫入的地方,這就是master,其他副本都是從
  • IPFS紅岸智能周雪松:雲存儲Encryption的弱點
    紅岸智能 周雪松新系列知識點Convergent Encryption的弱點在MLE的框架下,CE被證明滿足PRV$-CDA安全性 [13]。首先,我們知道,MLE智能保護具有比較高的不可預測性的數據。而在雲存儲系統的實際使用中,很多用戶數據恰恰是可預測。比如說很多公司的文檔都有共同的模板和格式,這可能導致有些數據塊只可能有很少的取值可能。其次,即使數據的不可預測性很高,對手仍然可以很容易地驗證一個信息:判斷給定的密文是否加密了一個來自於一個不大的集合的數據。只要將該集合內的所有元素分別加密後與給定密文比較即可。