IoT的快速發展迫使人們重新思考傳統Wi-Fi,Wi-Fi HaLow與傳統Wi-Fi有何不同?
TECHSUGARTECHSUGAR 發表於 2021年6月22日 15:00 2021-06-22
Wi-Fi就像是我們互聯世界的氧氣,是當今最普遍的無線網路協議,承載了超過一半的網際網路流量。「Wi-Fi 是一個通用術語,指的是經過二十多年發展而成的802.11協議家族。Wi-Fi聯盟是推動Wi-Fi應用和發展的組織,該組織用數字命名法,簡化了常用的幾代Wi-Fi名稱,例如,Wi-Fi 4 = 802.11n、Wi-Fi 5 = 802.11ac 、Wi-Fi 6 = 802.11ax。您正在家裡或工作場所使用的,很有可能就是這些類型的Wi-Fi。
儘管Wi-Fi 4/5/6無處不在,但物聯網(IoT)的快速發展,迫使人們重新思考傳統Wi-Fi,揭示技術差距,重新定義802.11協議在現今超低功耗物聯網設備的無線連接世界中應該發揮的作用。物聯網和機器對機器(M2M)應用,對遠端連接和低功耗的更高要求,促使人們需要另一種為物聯網而最佳化的Wi-Fi。
Wi-Fi HaLow(發音為HEY-low)協議,透過提供超低功耗的無線解決方案,填補了這一空白,與傳統Wi-Fi相比,該方案可以在更遠的距離和更低的功耗下,連接更多的物聯網設備。該協議於2016年得到了IEEE 802.11ah任務組的批准,被Wi-Fi聯盟稱為Wi-Fi HaLow。
Wi-Fi HaLow本質上是一款低功耗、遠距離、多用途的Wi-Fi版本,在免許可的1 GHz頻譜下運行。Wi-Fi HaLow標準結合了能效、遠端連接、低延遲、高解析度影片品質數據速率、安全功能和本地IP支持,是無線連接、電池供電的物聯網設備的理想協議選擇。讓我們仔細看看Wi-Fi HaLow和傳統Wi-Fi之間的一些主要分別,以及為什麼802.11ah協議非常適合物聯網應用的連接要求。
一種省電的協議
Wi-Fi HaLow為耗電的物聯網設備,提供了卓越的能效。IEEE 802.11ah規定的各種複雜的休眠模式,使HaLow設備能夠長時間處於極低功率狀態, 節省電池能量:
TWT(Target wake time):這允許工作站(STA)和存取點(AP)預先安排一個時間,喚醒休眠的節點以存取訊號。
RAW(Restricted access window):存取點可以授予工作站子集傳輸其資料的權限,而其他工作站則被迫休眠、緩衝非緊急數據或兩者兼而有之。
BSS(Basic Service Set )空閒期:這將工作站的「允許空閒期」延長至五年。
TIM(Traffic Indication Mapping ): 更有效地分組編碼TIM,節省信標(Beacon)的傳輸時間。
短MAC標頭:將低標頭傳輸虛耗、傳輸時間和功耗,並釋放無線電波頻段。
空值PHY協議數據單元(NPD):這將類似MAC的ACKs/NACKs嵌入PHY層,以減少時間和功耗。
短信標:短(有限)信標頻繁發送以同步工作站,而完整信標的發送頻率較低。
BSS著色機制:顏色分配表示特定接入點的BSS組,而站點可以忽略其他顏色。
雙向TXOP(BDT:Bi-directional TXOP):當喚醒工作站,發現存在用於傳輸的上行和下行訊框(Frame)時,會減少介質的存取次數。BDT使用實體層協議資料單元(PPDU)的訊號(SIG)字段中的響應指示,以增加對第三方工作站傳輸的TXOP持續時間保護。
該協議的高效休眠和電源管理模式,支援物聯網設備使用電池運行多年,以及多種靈活的電源和電池大小選擇,從採用鈕扣電池的短距離物聯網設備,到傳輸超過一公里的更高功率、採用更大電池的應用。與2.4 GHz和5 GHz頻段的Wi-Fi協議相比,該協議採用的sub-GHz窄頻訊號,傳輸距離更遠,能耗更低,讓每單位能耗可傳輸更多數據。
因此,Wi-Fi HaLow晶片所需的功率僅為傳統Wi-Fi晶片的一小部分。雖然傳統Wi-Fi的數據速率較高,讓使用者能夠在2.4 GHz、5 GHz和6 GHz頻段,使用寬頻頻道快速傳輸高解析影片和下載大量檔案,但這些Wi-Fi連接的有效距離很短,電池消耗很快,需要頻繁充電或更換電池,或者最好有一個主電源連接。基於這些原因,Wi-Fi HaLow是電源受限的物聯網設備的更好選擇,這些設備需要達到更遠的距離,並能用電池運行數年,同時仍然提供較高的數據吞吐量。
Wi-Fi HaLow的sub-1 GHz協議優化了滲透率、覆蓋範圍、功率和容量。
覆蓋範圍更廣
802.11標準涵蓋的頻率範圍非常廣泛,從sub-GHz到毫米波(mmWave)。Wi-Fi HaLow是第一個在免許可的sub-GHz頻段運行的Wi-Fi標準。Wi-Fi HaLow提供的數據速率,從幾百kb/s到幾十Mb/s不等,傳輸距離從幾十公尺到一公里以上。
與傳統Wi-Fi使用的最窄的20MHz頻道相比,Wi-Fi HaLow的sub-1 GHz訊號使用更窄的頻道,從1MHz到更窄。由於頻道中的熱雜訊較低,這種20倍的頻寬系數轉化為13 dB的link budget改進。與傳統的2.4 GHz Wi-Fi相比,750 MHz – 950 MHz之間的RF頻率,需要額外增加8dB-9 dB的link budget,進而節省自由空間傳輸損耗。此外,Wi-Fi HaLow協議增加了一個範圍最佳化的調變和編碼方案(MCS10),可提供額外的3dBlink budget改進。
總之,與傳統的2.4GHz IEEE 802.11n(Wi-Fi 4)相比,Wi-Fi HaLow提供了高達24dB的link budget改進。與頻率更高、頻寬更寬的802.11ac(Wi-Fi 5)和802.11ax(Wi-Fi 6/6E)協議相比,Wi-Fi HaLowlink budget優勢進一步增強,其使用頻寬更寬的5GHz和6GHz頻譜。這就解釋了為什麼Wi-Fi HaLow訊號的傳輸距離,是傳統Wi-Fi的十倍,而不需要網路擴展器。例如,電池供電的攝影鏡頭可以放置在家裡或車庫外牆更方便的地方。照明系統可以從單個AP控制,而不管燈具是在室內還是室外的花園裡。
為終端使用者提供無線物聯網解決方案,覆蓋數百公尺的距離,而無需額外的擴展器或昂貴的手機行動網路,是802.11ah協議的一個關鍵競爭優勢。Wi-Fi-HaLow的遠端覆蓋優勢,擴展了智慧型家居和智慧型城市網路的範圍,讓使用者能夠控制1公里以外的物聯網設備,遠遠超出了傳統Wi-Fi協議的覆蓋範圍。
訊號穿透力更強
一般來說:頻率越低,覆蓋範圍越遠,穿透障礙物的能力越強。Sub-GHz 的Wi-Fi HaLow訊號可以比傳統Wi-Fi更容易穿過牆壁和其他障礙物。與2.4GHz和5GHz頻段的Wi-Fi協議相比,住宅和商業建築的建築材料和布局的變化,對sub-GHz HaLow訊號的影響較小。Wi-Fi HaLow可以穿透牆壁和建築物,這有助於減少客戶投訴和產品退貨,這些問題有時會困擾使用傳統Wi-Fi的產品。
Wi-Fi HaLow使用正交分頻多工(OFDM)調變,來校正反射和多徑環境。無論設備製造商的產品是在室內還是室外,或者是在地下室還是閣樓,Wi-Fi HaLow都可以確保設備與接入點之間有穩健的連接。這種靈活性消除了提供專有集線器或橋接設備以補償不同家庭架構的額外成本和複雜性。
高度可擴展的解決方案
單個Wi-Fi HaLow接入點可以處理多達8191個設備,是傳統Wi-Fi接入點的4倍多。在可預見的未來,這足夠連接每個LED燈泡、電燈開關、智慧型門鎖、電動窗簾、恆溫器、煙霧探測器、太陽能電池板、監控攝影鏡頭或任何可想像的智慧型家居設備。典型的家庭Wi-Fi路由器,通常支援幾十種設備。當頻寬服務提供商在家居中進行部署時,單個Wi-Fi HaLow接入點可以成為一個可擴展的平台,用於提供額外的安全和公用事業管理設備和服務。
多種訊號傳遞選項,減少了管理和控制大量HaLow設備所需的開銷。這樣可以最大限度地減少訊號衝突,並為有源設備釋放無線電波,以便以最快的調變和編碼方案(MCS)速率傳輸更多數據。與傳統Wi-Fi一樣,HaLow可以根據訊號完整性和與接入點的距離,自動調整頻寬。預定義的MCS級別支持單流、單天線產品的頻寬從150 Kbps到40 Mbps,使用的頻寬從1 MHz到8 MHz,80 Mbps的能力也可通過使用可選的16 MHz寬頻道來實現。
Wi-Fi HaLow的星形網路拓撲結構、卓越的穿透力、廣闊的覆蓋面積和巨大的容量,將無線連接從難以部署和頻寬受限的網狀網路中解放出來,簡化了網路安裝,並將總體持有成本降至最低。
具有抗噪性的免許可頻譜
與採用2.4GHz、5GHz和6GHz頻段的傳統Wi-Fi一樣,Wi-Fi HaLow使終端使用者能夠擁有自己的設備並使用免許可的sub-GHz無線電頻譜,範圍從750MHz到950MHz。Wi-Fi HaLow的可用頻率範圍、最大傳輸功率和占空比,在世界各地有所不同。(例如,美洲可用的HaLow頻譜是902 MHz至928 MHz,而在歐洲是863 MHz至868 MHz)。
Wi-Fi HaLow在工業、科學和醫療(ISM)頻段內運行,可以使用多種頻段:1MHz、2MHz、4MHz、8MHz和16MHz。頻寬越窄,訊號傳輸的距離就越遠。使用OFDM,以跨多個子頻道的數據包形式傳輸數據,這可以提高在具有挑戰性的RF環境中的性能,特別是當有來自其他無線電設備的強干擾時。前向錯誤更正(FEC)編碼也為恢復數據包提供了額外的保護,確保穩健的連接。
安全性和互通性
與其他IEEE 802.11 Wi-Fi版本一樣,Wi-Fi HaLow是一種固有的安全無線協議,支援最新的Wi-Fi認證要求(WPA3)和空中傳輸(OTA)AES加密,其數據速率可以實現安全的OTA韌體升級。
就像其他類型的Wi-Fi一樣,HaLow是一個全球公認的標準(IEEE 802.11ah),定義了連接設備如何進行安全認證和通訊。採用Wi-Fi HaLow的設備供應商,可以保證其產品和網路,將按照Wi-Fi聯盟的開髮指導來實現互通性。由於Wi-Fi HaLow是IEEE 802.11標準的一部分,Wi-Fi HaLow網路也可以與Wi-Fi 4、Wi-Fi 5和Wi-Fi 6網路共存,而不影響其RF性能。
本地IP支援
所有物聯網路都需要網路協議(IP)支持,以實現雲端連接。由於Wi-Fi HaLow是802.11 Wi-Fi標準,因此它提供本地TCP/IP支持。這種內建的IP功能,意味著物聯網連接不需要專有閘道器或橋接器。所有連接到具有Wi-Fi HaLow功能的路由器的客戶端設備,可以使用IPv4/IPv6傳輸協議,直接連結網際網路,以獲得基於雲端的服務和物聯網數據的管理。
HaLow效應:延伸範圍,拓展物聯網的可能性
傳統Wi-Fi的網路擁塞、範圍限制和較高的功耗,以及可連接到單個AP的設備數量有限,在當今物聯網設備的世界中已不再可行。這些限制阻礙了各行業出現的以物聯網為中心的新商業模式,這些模式需要更遠的距離、更大的容量、更靈活的電池和電源選項,同時最大限度地降低部署成本。
作為一種遠端協議,Wi-Fi HaLow支持那些2.4GHz和5GHz Wi-Fi無法達到的室內外物聯網應用,例如遠端監控鏡頭、門禁網路甚至無人機。其他潛在的使用案例包括大型公共場所,如體育場館、購物中心和會議中心,在這些場所,單個Wi-Fi HaLow接入點可以替代大量的接入點,無需複雜的網狀網路,簡化了安裝,降低了總持有成本。
工業物聯網、過程控制感測器、大樓自動化、倉庫和零售店等眾多應用,也將受益於這種遠端、低功耗協議,讓無數設備能夠在日益自動化的世界中保持連接。事實上,Wi-Fi-HaLow在傳統的802.11協議中因其覆蓋範圍、能效、容量和多功能性而脫穎而出。
附圖:▲Wi-Fi 4/5/6與Wi-Fi HaLow的比較
▲ 傳統的Wi-Fi 4/5/6協議,使用更高的頻率和更寬的頻寬來最大化吞吐量。
▲ 比較802.11n/ac(左)和802.11ah(右)的吞吐量與範圍。(資料來源:Sensors期刊(Basel )。2016年11月,IEEE 802.11ah:一種應對物聯網挑戰的技術,作者:Victor Baños-Gonzalez, M. Shahwaiz Afaqui, Elena Lopez-Aguilera, and Eduard Garcia-Villegas)
資料來源:https://www.techbang.com/posts/87835-wifi-halow-iot?fbclid=IwAR1P3nR4iV8V3ZhhOO4zX7GZ_9Tz4v5MBzLlCX3aXYbnOCVqPYi58LPFrmQ
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「ipv4 無法 連 線」的推薦目錄:
- 關於ipv4 無法 連 線 在 台灣物聯網實驗室 IOT Labs Facebook 的最佳解答
- 關於ipv4 無法 連 線 在 台灣物聯網實驗室 IOT Labs Facebook 的精選貼文
- 關於ipv4 無法 連 線 在 Taipei Ethereum Meetup Facebook 的最佳解答
- 關於ipv4 無法 連 線 在 コバにゃんチャンネル Youtube 的精選貼文
- 關於ipv4 無法 連 線 在 大象中醫 Youtube 的最讚貼文
- 關於ipv4 無法 連 線 在 大象中醫 Youtube 的最佳貼文
- 關於ipv4 無法 連 線 在 win10解決網路無法連線(控制台解決法) - YouTube 的評價
- 關於ipv4 無法 連 線 在 無法辨識的網路連線能力受限 - Mobile01 的評價
- 關於ipv4 無法 連 線 在 Re: [情報] 光世代【衝高速】專案簡易Q & A | PTT 熱門文章Hito 的評價
ipv4 無法 連 線 在 台灣物聯網實驗室 IOT Labs Facebook 的精選貼文
區塊鏈技術正邁向產業級應用「不可竄改性結合AIoT架構」
2019-11-13 08:56CTimes
【作者: 籃貫銘】
自從「挖礦」漸漸從台灣的產業新聞裡消失之後,區塊鏈的消息就不是這麼響。然而,高潮退去,留在沙灘上的,往往都是最漂亮的貝殼。如今區塊鏈的去中心化技術,正開始逐步發酵,並漸漸的深入至虛擬貨幣之外的產業應用中。
就目前的發展現況來看,區塊鏈在產業應用的營運思維,都圍繞在「不可竄改性」上。在這個對話要錄音、傳訊要截圖的年代,能夠有一個「生成就無法修改」的機制,確實是有那麼一點什麼的。
而物聯網,將會是最主要的應用領域,不僅因其有導入的必要性,同時更有絕佳的實用性。區塊鏈與物聯網的相互搭配,將會陸陸續續的發生在各行各業5之中。
BiiLabs就是看好此一趨勢的區塊鏈應用新創公司,它是由朱宜振、黃敬群和林弘全所共同成立。說是新創,但這三個人完全跟「新」扯不上關係,每一個人都是已具有十分深厚的產業經驗與技術能力,是新創領域中的佼佼者。
區塊鏈是新時代的螺絲 怎麼用才是問題
BiiLabs執行長朱宜振表示,「區塊鏈就是一種工具,就好像以前沒有雲端,但現在有雲端。然而主角並不是雲端,而是應用的場域。」他也用「螺絲」做比喻,來說明新科技問世時,最困難的,就是如何證明它的實用性。
「就像發明螺絲的人,自己說他的產品多好是沒用的,除非他真的鎖給你看,並實實在在的提升了整個生產的價值。」朱宜振說。
他解釋,螺絲可以用在很多地方,只要有需要連接的場景都能使用,包含汽車和船舶等,市場非常龐大。但做螺絲的人並不會知道汽車和船怎麼做,只需要專注在螺絲本身的功能。區塊鏈也同樣如此。
「我認為區塊鏈就是新時代的螺絲。」
而他也認為目前的市場仍在前期階段,工作的要點是讓市場能夠完全了解區塊鏈的功能,並且不會再問區塊鏈是什麼。就像是雲端,也許人們無法完美的解釋何謂雲端,但最起碼不會存在疑慮。
回到BiiLabs的本身,他們也就是利用區塊鏈技術來解決問題,而且是物聯網領域的問題。
「我們觀察到物聯網可能有些問題,就是在萬物聯網的時代,百億個裝置之間的溝通和對話將會面臨挑戰,也就是目前的TCP/IP的規範將無法因應。」朱宜振指出。
他認為,要解決這個數百億裝置對話的問題,應該要採取P2P和分散式的機制,才會是合理的方案。就好像當年的IPv4走到IPv6一樣,是面臨一完全不同的量級的問題,因此會需要一個全新的技術。
而這個通訊規範可能崩潰的問題,經他們求證IEEE之後,也確認IEEE事實上也有意識到這個潛藏的危機,並且正在思考推出新的通訊協定(Protocol)來解決。
而BiiLabs的理念則剛好也與德國的IOTA組織不謀而合,因此也就開始採用IOTA的代碼進行開發與應用。
所以簡單的說,就是物聯網會發生問題,而這個問題會出現在通訊協定上.此時將需要一個全新的通訊協定。而區塊鏈的觀念將可以解決這個問題,但是它本身的鏈狀結構的拓樸並不完全適用,仍需要進行調整,而BiiLabs就是要尋求物聯網和區塊鏈之間的可能性。
他強調,「量、分散式、物聯網的利益價值」就是區塊鏈的應用精神。而且應該要從資料和網路的價值來看待,而非集中到單純的設備銷售和大雲端上。
「成為區塊鏈產業的Red Hat,就是我們的目標」朱宜振說。他指出,希望客戶在使用服務時,不用在從頭去建區塊鏈,而只需用API來整合至他原本的系統裡。目前他們已將他們的服務打包成PaaS提供給客戶,將來還會打包成SaaS的方式來提供,只需要要透過訂閱的形式就能使用。
Bii Labs是聚焦在區塊鏈之下,把區塊鏈服務的基礎建設的可信度、穩定度、可靠度做好,並提供客戶一個完善的商業服務。
至於區塊鏈與物聯網的結合能解決什麼問題?朱宜振則明白的指出,就是「資料的信任問題」,因為區塊鏈技術非常靠近邊緣裝置,幾乎能在資料產生的同時,就傳至區塊鏈,以確保資料的完整性與正確性。當然還是有被變造的可能性,但整體的路徑非常的短,因此風險相對小非常多。
結合AIoT 台大師生解決農業貸款的痛點
同樣的思維與精神,也被運用在廖世偉博士目前正在進行的一個專案項目上。廖世偉博士是台大資工所的副教授,主持了A2B(Android、區塊鏈及大數據)實驗室,並身兼亞太區區塊鏈發展協會理事長。
廖世偉博士所指導的專案是由一群碩博士生所共同開發並進行實場研究,他們將之稱為「時光寶盒」。
這個時光寶盒的概念很簡單,就是把「時光」通通收進「寶盒」裡。但這並不是說要讓人穿越時空,而是讓資料都可以完整的保留下來,而達成這個完美儲存的核心技術,就是區塊鏈。
廖世偉表示,這個時光寶盒正用在農業的貸款上,透過智慧感測結合區塊鏈技術,能實際的反應農夫耕作的情況,讓農業的貸款可以更接近實際。一改過去耕種狀況與聲稱不符的情形。
「你種八分之一,就拿到八分之一的錢;種到第八分之二,就給他八分之二的錢。」廖世偉解釋。
這其實是一種IoT的裝置,提供了類似智慧監工的功能,然後結合了區塊鏈的認證技術,用來做智能撥款。透過這種智慧感測與區塊鏈驗證技術互相搭配的方式,提供了金融服務全新的操作模式。是有,是無,清清楚楚的。
「我覺得這個是可以改變世界」廖世偉自信的說
依據廖世偉的說法,他們的系統架構是稱為「AIoT區塊鏈」應用,能夠解決智能監工的問題,目前正運用在農業貸款的業務上。非常類似於舟訊科技的空氣盒子,但他們的方案是更加智能,而且結合了區塊鏈的技術。
另外,一家台大的新創公司也採取了類似的架構,用在汽車的保險上。這家公司運用區塊鏈的技術把汽車的里程數等資料都傳上區塊鏈,可避免人為的篡改,讓保險金額的設定基準有非常明確的依據。
圍繞的重點就是在「不可竄改性。」
而這個時光寶盒是由廖世偉博士所帶領的團隊所共同開發,成員包含:余映嫻
廖品崴、吳松霖、吳弦安、楊昌儒、廖昱誠、謝旻岳、王贊鈞、張詠盛。製造的業者是華碩。由於是使用智慧手機的硬體規格,因此非常省電,也能支援拍照和攝影,可以完全掌握農業現場的狀態。
它的運作方法就是時光寶盒感測現場資料,並將Hash值用區塊鏈技術處理,再上傳至雲端,因此原始資料都保存在雲端中,但是這些值都是無法竄改的。而後台的管理者就只需要看這些資料,是不是有播種,是不是在發芽、開花。完全掌握耕種的情形,並據此進行撥款。
「以前的農業金融都需要跑鄉下去實際訪查,但現在透過時光寶盒的智能監工就能處理。而且農地經常都在很荒涼的地方,進行實地訪查也有執行的困難。」廖世偉指出。
他也語重心長地指出,區塊鏈不應該只用在「發幣」這類的金融商品上,而是要務務實實的用在工業的領域上,真正的可以解決問題、解決痛點。
簡化導入困難 資策會推「出廠即上鏈」
既然區塊鏈在物聯網應用上有其實際的功效,助其早日可以發揮在各個領域上就是當務之急。其中一個做法就是把它套件化,變成所謂的統包解決方案(turnkey solution)。
目前資策會就與瑞昱半導體(Realtek)及翰聯(MyTek)合作推出一種「微控制器IoT上鏈管理技術」解決方案,透過整合無線晶片、微控制器(MCU)和區塊鏈軟體技術,達到所謂「出廠即上鏈」的目標。
它的運作原理是讓分散式稽核技術搭配MCU晶片,達到產品出廠即上鏈的功能;再結合資服業者分散式代理人引擎(Dapp),將大量高頻的IoT數據切片壓縮分層上鏈;再輔以分散式身分識別(DID)為基礎的交易網路框架,來發展多階層資料授權管理智能合約。
這個方案可以應用在醫療病歷、生產履歷、智能合約等領域,透過分散式帳本、去中心化、不可竄改等特色,強化資料的信任度。
附圖:2019年11月(第337期)區塊鏈 - 分散式產業應用來臨
圖一 : BiiLabs的Sentinel Appliance,運用區塊鏈技術幫助企業和政府通過DLT監控水質數據。(來源/BiiLabs)
圖二 : BiiLabs執行長朱宜振。(攝影/籃貫銘)
圖三 : 台大資工所副教授廖世偉博士(左)與時光寶盒的共同開發者楊昌儒(右)。(攝影/籃貫銘)
圖四 : 時光寶盒在農地的實際應用情況。(照片提供/廖世偉)
圖五 : 資策會與瑞昱半導體(Realtek)及翰聯(MyTek)合作的「微控制器IoT上鏈管理技術」。(攝影/籃貫銘)
資料來源:https://udn.com/news/story/6903/4160177
ipv4 無法 連 線 在 Taipei Ethereum Meetup Facebook 的最佳解答
📜 [專欄新文章] libp2p — 模組化的點對點網路協議
✍️ Ken Lin
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
libp2p — 模組化的點對點網路協議
可重用的輪子
『不要重複造輪子』,是在軟體開發時,經常被引用的一句話。
這句話隱含的意義是,盡可能的去重用(reuse)其他人分享的開發成果,因為很多的經驗及知識,就是在這樣的重用過程中,逐漸的被累積及驗證。而許多被廣泛重用的輪子,往往就這樣成為某個特殊領域中共用的基石,進而加速了其他專案開發時的迭代過程。
本次CrossLink Taipei 2019的研討會中,也出現了一個這樣的輪子,那就是libp2p專案。
分佈式應用的共業
傳統的中心化網路架構當中,每一個參與的節點,其Server與Client的角色是確立的,因此封包在路由傳遞時也相對單純,對於開發者而言,大家也都非常熟稔這樣的架構。
而在分佈式的網路架構當中,每一個節點都同時肩負了Server與Client的角色(或者換一個說法,不再有Server-Client的區別),再加上各種異質的網路環境與網路通訊協議,開發者往往要耗費許多資源來解決這些網路底層的通訊問題,例如NAT穿透、加密傳輸等等。
如果這些難題,一再的困擾著不同的開發者,那麼有沒有一種可能,可以把這些難題所需要的解決方案集合在一起,方便大家去重複使用並改進?libp2p的出現,便是這個問題的答案。藉由高度模組化的設計,開發者可以方便的取用自己所需要的部分模組,並在現有的模組上疊加自己額外的應用邏輯,以適應各種不同的應用場景。
由於其高度模組化的特性,使得libp2p受到許多知名專案的青睞,紛紛使用了libp2p作為其底層網路框架,例如Ethereum 2.0、Palkadot、Filecoin、0X等等。
libp2p原先是IPFS專案中的網路框架,後來抽出變成一個獨立的專案。
libp2p的特色
以下所提到的各種libp2p特色,很多都以模組的形式被實作,開發者可選擇適合的模組,進而開發出符合其應用場景的服務。
具有兼容性的定址方式
libp2p使用了類似檔案路徑的概念(PLAN9 Ubiquitous Filesystem),為每一個行程(process)定義了專屬的位址。這種定址方式,可以增加行程定址的兼容性,假設某個行程改用了新的網路傳輸協議(例如從ipv4改為bluetooth),可以很方便的以相同的定址結構去表達新的位址。
以目前常見的ipv4位址為例,假設某個節點是以ip 1.2.3.4以及port 80提供了服務,在libp2p中其位址可表示為/ip4/1.2.3.4/tcp/80。
支援多種傳輸協議
針對目前常見的傳輸協議,libp2p也實作了相對應的模組,例如:TCP、QUIC、WebSockets、WebRTC。在未來,libp2p預計還會支援Bluetooth、uTP、UDP,或者目前尚未發明的新協議(歸功其兼容性的定址方式)。
可升級的傳輸協議
在libp2p的設計當中,一個行程與另一個行程建立連線時,首先會以某個底層協議作為原始連線(raw connection,例如TCP協議)。一旦原始連線建立完畢,兩個行程可以進一步依據他們的需求進行協調,決定是否將原始協議升級(upgrade)為另一個協議連線(capable connection),例如將單純的TCP協議升級為具有加密性質的連線。
多路複用
有時候在兩個節點之間建立一個連線,需要不少的成本(像是需要穿透NAT、經過多次的交握確認後才能建立連線),如果能夠重複使用已經成功建立的連線,兩個節點之間就能以更有效率的方式實現異質的資料傳輸。舉例來說,兩個節點可以在同一個TCP連線上,進一步的產生不同的串流(stream)。
協議協調
由於libp2p支援多種傳輸協議,並且能夠多路複用,兩個節點在互相傳輸資料之前,便需要有一套機制去互相溝通,確定兩者要以哪種協議進行資料的傳輸,這便是協議協調。
目前的協議協調機制是multiselect 1.0,libp2p接下來會將協議協調機制升級為更有效率的multiselect 2.0。
節點發現與訊息傳播
在建立分佈式應用的時候,如何有效率的尋找節點(節點發現)是建立一切服務的起點,能夠找到節點,才能進一步和節點建立連線,接著才能建構其上的應用。libp2p提供了數種節點發現的實作(DHT、Randezvous、mDNS等等)。
除了節點發現,如何進行訊息傳播也是建立一個分佈式應用必須考慮的事情。在這邊要特別提起PubSub這個訊息傳播模式。這是一種類似MQTT的發布-訂閱(Publish-Subscribe)模式,允許訊息以M-to-N的方式在網路中傳遞,這種傳播模式是非同步(asynchronous)。和MQTT不同的是,libp2p是分散式的,並不需要一個中心化的broker來負責訊息的路由(routing)。
目前PubSub提供數種訊息路由演算法,包括floodsub、gossipsub等等。在Ethereum 2.0也將會採用PubSub作為其訊息傳播模式。
NAT穿透及中繼
現今的網路架構中,NAT無所不在,而這也是點對點連線時最大的困擾。libp2p實作了NAT穿透,而對於那些無法進行NAT穿透的節點,libp2p另外提供了中繼技術(relay)來作為補強方案。
結語及後記
以上所描述的libp2p特色,是在參與CrossLink Taipei 2019研討會時,印象較為深刻的幾點,尚有其他特色沒有節錄於本文之中。除此之外,各項特色的描述多半以重點式的形式紀錄,很多細節仍有待深入挖掘。
在撰寫本文時,筆者參考了許多前人的貢獻,其中有不少是來自於CrossLink Taipei 2019 的線上共筆,謝謝這些參與共筆的志工。除此之外,也要特別感謝Taipei Ethereum Meetup的朋友Kevin,提供了不少寶貴的建議以及實作經驗。
參考資料
https://segmentfault.com/a/1190000015410582
https://zhuanlan.zhihu.com/p/33535984
https://ethfans.org/posts/why-libp2p
https://medium.com/r/?url=https%3A%2F%2Fgithub.com%2Fmultiformats%2Fmultiaddr
libp2p — 模組化的點對點網路協議 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
ipv4 無法 連 線 在 コバにゃんチャンネル Youtube 的精選貼文
ipv4 無法 連 線 在 大象中醫 Youtube 的最讚貼文
ipv4 無法 連 線 在 大象中醫 Youtube 的最佳貼文
ipv4 無法 連 線 在 無法辨識的網路連線能力受限 - Mobile01 的推薦與評價
設定→ TCP/IPv4. IP位址:192.168.1.10 子網路遮罩:255.255.255.0 預設閘道:192.168.1.1 慣用DNS 伺服器:168.95.1.1 8. 無法辨識的網路→ 搞定. ... <看更多>
ipv4 無法 連 線 在 Re: [情報] 光世代【衝高速】專案簡易Q & A | PTT 熱門文章Hito 的推薦與評價
6 F →popbitch: 就無法原約升上去,不過還是多跑幾家問問看,神腦也問問 06/05 14:57 ... 4 [問題] 光世代IPV4跟IPV6連線有差別. 48 2022-04-26 13:19. ... <看更多>
ipv4 無法 連 線 在 win10解決網路無法連線(控制台解決法) - YouTube 的推薦與評價
命令執行解決法https://youtu.be/bGosWUcNaMQ控制台解決法https://youtu.be/1Q102-vTyy8網路診斷原則服務未執行解決方法https://youtu.be/ZxrQugBN6YQ ... ... <看更多>