udp通信,1秒钟最快能发多少个包?不连包的情况下

2019-12-11 18:19发布

我现在使用的平台是ZYNQ了,不是STM32了。但是使用的也是ucos,网络协议栈用的是uc tcpip。STM32的时候是用W5500来通信的。
ZYNQ上面用的是千兆网。
但是实际操作的时候发现好像速度还不如W5500啊。

说下我的情况,我是用UDP给上位机软件发数据包,一个数据包最大1000字节,一帧数据可能1-20KB。不停的连续发送。
不加延时的时候,一次发送17个1000字节的数据包,后面的几个会丢掉,可能是我缓冲区的设置问题,因为是非阻塞的。
然后我在网络助手里面看到发上来的数据,固定的能收到9个包,合计9000字节。

然后这9个包用了60ms的时间,这个时间也太长了吧。我每个发送加5ms的延时,也是差不多这个时间。因为是非阻塞的,底层是库也看不到。

所以我的疑惑是,是不是UDP包不能发得很频繁,好比1ms发一个UDP包。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
22条回答
1a2b3c
1楼-- · 2019-12-12 14:46
为了排除你的程序写的有问题,或者是其他任务干扰了你的结果,简单的做个死循环不停的发同一个包不就得了,
yj_yulin
2楼-- · 2019-12-12 14:48
跟udp没有任何关系, 只跟物理带宽有关,其它的都是软件问题, 这个就跟串口一样的,只要你的物理速率一定,你就能以这个速率一直发,至于发不发,中间有空闲等,都是软件问题(驱动/应用)
honami520
3楼-- · 2019-12-12 20:24
yj_yulin 发表于 2019-5-15 10:27
跟udp没有任何关系, 只跟物理带宽有关,其它的都是软件问题, 这个就跟串口一样的,只要你的物理速率一定,你就 ...


今天调试发现,不一定是我发的不对。好像是网络调试助手有问题。我用另外一个网络助手软件,100字节发送一次,连续发送100次,中间没有加延时。经过测试,网络助手只能收到前80+次。后面的就收不到了。测试了多次也是这样。
wowangru
4楼-- · 2019-12-13 00:58
FPGA 和电脑     最快1500个包
honami520
5楼-- · 2019-12-13 06:39
 精彩回答 2  元偷偷看……
albert_w
6楼-- · 2019-12-13 11:15
插根网线, wireshark走一波. 抓包就让专业的来

一周热门 更多>