本文档提供了ngosang/trackerslist系统架构和数据工作流程的技术概述。它涵盖了核心组件、数据处理管道以及支持BitTorrent Tracker列表自动生成和维护的交互。有关更新机制和计划的具体信息,请参阅更新机制,有关黑名单过滤过程的详细信息,请参阅黑名单和过滤。
ngosang/trackerslist系统旨在自动收集、测试、过滤和分类公共BitTorrent Tracker,并以各种格式提供这些Tracker,以优化BitTorrent客户端的性能。
该系统由几个关键组件组成,它们协同工作以维护Tracker列表
负责从发现到发布的整个工作流程的中心组件。该机器人
负责消除重复和不需要的Tracker
测试每个Tracker的响应能力和可用性
根据性能指标对Tracker进行排序
按通信协议对Tracker进行分类
为有DNS问题的用户创建基于IP的Tracker列表
来源:README.md26-32 blacklist.txt1-323
该系统遵循定义的流程来处理和维护Tracker列表
来源:README.md27-32 trackers_all.txt1-236
该系统生成几种类型的Tracker列表,每种都有特定的用途
| 列表类型 | 文件 | 描述 | 大致数量 |
|---|---|---|---|
| 最佳 Tracker | trackers_best.txt | 最可靠的 tracker | 20 |
| 所有 Tracker | trackers_all.txt | 综合列表 | ~118 |
| UDP Tracker | trackers_all_udp.txt | UDP 协议 tracker | ~50 |
| HTTP Tracker | trackers_all_http.txt | HTTP 协议 tracker | ~54 |
| HTTPS Tracker | trackers_all_https.txt | HTTPS 协议 tracker | ~14 |
| WebSocket Tracker | trackers_all_ws.txt | WebSocket协议Tracker | ~6 |
| I2P Tracker | trackers_all_i2p.txt | I2P 网络 tracker | ~6 |
| 基于IP(最佳) | trackers_best_ip.txt | 最佳Tracker的IP地址 | 20 |
| 基于IP(所有) | trackers_all_ip.txt | 所有Tracker的IP地址 | ~77 |
每个列表都以每行一个Tracker URL的格式显示,条目之间有空行。这种格式便于与各种BitTorrent客户端和第三方工具集成。
来源:README.md12-24 trackers_all.txt1-236 trackers_all_ip.txt1-155
所有Tracker列表都遵循一致的格式,以确保与BitTorrent客户端的兼容性
protocol://hostname:port/announce
<blank line>
protocol://hostname:port/announce
<blank line>
...
对于基于IP的列表,格式类似,但使用IP地址而不是域名
protocol://ip-address:port/announce
<blank line>
protocol://ip-address:port/announce
<blank line>
...
Tracker之间的空行很重要,因为它们可以帮助某些BitTorrent客户端在一次添加多个Tracker时正确解析列表。
来源:trackers_all.txt1-236 trackers_all_ip.txt1-155
该系统通过多种分发渠道提供Tracker列表,以确保高可用性
Tracker列表旨在与BitTorrent通信协议无缝集成
Tracker列表使BitTorrent客户端能够
来源:README.md30-31 trackers_all.txt1-236
blacklist.txt文件通过提供过滤规则在系统的架构中发挥着至关重要的作用
黑名单包含条目的原因有以下几点:
每个黑名单条目都包含一个注释,解释排除的原因。
来源:blacklist.txt1-323 README.md28
ngosang/trackerslist系统提供了用于维护和分发公共BitTorrent Tracker列表的一整套功能
| 功能 | 描述 |
|---|---|
| 自动更新 | 每日检查和更新所有Tracker列表 |
| 协议支持 | 涵盖UDP、HTTP、HTTPS、WebSocket和I2P Tracker |
| 质量过滤 | 提供“最佳”列表,包含最可靠的Tracker |
| DNS独立性 | 为有DNS解析问题的用户提供基于IP的列表 |
| 多渠道分发 | 可通过GitHub Raw、GitHub Pages和jsDelivr CDN访问 |
| 重复项预防 | 移除具有相同域名或IP的Tracker |
| 性能优化 | 按受欢迎程度和延迟对Tracker进行排序 |
| 社区贡献 | 通过GitHub Issues接受用户提交 |
这种架构通过提供可靠、分类清晰且定期更新的Tracker列表,使BitTorrent用户能够优化其下载速度和Peer发现。