「黑馬程序員」ipfs是否能替代http

IPFS vs HTTP

什麼是HTTP?

http是一種用於分佈式、協作式和超媒體信息系統的應用層協議。 HTTP的發展是由蒂姆·伯納斯-李於1989年在歐洲核子研究組織(CERN)所發起。

HTTP弊端

Http於1989年問世至今已經過了接近30個年頭。Http是20世紀人類最偉大的發明之一,不過隨著互聯網資源幾何式的倍增,Http協議的弊端也逐漸顯露了出來: ** 我們都見過“404 Page Not Found”這種常見的頁面提示。這表示,你尋找的頁面不存在。造成這種錯誤的原因有兩種:

· 服務器上的文件被永久性地刪除了。

· 服務器被關閉了。**

如果不提前做好備份的話,那麼這就表示你所尋找的網頁已經永遠的地從互聯網中消失了。

HTTP效率較低,成本卻是很高。 IPFS官方的博客介紹到“江南Style”MV到目前為止,已經被全世界播放了30億次,如果我們假設這個MV的大小為100MB,那麼到目前為止,這個MV一共消耗了大約300Petabytes(1P=1,000,000GB)的網絡流量,如果按照0.01USD/GB 的價格來算的話,那麼谷歌將支付3百萬美金給網絡服務供應商(ISP)。

Http協議過於地中心化。為了支撐Http協議,服務器必須24*7小時處於開啟狀態。對於流量巨大的公司:百度,淘寶,騰訊,他們每年將花費鉅額資金用於維護公司的服務器和解決安全隱患例如:DDoS,XSS,CSRF等等。 而且這些巨頭公司擁有我們數據的絕對控制權,各種各樣的監管和封鎖,一定程度上限制了信息同步,也扼殺了很多創新和發展。

為了解決以上的問題,咱們來了解下IPFS。

什麼是IPFS?

IPFS是一個分佈式文件系統協議。IPFS協議定義了文件在分佈式系統中如何存儲,索引,和傳輸。IPFS的目標是通過一個文件系統將網絡中所有的設備連接起來。在某些方面,IPFS和WEB原本的設計很像,但是IPFS更像是一些由節點組成的P2P的Git文件系統。如果IPFS使用得當,IPFS將可以代替HTTP協議。** 簡單的說,IPFS即是一種點對點的超媒體文件存儲,索引,交換協議。**

例如我們要去請求某個資源,我們通常都會去請求中心化服務器,然後獲得響應。即使中心化服務器並大量巨大,承載壓力過大,或者遠在天涯,我們也只能如此。 使用IPFS的話,服務器以節點的形式存在,不在是巨頭公司壟斷啦。簡單的表達就是,你需要的資源,不用千里迢迢去中心化服務器中獲取了,可以直接從身邊的節點獲取。人人都可以提供自己的硬件變成一個節點,幫助別人保存資源。在別人請求自己的服務器獲得資源的同時,自己也可以獲取請求資源的憑證。這樣大大降低了我們的網絡成本,讓我們不再過度依賴主幹網。 !

HTTP協議下的網絡如下圖(左1,左2):全球互聯網的域名解析服務根源由13個根服務器提供,同時主要的雲服務也是由幾家雲服務商提供。機構和權利層組織可以在這些中心化集群前獲取HTTP消息包,窺探 和監控網民的生活和個人信息;黑客也可以通過DDOS手段,攻擊中心化服務器集群,網絡癱瘓的案例屢見不鮮。IPFS協議下的網絡傳輸如下圖(右圖)。

「黑馬程序員」ipfs是否能替代http

IPFS除了解決中心化暴露出來的網絡擁堵、封閉之外呢,還有一個跟大的特點就是解決過度冗餘的問題

思考下,我們電腦中有多少文件是別人沒有的? 據統計,我們電腦上視頻、音樂、書籍、文檔、軟件包、等等 90%的數據都和別人重複。

如果把人們都有的某個文件,做一次hash計算,隻字不差的兩個文件hash值相同。哪怕改動一個字,都是一個新版本,hash值都不同。只需要使用相同的hash值,就可以訪問那個文件,這個hash值就是文件的地址。

你的文件如果別人也有,說明不是秘密,你們可以共享而不必擔心洩密,這種共享也是相互備份。你再也不用擔心某個電影找不到了,也不用備份,因為全球電腦上只有那麼幾個人保留著,你就能拿到它。而不是重複存儲幾十萬份。

你只要保留最喜歡的電影,和最常用的文件(因為在本地訪問速度更快)。 其他的,只要有地址(文件的哈希值)就可以隨時下載訪問。

只要判斷哈希值我們就可以找到文件,進行下載,並支持同時從多個節點同時下載一個大文件。只要多個節點都保存有該文件。每個節點的資源都是碎片化的方式所保存的,就算是節點自己也不能翻譯自己保存的數據。這樣就解決了安全問題。

那麼IPFS能否替代HTTP呢? 我認為 IPFS帶來的技術革命雖然很強大,也是一個比較大的進步,但是仍然無法替代HTTP。不可否認IPFS帶來的優勢,但在無法監管過濾的地方通常同樣伴隨著違法犯罪。 生活還是需要一些約束和秩序的,ipfs作為共享的社會資源和Http共存,也許是最好的歸宿了。


分享到:


相關文章: