随笔 - 17  文章 - 48  trackbacks - 0
<2014年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用链接

留言簿(3)

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

BitWave的Host:

源码放在github上,采用NEW BSD LICENSE发布。地址:https://github.com/airtrack/bitwave

写BitWave起因

去年买新笔记本之前,老的笔记本装的是Windows 7的RC版本,而RC版本在去年3月就停止支持,每2个小时重启一次。因为打算买新笔记本,所以也就懒得装XP了。在买新笔记本之前的两周内就一直在用Linux,虽然以前经常折腾Linux,但是连续这么长时间用还是少,尤其是要在Linux下下载电影。不知道是人品问题还是啥的,我在Linux下面下载BT的速度重来没上过100KB/S(2M的带宽)。试过各种BT客户端,神马Transmission、Deluge和被誉为神器的Mldonkey,最悲剧的就是神器Mldonkey了,重来没超过20KB/S,悲剧的就直接不看电影了。忍了两周,买了新笔记本,重新回到迅雷的怀抱。后来想了想,为啥都是下载软件,咋差距那么大呢。为了找到原因,以身试法,看看为啥差距那么大,决定自己写个BT的客户端,于是就开始了漫长的开发了。

BitWave的这一年

从去年5月底开始写BitWave,看BT协议,写torrent文件解析,写网络库,写极简的http的协议(只有request和response的一部分),写各种各样的杂七杂八的东西,到最后把核心写完,用时一年,而且很大部分是今年写的。这一年间,各种加班,各种看书,各种看电影,各种上网,各种玩游戏,各种写其它程序,各种各种,总之没多少时间写。

BitWave目前状况

BitWave用C++做开发语言,使用Visual Studio 2010编译,目前只支持Windows。

BitWave包含一个异步网络库(IOCP实现)、一个简单的线程封装、一个极简极简的http协议解析、一个Buffer、一个简单的UnitTest(这个太简了,以后再加强)。BitWave需要VS2010编译,因为使用了shared_ptr和function+bind。目前的核心只实现了最基本的BT协议,扩展协议一个不支持,当然核心的东西还在不断改进中。BitWave目前是一个命令行的程序,命令行中也只支持一个任务,并且不允许选择下载哪些文件,也就是完全下载,当然这些功能在核心是都有的,能够支持多个任务和选择下载文件。在核心功能稍微完善了之后会考虑做个GUI(额,很久没写GUI程序了,都懒的做了)。

BitWave的未来计划

近期的计划:

1、当然是完善核心功能;

2、写一个log系统,这个太重要了,没有log,改进下载算法太难了,其他客户端的行为完全不可预料;

3、任务的保存与恢复。

中期和长期的计划:

1、移植Linux,写这个的起因就是Linux下的下载软件从来都是不给力,至少在我电脑上;

2、支持其他扩展的协议。

博客更新计划

接下来的一段时间,当然希望有时间(各种加班呐),把这一年写BitWave的一些值得记录的东西写下。可能包括以下东西:

1、网络库的开发记录;

2、核心的结构及P2P下载的一些东西理解吧;

3、没了,好像本来就没多少东西。

posted on 2011-05-29 17:39 airtrack 阅读(4214) 评论(8)  编辑 收藏 引用

FeedBack:
# re: 开源一个BT客户端:BitWave 2011-05-29 21:10 K.V
目前没精力研究,不过支持博主。  回复  更多评论
  
# re: 开源一个BT客户端:BitWave 2011-05-29 23:02 易宝@byhh
有兴趣看一些对linux环境中。网络相关的处理。mark  回复  更多评论
  
# re: 开源一个BT客户端:BitWave 2011-05-30 09:21 zuhd
这么巧?我学习学习  回复  更多评论
  
# re: 开源一个BT客户端:BitWave[未登录] 2011-05-30 10:01 kuafoo
这个要支持 跟到博主学习一下网络编程  回复  更多评论
  
# re: 开源一个BT客户端:BitWave[未登录] 2011-05-30 12:28 lv
有个开源的 libtorrent 挺不错的,跨平台,跟 luabind 出于同一公司  回复  更多评论
  
# re: 开源一个BT客户端:BitWave 2011-05-30 12:41 airtrack
@lv
恩,基于libtorrent的软件很多,Deluge就是其中之一。  回复  更多评论
  
# re: 开源一个BT客户端:BitWave 2011-06-04 17:18 巫云
linux下wine个迅雷,速度挺不错的。  回复  更多评论
  
# re: 开源一个BT客户端:BitWave 2014-07-24 10:20 yynote.com
支持....  回复  更多评论
  

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理