+ Reply to Thread
Results 1 to 8 of 8

Thread: RatioBoost

  1. #1

    Cool RatioBoost

    Hi,

    I made a tool called RatioBoost. Due to the last of torrent ratio tools on Linux. I already made a post before but looks like it didnt work ?

    any way here's the project link for anyone that's interested. All the detail you need are there. Theres a C and Java version available. I have linked to the Java version as it works on all Operating systems. So linux users rejoice !


    https://github.com/flightcrank/JRatioBoost

    Click image for larger version. 

Name:	H6QRLGE.png 
Views:	49 
Size:	48.0 KB 
ID:	20162
    Reply With QuoteReply With Quote
    Thanks

  2. Who Said Thanks:

    anon (20.07.19)

  3. #2
    Moderator
    Rebound's Avatar
    Join Date
    19.04.07
    Location
    Ende der Welt
    P2P Client
    Faze Mod 0.2 Private Beta
    Posts
    3,723
    Activity Longevity
    6/20 20/20
    Today Posts
    0/5 sssss3723
    Firstly, thanks for posting your ratio tool here. But your thread lacks some information. Please add the following information:

    - Upload the mod as attachment
    - Add a description about the features
    - You are talking about a C version. Where is it?
    - Add a version number to compare future updates

    Please fix these issues shortly.


    Reply With QuoteReply With Quote
    Thanks

  4. #3
    Quote Originally Posted by Rebound View Post
    Firstly, thanks for posting your ratio tool here. But your thread lacks some information. Please add the following information:

    - Upload the mod as attachment
    - Add a description about the features
    - You are talking about a C version. Where is it?
    - Add a version number to compare future updates

    Please fix these issues shortly.
    well uploading it as an attachment would be a bit silly as it could get out of date if i add new features. I linked to the git hub where the lastest version will always be hosted.

    The description is right there on the github README file, which is displayed by default.

    The C version is on my github profile.

    Version number is in the about menu of program. but the github repo will always have the latest version. so you can check out the commits section to find the last features added.
    Reply With QuoteReply With Quote
    Thanks

  5. #4
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    39,382
    Activity Longevity
    11/20 19/20
    Today Posts
    1/5 ssss39382
    A detailed first post and attachments are important, to bring your thread in line with the "quality standards" for this section. Otherwise it'll just be a doorway to GitHub If you don't have the time for that it's fine, we can move it to BT Talk.

    Anyway, I checked your program out and it seems extremely simplistic so far. Which client does it emulate, and how accurately? How do you deal with special cases like tracker errors, redirects and such? Even with a deliberately minimalistic approach, there's a lot that must be considered and done to get things right. I'd start by reading all threads in the http://www.sb-innovation.de/forumdis...Knowledge-Base as well as anthony-joal's posts in this forum (and his program's source code, to see practical examples).
    "I just remembered something that happened a long time ago."
    Reply With QuoteReply With Quote
    Thanks

  6. Who Said Thanks:

    alpacino (29.07.19) , Rebound (20.07.19)

  7. #5
    Quote Originally Posted by anon View Post
    Anyway, I checked your program out and it seems extremely simplistic so far.
    yeah its a simple solution to a simple problem. pick a torrent to spoof uplaods, hit start

    Quote Originally Posted by anon View Post
    Which client does it emulate, and how accurately?
    It has default options of ktorrent 5.11 and transmission2.94.
    It can also do any version of those as well as qbittorrent, javatorrent and utorrent if you select custom client menu, just right click anywhere for the popup menu. and you can input any version of those clients you wish.

    100% accuracy, just enter in a valid version number. Its sent to the tracker via the Peer_ID. Its not something that needs "accuracy". its just a few bytes for the client ID and a few more for the version number.

    Quote Originally Posted by anon View Post
    How do you deal with special cases like tracker errors, redirects and such?
    check console for output for tracker errors. If anything fails just post an issue on github explaining what happens.


    Quote Originally Posted by anon View Post
    Even with a deliberately minimalistic approach, there's a lot that must be considered and done to get things right. .
    It has been tested and works on torrenleech, revtt, bitme(when it was up) and many other. works fine on all of them. Again if anything fails or you would like to request a feature just post an issue on the github repo, and ill see what i can do. The source is open to feel free to snoop around.
    Reply With QuoteReply With Quote
    Thanks

  8. Who Said Thanks:

    anon (23.07.19)

  9. #6
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    39,382
    Activity Longevity
    11/20 19/20
    Today Posts
    1/5 ssss39382
    Quote Originally Posted by flightcrank View Post
    100% accuracy, just enter in a valid version number. Its sent to the tracker via the Peer_ID. Its not something that needs "accuracy". its just a few bytes for the client ID and a few more for the version number.
    It's a lot more complex than that, there are many variables involved in performing an accurate emulation.

    • Which part of the peer_id is the static prefix, and which part is dynamic? What's the pattern for the latter? (Letters, numbers, alphanumeric, random data; are all letters/numbers/bytes eligible?)
    • What's the pattern for the key value? (Letters, numbers, alphanumeric, random data; are all letters/numbers/bytes eligible?)
    • For the info_hash and peer_id, which characters are always URL-encoded and which ones aren't?
    • Is the peer_id the same for all torrents or different for each? Is it regenerated when you stop and restart them?
    • What's the length for the key value? Is it the same for all torrents or different for each? Is it regenerated when you stop and restart them?
    • Are the uploaded, downloaded, left and corrupt (if present) parameters reported as a multiple of 1, 16384 or the torrent's piece size?
    • Which parameters are sent in the query string? Is the HTTP protocol version 1.0 or 1.1?
    • Is the numwant value static, random or user-defined?
    • If an IP address is sent (ip, localip, ipv4), should it be IPv4 or IPv6? What's the priority if there are multiple addresses and/or protocols?
    • What about additional parameters like OS, Java or libtorrent version?
    • What about additional user-defined parameters? (supportcrypto, requirecrypto, cryptoport, UDP port, sometimes even cookies)
    • For ports 80 and 443, is the port in the Host header implicit or should it still be specified?
    • If scraping is emulated, does it follow all of the above?
    • ...and other stuff I'm probably forgetting.

    Note that I haven't tried your program yet, so for all I know it does everything right. This is just some food for thought
    "I just remembered something that happened a long time ago."
    Reply With QuoteReply With Quote
    Thanks

  10. #7
    Quote Originally Posted by anon View Post
    It's a lot more complex than that, there are many variables involved in performing an accurate emulation.
    no its not complex at all.

    the specification is listed right here

    https://wiki.theory.org/index.php/Bi...tSpecification

    i implemented my program based off it. and it works fine. feel free to actually use it and see for your self. any issues, just post the issue on the github page and ill see what i can do. Or hack away at the code yourself.

    ratio boost supports HTTP trackers only not UDP. As all private trackers i've used are all HTTP.
    Last edited by flightcrank; 25.07.19 at 10:57.
    Reply With QuoteReply With Quote
    Thanks

  11. #8
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    39,382
    Activity Longevity
    11/20 19/20
    Today Posts
    1/5 ssss39382
    Quote Originally Posted by flightcrank View Post
    no its not complex at all.

    the specification is listed right here

    https://wiki.theory.org/index.php/Bi...tSpecification
    Unfortunately, most clients ignore the specification on some regards (e.g. info_hash encoding) and make up their own rules where it isn't specific enough.
    "I just remembered something that happened a long time ago."
    Reply With QuoteReply With Quote
    Thanks

+ Reply to Thread

Tags for this Thread

Posting Permissions

  • You may post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts
  •