LX2160A DPDK Example Use Case - Software Packet Distributor v1.0.5

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

LX2160A DPDK Example Use Case - Software Packet Distributor v1.0.5

652 次查看
MikeChangENGR
Contributor I

Subject: Release: Software Packet Distributor (SPD) v1.0.5 – software-only flow-aware packet distributor (LX2160A-RDB)

 

Hi all,

 

Announcing SPD v1.0.5 — a DPDK-based, software-only packet distributor. Its Greedy Reshaper performs bounded, in-place RETA edits each sampling interval to move hot buckets from overloaded to cold workers, reducing imbalance under elephant-flow skew.

 

Highlights
- Portable: no NIC-specific features; all reshaping in user space.
- Predictable overhead: small edit budget per tick.
- Telemetry: per-second CSV at /var/log/software-packet-distributor/worker_stats_v105.csv.

 

Validated on
- NXP LX2160A-RDB (16×A72 @2.2GHz), LSDK 21.08, Linux 5.10.35, DPDK 19.11.7 (PCAP/NULL vdev).
- Hugepages: 1GiB (preferred) with 2MiB as fallback.

 

GitHub: mikechang-engr/software-packet-distributor
Docs: README has quick start, start script knobs (TARGET_MPPS/GBPS, ELEPHANTS, GREEDY), and core layout.

 

Overview
The **Software Packet Distributor (SPD)** is a DPDK-based packet distribution framework for embedded multicore networking systems. It addresses the limitations of static RSS by introducing a **Greedy Reshaper** that adaptively reassigns flow buckets to worker cores based on runtime telemetry—improving fairness, utilization, and stability without relying on NIC-specific features.

Feedback & testing
- Looking for testers on additional SoCs/NICs and feedback on congestion-aware bucket ranking.
- If you can share a 60–120 s worker_stats_v105.csv, I’ll return comparison plots.

 

Thanks,
Mike Chang
 
``
0 项奖励
回复
0 回复数
%3CLINGO-SUB%20id%3D%22lingo-sub-2304180%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ELX2160A%20DPDK%20%E7%A4%BA%E4%BE%8B%E7%94%A8%E4%BE%8B-%E8%BD%AF%E4%BB%B6%E5%8C%85%E4%BB%A3%E7%90%86%E5%95%86%20v1.0.5%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2304180%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSPAN%3E%3C!--%20%20ScriptorStartFragment%20%20--%3E%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E4%B8%BB%E9%A2%98%EF%BC%9A%E7%89%88%E6%9C%AC%EF%BC%9A%E8%BD%AF%E4%BB%B6%E5%8C%85%E4%BB%A3%E7%90%86%E5%95%86%20(SPD)%20v1.0.5%20%E2%80%94%20%E7%BA%AF%E8%BD%AF%E4%BB%B6%E6%B5%81%E9%87%8F%E6%84%9F%E7%9F%A5%E5%8C%85%E4%BB%A3%E7%90%86%E5%95%86%20(LX2160A-RDB)%3C%2FSPAN%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E5%A4%A7%E5%AE%B6%E5%A5%BD%EF%BC%8C%3C%2FSPAN%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E5%AE%A3%E5%B8%83%E6%8E%A8%E5%87%BA%20SPD%20v1.0.5%20%E2%80%94%20%E4%B8%80%E6%AC%BE%E5%9F%BA%E4%BA%8E%20DPDK%20%E7%9A%84%E7%BA%AF%E8%BD%AF%E4%BB%B6%E6%95%B0%E6%8D%AE%E5%8C%85%E5%88%86%E5%8F%91%E5%99%A8%E3%80%82%E5%AE%83%E7%9A%84%20Greedy%20Reshaper%20%E5%AF%B9%3C%2FSPAN%3E%3CSPAN%3E%E6%AF%8F%E4%B8%AA%E9%87%87%E6%A0%B7%E9%97%B4%E9%9A%94%E6%89%A7%E8%A1%8C%E6%9C%89%E7%95%8C%E7%9A%84%E3%80%81%E5%B0%B1%E5%9C%B0%E7%9A%84%20RETA%20%E7%BC%96%E8%BE%91%EF%BC%8C%E5%B0%86%E7%83%AD%E6%A1%B6%E4%BB%8E%E8%B6%85%E8%B4%9F%E8%8D%B7%E7%9A%84%E5%B7%A5%E4%BA%BA%E8%BD%AC%E7%A7%BB%E5%88%B0%E5%86%B7%3C%2FSPAN%3E%E7%9A%84%3CSPAN%3E%E5%B7%A5%E4%BA%BA%3C%2FSPAN%3E%EF%BC%8C%E4%BB%8E%E8%80%8C%E5%87%8F%E5%B0%91%E4%BA%86%E5%A4%A7%E8%B1%A1%E6%B5%81%E9%87%8F%E5%81%8F%E5%B7%AE%E4%B8%8B%E7%9A%84%E4%B8%8D%E5%B9%B3%E8%A1%A1%E3%80%82%3C%2FP%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E4%BA%AE%E7%82%B9%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20%E4%BE%BF%E6%90%BA%E5%BC%8F%EF%BC%9A%E6%97%A0%E7%89%B9%E5%AE%9A%20NIC%20%E5%8A%9F%E8%83%BD%EF%BC%9B%E6%89%80%E6%9C%89%E9%87%8D%E5%A1%91%E9%83%BD%E5%9C%A8%E7%94%A8%E6%88%B7%E7%A9%BA%E9%97%B4%E8%BF%9B%E8%A1%8C%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20%E5%8F%AF%E9%A2%84%E6%B5%8B%E7%9A%84%E7%AE%A1%E7%90%86%E8%B4%B9%E7%94%A8%EF%BC%9A%E6%AF%8F%E6%AC%A1%E5%8B%BE%E9%80%89%E7%9A%84%E7%BC%96%E8%BE%91%E9%A2%84%E7%AE%97%E8%BE%83%E5%B0%91%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%E9%81%A5%E6%B5%8B%EF%BC%9A%E6%AF%8F%E7%A7%92%20CSV%20%E4%BD%8D%E4%BA%8E%20%2Fvar%2Flog%2Fsoftware-packet-%E4%BB%A3%E7%90%86%E5%95%86%2Fworker_stats_v105.csv%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E9%AA%8C%E8%AF%81%E6%97%A5%E6%9C%9F%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20NXP%20LX2160A-RDB%EF%BC%8816%C3%97A72%20%402.2GHz%EF%BC%89%E3%80%81LSDK%2021.08%E3%80%81Linux%205.10.35%E3%80%81DPDK%2019.11.7%EF%BC%88PCAP%2FNULL%20vdev%EF%BC%89%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20Hugepages%EF%BC%9A1GiB%20%EF%BC%88%E9%A6%96%E9%80%89%EF%BC%89%EF%BC%8C2MiB%20%E4%B8%BA%E5%A4%87%E7%94%A8%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3EGitHub%EF%BC%9Amikechang-engr%2F%E8%BD%AF%E4%BB%B6%E5%8C%85%E4%BB%A3%E7%90%86%E5%95%86%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E6%96%87%E6%A1%A3%EF%BC%9AREADME%20%E5%8C%85%E5%90%AB%E5%BF%AB%E9%80%9F%E5%90%AF%E5%8A%A8%E3%80%81%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC%E6%97%8B%E9%92%AE%EF%BC%88TARGET_MPPS%2FGBPS%E3%80%81ELEPHANTS%E3%80%81GREEDY%EF%BC%89%E5%92%8C%E6%A0%B8%E5%BF%83%E5%B8%83%E5%B1%80%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%E6%A6%82%3CBR%20%2F%3E%E8%BF%B0**%E8%BD%AF%E4%BB%B6%E5%8C%85%E5%88%86%E5%8F%91%E5%99%A8%20(SPD)%20**%E6%98%AF%E5%9F%BA%E4%BA%8E%20DPDK%20%E7%9A%84%E6%95%B0%E6%8D%AE%E5%8C%85%E5%88%86%E5%8F%91%E6%A1%86%E6%9E%B6%EF%BC%8C%E9%80%82%E7%94%A8%E4%BA%8E%E5%B5%8C%E5%85%A5%E5%BC%8F%E5%A4%9A%E6%A0%B8%E7%BD%91%E7%BB%9C%E7%B3%BB%E7%BB%9F%E3%80%82%E5%AE%83%E9%80%9A%E8%BF%87%E5%BC%95%E5%85%A5**Greedy%20Reshaper**%E8%A7%A3%E5%86%B3%E4%BA%86%E9%9D%99%E6%80%81%20RSS%20%E7%9A%84%E5%B1%80%E9%99%90%E6%80%A7%EF%BC%8C%E5%8F%AF%E6%A0%B9%E6%8D%AE%E8%BF%90%E8%A1%8C%E6%97%B6%E9%81%A5%E6%B5%8B%E7%BB%93%E6%9E%9C%E8%87%AA%E9%80%82%E5%BA%94%E5%9C%B0%E5%B0%86%E6%B5%81%E9%87%8F%E6%A1%B6%E9%87%8D%E6%96%B0%E5%88%86%E9%85%8D%E7%BB%99%E5%B7%A5%E4%BD%9C%E6%A0%B8%E5%BF%83%EF%BC%8C%E4%BB%8E%E8%80%8C%E6%8F%90%E9%AB%98%E5%85%AC%E5%B9%B3%E6%80%A7%E3%80%81%E5%88%A9%E7%94%A8%E7%8E%87%E5%92%8C%E7%A8%B3%E5%AE%9A%E6%80%A7%EF%BC%8C%E8%80%8C%E6%97%A0%E9%9C%80%E4%BE%9D%E8%B5%96%E7%BD%91%E5%8D%A1%E7%9A%84%E7%89%B9%E5%AE%9A%E5%8A%9F%E8%83%BD%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E5%8F%8D%E9%A6%88%26amp%3B%20%E6%B5%8B%E8%AF%95%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20%E5%AF%BB%E6%89%BE%E6%9B%B4%E5%A4%9A%20SoC%2FNIC%20%E7%9A%84%E6%B5%8B%E8%AF%95%E4%BA%BA%E5%91%98%EF%BC%8C%E4%BB%A5%E5%8F%8A%E5%AF%B9%E6%8B%A5%E5%A1%9E%E6%84%9F%E7%9F%A5%E6%A1%B6%E6%8E%92%E5%90%8D%E7%9A%84%E5%8F%8D%E9%A6%88%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E-%20%E5%A6%82%E6%9E%9C%E6%82%A8%E8%83%BD%E5%85%B1%E4%BA%AB%2060-120%20s%20worker_stats_v105.csv%E3%80%81%E6%88%91%E5%B0%86%E8%BF%94%E5%9B%9E%E6%AF%94%E8%BE%83%E5%9B%BE%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E8%B0%A2%E8%B0%A2%EF%BC%81%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%E8%BF%88%E5%85%8B-%E5%BC%A0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%3CA%20href%3D%22mailto%3Amikechang.engr%40gmail.com%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3Emikechang.engr%40gmail.com%3C%2FA%3E%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3E%60%60%3C!--%20%20ScriptorEndFragment%20%20--%3E%3C%2FSPAN%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E