c - lwIP echo 服务器发送数据时出错

标签 c tcp xilinx lwip echo-server

我正在 echo 服务器 lwIP 下使用以太网通信。我想通过以太网捕获从 DMA 到主机的样本。系统通过UART采集样本。

我无法让 lwIP 在不等待 ACK 的情况下发送超过 2 个高于 1500 字节的包。我的应用程序连续向客户端发送数据包。客户端收到数据包时没有任何延迟,但在 200 毫秒后发送 ACK(请参阅随附的wireshark捕获图像)。 LWIP 在发送下一个数据包之前总是等待 ACK 数据包。我的 lwIP 只能发送不超过 2 个 TCP 段,然后等待 ACK。网络延迟会导致性能下降。

是否有任何配置可以使 LWIP 发送数据包而不等待 ACK 数据包?您有什么建议吗?

enter image description here

最佳答案

如果您不想等待,使用 UDP 代替 TCP 怎么样? TCP 是一种流协议(protocol),将确保所有内容均按顺序到达(只要没有错误)。 echo 通常让我想到一种情况,您不关心排序,只关心特定数据包是否成功以及花费了多长时间。

关于c - lwIP echo 服务器发送数据时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47732581/

相关文章:

java - 从 Android 应用程序通过 TCP 发送数据

vhdl - 如何从 Spartan 6 写入 Nexys 3 FPGA 板上的 Micron 外部蜂窝 RAM?

vhdl - VHDL中奇怪的XNOR行为

c - C中使用不同维度数组的指针数组等价

c - 如何在c中使用mmap()函数

C 编程 - 初始化结构二维数组

windows - 套接字编程更新 : recv returning -1, 错误 = 10053

c - nmake makefile 没有使用推理规则

networking - 使用网络连接进行应用程序间通信是不好的做法吗?

methods - 在vhdl中定义记录方法