0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

P4:網(wǎng)絡(luò)轉(zhuǎn)發(fā)平面編程

星星科技指導(dǎo)員 ? 來源:volansys ? 作者:Komal Shah ? 2022-12-08 16:41 ? 次閱讀

隨著物聯(lián)網(wǎng)設(shè)備的巨大增長、數(shù)據(jù)流量的增加、新協(xié)議以及私有云和公共云的不斷增長,網(wǎng)絡(luò)世界的創(chuàng)新步伐正在加快。網(wǎng)絡(luò)的未來已經(jīng)超越了分離SDN的數(shù)據(jù)和控制平面,而是在ASIC深處對轉(zhuǎn)發(fā)邏輯進(jìn)行編程?,F(xiàn)在,技術(shù)正在從傳統(tǒng)的固定架構(gòu)硅開關(guān)轉(zhuǎn)向靈活的可編程開關(guān)。新的可編程ASIC允許支持自定義協(xié)議以及現(xiàn)在和未來的協(xié)議。這需要新的更高級別的域特定語言來簡化轉(zhuǎn)發(fā)平面的寫入。每個(gè)ASIC制造商都必須提出自己的自定義語言,這更多地依賴于硬件架構(gòu)。將轉(zhuǎn)發(fā)平面邏輯從一個(gè)網(wǎng)絡(luò)ASIC制造商移植到另一個(gè)制造商將需要大量的努力,而且非常痛苦。這產(chǎn)生了對獨(dú)立于底層硬件和協(xié)議的標(biāo)準(zhǔn)語言的需求。

什么是P4?

P4(獨(dú)立于編程協(xié)議的數(shù)據(jù)包處理器)是一種特定于域的開源編程語言,專為編程可重新配置的網(wǎng)絡(luò)管道而設(shè)計(jì)。P4語言是公共語言,由 p4.org 聯(lián)盟開發(fā),該聯(lián)盟包括網(wǎng)絡(luò),云系統(tǒng)和學(xué)術(shù)機(jī)構(gòu)領(lǐng)域的各種公司。最初,P4是為網(wǎng)絡(luò)交換機(jī)的數(shù)據(jù)平面編程而設(shè)計(jì)的,但其范圍已擴(kuò)大到涵蓋可編程網(wǎng)絡(luò)元素,例如硬件或軟件交換機(jī),網(wǎng)絡(luò)接口卡,路由器或其他數(shù)據(jù)包處理系統(tǒng)。

P4 編譯器:P4 如何獨(dú)立于目標(biāo)?

從過去幾年來看,很明顯,任何網(wǎng)絡(luò)設(shè)備中數(shù)據(jù)平面處理的數(shù)據(jù)包大致可以分為三個(gè)基本階段。1)解析器塊:負(fù)責(zé)數(shù)據(jù)包識別和提取,2)控制塊:負(fù)責(zé)匹配+操作,3)解析器:負(fù)責(zé)形成所需的出口數(shù)據(jù)包。網(wǎng)絡(luò)芯片就是以這種方式構(gòu)建的,并且是獨(dú)立于協(xié)議的。P4 是可以為任何目標(biāo)設(shè)備編譯以指定如何在數(shù)據(jù)平面中處理數(shù)據(jù)包的語言。P4 編譯器的體系結(jié)構(gòu)通過分離語言和目標(biāo)模型來幫助使其獨(dú)立于目標(biāo)。P4 具有前端開源和后端松散,使其獨(dú)立于目標(biāo)。每個(gè)芯片供應(yīng)商都可以實(shí)現(xiàn)自己的編譯器后端以映射到其硬件架構(gòu)。P4 的架構(gòu)還有助于通過定義自己的模型,然后編寫 p4 后端來支持相同的硬件細(xì)節(jié)。

pYYBAGORo1aAS3fEAAC2MRXtKbc530.png

圖 1:P4 編譯器體系結(jié)構(gòu)

每個(gè)芯片制造商只需要擁有與其硬件兼容的P4編譯器工具鏈,用戶可以獨(dú)立于供應(yīng)商的依賴編寫自己的P4程序,在不影響速度的情況下進(jìn)行編譯和運(yùn)行。用戶只需要專注于實(shí)際的數(shù)據(jù)包處理邏輯,而無需擔(dān)心底層硬件。編譯器將為硬件生成運(yùn)行時(shí)代碼。圖 2 顯示了 P4 為數(shù)據(jù)平面編程提供的核心組件。

pYYBAGORo1yAaPv6AAD9jGhreWo497.png

圖 2:P4 組件

P4 有何益處?

適用于所有可編程網(wǎng)絡(luò)設(shè)備的開源語言。易于攜帶

由于P4程序可以由用戶編寫,因此有助于保留新IP的所有權(quán)?,F(xiàn)在不再需要與芯片供應(yīng)商或有時(shí)他們的客戶共享新功能規(guī)范,從而保留知識產(chǎn)權(quán)保護(hù)

P4 使新協(xié)議的部署變得更加簡單,消耗的時(shí)間更少

在不同應(yīng)用程序中使用的網(wǎng)絡(luò)設(shè)備需要不同的協(xié)議集。使用 P4,用戶可以根據(jù)其應(yīng)用程序僅實(shí)現(xiàn)所需的協(xié)議,并刪除其應(yīng)用程序不需要的協(xié)議。因此,可用資源可以得到有效利用

編程數(shù)據(jù)平面現(xiàn)在使用軟件,您可以使用P4編寫程序,在硬件上進(jìn)行編譯和加載,從而提供諸如軟件重用,數(shù)據(jù)隱藏,庫創(chuàng)建,硬件和軟件組件分離,輕松軟件升級和輕松調(diào)試等好處

使用 P4 的挑戰(zhàn)

自定義專有語言可以更好地控制可編程網(wǎng)絡(luò)硬件,因?yàn)樗鼉H為此而設(shè)計(jì)。P416 確實(shí)支持 extern 方法以滿足此類自定義硬件特定要求,但在 P4 中使用 extern 使其不那么便攜

哈希、ECMP、組播、廣播、鏡像、排隊(duì)、調(diào)度和校驗(yàn)和等功能很少非常依賴于硬件。使用通用 P4 解決所有目標(biāo)并完全訪問硬件很困難

P4 中控制平面和數(shù)據(jù)平面之間的通信方式有限。不支持生成新數(shù)據(jù)包

P4開辟了很多機(jī)會,并改變了網(wǎng)絡(luò)芯片的設(shè)計(jì)方式。P4架構(gòu)給出了設(shè)計(jì)完全可編程芯片的示例模型和想法。展望未來,所有傳統(tǒng)交換機(jī)將很快轉(zhuǎn)換為具有完全軟件定義數(shù)據(jù)和控制平面的可編程交換機(jī)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19091

    瀏覽量

    228766
  • 交換機(jī)
    +關(guān)注

    關(guān)注

    20

    文章

    2610

    瀏覽量

    99059
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1616

    瀏覽量

    49009
收藏 人收藏

    評論

    相關(guān)推薦

    P4在SDN中的重要性

    ,數(shù)據(jù)平面依賴于固定功能,僅能使用有限數(shù)量的協(xié)議來轉(zhuǎn)發(fā)數(shù)據(jù)包。P4(獨(dú)立于編程協(xié)議的數(shù)據(jù)包處理器)語言的出現(xiàn)使得對SDN數(shù)據(jù)平面進(jìn)行
    的頭像 發(fā)表于 11-06 10:10 ?67次閱讀
    <b class='flag-5'>P4</b>在SDN中的重要性

    華納云:如何理解軟件定義網(wǎng)絡(luò)?和傳統(tǒng)網(wǎng)絡(luò)相比有哪些優(yōu)勢?

    概述 軟件定義網(wǎng)絡(luò)(SDN)是一種將網(wǎng)絡(luò)資源抽象到虛擬化系統(tǒng)中的 IT 基礎(chǔ)架構(gòu)方法。這被稱為網(wǎng)絡(luò)虛擬化。SDN 將網(wǎng)絡(luò)轉(zhuǎn)發(fā)功能與
    的頭像 發(fā)表于 09-26 16:03 ?370次閱讀
    華納云:如何理解軟件定義<b class='flag-5'>網(wǎng)絡(luò)</b>?和傳統(tǒng)<b class='flag-5'>網(wǎng)絡(luò)</b>相比有哪些優(yōu)勢?

    混合動力系統(tǒng)構(gòu)型P0到P4介紹

    在混合動力技術(shù)的不斷演進(jìn)中,不同的動力系統(tǒng)構(gòu)型為汽車工業(yè)注入了新的活力。每一種構(gòu)型都具備獨(dú)特的技術(shù)特點(diǎn)和應(yīng)用場景,從P0到P4,本文將深入探討每種構(gòu)型的優(yōu)勢與挑戰(zhàn),為讀者提供全面而深入的了解。 1
    的頭像 發(fā)表于 09-16 12:09 ?494次閱讀
    混合動力系統(tǒng)構(gòu)型<b class='flag-5'>P</b>0到<b class='flag-5'>P4</b>介紹

    三星平澤P4/P5芯片工廠建設(shè)延期至2026年

    三星電子近日宣布,其位于韓國平澤的P4/P5芯片工廠建設(shè)計(jì)劃將發(fā)生重大調(diào)整,原定于加速推進(jìn)的項(xiàng)目現(xiàn)已決定推遲至2026年。這一變動旨在優(yōu)先保障位于美國得克薩斯州泰勒市的晶圓廠建設(shè),顯示出三星在全球產(chǎn)能布局上的戰(zhàn)略調(diào)整。
    的頭像 發(fā)表于 09-04 17:00 ?595次閱讀

    小區(qū)戶外P4全彩高清LED廣告屏性能特點(diǎn)和顯示效果解析

    戶外全彩LED顯示屏的發(fā)展歷史悠久,幾年前的小區(qū)戶外P10是戶外廣告?zhèn)髅降摹皩檭骸?,但隨著生產(chǎn)工藝的進(jìn)步,客戶對清晰度的要求越來越高,戶外P3、P4應(yīng)運(yùn)而生,接過P10/
    的頭像 發(fā)表于 09-04 15:25 ?238次閱讀

    鞍山163.18平米戶外P4條柵屏安裝完工

    近期,我公司在鞍山成功完成了一項(xiàng)特殊項(xiàng)目——163.18㎡戶外P4條柵屏的安裝,這一項(xiàng)目的圓滿完成,不僅展示了我們的技術(shù)實(shí)力,更體現(xiàn)了我們對品質(zhì)及細(xì)節(jié)的追求。鞍山P4戶外LED條柵屏安裝完工單條立式
    的頭像 發(fā)表于 09-04 15:14 ?171次閱讀
    鞍山163.18平米戶外<b class='flag-5'>P4</b>條柵屏安裝完工

    三星確認(rèn)平澤P4工廠1c nm DRAM內(nèi)存產(chǎn)線投資

    據(jù)韓國媒體最新報(bào)道,三星電子已正式確認(rèn)在平澤P4工廠投資建設(shè)先進(jìn)的1c nm DRAM內(nèi)存產(chǎn)線,并預(yù)計(jì)該產(chǎn)線將于明年6月正式投入運(yùn)營。這一舉措標(biāo)志著三星電子在半導(dǎo)體技術(shù)領(lǐng)域的又一次重要布局。
    的頭像 發(fā)表于 08-13 14:29 ?452次閱讀

    SDN全景:架構(gòu)創(chuàng)新與網(wǎng)絡(luò)功能的未來

    軟件定義網(wǎng)絡(luò)(SDN)代表了一種前沿的網(wǎng)絡(luò)體系架構(gòu),其核心在于實(shí)現(xiàn)數(shù)據(jù)平面與控制平面的分離,并確保網(wǎng)絡(luò)的軟件可
    的頭像 發(fā)表于 07-26 14:26 ?324次閱讀

    P4 Suite for FPGA面市 P4 Suite for FPGA主要功能解析

    ? ? ? ? ? 基本簡介 P4 Suite for FPGA是一款 綜合性工具套件, 可在數(shù)字網(wǎng)絡(luò)的不同領(lǐng)域提供廣泛功能,該套件能夠以高達(dá)200 Gbps甚至更高的數(shù)據(jù)傳輸速率支持FPGA。這一
    的頭像 發(fā)表于 07-25 14:55 ?842次閱讀

    三星P4工廠戰(zhàn)略調(diào)整:優(yōu)先建設(shè)存儲器產(chǎn)線

    在半導(dǎo)體產(chǎn)業(yè)風(fēng)云變幻的當(dāng)下,三星電子再次做出重大戰(zhàn)略調(diào)整,宣布其平澤P4工廠的建設(shè)重心將發(fā)生轉(zhuǎn)變。據(jù)韓媒最新報(bào)道,由于代工業(yè)務(wù)經(jīng)營狀況的持續(xù)惡化以及設(shè)計(jì)變更等復(fù)雜因素,三星電子決定暫停P4工廠第二期
    的頭像 發(fā)表于 07-17 10:47 ?487次閱讀

    ESP32-P4首秀|啟明云端帶你解讀樂鑫P4多媒體開發(fā)板

    此前,樂鑫發(fā)布了新一代MCU芯片ESP32-P4的消息,今天ESP32-P4開發(fā)板終于登場亮相了,快來一睹真容吧。一、ESP32-P4開發(fā)板概述樂鑫
    的頭像 發(fā)表于 02-19 12:30 ?3651次閱讀
    ESP32-<b class='flag-5'>P4</b>首秀|啟明云端帶你解讀樂鑫<b class='flag-5'>P4</b>多媒體開發(fā)板

    使用P4和Vivado工具簡化數(shù)據(jù)包處理設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《使用P4和Vivado工具簡化數(shù)據(jù)包處理設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 01-26 17:49 ?0次下載
    使用<b class='flag-5'>P4</b>和Vivado工具簡化數(shù)據(jù)包處理設(shè)計(jì)

    VXLAN網(wǎng)關(guān)有哪些種類?VXLAN網(wǎng)絡(luò)中報(bào)文是如何轉(zhuǎn)發(fā)的?

    VXLAN網(wǎng)關(guān)有哪些種類?VXLAN網(wǎng)絡(luò)中報(bào)文是如何轉(zhuǎn)發(fā)的? VXLAN(Virtual Extensible LAN)是一種網(wǎng)絡(luò)虛擬化技術(shù),它使用隧道協(xié)議將虛擬局域網(wǎng)(VLAN)擴(kuò)展到整個(gè)
    的頭像 發(fā)表于 12-07 09:32 ?651次閱讀

    使用可編程數(shù)據(jù)平面技術(shù)重新構(gòu)想車輛通信

    1.汽車網(wǎng)絡(luò)的靈活性需求 2.現(xiàn)狀 3.可編程數(shù)據(jù)平面(PDP)技術(shù) 4.面向服務(wù)的PDP通信 5.公開挑戰(zhàn) 6.前景
    的頭像 發(fā)表于 11-23 12:31 ?686次閱讀
    使用可<b class='flag-5'>編程</b>數(shù)據(jù)<b class='flag-5'>平面</b>技術(shù)重新構(gòu)想車輛通信

    端口轉(zhuǎn)發(fā)和端口映射的區(qū)別 端口映射和端口轉(zhuǎn)發(fā)的各自意義?

    端口轉(zhuǎn)發(fā)和端口映射的區(qū)別 端口映射和端口轉(zhuǎn)發(fā)的各自意義? 端口轉(zhuǎn)發(fā)和端口映射是兩種網(wǎng)絡(luò)技術(shù),它們都用于將網(wǎng)絡(luò)流量從一個(gè)端口
    的頭像 發(fā)表于 11-22 17:41 ?4910次閱讀