1.71测试版

DNS我还没测,等会我抓包试试,看统计是没等待中了
image

算好使了,抓包基本没有以前那么多一大片的查询了,顶多有几个重复的,不碍事了不知道这个缓存是永久缓存还是根据ttl来缓存?这个得等会自己域名搞个DNS然后来解析A记录测一下了,永久缓存的话,如果服务器换了IP,,客户端就不会更新了,除非重启客户端


一旦改小值,就会队列,应该丢弃才对,可以选择不回应对方?毕竟php也是这种逻辑,队列直接丢弃请求
而且这个值会包含udp tracker等等公用的,所以才想搞个dht的单独高级选项每秒发起数量


dns响应这个的时候,还会反复重试查询,没有进入缓存状态
也就是统计里面显示failure的,,会一直重试查询
image

而且还会同时发起4个请求,,对DNS的主备2个DNS服务器进行查询DNS,,分别为A记录和AAAA记录?AAAA记录不存在的话视乎也不会缓存?30秒左右重试一次查询AAAA,
我测了A记录会根据TTL缓存,域名变动ip地址会同时更新。

感觉视乎没必要主动查询AAAA吧?域名上如果支持AAAA则会优先返回的

直接丢弃的话,上层逻辑改动会比较大

目前是缓存60秒

有的域名同时支持IPv4和IPv6,对DHT根节点都需要发送数据包过去

我测了域名TTL返回多少秒就是多少秒,这个缓存应该是对AAAA这个进行缓存的,,

很多域名不存在AAAA的话,这应该可以改成600秒,十分钟。
不然tracker多了,如果10个种子,总共有1000条tracker(没有重复的tracker域名),那么1分钟就要查询2000次DNS的AAAA记录(发起主和备),没用的DNS查询请求还是比较多的。等于说每秒就要浪费2000/60=33个UDP请求每秒
或者,,,可以在检测到IPV6地址的时候,才同时查询AAAA?只有ipv4的电脑,完全没有必要去查询AAAA,根据DNS查询逻辑也是如此,在电脑有ipv6英特网的时候,DNS会优先返回ipv6,如果域名不存在IPV6才返回ipv4
甚至就算改缓存时间,,应该也可以改成3600秒,毕竟如果查询成功,会根据域名ttl设置的缓存

而且,,主备应该不是同时去查询,只查询一个主即可,windows上应该故障会自动切换到备用。

目前使用的系统API getaddrinfo() 不会返回TTL,所以我写死了60秒缓存。至于是否返回AAAA、返回几个IP,也是系统自动处理的,我只是全部记录下来。

哦,不过我实际测试,域名用ttl 10则会缓存10秒,用600则会缓存600秒,是没问题的,不会走你的60秒缓存。
只是AAAA上出了问题,算了就这样不改动了吧。

好帖子学习了

小樱,现在是不是不能查看是那个文件在长效上传了

好像只能在摘要里面看吧

我记得之前有个版本,可以在首页直接看到。就像看那个文件再下载那样

以前的版本也都可以啊,高级设置启用专家模式,或者摘要中可以看到

怎么启用专家模式啊,请教一下 :kissing_closed_eyes:

谢谢,找到了


嘿嘿,加个路由器,就DHT安静了

1個讚

beta3发布了,欢迎试用

这是什么原因呢

会不会是没有写权限?随便创建一个HTTP任务下载到网络硬盘试试呢

刚刚试了,http的下载可以直接下到那个盘

那可以再试试【1】这个BT任务直接下载到本地硬盘,【2】本地硬盘已下载成功的BT任务下载到网络硬盘。用排除法看看到底是什么原因造成的问题