This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM2431:是否有任何设置可以提高 LWIP 中的消息处理速度?

Guru**** 2392095 points
Other Parts Discussed in Thread: SYSCONFIG

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1516119/am2431-are-there-any-settings-that-can-improve-the-message-processing-speed-in-lwip

器件型号:AM2431
主题:SysConfig 中讨论的其他器件

工具/软件:

我正在使用 SDK8.3.0 (目前我们很难升级到最新的 SDK 版本)。

我正在测试在网络负载下的操作是否正确。 我发现了 ACK 处理中的延迟。

我的加载环境为每10毫秒:μ s、将发送长度为10到1000的10条 UDP 数据。

运行一段时间后、会发现 ACK 的处理已延迟。

发件人(使用 LWIP):192.168.1.16

接收器:192.168.1.94

Wireshark 捕获的数据包如下、从1到6的 ACK 均正常处理。

LWIP 中 ACK 消息的串行输出如下。

对于第7个数据包、接收器已发送 ACK、但发送器似乎尚未收到此 ACK 或尚未对其进行处理。

我怀疑处理 ACK 的延迟是由于处理 UDP 加载数据包造成的。

你能给我一些关于如何提高消息处理速度的建议吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我更改了 lwipopts.h 中的一些设置

    #define MEMP_NUM_TCP_SEG     128->400

    define PBUF_POOL_SIZE         30->50

    #define TCP_snd_BUF        (8 * TCP_MSS)-> (40 * TCP_MSS)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 

    感谢您的查询。

    我会检查一下、然后返回给您。

    此致

    Ashwani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该问题看起来与堆栈相关。 请与 lwip 论坛确认此问题。

    • 屏幕截图显示了编写 UDP 流量时的 TCP 数据包

    一些建议可以尝试

    请检查

    • LWIP 统计信息
    • MACPORT 统计信息
    • hostPort 统计信息

    并确认行为也反映在统计中。

    此致

    Ashwani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的建议。 我将在 Lwip 论坛上查看该问题。

    我想再问一点。

    我想调整 LWIP 中任务的优先级。

    您能否就如何调整内部 LWIP 任务的优先级及其与应用程序侧任务优先级的关系提供一些建议?

    例如、app 任务(low)< TCPIP 线程优先级< Lwip2enet_rxPacketTask (high)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您可以查找以下代码并根据要求进行更新

    添加到工程 : lwip_opts.h:

    /* TCP thread priority level*/
    #define TCPIP_THREAD_PRIO                7

    添加到工程 : /source/networking/enet/core/sysconfig/networking/.meta/enet_cpsw/templates:

    #define OS_TASKPRIHIGH 8U
    #define LWIPIF_RX_PACKET_TASK_PRI (OS_TASKPRIHIGH)
    #define LWIPIF_TX_PACKET_TASK_PRI (OS_TASKPRIHIGH)
    #define LWIP_POLL_TASK_PRI (OS_TASKPRIHIGH - 1U)

    此致

    Ashwani