- 博客(4)
- 收藏
- 关注
原创 与基于udp协议的tracker服务器进行交互
通常BT客户端每几分钟就要向tracker发送一次请求.对于一些比较大的BT站点,其tracker的压力是可想而知的.降低tracker的压力首先考虑到的当然是采用更低网络开销的udp协议.于是Bittorrent udp-tracker protocol应运而生. 这个协议很简单. 下面是实现它的封装类:// UDPTrackerClient.h: interface for
2005-01-21 05:26:00
4326
4
原创 从tracker上获取peer列表
从torrent文件中得到了tracker列表后,接下来的工作就是获取peer列表.tracker使用http协议.客户端向服务器发送标准的GET请求,就可以得到这个列表.tracker返回的信息是bencode编码.向tracker发送的GET请求有如下一些参数:info_hash(必须): torrent文件中info字段的sha1.torrent文件解析器中已经计算此值,保存在
2005-01-16 04:56:00
5399
1
原创 torrent文件解析器
第二步工作是解析torrent文件,有了bencoding编码解析器 解析torrent文件当然是易如反掌的任务了.实现的封装类CTorrentParser,完成的主要任务有:1.判断torrent文件是否有效2.得到如下的重要信息: tracker服务器列表 文件列表 分块尺寸 分块个数 分块sha1的数组3.其他的一些次要信
2005-01-10 18:42:00
21821
14
原创 bencoding编码解析器
BT客户端开始一个下载首先要处理的就是torrent文件.而torrent文件使用bencoding编码.所以实现bencoding编码的解析器,就是第一步工作.Bencoding is done as follows:Strings are length-prefixed base ten followed by a colon and the string. For example /4:s
2005-01-09 19:38:00
18178
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人