udp发送文件,怎么发送?!

yuga 2005-07-04 01:18:42
要保证文件发到,我现在一个一个确认,太慢
准备一次发一百个
不知那位有更好的办法
...全文
241 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xhbyalong 2005-07-08
  • 打赏
  • 举报
回复
楼主,我第一次做UDP网络程序,可否给我看看你的程序构建框架?
xhbyalong@sohu.com
kkk3k3k 2005-07-08
  • 打赏
  • 举报
回复
http://kingseed.home4u.china.com/
softrain 2005-07-05
  • 打赏
  • 举报
回复
把文件分片,每256K为一片,再把每个256K分成小片如1452,可以一次发送一个小片,循环发送把256K发送完毕。对方记录本次的256K有哪些小片没有收到,对丢失的小分片再次请求,从而达到把256K完全传输的目的。接收完毕把256K数据写入磁盘。这样做可以避免在接到数据就写磁盘从而减少磁盘寿命,另外效率也会有所提高。 当然256K也可以增加,看原文件有多大,发送之前客户端之间要协商。
kugou123 2005-07-04
  • 打赏
  • 举报
回复
用一个数组来标记也可以。根据文件数量,动态创建一个数组,发送一个统计一个,待发送完毕,直接把数组delete即可。
fisker0303 2005-07-04
  • 打赏
  • 举报
回复
当然,也可以每100包检查一次,可以自己把握。
fisker0303 2005-07-04
  • 打赏
  • 举报
回复
我有个办法,看是否可行。
使用状态文件,接收文件开始时,初始化这个状态文件,使它全为0,每个字符代表一个包,收到一个包,就把状态文件的相应位置置1,全部发完后,检查状态文件,把未收到的数据包编号发给文件发送者,重新发送,循环,直到全部接收完。
qrlvls 2005-07-04
  • 打赏
  • 举报
回复
自己模拟一个滑动窗口的机制
在 UDP 包中增加一个序号字段

18,356

社区成员

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

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