转载HDCHINA

 

北京的ADSL,一直以来都是2M给300K限速,4M给600K限速,以此类推,价格贵是不争的事实,2M的钱,在家能扯两跟4M的宽带了。

原来一直用的2M,uT下载满速300k倒也没什么,最近倒腾了双拨,600k速度下,我那日立硬盘就跟不上了,吱吱那个响啊,正好uTorrent有个磁盘统计,稀里糊涂的看了一下,貌似文件写入的非常频繁,上网找到一篇很详尽的文章,通俗易懂,不敢独享,拿来发布,感谢yoyo2001@HDChina

2010-7-22,uT2.03版高级参数说明

uT2.03版的一些参数和默认设置与旧版有不少出入,uT常规设置论坛和网上已有不少教程,这里主要针对缓存、连接优化和高级参数等进行探讨,资料来源于uT官网/帮助文件、并结合实践和大家的反馈列出的一些优化,图片为原uT2.0版简单说明(未更新),文字为详解(更新ing)。

————————————–
2.03版常规设置项目的改变:

在“设置->带宽”下新增2个设置项:
1、应用比率限制到额外传输 (传输开销限制,针对之前开销占用带宽较大的反馈进行的改进)
2、应用比率限制到uTP传输  (旧版的带宽限制仅针对TCP连接,现uTP连接也加入到带宽限制管理中)

在“设置->任务”下新增1个设置项:启用UDP Tracker 支持
另外“启用带宽管理”改为更直观的“启用带宽管理(uTP)”

————————————–
2.03版相对2.02版的高级参数更改:

新增参数:net.disable_ipv6: true (win7下默认禁用ipv6网络,需要ipv6的可选false开启)

取消参数:net.calc_overhead: false (默认禁用在传输效率中计算网络开销)
此选项已从高级参数移动到“设置->带宽”常规设置中,新增“应用比率限制到额外传输”选项。

修改的默认参数,改变合理连接设置值以减少网络开销:

bt.connect_speed: 7 (2.02版默认为10)
uT每秒尝试建立的最大连接数,无论是uTP连接还是TCP连接

net.max_halfopen: 100  (2.02版默认为400)
指定uT可建立的最大并发连接数

net.utp_packet_size_interval: 10 (2.02版为5)
设置uTP根据网络环境改变uTP报文数据包尺寸的间隔时间,单位为秒

uTorrent在默认参数下基本能良好运作,官方建议若未出现特殊问题无需改动,有时修改后的实际效果适得其反。以下优化仅为建议, 请根据自身网络环境测试、设置合适的参数

===========================================
缓存设置,硬盘更健康
===========================================

通过物理内存缓存下载数据到特定容量后再写入硬盘,或一次读取特定容量的上传数据到物理内存再分段上传,有利于减少硬盘的读写频率或次数 (频率和次数的概念还是有一定区别)

选项–〉设置–〉高级–〉缓存

缓存基本设置

1、手动指定缓存大小以覆盖自动设置的缓存大小(MB)—(建议512~1400) 请根据内存实际情况设置,最小值为1
建议最高值不超过1.4G(超此值在某些操作系统高速上传或下载时uT可能会无响应)

即uT使用多少物理内存作为读/写缓存,设置值为读+写的缓存整体值(无法分别设置),uT在设置总值内实时智能分配读/写缓存,在同时有上传和下载时会优先保障写入缓存

实际测试在“不需要缓存时减少内存的使用量”和“从读取缓存中移除较旧的缓存区块”勾选情况下,一般2M-4M带宽(实际上下行速率约250-500kb/s)设置缓存128M足矣,可依据这个数值比较自身带宽做个设置参考。

2、不需要缓存时减少内存的使用量—(不勾) 若勾选在无上传/下载时将从物理内存释放(清空)所有uT不使用的缓存。
小或等于512m内存的建议勾选

大内存建议不勾,勾选的效果类似于忽略手动指定的缓存大小;
若内存紧张,特别是物理内存只有512m或更少的电脑,此项勾选可极大缓解小内存压力。

高级缓存设置

1、启用磁盘写入缓存—(勾选) 通过物理内存缓存下载数据到特定容量后再写入硬盘,以减少硬盘写入频率

A. 每2分钟写入未使用的区块—(不勾) 是否将只下载了部分数据分段(16kb blocks)就停止下载活动达到或超过2分钟的非完整区块(piece)写入硬盘

B. 立即写入已下载完毕的区块–(不勾) 是否每下载完毕1个完整区块(piece)立即写入硬盘 (不勾则最多延迟15秒再写入硬盘)

以上两项若勾选可避免程序或系统错误/死机时丢失已下载数据的几率,但硬盘写入频率相应增加,建议不勾

2、启用磁盘读取缓存—(勾选) 缓存特定容量的上传数据到物理内存再分段上传,以减少硬盘读取频率

A. 如果上传速度较低则关闭读取缓存—(不勾) 是否在上传速度<40kb/s时自动关闭读取缓存,考虑到充分利用内存,建议不勾

B. 从读取缓存中移除较旧的缓存区块—(勾选) 是否从读取缓存删除超过10分钟无上传活动的区块
建议勾选,即使你的内存很大也建议勾选

在“不需要缓存时减少内存的使用量”和“如果上传速度较低则关闭读取缓存”与本项同时不勾选的情况下,用于缓存的内存容易在短时间内被占满(因为缓存的读取数据只会有增无减),不利于uT的缓存机制或容易造成与windows操作系统缓存机制冲突、uT无响应等

C. 缓存超负荷时增加自动缓存的大小—(勾选) 读取缓存在超载时自动增加以减少磁盘读取频率,特别是在高速上传和硬盘性能较低的情况下。此项若和“不需要缓存时减少内存的使用量”同时勾选,可在uT “速度–>磁盘统计”看到明显的读取缓存实时增减变化,但官方说明如果手动定义了缓存大小,此项勾选与否并不重要

3、对磁盘写入禁用系统缓存—(勾选)
4、对磁盘读取禁用系统缓存—(勾选)

禁用windows操作系统本身的磁盘读/写缓存,类似于禁用uT使用windows系统虚拟内存,对目前主流硬件性能和G级别内存来说压力不大,大内存推荐

在uT高速上传或下载时,windows系统本身的磁盘读写缓存机制有时会因尝试缓存uT不断增速的读/写频率而占用大量物理内存,若内存占满windows则启用虚拟内存进行页面文件交换,从而导致uT的传输速度下降。
另一方面,若启用windows磁盘缓存也会增加硬盘寻道,当uT的缓存占满时会降低uT传输效率。

在windows优化时对虚拟内存的启用与否或设置大小有很多争议,原理即通过一定的硬盘空间“虚拟内存”并在物理内存超载时交换页面文件以减缓内存压力,但也会相应增加硬盘读写频率,属于鱼和熊掌权衡的问题。

===========================================
uTorrent 一些需要注意的事项和常规选项
===========================================

uTorrent 使用的传输端口
uT中自定义的端口仅用于传入连接,传出连接使用的是随机选择的本机端口,这仅是 TCP/IP 实现功能的方式,不是错误,另需确保未使用同一端口运行两个bt客户端
在防火墙中务必允许uT通过所有基于 TCP 和 UDP 的传出协议,使用路由的用户需进行虚拟服务器/NAT端口转发/开启upnp,状态栏传输标识才会为绿勾圆标。
如使用DHT连接防火墙需设置为允许ICMP

善用设置向导(Setup Guide,旧版称为Speed Guide)
“选项–>设置向导”进行了大改进,包括内置速度测试,上传优先自适应,自动端口映射

关于带宽选项中的最大上传速度、连接数(全局最大连接数/单任务最大连接数/单任务上传通道数)设置

因为不同地域/不同ISP提供的服务和各人硬件不同,建议还是自己测试磨合最佳的3个连接数。
UT自带的带宽测试(菜单->选项->设置向导),还是比较有参考性,在测试后UT给出的建议值基础上微调,并通过UT实际运行任务情况观察一段时间,设置最合适自己的数值。
带宽测试点可多测试几个,看哪个比较接近你的带宽理论值,我这里是USA: Los Angeles比较合适。

单任务最大连接数=种子连接数+上传通道数
上传通道数:uT界面中“用户”列,如“28(66) ”表示该bt任务现有66个下载用户,你的客户端连接了28个下载用户
种子连接数:uT界面中“种子”列,如“18(25) ”表示该bt任务现有25个种子,你的客户端下载连接了18个种子
(建议勾选“如果上传速度小于90%则使用额外的上传通道”)

uT的连接优先级会优先保障该任务中的下载连接,还会根据客户端设置的上传和下载限制及单任务的群集健康度(如该群集中的种子数量、用户数量、连接延迟等 等)配对连接,往往大水管会获得较高的下载或上传优先,单纯做种也会获得较高的上传优先级;全局做种数量过多(即使无实际上传连接)反而会影响其他单任务 的上传速度。

传输上限(Transfer Cap) 设置
选项–>设置–>传输上限
uT2.0新增功能,如果你的ISP限制每月的流量,可在此设置uT传输达到一定的流量自动停止。

uT任务栏传输新标识(速度–>显示–>上传和下载)
U–>实际上传流量 ( 有效负载 ),速度曲线的粗红实线
O–>上传协议开销流量,种子与tracker之间或uT与服务器之间的通讯开销流量
红虚线–>实际上传流量+开销流量

D–>实际下载流量 ( 有效负载 ),速度曲线的粗绿实线
O–>下载协议开销流量,种子与tracker之间或uT与服务器之间的通讯开销流量
绿虚线–>实际下载流量+开销流量

上传或下载中的限速,包括开销流量

===========================================
uTorrent 2.03  高级参数含义和部分优化
===========================================

选项–〉设置–〉高级–〉高级选项[警告:请勿修改!] –〉点选需要修改的的项–〉在下方参数框修改参数–〉修改完毕点选设置–〉点选确定完成设置

* uTorrent对在高级选项中修改过的参数自动添加前缀*号,便于识别
设置含义: true为启用该功能,false为禁用该功能,数字为设定数值

bt 前缀——–关键传输功能选项
diskio 前缀—-磁盘功能选项
gui 前缀——–界面和程序操作功能选项
net 前缀——-网络管理选项
peer 前缀——客户端管理选项
queue 前缀—传输队列管理选项
rss 前缀———RSS广播功能选项
其他 前缀——-其他未分组功能选项(Web UI、兼容、安全设置等)

以下选项后的数值为官方默认值,随附建议修改值
高级选项中很多默认设置已经合乎需要,有很多功能我们用不到也不用改动,大概了解即可

——–
蓝标
 为建议关注或调整的项目,主要目的是提高连接能力和保护硬盘
——–

请根据个人的网络环境测试、修改合适自己的设置

allow_pairing: true
默认启用配对连接。生效前题为 net.discoverable 选项启用。
类似于蓝牙的配对概念,允许任何外部程序以特定密码和更少的用户交互方便地登录Web UI, 用户必须授权uT为每个连接应用申请生成登录密码,出于安全原因,配对只允许在同一台电脑上运行设置。

bt.allow_same_ip: false
默认禁用来自相同IP的多个传入连接(仅针对单个BT任务),增强反吸血保护。

bt.ban_ratio: 128
单个对等客户端在被屏蔽之前发来的完好数据区块与损坏数据区块的最低可接受比率
生效前提为 bt.ban_threshold 达到最高限制值且 bt.use_ban_ratio 选项启用

bt.ban_threshold: 3
允许单个对等客户端发来的最大损坏数据区块个数, 达到此限制值将屏蔽该对等客户端
生效前提为 bt.use_ban_ratio 选项启用

bt.compact_allocation: false
默认禁用,该功能按紧密增量写入方式创建下载文件,而非预先分配硬盘空间,可减少硬盘实时占用但因为是小文件写入在下载任务未完成前可能会增加磁盘碎片,启用本功能未完成文件将极有可能无法预览。
1) 若与“参数设置–>常规–>下载前预先分配磁盘空间”功能同时启用,将忽略紧密增量写入方式,而强制预先分配磁盘空间;
2) 若要实现本功能,单个下载任务中的任何文件不能被跳过(不能选择性下载种子包含的文件,只能完全下载)。若在创建下载任务时跳过了部分文件(非完整下载),本功能将失效。

bt.connect_speed: 7
uT每秒尝试建立的最大连接数,无论是uTP连接还是TCP连接

bt.enable_tracker: false
默认禁用内嵌在uT程序中的简易型tracker服务器,该简易型tracker服务器不适用于高安全性或大规模交换服务的要求。
URL访问地址为 h**p://IP:port/announce,IP为本机的WAN广域网IP地址 (如果使用了动态DNS 解析服务, IP地址可使用domain域名名称来代替), port端口号为uT的侦听端口(或设置启用的其他侦听端口),该简易型Tracker 服务器可跟踪外部种子, 但无web界面也无法进行限制和查看这些被跟踪的种子,若需使用此功能, 请先在路由正确配置端口转发或虚拟服务器

bt.graceful_shutdown: true
默认启用下载数据保障功能。将在关闭uT之前等待必需的操作(如: 将正在进行的区块写入磁盘、 处理删除队列中的待删文件、及等待Tracker 服务器的停止回应等) ,即使程序表面退出uT仍会存在于进程中直至全部操作完成,若禁用此选项则在最多10秒后强制终止uT,但可能会造成已下载数据部分丢失。

bt.multiscrape: true
默认启用查询tracker服务器时的并发散列校验功能,uT会自动检测 tracker 服务器是否支持并发校验查询,若不支持,将使用单联校验查询

bt.no_connect_to_services: true
默认启用,禁止uT侦听bt.no_connect_to_services_list列表中定义的端口,避免反病毒/防火墙软件误报uT正在发送邮件或其他操作

bt.no_connect_to_services_list: 25,110,6666,6667
uT将不侦听本项设置的端口,如电子邮件服务端口25、110 或其他公用服务端口列表,避免反病毒/防火墙软件误报uT正在发送邮件或其他操作
生效前提为 bt.no_connect_to_services 启用

bt.prio_first_last_piece:  false
默认禁用优先下载文件的首尾区块,优先下载首尾区块主要是为了在文件未下载完毕前可以预览,若启用本功能,将至少优先下载首区块和尾区块各1M

bt.ratelimit_tcp_only:  false
默认禁用TCP传输速率限制。若启用将侧重通过分析uTP的传输效率信息来控制TCP连接的上传下载速率,而不完全基于设定的全局传输限制
生效前题为bt.tcp_rate_control 启用

bt.scrape_stopped:  false
默认禁止uT向tracker服务器查询本地已停止任务的种子和对等客户信息

bt.send_have_to_seed: true
默认启用给其他种子发送目前已下载区块数量的信息

bt.set_sockbuf:  false
默认禁用通过定期检测TCP缓冲大小(so_sndbuf)进行调试的功能,调试基于上传速度而非延迟

bt.shutdown_tracker_timeout: 15
uT查询tracker服务器响应的等待时间期限,单位为秒,若设为0,uT将无限期等待直至tracker服务器响应

bt.shutdown_upnp_timeout: 5
uT查询路由upnp端口响应的等待时间期限,单位为秒,若设为0,uT将无限期等待直至路由upnp响应

bt.tcp_rate_control: true
默认启用,基于uTP的传输信息来控制TCP连接的传输速率,是 bt.ratelimit_tcp_only 生效的前提条件。

————————————————————————————–
bt.transp_disposition: 31  * 请根据自身带宽环境和应用需求设置,内网无端口映射的用户建议启用uTP
————————————————————————————–