BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Web3底層基建?簡析昨天CloudFlare服務中斷的原因

星球君的朋友们
Odaily资深作者
2022-06-22 12:45
本文約5557字,閱讀全文需要約8分鐘
深入探討Cloudflare 和Web3 的緣起。
AI總結
展開
深入探討Cloudflare 和Web3 的緣起。

原文來源:阿法兔研究筆記

原文來源:阿法兔研究筆記

本篇文章,會講一下什麼是CloudFlare,到底是個什麼公司,CloudFlare和Web3的緣起,以及從技術上解釋一下本次故障的原因。

一級標題

一級標題

  • 1.事件背景

本文結構

  • 1.事件背景

  • 2022年6月底(本週二)發生了什麼?

  • 什麼是CDN

CDN公司通常都是安全公司?

什麼是路由

  • CDN公司通常都是安全公司?

3.Cloudflare是個什麼公司?

  • 4.Cloudflare和Web3的緣起

  • 一級標題

  • 一級標題

  • 結論

事件背景

事件背景

本篇文章,會講一下什麼是CloudFlare,到底是個什麼公司,CloudFlare和Web3的緣起,以及從技術上解釋一下本次故障的原因。

一級標題

在講Cloudflare之前,我們先普及一個概念(CDN)

二級標題

二級標題二級標題

什麼是CDN?CDN,全稱為Content Distribute Network(內容分發網絡)或者Content Delivery Network;

那麼,什麼是內容分發網絡呢?是可以通過互聯網互相連接的電腦網絡系統,利用最近每位用戶的服務器,更快、更可靠地將音樂、圖片、視頻、應用程序及其他文件發送給用戶,來提供高性能、可擴展性及低成本的網絡內容傳遞給用戶。

形象的說,CDN有點類似於京東物流模式,通過在全國各地建立物流點(緩存服務器),當有人從京東購買貨物時(用戶資源請求),京東上次可以根據用戶的收貨地址(CDN進行用戶域名解析)找最近的或者最快的一個物流點進行派送(將訪問用戶連接到最近的緩存服務器進行資源傳輸)。

CDN服務可用於確保快速可靠地分發靜態內容,這些內容可以緩存,最適合在網速龐大的網絡中存儲和分發,這樣就能把主幹網絡通道空出來給必須實時傳輸的動態內容,比如網絡直播,降低時延。

二級標題

二級標題

路由二級標題路由

我們前面提到過網絡路由,

路由是啥呢?其實路由解決的主要問題,就是兩點之間的通信,究竟走什麼線路的問題。

二級標題

二級標題

CDN公司通常都是安全公司?

注:本部分關於CDN的解釋內容,部分來自於Youtube博主老科談科技股

一級標題

一級標題一級標題

除此之外,Cloudflare收購了一系列網絡服務和安全公司,2014年收購StopTheHacker 、CryptoSeal;2016年收購Eager Platform Co.;17年及以後收購Neumob、S2 Systems、Linc、Zaraz;今年收購了Vectrix和Area 1 Security.

一級標題

一級標題一級標題並且,官網提到,Web 1.0讓世界有了快速傳播信息的能力,而Web 2.0則讓這些信息具有互動性。 Web 3.0,或Web3,被認為是互聯網的下一次迭代,建立在IPFS和以太坊等去中心化的技術之上。

圖片描述

圖片描述

圖片來自Cloudflare官網

Cloudflare為什麼會發生服務中斷?

二級標題

二級標題

對此次中斷,Cloudflare 深表歉意,這是Cloudflare 的錯誤,而不是因為攻擊或其他惡意活動的。

二級標題

二級標題

二級標題

本次架構轉型的背景

在過去18 個月,Cloudflare 一直致力於將所有最繁忙的數據中心的架構轉型,讓它們更為靈活、且更具彈性。目前,已經有19個數據中心,成功轉換為此架構,Cloudflare內部稱其為Multi-Colo PoP(MCP);這19個數據中心分別位於:阿姆斯特丹,亞特蘭大,阿什本,芝加哥,法蘭克福,倫敦,洛杉磯,馬德里,曼徹斯特,邁阿密,米蘭,孟買,紐瓦克,大阪,聖保羅,聖何塞,新加坡,悉尼和東京。不過,由於這些地點同時也承載著Cloudflare流量的很大部分,任何這裡的問題都會產生非常廣泛的影響,不幸的是,這就是6月21日Cloudflare服務終端的原因所在。

二級標題

二級標題二級標題"服務中斷的時間線和影響"Cloudflare應用了名為BGP的協議(邊界網關協議,Border Gateway Protocol,是運行於TCP 上的一種自治系統的路由協議)。

該協議的由運營商定義政策,決定有哪些前綴(相鄰IP地址的集合)會被廣播給對等的節點(他們連接的其他網絡)。這些策略有單獨的組成部分,按順序進行評估。最終的結果是,任何給定的前綴要么被廣播,要么不被廣播。政策的變化可能意味著以前會廣播的前綴不再被廣播,被稱為

撤銷

,這些IP地址將不再能在互聯網上正常運行。

03:56 UTC:運營商制定了某種策略,決定某些路由前綴可以被廣播(這裡的廣播指的是,路由可以被其他邊緣bgp路由器學習到,進而其他的bgp網絡知道這些路由變化,前綴就是prefix,是用來唯一地標識著連入Internet的一個網絡號)

06:17:前綴通告策略更改時,術語的重新編排,導致Cloudflare必須撤回前綴的關鍵子集。
06:27:政策的變化可能意味著以前會廣播的前綴不再被廣播,Cloudflare工程師在受影響的數據中心,對有問題部分進行恢復時,就遇到了額外困難,不過Cloudflare有處理此類問題的備份程序。
06:32:Cloudflare將更改部署到第一個(數據中心)位置,所有位置都沒有受到此次更改的影響,因為這些位置使用的舊的架構。
06:51:部署更改到Cloudflare最繁忙的地點,但是沒有部署到具備MCP(Multi-Colo PoP) 體系結構的位置。
06:58:部署到達了啟用MCP (Multi-Colo PoP)的位置,並且更改已部署到關鍵部位。這是服務中斷事件開始的時候,這個時候,19個數據中心迅速離線。
07:42:Cloudflare內部宣布本次服務中斷事件。
08:00:在路由器上進行的首次更改,以驗證根本原因。

排查故障,找出根本原因,還原出現問題的部分

服務中斷事件結束。

(本部分有小部分代碼,此處略去,感興趣的網絡工程小伙伴可查看原文:

https://blog.cloudflare.com/cloudflare-outage-on-june-21-2022/)

正文

正文

補救和後續步驟流程:

本次服務終端事件造成了廣泛且嚴重的影響,Cloudflare一貫對可用性是非常重視,目前已經提出了幾個需要改進的領域,而後將繼續努力,發現可能潛在導致服務終端的所有問題。流程:

雖然MCP 計劃旨在提高可用性,但我們在更新這些數據中心方面的程序性差距,導致造成了嚴重影響。雖然Cloudflare確實為設計了交錯策略,但是它並不完美,部署過程和自動化中,需要包含MCP 的測試和具體部署過程,以確保不會產生意外後果。架構:"二級標題"二級標題

結論

結論

Web3.0
歡迎加入Odaily官方社群