免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6054 | 回复: 12
打印 上一主题 下一主题

如何控制网络传输速度? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-09 21:39 |只看该作者 |倒序浏览
在网络传输的时候,如何限制其速度?
我现在想到的办法有两个:
1.采用sleep,传输速度太快时,就增加sleep的时间,太慢了,就减少
2.设置SO_RCVBUF/SO_SNDBUF的大小

但是这两个方法得到的速度变化都不够平滑,有没有更好的办法?

论坛徽章:
0
2 [报告]
发表于 2005-08-09 22:22 |只看该作者

如何控制网络传输速度?

控制网络流量就行了。

论坛徽章:
0
3 [报告]
发表于 2005-08-09 22:25 |只看该作者

如何控制网络传输速度?

想在哪一层控制, 链路层 网络层 传输控制层 还是应用层

论坛徽章:
0
4 [报告]
发表于 2005-08-09 22:27 |只看该作者

如何控制网络传输速度?

建立另外一个进程监视, 用负反馈建立一个自动控制模型来保证平滑
呵呵,开个玩笑

论坛徽章:
0
5 [报告]
发表于 2005-08-09 23:18 |只看该作者

如何控制网络传输速度?

[quote]原帖由 "renstone921"]控制网络流量就行了。[/quote 发表:

问题是这个,怎么控制啊?
我就是不知道这个怎么做

论坛徽章:
0
6 [报告]
发表于 2005-08-09 23:19 |只看该作者

如何控制网络传输速度?

[quote]原帖由 "apollolegend"]想在哪一层控制, 链路层 网络层 传输控制层 还是应用层[/quote 发表:

就是应用层,就想我这个程序传输的时候,速度不能太快了

论坛徽章:
0
7 [报告]
发表于 2005-08-09 23:20 |只看该作者

如何控制网络传输速度?

原帖由 "luojiannx" 发表:
建立另外一个进程监视, 用负反馈建立一个自动控制模型来保证平滑
呵呵,开个玩笑

我现在已经建立个监视线程了
用它来反馈当前的速度信息

论坛徽章:
0
8 [报告]
发表于 2005-08-10 09:12 |只看该作者

如何控制网络传输速度?

你把Sleep的间歇设的小一点。
然后用一个计数器,假设理想情况下,包与包之间的间隔为20ms,
你只要看,上一次运行和这一次运行之间的时间差S ms,发送S/20个包
然后S=S%20,这样,当sleep的间歇比较小的时候,应该是比较平滑的吧。
SirFang 该用户已被删除
9 [报告]
发表于 2005-08-10 09:35 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
10 [报告]
发表于 2005-08-10 10:55 |只看该作者

如何控制网络传输速度?

[quote]原帖由 "SirFang"]TCP有流量控制的啊,保证接受方有能力接受。 自己做流量控制,麻烦啊,要考虑网络的状况的。[/quote 发表:

How can I utilize the traffic control of TCP?
I can't find any socket API about this.
I'm the receiver, and I wanna lowwer the receiving speed.
The current speed is too high, and might be banned by the server.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP