billtian 发表于 2015-10-19 20:26:44

请教一个UDP拆包发送JPEG文件的问题,谢谢!

打算用UDP拆包发送文件,底层采集设备只支持每次发送1K多字节的包,文件有几十K大小,需要拆包发送,简单把文件拆成1K大小的数据包,增加一个顺序标志,接收方接收到数据后组合起来,可行吗?有一个问题是万一某包丢失,我在这个包的位置填充上FF,未丢失的数据部分图片可以解码出来看吗?意思就是丢失一部分数据,是可以解码部分图片,还是整个图片都完了。有经验的朋友指点下,谢谢!

NJ8888 发表于 2015-10-19 20:34:41

肯定分包的,以太网一个包也就1400多有效数据,你不能用应答重传吗?超时没有回复重传这个包

billtian 发表于 2015-10-19 20:47:18

NJ8888 发表于 2015-10-19 20:34
肯定分包的,以太网一个包也就1400多有效数据,你不能用应答重传吗?超时没有回复重传这个包 ...

想提高速度啊,一问一答,传输速度就下来了吧?

zc3909 发表于 2015-10-19 21:03:13

jpeg文件丢失关键数据会导致整幅图无法显示

sddp001 发表于 2015-10-19 21:30:02

打完一次应答,汇报收到哪些,丢了哪些

NJ8888 发表于 2015-10-19 21:31:56

sddp001 发表于 2015-10-19 21:30
打完一次应答,汇报收到哪些,丢了哪些

应答丢了重传所有?

sddp001 发表于 2015-10-19 21:38:03

你不是有顺序标识吗

SkyGz 发表于 2015-10-19 21:43:05

本帖最后由 SkyGz 于 2015-10-19 21:44 编辑

NJ8888 发表于 2015-10-19 21:31
应答丢了重传所有?

丢了, 重传 缺失的包,你也说了 拆分 N个包,有顺序标志
第一次传送 你的文件 将被 拆分多少个包给目标
接着依次传送 每个包
目标 按顺序标志 检查,如缺了 第3个包,回复让重传第3个包的数据...


或者每传一个包+校验码,   目标收数据校验一下,码不对,要求重传一次,直到正确, 再 传下一个包

i_kkyu 发表于 2015-10-19 21:56:53

添ff不行。丢的重传。

i_kkyu 发表于 2015-10-19 21:58:00

你不是想单向,不应答吧?

eye 发表于 2015-10-19 22:02:35

接收方平时不回复,出错了才重新同步序号,这样就不会影响性能了。

labtech 发表于 2015-10-19 22:02:49

杀手,你用ultraedit把jpg文件某些位改成ff不久实验出结果了么

fshunj 发表于 2015-10-19 22:09:21

一般情况下 , 网络传输实时视频流是允许丢帧的,只要一个分片丢失,整帧丢弃即可.

aozima 发表于 2015-10-20 09:12:01

自己模拟一个TCP还不如直接使用TCP

runapp 发表于 2015-10-21 10:55:56

同意ls,不如直接用tcp

dellric 发表于 2015-10-21 23:55:34

把数据交织,加前向校验,不回传不应答,加快速度。如果要准确,要应答,不好意思,UDP真不如TCP。不想折腾,还是用TCP吧。当然,JPEG丢点包包不会有太大影响,一般来说就是图片错起、图片显示不完。
页: [1]
查看完整版本: 请教一个UDP拆包发送JPEG文件的问题,谢谢!