Skip to content

sunyiynus/bitusk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bitusk

A c++ bitterrent downloader

For drilling my c++ skills.

.----. .-. .---. .-. .-. .----..-. .-.
| {}  }| |{_   _}| { } |{ {__  | |/ / 
| {}  }| |  | |  | {_} |.-._} }| |\ \ 
`----' `-'  `-'  `-----'`----' `-' `-'

Used Libraries:

  1. catch2, lightweight unit test framwork.
  2. asio, provide async network io.

Progress:

  • bt文件解析
  • tracker服务器连接

    TODO: support UDP server

  • peer data exchange 30%
  • datacache 80%

    TODO: support other method to write to disk

  • message generate and parse
  • logger 100%
  • signal control 0%

开发笔记:代码细节与结构上的考量

改进

针对DRUSS(dependable, reliable, usable, safe, secure)标准的一些分析。

可以针对Dependable作出的改进:

ref.

  1. The BitTorrent Protocol Specification
  2. Building a BitTorrent client from the ground up in Go
  3. Bittorrent Protocol Specification v1.0
  4. Bencode

roadmap

  1. 分析要做那些部分
  2. 分析技术难题
  3. 搭建平台
  4. 自己写库

About

c++ bittorrent downloader for practice

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published