为什么Imx6q(嵌入式Linux设备)以太网通信太慢?

为什么Imx6q(嵌入式Linux设备)以太网通信太慢?

我尝试了几种方法来测试Imx6卡的以太网通信。

1) 当我从 IMX6 ping 计算机时,ping 无法到达 IMX6。但是当我从计算机 ping imx6 时,可以到达。测试结果如下。 测试 1.1

测试 1.2

2)用Iperf3测试,电脑作为客户端时,可以接收imx6的数据,但是imx6作为客户端时,imx6无法接收数据,带宽太低,测试结果如下。

测试 2.1 测试 2.2

造成这些问题的原因是什么?

你有什么建议?

问候

艾敏

测试环境

IMX6四核

U-Boot 版本:U-Boot 2015.04-TQMa6-20151002(2016 年 9 月 16 日 - 14:58:59)

内核版本:3.14.28-g5e30b53-dirty

计算机:华硕 R510V(千兆以太网)

答案1

这是硬件限制和软件支持不佳的综合结果。i.mx6 无法达到线速。NXP 声称它只有 470Mbps(第 98 页http://cache.freescale.com/files/32bit/doc/errata/IMX6DQCE.pdf),但他们测量的结果约为 400 Mbps。

但是,如果您更新到上游内核,则应该能够达到大约 600Mbps。

答案2

回应你的2点:

  1. ping 时间正常(3ms 或更短)。当您从 imx6 ping PC 时,数据包丢失可能是由于 PC 上的防火墙软件造成的。

  2. 我在 imx6 板上也遇到过同样的问题。您可以使用(廉价的)托管交换机并打开 802.3x 流量控制来解决这个问题。当流量控制打开时,我在 imx6 上获得了略低于 500mbps 的 iperf3 接收速度。

相关内容