GSoC : BitTorrent

...
  • Of course, you may start with simple approach. I just noted, that hard drive and file systems work worse with small operations.
  • Utsav_Chokshi wrote:What exactly should be configurable ? How many pieces user wants to keep in memory [i.e. how much RAM an application can use ] ?
    If it is the case, it would make application design more complex.
    Writing large chunks of memory at once, that seems complex to me, given the nature of small blocks used in torrent, and the fact that you typically don't receive those in order (sequential).
    Limiting the amount of chunks the client receives at once seems pretty simple to me.

    Let's make it work first :)
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Hello All,
    Bit-torrent protocol supports 11 different kind of messsages. [https://wiki.theory.org/BitTorrentSpecification]
    Message passing between peers is heart of bit-torrent protocol.
    This week I will be working on to make Message Passing, more robust.
    I have already implemented basic message passing with respect to one peer & download.

    Last two week,
    I added few files :
    -> Piece.asm
    -> Fileops.asm
    Made changes to few files :
    -> Peer.asm
    -> Torrent.asm
    -> Bencode.asm

    I am also maintaining note about basic outlines of code I am implementing under notes folder.

    Thanks.
  • Hello All,

    I have made github webpage about project :
    http://chokshiutsav.github.io/BitTorrent/

    Here is my code's github link :
    https://github.com/ChokshiUtsav/BitTorrent

    I am still working on showing demo.
    I'll update the same on web-page as well as ReadMe.md

    Thanks :)
  • I compiled current code and tried to download test.torrent from your repo.
    There is no documentation on how to control downloads, but here is what I got:
    • download_torrent command adds new torrent and creates corresponding file on disk;
    • file in not downloaded, no errors and no status indication;
    • show_all_torrent reports added torrent is not started and I don't know how to start it.
    Spoiler:
    torrent_20160827.png
    torrent_20160827.png (61.33 KiB)
    Viewed 7490 times
  • Hello All,

    To run temporary demo, Please follow the below steps :
    1) Run git clone https://github.com/ChokshiUtsav/BitTorrent.git
    2) make run
    3) Open bittorrent_backend_show along with boardlog opened.

    You should be able to see pieces of torrent file being downloaded and torrent file being created at /tmp0/1.

    I am attaching screenshot for reference : https://snag.gy/a9Fg0b.jpg

    If you are not able to run the demo, let me know (I am available on IRC with user name (Utsav_Chokshi)).

    Thanks !
  • Hello All,

    I have prepared video which follows steps mentioned in the last post.

    https://youtu.be/s4RyjN1IZ-E

    Thanks :)
  • Есть порт Bittorent под КОС, но в самих дистрах КОС его нет. Есть возможность хотя бы доработать до рабочего состояния?
    https://github.com/ChokshiUtsav/BitTorrent
  • Technically it is possible. But requires much time, and nobody is working on it.
    I can share some knowledge if somebody wants to contribute.
  • Круто! Могу качать торренты на Kolibri! Думаю, надо один из них доработать и добавить в поставку KolibriOS в раздел сеть.
  • Who is online

    Users browsing this forum: No registered users and 2 guests