阅读目录
- Torrent简介Torrent结构Torrent文件编码Torrent文件解析Torrent文件与Magnet具体实现Reference
Torrent简介 BitTorrent协议的种子文件(英语:Torrent file)可以保存一组文件的元数据 。这种格式的文件被BitTorrent协议所定义 。扩展名一般为“.torrent” 。
.torrent种子文件本质上是文本文件 , 包含Tracker信息和文件信息两部分 。Tracker信息主要是BT下载中需要用到的Tracker服务器的地址和针对Tracker服务器的设置 , 文件信息是根据对目标文件的计算生成的 , 计算结果根据BitTorrent协议内的Bencode规则进行编码 。它的主要原理是需要把提供下载的文件虚拟分成大小相等的块 , 块大小必须为2k的整数次方(由于是虚拟分块 , 硬盘上并不产生各个块文件) , 并把每个块的索引信息和Hash验证码写入种子文件中;所以 , 种子文件就是被下载文件的“索引” 。
回到顶部
Torrent结构 Torrent文件内容都以Bencoding编码类型进行存储 , 整体上是一个字典结构 , 见下:
Torrent总体结构 【torrentkitty磁力搜索引擎使用 torrent是什么格式的文件】键名称数据类型可选项键值含义
announcestringrequiredTracker的Urlinfodictionaryrequired该条映射到一个字典 , 该字典的键将取决于共享的一个或多个文件announce-listarray[]optional备用Tracker的Url , 以列表形式存在commentstringoptional备注created bystringoptional创建人或创建程序的信息
Torrent单文件Info结构Torrent多文件Info结构files字典结构:
Torrent实际结构预览 以JSON序列化整个字典后 , 单文件和多文件的结构大致如下 , 注意:JSON内容省略了pieces摘要大部分内容 , 仅展示了开头部分 , 另外由于本人序列化工具设置所致 , 所有的整型都会序列化成字符串类型 。
单文件结构多文件结构
{"creation date": "1604347014","comment": "Torrent downloaded from https://YTS.MX","announce-list": [["udp://tracker.coppersurfer.tk:6969/announce"],["udp://9.rarbg.com:2710/announce"],["udp://p4p.arenabg.com:1337"],["udp://tracker.internetwarriors.net:1337"],["udp://tracker.opentrackr.org:1337/announce"]],"created by": "YTS.AG","announce": "udp://tracker.coppersurfer.tk:6969/announce","info": {"pieces": "?im??u000b*???... ...","name": "Love And Mo
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 最实用的4种方法 常用搜索引擎的方法有哪些
- 搜索引擎优化方式有哪些,六种搜索引擎检索技巧
- 鱼缸玻璃怎么擦拭
- 网络营销手段有哪些 常见的网络营销手段有哪些
- 筏钓轮磁力缓降原理 筏钓轮磁力缓降原理简述
- 歌曲大全 音乐聚合搜索引擎如何创建桌面快捷方式?
- 植物大战僵尸跳跳舞会可以带上磁力菇吗 植物大战僵尸跳跳舞会可以带哪些植物?
- bt种子磁力搜索器 BT磁力种子搜索神器下载
- bt磁力搜索引擎使用方法 比特精灵手机版有用吗
- 新手如何做好搜索引擎优化 搜索引擎优化流程