图片来源:Easy Diffusion,参数 在 bittorrent 中, tracker 是组织或个人提供的一个中心化的服务,tracker 服务器 URL 包含在种子文件(.torrent)的 announce 或 announce-list 字段中,bittorrent 客户端通过 HTTP GET 请求向服务端发送本地信息,并从服务器获取其他客户端的信息。 Tracker 请求 以下是 HTTP GET 请求 URL 中的参数: 参数 必要 含义 info_hash 是 种子文件中 info 字段值(bencode编码的字典)的 SHA1 校验和(20字节),种子文件结构查看 这里 peer_id 是 20字节 ,用以识别客户端的唯一 ID,可以是任意值(可见字符或二进制数据),应当在客户端启动时生成 port 是 客户端监听端口号,通常是6881-6889(如果客户端无法在该端口范围内监听,应当主动放弃) event 否 值必须为 started、stopped 或 completed。客户端对 tracker 的第一次请求中应当包含 event=stared ;客户端正常关闭时应当向 tracker 发送 event=stopped ;客户端完成下载时应当向 tracker 发送 event=completed (不要重复发送 event=completed ,tracker 使用该信息统计完成的客户端数量) uploaded 是 使用 ASCII 码表示的十进制数字,表示 event=stared 发送后上传的字节数(官方没标单位,但通常为字节) downloaded 是 使用 ASCII 码表示的十进制数字,表示 event=stared 发送后下载的字节数(官方没标单位,但通常为字节) left 是 使用 ASCII 码表示的十进制数字,未下载的字节数 compact 是 值为 1 时,服务器响应使用更加紧凑的节点格式(6字节 IPv4 地址或 16字节 IPv6 地址,后2字节为端口,均使用网络序)。注意,官方建议 tracker 默认使用 compact 格式,并且该参数对 tracker 服务器来说只是个建议,即使发送 compact=0,tracker 服务器也可以忽略或拒绝响应 no_peer_id 否 指示服务器响应中的 peers 字典不必包含 peer id ,使用 compact=1 时自动忽略该选项 ip 否 客户端所在机器的真实 IP 地址,客户端通过代理与 tracker 服务器连接时需要该参数提供真实 […]
tracker
1 post