|
|
发表于 2005-5-6 21:10:04
|
显示全部楼层
Post by athlon_r
...我没配置好???
不是吧... 你的意思是让我修改azureus的原代码??? 这个我可作不到...
能优化的都优化了 ... azureus用的是java虚拟机 wine也是虚拟的
bitcomet是C++写的 ... 连接在100以上我没见过azureus内存使用低于100的时候
cpu站用率 你自己去比一比 就知道了
java虚拟机对内存的管理确实有点为了安全而牺牲效率的,但是没有那么慢,你有多少内存?可以给它分配64-96的就差不多,至于你说的"没见过azureus内存使用低于100的时候
cpu站用率 "我倒是有点疑问?你这个是多大的内存的情况下,那个内核,2.4内核显示的占用率都是尽量用的,而2.6不同,实际上我的一般都让它尽量用内存,而同时做别的事情也没有影响,如果你的内存够大,把java缺省的127内存设大点,如果很小的话,不妨按照网上的一篇文章在设置项里把缺省配置改一下,有好几个地方都可以更改,我下载的速度,除非种子很少,一般都几百k以上的。
不知道你更改了那些选项没有,默认连接设大点,网络那里还要更改一些,如果你没有改的话,速度确实比较慢,可是你改过之后就不一样了,你可以看看这篇东西,改一下,如果你改了,还是那样的话,可以把你的配置(机器和软件的配置)告诉我,因为每个人的机器都不一样,网络也不同,这里的配置不一定适合你.(下面的这个
如果你是一个可怜的内网用户,经受了可怜的BT下载速度的折磨,终于找到了BitComet软件,可以增加下载速度,而不幸的是,你是个Linux的支持者,怎么办?
本文就这个问题,谈一谈Linux下的BT下载的优化。
系统环境:slackware-10
1.TCP/IP的优化
从操作系统的网络性能来看,Linux自然胜于Win,比如能同时打开连接的数目是1024(WINXPSP2无补丁是10)但在内网的特殊环境下,我们也可以做一些可能的优化。
在/etc/rc.d/rc.local下加入
#用255能让你的数据包比默认传得更远,在内网对内网的时候更具优势
echo 255 > /proc/sys/net/ipv4/ip_default_ttl
#BT下载要求迅速的打开和关闭连接,适当的减小此二值可以提高性能
echo 7 > /proc/sys/net/ipv4/tcp_retries2
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
2.一个完善的BT下载端
要有如下性能
支持UPnP:如果你的路由器支持,uPnP能自动打开端口映射,会对你的内网下载速度产生妙不可言的影响。
能够控制流量,能够控制同时连接数
能够修改一些网络底层的参数
为此我选择了Azureus,如果你有更好的选择,请回复。
下载地址:http://prdownloads.sourceforge.net/...ar.bz2?download
最新版正好就可以修改网络底层的参数,我喜欢。
解压缩后,在azureus目录里编辑“azureus”,改JAVA_PROGRAM_DIR="你的Java安装路径",注意要加一个‘/’在末尾。
如JAVA_PROGRAM_DIR="/usr/lib/java/bin/"
启动azureus在设置中,在传送分栏中,把上传个数,总连接数均写成最大,如“99999”,每任务最大上传数为20,并选“使用另一种socket polling"。(socket polling根据你的情况不一定选)
在服务器分栏中,把Max sim. outbound connection attempts写成最大。(1024)
注意不要关闭uPnP。
把Track/Client的Timeout改小一点。(可以不改)
改端口,不要你的网管发现这个端口:-)(即使是内网一般也不必要改的)
为什么要这样设置?是因为内网中能打开连接比什么都重要。由于中国网络的速度分布不一致性,这种设置可以让你更容易碰到同网段的朋友。
说实话,这些设置都是我从BitComet目测出来的。
把Advance Network Settings打勾
把Line Maximun Transmission Unit(MTU)设为1500
把Outgoing packet type-of-service(TOS)设为0x08 (面向流量的服务)
这样,Linux下的BT下载速度就从原来的20-30Kb变成了180-280kb(个人数据,仅供参考)。有时比BitComet还好。
同BitComet一样,azureus有踢人功能,如果有个家伙光下载不上传,你就可以把他踢出去。 |
|