求问各位大神,如何用UDP发送文件,并保证不会丢包。

mingxinke 2015-04-16 03:27:36
本来是使用TCP发送文件的,但是速度相对较慢,所以想用UDP但是UDP又是不可靠的协议。我想了一种最简单的办法就是返回相应的指令表示接受端有没有收到或者数据正不正确,有问题的话就重发刚才的包,没问题就发下一个包。但是这样的话就降低了发送的速度,请教各位大神有没有更好的办法?
...全文
417 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
liaolianbing 2015-04-22
  • 打赏
  • 举报
回复
你需要QUIC
mingxinke 2015-04-21
  • 打赏
  • 举报
回复
引用 9 楼 Inhibitory 的回复:
就是用UDP模拟TCP,你需要解决的问题 1. 包的顺序 2. 超时未收到Ack则重发 看看网络课程中讲的滑动窗口协议应该就能写出来了。 问题来了,即使你模拟出了TCP,效果会比TCP协议好吗?
这个是个问题,但是还是先写个例子测试一下速度。
mingxinke 2015-04-21
  • 打赏
  • 举报
回复
引用 10 楼 feiyangqingyun 的回复:
我用QT写了个文件收发工具,多线程!好像速度效率很不错!
求源码,能发给我一份学习一下吗?745688760@qq.com谢谢大神!
feiyangqingyun 2015-04-21
  • 打赏
  • 举报
回复
我用QT写了个文件收发工具,多线程!好像速度效率很不错!
Inhibitory 2015-04-19
  • 打赏
  • 举报
回复
就是用UDP模拟TCP,你需要解决的问题 1. 包的顺序 2. 超时未收到Ack则重发 看看网络课程中讲的滑动窗口协议应该就能写出来了。 问题来了,即使你模拟出了TCP,效果会比TCP协议好吗?
wuleeemail 2015-04-18
  • 打赏
  • 举报
回复
确实,网络给力就不会丢包了,网络不好,软件再怎么设计都会出问题的。
大卫无限 2015-04-17
  • 打赏
  • 举报
回复
网络给力就不会丢包了.
xiaodong60606 2015-04-17
  • 打赏
  • 举报
回复
学习了。学习了。
mingxinke 2015-04-16
  • 打赏
  • 举报
回复
引用 1 楼 cool_zbk 的回复:
这样的话 似乎没人用tcp了
现在很多软件都不用TCP了,典型的就是QQ。
mingxinke 2015-04-16
  • 打赏
  • 举报
回复
引用 3 楼 yunchao630 的回复:
http://download.csdn.net/detail/mayingming/3672716#comment
谢谢,我来研究研究。
翅膀又硬了 2015-04-16
  • 打赏
  • 举报
回复
http://download.csdn.net/detail/mayingming/3672716#comment
翅膀又硬了 2015-04-16
  • 打赏
  • 举报
回复
搜一下 UDT 有开源的项目
cool_zbk 2015-04-16
  • 打赏
  • 举报
回复
这样的话 似乎没人用tcp了

16,200

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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