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.

[参考译文] CCS/RM48L952:RM48x-HDK 上的 EMACCore0RxIsr 挂起问题。

Guru**** 2468460 points
Other Parts Discussed in Thread: TMDSRM48HDK

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/649001/ccs-rm48l952-emaccore0rxisr-hang-issue-on-rm48x-hdk

器件型号:RM48L952
主题中讨论的其他器件:TMDSRM48HDK

工具/软件:Code Composer Studio

您好 TI 团队

我将在 RM48x-HDK 上使用 lwIP_Demo_v03测试以太网功能。
lwIP 演示工作正常。

当我使用 UDP 测试工具(NetMi.exe)攻击以太网端口时、EMACCore0RxIsr 不会 wotking。
如何解决 EMACCore0RxIsr 挂起问题?
谢谢一百万。

->Hercules RM48x 开发套件(TMDSRM48HDK)
www.ti.com/.../tmdsrm48hdk

--> lwIP_Demo_v03
processors.wiki.ti.com/.../HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration

--> UDP 测试工具(NetMi.exe)
www.dropbox.com/.../NetMi.zip

--> lwip_main.c
/*
**内核0接收中断的中断处理程序
*
volatile int countEMACCore0RxIsr = 0;
#pragma INTERRUPT (EMACCore0RxIsr、IRQ)
空 EMACCore0RxIsr (空)

countEMACCore0RxIsr++;
lwIPRxIntHandler (0);

-->控制台日志
Hercules 微控制器
应用工程师
大端字节序器件
初始化以太网(DHCP)
调试-获取 PHY ID ...成功
调试-使 PHY 处于活动状态...成功
调试-获取 PHY 链路状态...成功
调试-设置链接...成功
已完成
正在启动 Web Server..Done

Hercules 微控制器
应用工程师
大端字节序器件
设备 IP 地址:192.168.123.142
Web 服务器可访问@ http:\\192.168.123.142


Hercules 微控制器
应用工程师
大端字节序器件
设备 IP 地址:192.168.123.142
Web 服务器可访问@ http:\\192.168.123.142

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

    请注意、Lwip 代码是我们已针对演示修改为 Hercules 的开源代码。 我们在技术上不支持此代码库、因为它是第三方代码。 在上述情况下、我们可以尝试给出一些指针。 您提到您正在使用 UDP 攻击端口? 攻击的性质是什么?预期结果是什么? 您使用的导致挂起的数据速率是多少?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好、Chuck

    感谢您的回答。

    您提到您正在使用 UDP 攻击端口?
    [Will ]:用户数据报协议泛洪。
    en.wikipedia.org/.../UDP_flood_attack

    攻击的性质是什么?预期结果是什么?
    [将]:我需要防止分布式 DoS 攻击。

    分布式 DoS 攻击
    en.wikipedia.org/.../Denial-of-service_attack

    您使用的导致挂起的数据速率是多少?
    [将]:85MBps


    请给出一些指示。

    谢谢一百万。

    来自 Will Hsu

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

    我会有一位同事看一下,因为我认为他过去也处理过一些类似的问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你(们)好、Chuck
    是否有关于此问题的任何更新?
    谢谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 James、

    您是否定义了自己的 UDP 函数来接收来自 UDP 工具的任何消息?

    例如:

    UDPC = UDP_NEW ()
    UDP_Bind (UDPC、IP_addr、port_number);
    UDP_recv (UDPC、&Your UDP_Rx_function、..)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、QJ Wang
    我没有修改任何代码。
    您的意思是、我可以使用您的示例避免 DOS 攻击。
    如果 EMACCore0RxIsr 挂起、如何重新启动它?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、QJ

    我已经使用 TCP 数据包和 packETH 工具测试了以太网端口。

    如果 TCP 数据包延迟在50us 之间、则 EMACCore0RxIsr 工作正常。

    如果 TCP 数据包延迟在40us 之间、EMACCore0RxIsr 将停止工作。

    请给我一些帮助。 谢谢。

    TCP 数据包详细信息:ping_packet_data56.pcape2e.ti.com/.../6518.ping_5F00_packet_5F00_data56.zip

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

    您好、

    您能否切换一个 GIO 引脚来测量 RX ISR 所需的时间?

    空 EMACCore0RxIsr (空)

    countEMACCore0RxIsr++;

    gioToggleBit (gioPORTA、1);

    lwIPRxIntHandler (0);

    gioToggleBit (gioPORTA、1);

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

    您好、QJ

    如附件所示

    正常数据包  

     

     

    数据包

     

     

    非常感谢。

    谢谢、此致、
    谢菲利克斯

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

    用于风暴测试的数据包是否与正常测试相同? ISR 需要多长时间? 它是否接近40美元?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、QJ:

    用于风暴测试的数据包是否与正常测试相同?

    答案:是的

    ISR 需要多长时间?

    答案:将近40美元。

    谢谢、此致、
    谢菲利克斯

     

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

    LWIP 基于中断、不使用任何计时器。 EMAC 生成中断、LWIP 处理数据包并发送到应用程序。 当即将到来的数据包的间隔时间小于 CPU 处理时间时、发生 RX FIFO 过错误。 代码将挂起。