DPDK
頁面Template:Multiple issues/styles.css沒有內容。頁面Module:Message box/mbox.css沒有內容。頁面Template:Ambox/style.css沒有內容。
本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。
頁面Module:Message box/mbox.css沒有內容。頁面Template:Ambox/style.css沒有內容。
|
package.lua第80行Lua錯誤:module 'Module:CGroup/core' not found
頁面Module:Infobox/styles.css沒有內容。
| File:Intel DPDK GTR Back.jpg | |
| 當前版本 | 17.05(2017年5月10日) |
|---|---|
| 編程語言 | C |
| 作業系統 | FreeBSD, Linux |
| 類型 | 數據包 處理 |
| 許可協議 | BSD |
| 網站 | dpdk |
| 腳本錯誤:沒有「Template wrapper」這個模塊。 | |
DPDK(Template:Langx),是一組快速處理數據包的開發平台及接口。[1][2],運行於Intel X86與arm平台上(最新版本也開始支持PowerPC[3])。該平台採用BSD許可證發佈。
概述[編輯]
在X86結構中,處理數據包的傳統方式是CPU中斷方式,即網卡驅動接收到數據包後通過中斷通知CPU處理,然後由CPU拷貝數據並交給協議棧。在數據量大時,這種方式會產生大量CPU中斷,導致CPU無法運行其他程序。
而DPDK則採用輪詢方式實現數據包處理過程:DPDK重載了網卡驅動,該驅動在收到數據包後不中斷通知CPU,而是將數據包通過零拷貝技術存入內存,這時應用層程序就可以通過DPDK提供的接口,直接從內存讀取數據包。
這種處理方式節省了CPU中斷時間、內存拷貝時間,並向應用層提供了簡單易行且高效的數據包處理方式,使得網絡應用的開發更加方便。但同時,由於需要重載網卡驅動,因此該開發包目前只能用在部分採用Intel網絡處理晶片的網卡中。
參考資料[編輯]
- ↑ Simon Stanley,All Change for Packet Processing (頁面存檔備份,存於互聯網檔案館), Heavy Reading, 2013
- ↑ Shamus McGillicudy, Intel DPDK, switch and server ref designs push SDN ecosystem forward (頁面存檔備份,存於互聯網檔案館), SearchSDN, April 2013
- ↑ package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found