SDN可以劃分為三層,中間是控制器,用于接收控制指令來(lái)操作下面設(shè)備的程序,上層是應(yīng)用App,負(fù)責(zé)調(diào)用控制器提供的接口和數(shù)據(jù)來(lái)實(shí)現(xiàn)各種功能,間接方式來(lái)控制網(wǎng)絡(luò),底層是數(shù)據(jù)交換層。借助SDN,我們就可以直接在控制層面操作網(wǎng)絡(luò)設(shè)備,設(shè)計(jì)隨便任何各種轉(zhuǎn)發(fā)和路由的規(guī)則,設(shè)計(jì)新的網(wǎng)絡(luò)協(xié)議,提供各種各樣的服務(wù),實(shí)現(xiàn)很多的安全方案等等。
P4(Programming Protocol-Independent Packet Processors),意思是“與協(xié)議無(wú)關(guān)的數(shù)據(jù)包處理編程語(yǔ)言”,主要用在SDN網(wǎng)絡(luò)的數(shù)據(jù)層開(kāi)發(fā),采用聲明式的編程方式來(lái)下達(dá)指令給數(shù)據(jù)轉(zhuǎn)發(fā)平面的設(shè)備(如交換機(jī)、網(wǎng)卡、防火墻、過(guò)濾器等)如何進(jìn)行數(shù)據(jù)包的處理。P4的誕生無(wú)論是在軟件設(shè)計(jì)(編程、調(diào)試、代碼覆蓋、模塊檢查等)方面,還是在網(wǎng)絡(luò)系統(tǒng)的設(shè)計(jì)上都變得更加清晰和簡(jiǎn)化。
近日Xilinx在斯坦福大學(xué)舉辦的“P4語(yǔ)言開(kāi)發(fā)日”活動(dòng)上發(fā)布了最新版本的SDNet 2017.1開(kāi)發(fā)工具,兼容最新的P4開(kāi)發(fā)語(yǔ)言規(guī)范,即通過(guò)編譯操作SDNet可以將前端的P4聲明式程序轉(zhuǎn)換為數(shù)據(jù)層的算法IP核,能夠在FPGA器件中運(yùn)行,主要用于高速(1Gbps~100Gbps)數(shù)據(jù)包的處理操作。