iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 1
0

各位大家好,我是seagal,我是第一次參加30天挑戰,對我來說是小有難度,未來的30天裡,我會就我自己的理解來深入淺出的講解 OpenFlow Protocol 與 P4 基本比較與認識,前面當然是先做一點基本的介紹,後面則會加入實作的部分,透過與我一起觀賞我學習的經驗,相信你們也能很快的進入SDN的領域。

然而本身有其他工作在,所以每天發的文章沒辦法每天的品質都是頂好,這篇請各位見諒/images/emoticon/emoticon20.gif

若是想要了解 SDN OpenFlow 以及 P4 請不要吝嗇點擊喜歡或是訂閱我喔!(訂閱又不收費XD)
未來有機會也可以跟大家分享我當網管的辛酸血淚史,可以讓人解決問題時可以參考我的文章。

話不多說,我們就累狗!!/images/emoticon/emoticon05.gif

OpenFlow protocol 是 controller 與 switch 之間互動的基本協定, 在基本的SDN 架構下以controller來看可以分成北橋以及南橋。
北橋可以視為 control function 去管控整個網路的控制層,我們所俗稱的control plane。
南橋可以視為 data stream 去轉送封包的串流,我們所俗稱的data plane。
如下圖所示:
https://ithelp.ithome.com.tw/upload/images/20200907/20130051IICYKv4A62.png

OpenFlow protocol內有許多規範包含封包的種類以及格式,造成網路供應商的變化速度太快,隨著加入新的格式,我們所使用到的header欄位也跟著不同,故造成許的不必要的浪費,原本只有12個隨著SDN的擴張到現在變成40個上下。

OpenFlow protocol最鮮為人知的三種table分別是 flow table, meter table 以及 group table, flow table紀錄每一條flow的ID 同時存放於 controller以及 switch(隨時間flow table會被覆蓋), meter table存放 flow 的資訊,大致上存放的是流量,group table則是定義哪些為一個flow 為一個 group 我們在透過 group table 來對switch 做轉發的動作。

P4是甚麼?
P4是 Programming Protocol-Independent Packet Processors的縮寫, 它的主旨在於 data plane可以編程化,若是 data plane可編程有甚麼樣的優勢,可以讓 data plane 轉發得更為聰明,在於網路管理者方面也可以更有效率的管理整個網路。

傳統 OpenFlow網路需要透過 control plane 以及 data plane大量的溝通來達到資料交換以及資料轉發的目的,那現在我們可以,透過P4來做更有效率的運用,讓我們可以更深度的分析整個網路的狀態。

當然也不是無償讓你去分析網路的狀態的,要深入分析網路的狀態勢必會有一些 trade off,這些 trade off在於說網路的便利性以及效能性,若便利性越高然而當然效能就越低,反之亦然,所以我們要怎麼使用P4來做有效率的使用,是我們之後會慢慢談到的課題。

在此付上我的 Reference,我將會以簡短白話的方式來講解 P4 這套語言,若是你/妳不嫌棄可以訂閱我的發文
每天就根據我自己了解的程度來做發文的動作,如果自己對於 P4也有興趣可以先來預習,那我們明天見!
Reference :
P4_turtorial
[(http://docs.google.com/presentation/d/1zliBqsS8IOD4nQUboRRmF_19poeLLDLadD5zLzrTkVc/edit#slide=id.g37fca2850e_6_1802)]


下一篇
[Day2] P4 基本觀念 與 P4 Runtime
系列文
A survey between OpenFlow Protocol and P4 in Software Defined Network(SDN)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言