cj1128.github.io icon indicating copy to clipboard operation
cj1128.github.io copied to clipboard

tinyTorrent: 从头写一个 Deno 的 BitTorrent 下载器

Open cj1128 opened this issue 4 years ago • 8 comments

https://cjting.me/2020/10/31/tinytorrent-a-deno-bt-downloader/

tinyTorrent: 从头写一个 Deno 的 BitTorrent 下载器

cj1128 avatar Nov 06 '20 00:11 cj1128

写的太好了,通俗易懂,解答了我多年的疑惑,感谢作者。还有一个问题想请教一下,迅雷往往能做到比其他 BT 客户端更快的速度,这是什么原理呢?是不是迅雷拥有更多优质的 tracker 服务器?

TGhoul avatar Nov 13 '20 02:11 TGhoul

@TGhoul 写的太好了,通俗易懂,解答了我多年的疑惑,感谢作者。还有一个问题想请教一下,迅雷往往能做到比其他 BT 客户端更快的速度,这是什么原理呢?是不是迅雷拥有更多优质的 tracker 服务器?

迅雷提供了只给迅雷客户端使用的 「加速服务器」,或者说 peer.

「迅雷拥有更多优质的 tracker 服务器?」 理论上是有,因为使用迅雷保种只会给使用迅雷下载的人上传,也就是所谓的「吸血鬼」。

Bowser1704 avatar Nov 13 '20 11:11 Bowser1704

依赖很清晰,ts和deno很强。

lingr7 avatar Nov 14 '20 12:11 lingr7

1、那么我使用迅雷我也是一个peer,被迫给别的下载的peer传输资源?
2、如何把我本地一个资源做成种子呢?制作成功了,发给别人我电脑关机了或者资源删除了,意思就别人无法下载了吗?

hqzh avatar Nov 25 '20 14:11 hqzh

@hqzh

1、那么我使用迅雷我也是一个peer,被迫给别的下载的peer传输资源?
2、如何把我本地一个资源做成种子呢?制作成功了,发给别人我电脑关机了或者资源删除了,意思就别人无法下载了吗?
  1. 这要看迅雷的实现,下载和上传的逻辑由客户端控制。比如 tinyTorrent 就只下载不上传。

  2. 可以使用一些 BT 软件比如 uTorrent。如果只有你一个人做种,那么是的,你下线了自然就无法下载了。

cj1128 avatar Nov 26 '20 02:11 cj1128

人人都是peer,BT协议有点比特币区块链的感觉啊

hqzh avatar Nov 26 '20 13:11 hqzh

@TGhoul 写的太好了,通俗易懂,解答了我多年的疑惑,感谢作者。还有一个问题想请教一下,迅雷往往能做到比其他 BT 客户端更快的速度,这是什么原理呢?是不是迅雷拥有更多优质的 tracker 服务器?

这个问题我没有仔细去求证,但是我觉得应该是迅雷将很多资源缓在了自己的服务器上,当迅雷发现某个资源自己有的时候,就直接从自己的 CDN 拉取,这样自然是很快的。

和 tracker 关系不大,tracker 是帮助发现 peer,如果一个资源没有人做种,那么再多的 tracker 也没用。迅雷可以做到不管什么冷门资源都可以高速下载,方案应该是缓存资源。

cj1128 avatar Nov 27 '20 02:11 cj1128

磁力搜索 这是我用过最好用的磁力搜索

xelnagaga avatar Nov 24 '23 09:11 xelnagaga