工具与软件:
测试环境:
用户自定义开发板
Linux 内核6.6
TISDK 10.1
服务器通过 Someip SD 发送报价消息(UDP 广播数据),网卡可以接收它,因为我可以通过 tcpdump 指令捕获它,但端口不受监控,所以数据不会传输到上层,导致通信失败,我做了下面的测试来验证,请参考下图

内核或 TCP/IP 堆栈如何解决此问题?
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.
工具与软件:
测试环境:
用户自定义开发板
Linux 内核6.6
TISDK 10.1
服务器通过 Someip SD 发送报价消息(UDP 广播数据),网卡可以接收它,因为我可以通过 tcpdump 指令捕获它,但端口不受监控,所以数据不会传输到上层,导致通信失败,我做了下面的测试来验证,请参考下图

内核或 TCP/IP 堆栈如何解决此问题?
您好!
您能介绍一下自己的测试设置吗? (即、您的定制电路板是直接连接到链路伙伴还是通过开关连接? 连接方是 Linux PC、另一个运行 Linux 的 EVM/板还是其他一些器件?)
[quote userid="628453" url="~/support/processors-group/processors/f/processors-forum/1462592/am62a3-the-application-layer-fails-to-receive-udp-broadcast-data-because-the-udp-port-is-not-monitored 服务器通过 Someip SD 发送报价消息(UDP 广播数据),网卡可以接收该消息,因为我可以通过 tcpdump 指令捕获它,但该端口没有被监控,因此数据不会传输到上层,导致通信失败您能解释一下如何确定数据不传输到上层吗? 您看到的通信错误消息是什么? 在您的屏幕截图中没有看到此信息。
-道林
e2e.ti.com/.../udp_5F00_server.ce2e.ti.com/.../udpclient.c
上面是我为验证编写的测试程序,客户端代码 udpclient.c 在 recvfrom 中被阻止,但通过 tcpdum -i eth0 UDP 端口30499,您可以看到板收到 UDP 数据广播包,表明数据被发送到网卡,但不传输到应用层。 然后、我的电路板终端执行命令 ip addr add 239.127.3.1/24 dev eth0、服务器和客户端可以进行通信、当然、我也可以修改上述演示代码、因此即使没有执行上述命令、也可以进行通信。 我想知道在哪里可以实现电路板网络配置、比如执行命令 ip addr add 239.127.3.1/24 dev eth0
您好!
与较低级别的以太网(CPSW)驱动程序的特定问题相比、您的查询似乎更特定于应用。 请注意、我们不针对特定于应用的查询提供具体支持、而专注于为特定于 TI 的驱动程序提供支持。 特定于 应用程序的问题、如创建应用程序(在您的情况下为 udpclient.c)以打开端口以接收 UDP 数据包等、并非 TI 特有的问题。
我可以建议的一件事是检查在/proc/net/snmp 中、预期的 UDP 数据包会在这些统计信息中递增。
-道林