問題描述
我們可以在 OpenWrt linux 操作系統上運行 DPDK 應用程序嗎? (Can we run DPDK application on OpenWrt linux os?)
我們開發了一個 DPDK 應用程序,它在 Centos 操作系統上運行良好。
我們現在需要在具有簡單 OpenWrt 的路由器上運行它。 p>
從 DPDK 開發人員指南中,他們提到它可以在任何 LINUX 上運行,但他們已經在
- FreeBSD 10
- Fedora 20 版上測試和編譯
- Ubuntu 14.04 LTS
- Wind River Linux 6
- Red Hat Enterprise Linux 6.5
- SUSE Enterprise Linux 11 SP3
OpenWrt 機器是否也支持 DPDK 應用程序?您的信息將對我有很大幫助。
感謝 Abhinay
參考解法
方法 1:
there are some others trying this ‑ see https://lists.openwrt.org/pipermail/openwrt‑devel/2015‑January/030341.html
方法 2:
DPDK mostly depends on a few things:
- Hugepage (Linux Kernel support) to get around TLB bottleneck
- UIO (Linux Kernel support) for user space poll mode driver to get good I/O performance
- Fine core affinity control (pthread and Linux Kernel sysfs /sys/devices/system/cpu/cpuX, isolcpus)
Since I don't have any OpenWRT system around, I would suggest that you try compile it on OpenWRT first, making sure it has all the things needed by DPDK, e.g. UIO support, supported NIC, etc. Once you make sure it compiles, first test with testpmd to see if it works. If it runs, great. Then you can verify testpmd with "set fwd=txonly" and connect the port to another machine to see it you can receive any traffic.
方法 3:
After a lot of request DPDK now officially supports openwrt https://doc.dpdk.org/guides/howto/openwrt.html
(by Abhinay、codecats、Wei Shen、Vipin Varghese)