socket通信数据量大小限制

这两天搞一个android手机和电脑客户端的视频通信

之前找了一个别人的源码,以前没学过java和android,看了两天才把流程搞明白

结果运行的时候  电脑上的服务端接到的图像是乱码的

开始以为是编解码有问题  搞了一天  看了别人编解码的流程(yuv420-->RGB),还是没发现什么问题

最后才发现原来socket通信有数据量的限制

因为我这个是基于UDP通信的  所以在传输过程中有可能会丢包

后来试验了一下发现在android手机上基于UDP的socket通信一次发送的数据量不能超过1400byte,

当然这是一个大概值,我用1400byte实验的时候传输是正确的,改成1500byte的时候就乱码了

 这是我在用socket在手机端与电脑服务器端视频通信的时候测试的结果,

不过仍建议大家在用基于udp的socket通信时一次通信传输的数据量不要太大

 

当然如果是基于TCP的socket传输可能会允许一次传的数据量大一些

在用tcp传输时,在建立了tcp连接之后,如果发送端一次发送50k的数据,在接收端可能不能一次性全部接受

这时接收端就会分次接受,可能需要接受10次才能完全受到发送端发送的50k的数据

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值