我目前正在使用 Nodejs 通过 Wiznet820io 向 Arduino 发送 UDP 数据包。我已经成功地发送了小字节数组(长度为 500 字节),但是当我尝试发送大于 1470 字节的字节数组时,我在 Arduino 上什么也得不到。我做了一些研究,并确定由于 MTU 大小限制,它默默地失败了。
因此,我尝试将数据数组拆分为多个不超过 1470 字节的数组,并通过基本的 for 循环发送它们。然而,当我这样做时,我注意到只有第一个数据包会被发送出去,除非我在发送下一个数据包之前等待大约 10 毫秒。我相信这是由于发送函数试图在先前的数据发送之前发送数据,但是,我的理解可能是错误的。延迟会显着降低服务器的速度,这在我尝试流式传输视频时是一个问题。
是否有使用 dgram.send 通过 UDP 流解析和发送数据包的正确方法?我对为什么只检索到第一个数据包的理解是否正确?我是套接字新手,所以任何帮助都会很棒:D
干杯
史蒂夫