可能重复:
如何在 C 中限制套接字连接的带宽?
我正在为 Unix 环境用 C 语言编写一个简单的 FTP 服务器。作为服务器的一项功能,我想限制用户的上传/下载速度。
有没有直接解决这个问题的库函数?
如果不是,生产 FTP 服务器中使用的算法是什么?我有一个非常幼稚的解决方案:计算一秒钟内要发送多少字节,比如说
x
,write(x)
或read(x)
,然后sleep(1)
。
应该有更好的解决方案。如果有代码示例就更好了。
需要明确的是,我使用的是 Mac OS X,但我希望它也可以在 Ubuntu 或某些 Linux 下运行。