关于UDP在局域网内传输语音数据的问题

frequent 2014-08-14 06:00:12
我用UDP传输语音数据,大概每秒传输50次,每次传输3500字节。
当我在A端传输的时候,我在标题栏上显示总共传输的字节数及传输的次数。如果我只打开A端(发送端)软件(因为是UDP,所以未连接的时候也可以传输数据),标题栏上可以看到数据传输是很正常的,标题栏上显示的传输次数估计差不多是每秒50次。。
但当我把B端(接收端)软件打开后,就会发现A端(发送端)标题栏上比较卡了,所以我估计可能是B端(接收端)因为频率太快接收不过来,所以导致A端(发送端)也比较卡了。请问有什么办法解决吗?

另外,我在接收端接收数据后,暂时还没做任何处理,只是把他接收到一个全局的数组里面,然后就没再做别的处理了。
...全文
317 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿先森 2014-08-27
  • 打赏
  • 举报
回复
frequent 2014-08-16
  • 打赏
  • 举报
回复
我找到原因了,因为除了TCP外,我还有另外一个TCP连接的socket,虽然这个socket没传输任何数据,只是进行了连接,但他也会拖慢发送端的发送,我把这个TCP的socket不进行连接后就没这个问题了。 但现在问题是发送端在不停地发送,但接收端从标题栏上看到的数据可以看到是接收一小会后,就小卡一下。从接收端回放的声音来看也是断断续续的。UDP这种接收数据忙不过来的情况 怎么解决呢?
SiGoYi 2014-08-15
  • 打赏
  • 举报
回复
UDP本来就是一个不可靠的传输协议,就算是丢包了也是正常的现象。 如果非要解决这个问题,提供两个办法: 1、使用TCP; 2、如果非要使用UDP的话,就做一个重传机制,当然这个比较复杂,不建议用这种方式。
xian_wwq 2014-08-15
  • 打赏
  • 举报
回复
UDP只管发,不管是否成功,有没有接收应该不会明显影响数据发送; 是不是有应答或者其他操作?
  • 打赏
  • 举报
回复
所以我估计可能是B端(接收端)因为频率太快接收不过来,所以导致A端(发送端)也比较卡了 与此原因无关
碼上道 2014-08-14
  • 打赏
  • 举报
回复
照理没有关系,根本不会关注服务端是否打开了,直接发,是不是你的服务端有数据向客户端这边发。

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧