就是服务器上的比特彗星
我有点不敢开源,这玩意开源出去容易出问题
用于发现用户 tracker服务器不存储文件本身
那资源到底在哪?tracker和dht网络算是两种东西把,,哎。。。。。好麻烦
那可以不可以自己建一个tracker服务器
在用户的设备上 tracker 和DHT 都是用来发现持有目标文件的的用户的
是也不是 DHT (Distributed Hash Table) 可被认为是分布式的tracker
也就是去中心化的 传统tracker是中心化的
可以 但要看你的用途 实验性 临时性 辅助性的自然是很简单的
但是要公开长时间的对外提供服务就是另外一回事了
那这如果说简单一些话就是需要搜集大量的tracker服务器了地址了把,
现有的tracker服务器地址应该算是足够使用了把
对了,比特彗星不是说可以种种子么,他的节点还有监听的端口号,在dht网络种好像并没有节点,我用代码去ping,访问不到,不知道为啥
这个工作以及有人完成了 那就是tracker列表
现有的公共服务器多的是
如果你说的制作种子文件 那当然是可以的
ping?ping用的可是ICMP协议 DHT用的可是UDP
正常来讲我们不需要关注DHT的工作情况
tracker列表去哪获取呀,大佬。。。。。
制作种子文件就算是做做种了是吧,那就说我的对等信息已经在某个tracker服务器里面了,然后下载也是我这个比特彗星来进行上传,不需要我手动操作是吧
制作种子文件 添加tracker 开始上传
客户端向tracker汇报 自身并获取其他拥有此任务的用户
将种子文件分享出去
其他用户开始下载 客户端向tracker汇报 自身并获取其他拥有此任务的用户
双方发现对方 开始传输
整个过程都是自动的
是这样理解把,也就说磁力链接的xt值,然后我使用tracker url向服务器发送获取对等节点列表,然后再去找对等点列表去找资源下载,大概是这个流程是吧,然后.torrent文件,可以转为磁力链接,磁力链接也可以转为.torrent文件
比特彗星大概了解了
差不多吧 用磁力下载还涉及到获取种子文件的过程
有了种子文件后的流程其实都是一样的
具体的内容其实可以看BEP规范
http://www.bittorrent.org/beps/bep_0003.html
获取种子文件也是去tracker服务器么?我用dht网络查找这个磁力链接的xt的值,并没有响应信息返回呀
种子文件也是从用户获取的
tracker服务器不存储文件本身也不存储种子文件
那就是磁力链接下载其实是把种子文件一起下载回来了,然后我们自己制作的种子文件相当于只是用于向tracket服务器发送信息
并不是 磁力链接中的哈希值其实由是种子文件中固定的部分所计算出的
磁力链接的用途就是用来下载种子文件
种子文件中包含 要下载的文件结构 以及个分块的哈希值
没有种子文件时是无法进行下载的
在过去DHT和磁力没有诞生之前
用户们必须自己想办法将种子文件分享出去
而有了磁力后 只需要分享磁力链接即可
客户端会通过其向已持有种子的用户下载种子文件
这样在分享的时候分享磁力链接即可
其本质上就是一串文本比分享文件要简单的多