3.国语DVDSCR中字.rmvhe”,piece长度为262144byte.piece个数为34780 。
.torrent文件中还包括其他一些可选项,只要它们遵循B编码方式就能够被客户机识别,这里不再累述 。
3.2trackerHTTP/HTTPS协议
BT客户机依次向.torrent中的tracker服务器发送连接请求,以获得正在下载该文件的对等方列表(主要是IP地址和监听端口) 。假如连接成功获得列表,就关闭连接,尝试与列表中的对等方建立连接;假如不成功,尝试下一个tracker服务器 。
;服务器tracker.cnxp.com的IP地址为61.129.77.239,btfans.3322.org的IP地址为61.129.78.114,BT客户机与BT服务器的交互过程如图5所示 。
图5; BT客户机与BT服务器的交互过程
分析这些分组,易知分组702、748(分组702的重传)、750、752是建立TCP连接的三次握手 。BT客户机通过753号分组向tracker服务器发出获取对等方列表的请求,754号、755号分组为应答 。757-760号分组为关闭连接的交互过程 。下面重点分析753号、754号和755号分组 。
753号分组中的HTTP部分内容如图6所示,使用*号代替空格以便于分析 。
图6; 753号分组中的HTTP部分内容
其中一些成分的含义如下:
●info_hash:.torrent文件中的info部分的Shal校验码,共20byte 。tracker服务器通过它在发布列表中找到对应的记录 。
●peer_id:BT客户机的惟一性标志,在客户机启动时产生,共20bit 。在BTV1.0中没有规定产生peer_id的算法,只要求能够保证惟一性即可 。
●port:提供上传的端口号,亦即常说的监控端口,这里是6641(可自行设定) 。
●key:可选 。一个扩展的惟一性标志,即使改变了IP地址,也可以使用该字段标志该BT客户机 。
●uploaded/downloaded:上传/下载的字节数(从客户机向tracker服务器发送“started”开始计算),服务器可以用它来做流量分析 。
●left:还需要下载的字节数 。
●compact:压缩标志 。假如值为1表示接受压缩格式的对等方列表,即用6byte表示一个对等方(前4byte表示IP地址,后2byte表示端口号);值为0表示不接受 。
●event:表明客户机的状态,只能是started、completed、stopped等3种中的一种 。
除了上面这些例子中包含的参数外,可选的参数还有:
●ip:可选 。IP地址,没有的话服务器会自己找到 。
●numwant:可选 。客户机希望从tracker服务器得到的对等方的数目 。
●trackerid:可选 。假如在之前的announce中包含了trackerid,将其值设置在该处 。
服务器中有个track程序来治理这些请求,得到这一串代码后就会用info_hash来查找列表,若找到就可以下载 。接着它会反连(NatCheck)客户机的IP地址和端口来判定它是内网用户还是公网用户(像10.10.10.x这样的地址 。是无法连通的) 。接下来服务器返回现在正在下载这个文件的所有公网用户的IP地址和端口(包含在分组754、755中,因为返回的数据比较多,所以被分片返回) 。HTTP之上的部分数据如图7所示 。
图7; HTTP之上的部分数据
其中“1998:”及其之前的部分使用的是ASCII字符集,“1998:”之后的部分是用16进制表示的二进制数 。从分组内容可以看出interval的值为1800 。也就是BT客户机最多每隔1800个时间单位就与tracker服务器重新联系一次:peers部分共有1998 byte 。对753号分组的分析可知,BT客户机支持对对等方列表的压缩,因此在754、755号分组返回的对等方列表是用压缩方式存储的,即6 byte表示一个对等方,例如da40 91 e8 41 af表示的对等方是218.64.145.232:16815,dd ea 3b 9f 7a 2f表示的对等方是221.234.59.149:31279 。对等方列表的长度为1 998 byte,也就是说返回的对等方个数为333个 。
- 相对极差怎么算
- 320万像素自动对焦 七喜H797彰显贵族品质
- 对N73音乐和拍照的感受
- 电动车充满电不拔对电瓶有影响吗
- 情人节手抄报
- 浅谈WLAN对实时业务的支持以及WLAN的应用和发展
- 面对疫情孩子应该如何做
- 老人去世祝福语有哪些?
- 如何确定评估对象和评估范围
- 对虾养殖溶氧量预测及应对方法
