如何解决 MPSoC 万兆以太网应用中 UDP 接收丢包问题

在ZCU102 PL 10G Ethernet with MCDMA设计中遇到UDP接收高丢包率问题,通过iperf3测试发现丢包超过10%,CPU0软中断占用高。采用RFS接收流导向技术,将数据包处理引导至对应CPU,降低丢包率并实现负载均衡。调整rps参数后,丢包率显著下降,但整体CPU负载增加,表明RFS存在额外开销。
摘要由CSDN通过智能技术生成

问题描述:

在测试 ZCU102 PL 10G Ethernet with MCDMA 设计的性能时,遇到 UDP 接收丢包率很高的情况,测试使用的工具是 iperf3。

测试过程:

Board side:在 core1~3 上各开一个 iperf3 服务端用于收包,命令如下:

Server side:使用与 zcu102 用光纤相连的服务器发送 UDP 帧,命令如下:

双方的网卡都工作在 MTU1500 模式下,故数据段长度设为 1472B,总带宽暂设为 2400M。

测试结果如上图所示,丢包率超过了百分之十,故实际传输速度也达不到设定的带宽,使用 mpstat 命令观察 CPU 使用状况,发现接收工程中 CPU0 的软中断占用达到93.3%。

解决方案:

使用 RFS 接收流导向,RFS 是 Linux 网络协议栈提供的一项辅助性功能࿰

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值