Slashdot Mirror


Making BitTorrent Clients Prioritize By Geography?

Daengbo writes "While I live in S.Korea and have virtually unlimited bandwidth in and out of the country, not all my Asian friends are so lucky. Many of the SE Asian and African countries have small international pipes. Even when a user has a high-speed local connection, downloads from abroad will trickle in. Bittorrent clients apparently don't prioritize other users on the same ISP or at least in the same country. Why is that? Is it difficult to manage? If I were to write a plug-in for, say, Deluge, what hurdles would I be likely to come across? If this functionality is available in other clients or through plug-ins, please chime in."

227 comments

  1. Azereus already has a plugin for this by dave562 · · Score: 4, Informative

    There is already a plugin for Azereus that does this. I downloaded it about a year ago. I'm at work right now or otherwise I would look at my installation and tell you the exact name of it.

    1. Re:Azereus already has a plugin for this by LSD-OBS · · Score: 4, Informative

      Is that the same plugin that constantly runs a barrage of pings in a hidden shell? Can't remember the name, but I ran a similar sounding plugin and didn't see much speed improvement but it sure did chew up my CPU.

      --
      Today's weirdness is tomorrow's reason why. -- Hunter S. Thompson
    2. Re:Azereus already has a plugin for this by markov_chain · · Score: 5, Funny

      You can tell me, I work in the same place.

      --
      Tsunami -- You can't bring a good wave down!
    3. Re:Azereus already has a plugin for this by dave562 · · Score: 2, Informative

      It probably is the same one. I seem to remember that it was developed as part of a university project. I probably even read about it right here on /. I never checked the background activity so I can't comment on the barrage of pings. I do recall that it didn't make much of a difference in my torrent speeds. I'm on DSL at home and always get consistently good torrent performance.

    4. Re:Azereus already has a plugin for this by mark_hill97 · · Score: 5, Informative

      It is called Ono and it can be found here

    5. Re:Azereus already has a plugin for this by ElizabethGreene · · Score: 2, Interesting

      You could make a whole lot of ISP's happy by prioritizing the "closest" hosts. To do this would require computing the number of hops between the two devices. Ip packets have a ttl header that is (or should be) decremented by each router in the path. A little "magic" would be required since hosts don't universally have a consistent beginning ttl, and some firewalls play with it to obscure the host information. Discovering it shouldn't be too hard though. Another factor could be latency between hosts. This works on the assumption that a packet will have queue delays if it is on a congested link. This isn't always accurate because of high-bandwidth high-latency links. fun,fun,fun. -ellie

    6. Re:Azereus already has a plugin for this by electrosoccertux · · Score: 2, Funny

      Where do you two work, I want to come join you so I can browse /. instead of doing my job. :p

    7. Re:Azereus already has a plugin for this by revlayle · · Score: 1, Funny

      you mean like you are doing RIGHT NOW??

    8. Re:Azereus already has a plugin for this by Anonymous Coward · · Score: 0

      There's also p4p
      http://azureus.sourceforge.net/plugin_details.php?plugin=p4p

      But this requires support from your ISP

    9. Re:Azereus already has a plugin for this by Ex-MislTech · · Score: 1

      I wish there was a way to setup a p2p app with something
      like internet radios multi cast.

      basically 100 or 100,000 ppl could download because they
      would "tune in" to a download that was just like a song
      that played, and replayed and eventually they would have
      all the song once the CRC lines up.

      It would save enormous amounts of bandwidth, and if you could
      get multi-seeds setup, you could tune into other parts
      of the data stream and get it faster.

      Ie. if 5 ppl were seeding, they'd xmit just 20% of the total
      stream and the server client could negotiate which parts.

      It would take less bandwidth and be faster IMHO.

      --
      google "32 trillion offshore needs IRS attention"
    10. Re:Azereus already has a plugin for this by phillips321 · · Score: 1

      But this requires support from your ISP

      Like hell is that going to happen!

    11. Re:Azereus already has a plugin for this by Sancho · · Score: 4, Interesting

      ISPs actually like P4P. It gives the customers what they want (fast P2P) and it gives the ISPs what they want (less data sent to the tubes that they don't own, and thus reduced costs and overhead.)

    12. Re:Azereus already has a plugin for this by Phroggy · · Score: 1

      Yeah, but getting paid for it would be sweet!

      --
      $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
      $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
    13. Re:Azereus already has a plugin for this by Shotgun · · Score: 1

      It just requires a traceroute to the handful of connections each client makes. Throw is a little routing protocol, and your in business against Cisco.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    14. Re:Azereus already has a plugin for this by Anonymous Coward · · Score: 0

      to be honest i think this plugin over engineers a solution.

      if your in UK and peer is in Tokyo you would be looking at 245ms going via SEMEWE3 then into the mesh that goes into tokyo. You may still get higher latency from someone closer as in EU as networks out there are not quite as efficient and or significantly more over subscribed.

      i suggest search peers by overall avail throughput rather then worring about 100ms difference in latency.

    15. Re:Azereus already has a plugin for this by mcnellis · · Score: 5, Interesting
    16. Re:Azereus already has a plugin for this by Guspaz · · Score: 2, Insightful

      The "barrage" of pings may not have been necessary. A good first step is simply running the IPs through a geolocation database. There are various free ones available, and it's a pretty good first step for narrowing things down. They're very effective at getting the country right, and do a decent job at getting you to at least a nearby city.

      From there, if you need farther precision, a single ICMP packet is required to determine the number of hops to a host by checking the TTL. Combine these two things and it shouldn't take much work to get a list of close-by IPs.

      If you're considering connecting to 1000 hosts, it would take just a few seconds (or a fraction of a second) to run them all through a geolocation database, and then a few seconds to send off the thousand pings (while 1000 pings would only require 56KB of data to be sent, you might want to send them out a bit slower than that).

      All in all, I don't see why you couldn't evaluate all the IPs provided by the tracker in a matter of seconds, getting both geographic and network distances to each one. That should then be more than enough information to make decent guesses about what the best IPs to connect to are.

    17. Re:Azereus already has a plugin for this by mrjane · · Score: 1

      Ono

    18. Re:Azereus already has a plugin for this by Zsub · · Score: 1

      It doesn't quite matter if they respond or not, depending on how strict your criteria for choosing a certain host to connect to are. This is because generally speaking, if a home router doesn't respond to pings, your traceroute is only one hop off. Therefore, it should not interfere too much with your results.

      But it could be easier to just use Vuze (Azureus) and the plugin developed by Yale. It's called P4P and works in a slightly different way in that it requires your ISP to take action. In a way, your ISP acts as the tracker, so for them it is very easy to determine which peer has which piece on their own network so in principle you won't have to get the piece from someone with a different ISP or even in a different country, which could greatly increase the download speed.

      Please note that this requires an ISP which participates in this trial.

    19. Re:Azereus already has a plugin for this by Zsub · · Score: 1

      Oh please... For file-transfers, ping is much less important than it is for, say, online gaming. Ping merely depicts the time a single packet takes to get to a certain host. I have had ping times of over a second to a host and still a consistent 5 megabytes per second download speed from that same host, so in that regard they really are pointless to look at.

      On the other hand, a high ping time could indicate congestion due to overloaded tubes or routers. But the main thing in that sentence is "could," since it is by no means an accurate measurement of it.

    20. Re:Azereus already has a plugin for this by ElizabethGreene · · Score: 1

      In firefox, ctrl-f is the find command. According to Ctrl-f, Ping wasn't in either of the parents. I was talking about "it takes 30 ms to get a full data packet from A, and 140 ms from B" I'll take A as the preferred host.

      _or_

      A is 4 hops away, B is 13, prefer host A logic.

      Neither is perfect, and they accomplish different goals. The low-hop-count goal would benefit ISP's. The low latency method benefits... em... nobody? Unless Latency is a function of hop count or congestion...

    21. Re:Azereus already has a plugin for this by Guspaz · · Score: 1

      This can be solved by a binary search of the possible TTLs to determine the actual distance to the hop closest to the remote host that does respond to ICMP packets; probably the second to last hop.

      Alternatively, you can just send out all the pings at more or less the same time with all the maximum TTLs and quickly map the path.

      Of course, geolocation gets you most of the way there to begin with. Knowing the distance in hops just helps refine that.

  2. "Prioritizing" by zombietangelo · · Score: 5, Insightful

    IPs could, theoretically, be prioritized based on a database of known general geographies associated with certain digits. Just remember - prioritizing is one thing, but it's a slippery slope to peer exclusion.

    1. Re:"Prioritizing" by Anonymous Coward · · Score: 0

      It's called a sorted list.

    2. Re:"Prioritizing" by evanbd · · Score: 4, Insightful

      Just remember - prioritizing is one thing, but it's a slippery slope to peer exclusion.

      Not really. Prioritize who you request data from, but not who you send it to. If all incoming requests are treated equally, but you only request from the optimal peers, you get all the benefits without any of the omgcensorship fud.

    3. Re:"Prioritizing" by cs02rm0 · · Score: 1

      I believe IPv6 addresses give you quite a lot of location information (lots more than IPv4).

    4. Re:"Prioritizing" by bluefoxlucid · · Score: 1

      Theoretically == libgeoip

    5. Re:"Prioritizing" by Anonymous Coward · · Score: 0

      Why not prioritize local rings ISP then straight forward regional rings (multi-ISP) followed by nations then the world.

      I would guess this could be handled by a trace route.

      Creating a database of routers would be easier than possibly dynamic IP sets used for home subscribers

    6. Re:"Prioritizing" by Anonymous Coward · · Score: 0

      Why not use a database of ISP routers. That way you could prioritize your ISPs local ring, then the multi-ISP regional rings, followed by national rings and the world.

      It could be handled with a simple trace route and would over come any issues that would result from chasing the dynamic IPs that ISPs give to home users.

      Also, I would guess routers would ensure geographical proximity more than End client IPs would as well as require fewer database updates

    7. Re:"Prioritizing" by Shotgun · · Score: 1

      Except that in the real world, a client would be hacked to request from everyone that it can hear off. It will just be smart enough to request more from those that answer faster.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    8. Re:"Prioritizing" by pipatron · · Score: 1

      Oh my god! You mean it will be hacked to work in exactly the same way it works now?

      --
      c++; /* this makes c bigger but returns the old value */
    9. Re:"Prioritizing" by master_p · · Score: 1

      Couldn't it be done automatically by the application? The BitTorrent client could read the user's location from the locale and encode it in the tracker, then other clients can select this client based on the geographical information contained in the tracker.

  3. Does it not already happen? by Anonymous Coward · · Score: 0

    I was under the impression that utorrent already did this, at least to a 'country' degree.

  4. uTorrent by SpitfireSMS · · Score: 5, Informative

    uTorrent has a feature called local peer discovery that does that exactly. It was even able to discover other people at my university sharing the files.

    1. Re:uTorrent by __aardcx5948 · · Score: 1

      utorrent also works perfectly under wine, might give it some memory overhead though. But is there really a better torrent client?

    2. Re:uTorrent by X0563511 · · Score: 5, Informative
      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    3. Re:uTorrent by __aardcx5948 · · Score: 1

      It seems rtorrent is run in a terminal? I do actually have a display adapter, so I might as well use it. No thanks, I'll stick to deluge/transmission occasionally or utorrent for hardcore stuff.

    4. Re:uTorrent by easyTree · · Score: 2, Funny

      But is there really a better torrent client?

      Negative.

    5. Re:uTorrent by vally_manea · · Score: 1

      using KTorrent for a long time and never had any problems.

    6. Re:uTorrent by gstoddart · · Score: 1

      uTorrent has a feature called local peer discovery that does that exactly. It was even able to discover other people at my university sharing the files.

      Don't tell the RIAA -- they'll get a law passed insisting the universities implement this so they can keep their funding if they turn over the list. :-P

      Cheers

      --
      Lost at C:>. Found at C.
    7. Re:uTorrent by msormune · · Score: 1

      Is the plugin called "To-be busted by the RIAA" plugin?

    8. Re:uTorrent by Hal_Porter · · Score: 1

      It seems rtorrent is run in a terminal? I do actually have a display adapter, so I might as well use it.

      god# killit --withfire \automnt\Earth\Humans\SlashdotUsers\Fackamato

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    9. Re:uTorrent by GuldKalle · · Score: 2, Interesting

      It's not a plugin, and it doesn't make you more or less likely to get busted. It simply searched the peer list from the tracker and prioritizes peers on the same subnet as you, and optionally removes your throughput limits.
      A good feature, but it doesn't completely solve the problem, since it only works within your local subnet, and is therefore inherently incompatible with NAT.

      --
      What?
    10. Re:uTorrent by lc_overlord · · Score: 2, Interesting

      Well not exactly, it does try to find local users, but that is more or less useless on anything larger than any single localized network, like a university, which is all good and well.
      But i seriously doubt that it optimizes this in a way that takes the network infrastructure in consideration.
      Even though the local peer your downloading from may be your neighbor you might just end up being routed trough Zimbabwe for all utorrent cares at this moment, especially if net neutrality is destroyed.
      And that is not good for anyone.

      --
      - "There is nothing quite like an ineffective solution to an nonexistant problem"
    11. Re:uTorrent by F�an�ro · · Score: 4, Informative

      Local peer Discovery works only within a lan, the corresponding broadcast messages are not routed over the internet

    12. Re:uTorrent by Lundse · · Score: 3, Funny

      You must be root to do that!

      --
      IAIFARSIJDPOOTV - I Am In Fact A Reality Star; I Just Don't Play One On TV
    13. Re:uTorrent by Lord+Jester · · Score: 1

      Same here...

      I can enable remote admin of it as well and manage torrents while away.

    14. Re:uTorrent by Rikiji7 · · Score: 1

      AGREE.

      --
      slashwhat?
    15. Re:uTorrent by 3p1ph4ny · · Score: 1

      Hence the `#'.

    16. Re:uTorrent by Methlin · · Score: 2

      So you'd rather sacrifice performance, stability, footprint, and automation for shiny progress bars. Got it. Of course you could just use one of the several XMLRPC based GUIs for rtorrent.

    17. Re:uTorrent by phillips321 · · Score: 1

      torrentflux, my whole household can manage the file downloads to a single point (and i can admin it)

    18. Re:uTorrent by __aardcx5948 · · Score: 2, Interesting

      Performance? We're talking downloading files here, not running benchmarks or some shit like that. At 1MiB/s, wine+utorrent uses roughly 3% CPU on my machine, which is nothing. Stability? It hasn't crashed so far in the 1+ year I've used it. Shiny progress bars? No, I've disabled them. I only see "% complete", no progress bar, among my torrents. The GUI is well done, it lets me do what I want and do it fast. I don't have to look for anything, buttons (if I'd use them) are in the right places. Actually I rarely press any buttons, utorrent autoopens any torrent I click on in the webbrowser and shows me a list of files in the torrent, all preselected. Then select files if you don't want them all, and any speed caps etc, press ok. Of course you could disable the box that shows up, if you're not into that sort of thing. IMO when just browsing the web, clicking around, I'd hate to put both hands on the keyboard just to type something in, or enter a key shortcut, when I could just move the mouse pointer somewhere and click a button. Seamless. But hey, maybe you don't use a DE, maybe you use a tiling WM with 2423423 xterms up, coding stuff. Then utorrent would stand out I guess.

    19. Re:uTorrent by Lundse · · Score: 1

      Hence the `#'.

      Dang it!
      And here I thought I was being all gnu/linux-like with the gnu/linux crowd...
      As a philosopher, though, I am not too sure god is root - but that is a semantic point, nothing wrong with the syntax but my understanding of it.

      --
      IAIFARSIJDPOOTV - I Am In Fact A Reality Star; I Just Don't Play One On TV
    20. Re:uTorrent by imbaczek · · Score: 1

      that's no root, that's merely a bush in the garden of eden.

    21. Re:uTorrent by Freultwah · · Score: 5, Interesting

      I run rtorrent in a detached screen session on a headless FreeBSD machine tucked away in the closet. I add torrent files to it just by dropping them into rtorrent's watch folder, everything else (starting, stopping, throttle management for off hours) is taken care of automatically. I do not have to have my laptop on or listen to the desktop whine all the time. Plus, rtorrent is blazing fast AND platform agnostic.

      It is also accessible in many ways, ssh being the most obvious, but there are also many GUIs available, with which you can manage torrents from afar. I like it how it is possible to add a torrent to the queue, then take a 3 hour train ride home and find it's all done for you. Magic. So, yes, a torrent client that is run in a terminal can be a Very Good Thing for those who can set it up and use it the way it was meant to be. (And I am pretty sure it was meant to be used that way.)

    22. Re:uTorrent by __aardcx5948 · · Score: 1

      I only have one computer. If I had a fileserver, rtorrent would be running on it. But I don't. ;-)

    23. Re:uTorrent by bluefoxlucid · · Score: 1

      ws_ftp's GUI costs it half its transfer speed, more if it updates the display a lot. Play with the scrollbar and you can slow it down from 200k/s to 20k/s; then use wget and grab yourself that same file at 600k/s from the same server. Thread vs process prioritization.

    24. Re:uTorrent by Free+the+Cowards · · Score: 4, Insightful

      That just means that ws_ftp's GUI is a pile of shit, it doesn't mean that GUIs are inherently slow.

      --
      If you mod me Overrated, you are admitting that you have no penis.
    25. Re:uTorrent by m50d · · Score: 1

      Fuck NAT users. If they want to break their internet, they can. It's stupid trying to code every protocol to work around their stupidity.

      --
      I am trolling
    26. Re:uTorrent by HeronBlademaster · · Score: 1

      Agreed. Programs that slow down their background processing when I interact with the UI quickly become footnotes in my history of computer usage.

    27. Re:uTorrent by bluefoxlucid · · Score: 2, Insightful

      Actually they're both true. The OS will schedule the whole process, and react to threads; the GUI thread can overtake the network thread and the whole process will get bumped down as a unit once it's used its CPU allotment. Bad network protocol behavior, reacting to too much i/o demand, etc, and the OS will schedule a lot more CPU time to the GUI and slow down network transmission; bad programming in the UI can also affect this. In either case, the presence of a GUI or extremely active text UI will slow down network activity; it's usually by a very small amount if everyone did their homework, but it's present, even in Firefox vs. wget.

    28. Re:uTorrent by Free+the+Cowards · · Score: 1

      Nothing makes a GUI inherently any slower than a text interface. A good GUI should take up a miniscule percentage of your overall CPU. And if your CPU isn't being used at 100%, then it has enough time to run and should not slow down. If it does, it means that the networking is blocking on the CPU or that your CPU is over-utilized and you're starting to have contention between different processes.

      On another note, Firefox is a bloated pig and is not a good example of GUI downloaders.

      --
      If you mod me Overrated, you are admitting that you have no penis.
    29. Re:uTorrent by Sancho · · Score: 1

      I didn't realize that using Bittorrent was so complicated. Usually I just type "rtorrent *.torrent" in my terminal and go for lunch. When I get back, my files are there.

    30. Re:uTorrent by Shotgun · · Score: 1

      If that happens, either your neighbor is not a local peer, or the peering ISPs have some severely broken routers.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    31. Re:uTorrent by __aardcx5948 · · Score: 1

      Well sure. But I don't usually have terminals open. Hence point and click operation.

    32. Re:uTorrent by Wraithlyn · · Score: 1

      "I like it how it is possible to add a torrent to the queue, then take a 3 hour train ride home and find it's all done for you. Magic."

      Yes, "magic"... or just use Remote Desktop. ;)

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
    33. Re:uTorrent by X0563511 · · Score: 1

      Heck, set up your RC file, and have a watch folder. Copy (or symlink) a torrent to the directory and go to lunch. rtorrent is cranking away in a screen session the whole time, automatically adds it, starts downloading, seeds based on your rules, and removes it.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    34. Re:uTorrent by X0563511 · · Score: 1

      I only have one machine. It's on all the time though. I usually start up rtorrent in a screen session, with it configured to watch. All I have to do is download a torrent to a particular directory... that's it. The rest gets handled automatically.

      Oh... and don't use smilies like that, they make you look like a tool

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    35. Re:uTorrent by X0563511 · · Score: 1

      Because RDP is so much lighter on bandwidth than a terminal session with a simple command to download the torrent to a particular folder.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    36. Re:uTorrent by Sancho · · Score: 1

      I'll look into that. Honestly, for the most part, it's been apathy that's prevented me from delving into the advanced options. I probably fire up rtorrent twice a year. I'll seed for a day or two, then kill it. If I was a heavy user, I'm sure I'd find more time to streamline the process.

    37. Re:uTorrent by MSZ · · Score: 1, Informative

      export PS1="god#" does not make you root.

      --
      The moon is not fully subjugated. I demand a second assault wave preceded by a massive nuclear bombardment.
    38. Re:uTorrent by __aardcx5948 · · Score: 0, Flamebait

      Go fuck yourself.

    39. Re:uTorrent by GuldKalle · · Score: 1

      If that was the only problem, then yeah. But note that NAT incompatibility is only a sub-problem of the first problem I mentioned, that it only works on the local subnet, and therefore not across national ISPs, or different segments of the same ISP.

      I am trolling

      I know :)

      --
      What?
    40. Re:uTorrent by generica1 · · Score: 1

      Yup, I love KTorrent as well. I keep it running 24/7 in a virtual desktop on my Knoppmyth living room setup and VNC into it when I need to (which is only when I want to grab something from one of my RSS torrent feeds that isn't already being matched by a regex search for auto-download/seeding). I use a watch folder for my other machines in the house to download torrents.. right click, save as, into the watch folder over the network and KTorrent does the rest. And there is a nice little GUI there if I need it, but the remote admin is very useful.

      --
      JUMP JUMP JUMP JUMP JUMP JUMP JUMP JUMP IRRIGATE
    41. Re:uTorrent by Methlin · · Score: 1

      Pro tip: you don't have to use a terminal to use or configure rtorrent. It too has a point and drool interface. Several in fact. It can be started as a unprivileged daemon on boot so you never have to see its curses interface ever.

    42. Re:uTorrent by Phaedrus420 · · Score: 0

      Thank you.

      That is all.

      --
      And what is good, Phaedrus, And what is not good... Need we ask anyone to tell us these things?
    43. Re:uTorrent by Methlin · · Score: 1

      Performance? We're talking downloading files here, not running benchmarks or some shit like that. At 1MiB/s, wine+utorrent uses roughly 3% CPU on my machine, which is nothing.

      Try moving real bandwidth with that.

      Stability? It hasn't crashed so far in the 1+ year I've used it.

      Your uptime must by terrible to have never run into socket problems from Wine.

      Shiny progress bars? No, I've disabled them. I only see "% complete", no progress bar, among my torrents.

      What's that heavy UI for then?

      The GUI is well done.. blah blah blah pointless drivel that every modern client does...

      All of which rtorrent does in addition to everything it does that utorrent doesn't. BTW rtorrent doesn't require you to open a terminal, even to start it, and keep it open as you seem to think it does.

    44. Re:uTorrent by Anonymous Coward · · Score: 0

      god# killit --withfire \automnt\Earth\Humans\SlashdotUsers\Fackamato

      Wouldn't that be:

      god# killit --withfire /automnt/Earth/Humans/SlashdotUsers/Fackamato

    45. Re:uTorrent by Hal_Porter · · Score: 1

      Nope, God uses a Microsoft derived OS.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    46. Re:uTorrent by Chris+Pimlott · · Score: 1

      Do you have any recommendations for remote GUIs for rtorrent? I'm all for a command-line bt client, but a nice GUI option would greatly increase the WAF...

    47. Re:uTorrent by k8to · · Score: 1

      The whole advantage of rtorrent is that it uses minimal CPU, does zero copy wherever possible, and allocates almost no memory at all. rtorrent just mmaps the files and relies on the filesystem cache to do something reasonable.

      Your operating system is smarter about the whole state of your computer than your torrent client. rtorrent makes utorrent look fat.

      The result is you can leave it running essentially forever, and not ever mind. It lets that whole promise of "seeding" for longterm availability be a reality without ever even worrying about it.

      --
      -josh
    48. Re:uTorrent by thogard · · Score: 1

      For anti *AA, I would think that the preferred peers would be on your local net (i.e. same cable segment, same DSLAM, same house) or very, very far away and never in the same country.

    49. Re:uTorrent by msormune · · Score: 1

      At least Azureus has builtin UPNP support, which has always worked for me even with my el cheapo $25 Cable modem/wireless station/router... I wonder if that would solve it. In fact, I think Azureus has had this kind of feature as a plugin for years...

    50. Re:uTorrent by Finite9 · · Score: 1

      me too. rtorrent is great with screen and ssh, but I had forgotten about the watch folder, so I was connecting via VNC to download the torrent file then starting rtorrent manually, and I didn't know you could schedule a throttle, so I will be looking into that...thanks a lot for the tip!

      --
      "Everyone knows that vi vi vi is the number of the beast" -- Richard Stallman
    51. Re:uTorrent by default+luser · · Score: 1

      Nope, God uses a Microsoft derived OS.

      Absolutely!

      Everyone knows God uses Xenix! All the self-torture of using System 5 with a decidely Microsoft aftertaste!

      --

      Man is the animal that laughs.
      And occasionally whores for Karma.

    52. Re:uTorrent by Walter+Carver · · Score: 1

      rtorrent is an excelent idea but it has a big problem. It doesn't start all .torrent files that I give it :( Deluge starts all torrents that rtorrent doesn't.

    53. Re:uTorrent by X0563511 · · Score: 1

      Wierd. i know the example rc file will only start files with ".torrent" - all lowercase. Some torrent sites seem to give you uppercase extensions.

      An adjustment to the file would fix this, or just renaming the file properly.

      If it's something else, I'm sure the rtorrent folks would love a bugreport and sample torrent!

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  5. Ono by pythonax · · Score: 5, Informative

    There is a plugin for Vuze (formerly Azureus) called Ono which does exactly that. Not sure what the problems they ran into, but as it is a college project I am sure they would be willing to discuss some of it with you. http://www.aqualab.cs.northwestern.edu/projects/Ono.html

    1. Re:Ono by noundi · · Score: 1

      I'm sceptical about installing anything that is pronounced "oh no". Same goes with "oh shit", "oh fuck" and "oh my god, what the fuck did I just do!?". ;-)

      --
      I am the lawn!
    2. Re:Ono by Endo13 · · Score: 1

      Vuze, AKA the hot new steaming pile of bloat that wants to be just like Windows Media Player 11. Honestly, I've been using Azureus for years, but when they chose to go this route, I chose to go a different route and neither Azureus nor Vuze now resides on my system.

      --
      There is no -1 Disagree mod. Slashdot.org/faq defines mod options. USE IT.
    3. Re:Ono by odie_q · · Score: 1

      I am still running Azureus 2 on my server, and am very happy with it. It works great and has a good selection of UI and other plugins. I haven't noticed any drawbacks from the release of Vuze. On my laptop, I run Azureus 3, which was released with Vuze. Per personal preference, I don't run the Vuze layer, though. I am very happy with that version too.

      Now there's a version 4 out, which supposedly boasts a lot of enhancements specifically for users of the classic GUI. Azureus is still based on an extensive plugin system, and there are lots of interfaces to choose from, Vuze being one of them.

      --
      ...ceterum censeo Carthaginem esse delendam.
  6. Non-geo-ip by rbanffy · · Score: 3, Interesting

    One would not even need to prioritize by geographic location: the client could easily give extra priority points by network class: C first, then B, then A, then the rest. The odds of having a very fat pipe to another machine in the same class C are far better than having a fat pipe to a random machine across the planet.

    And that would also alleviate the load on backbone links.

    1. Re:Non-geo-ip by VGPowerlord · · Score: 2, Informative

      That doesn't work well with networks split with CIDR. For example, the 24.x.y.z block is in the Class A address range, but it's not a class A block.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    2. Re:Non-geo-ip by jeffmeden · · Score: 1

      He forgot to say: Check ARIN, RIPE, APNIC, etc for the assignment of that block, and analyze accordingly. The information is there, it just has to be asked for.

    3. Re:Non-geo-ip by QuantumRiff · · Score: 1

      you have the "windows guide to networking" definition of Class. Class != subnet mask. Classes are quite a bit different, and millions of times larger than you are thinking.

      For example, the Class A network is:
      1.0.0.1 - 126.255.255.254
      Thats around 2Billion hosts, if i'm not mistaken

      Class C is: 192.0.1.1 - 223.255.255.254

      For reference:
      http://www.webopedia.com/DidYouKnow/Internet/2002/IPaddressing.asp

      --

      What are we going to do tonight Brain?
    4. Re:Non-geo-ip by imbaczek · · Score: 1

      outdated knowledge warning in 3... 2... 1...

      google CIDR.

    5. Re:Non-geo-ip by TheThiefMaster · · Score: 1

      You misread.

      The "class A" networks (plural) each have a unique first octet between 0 and 127. i.e. each class A is 2^24 (~16 million) addresses, and there are 128 class A networks. IIRC 0... and 127... are both reserved, leaving 126.
      "Class B" networks have a unique first two octets, between 128.0 and 191.255. Each contain 2^16 (~65 thousand) addresses, and there are 16,384 class B networks.
      "Class C" networks are identified by the first 3 octets, between 192.0.0 and 223.255.255. Each has only 2^8 (256) addresses in, but there are 2 million class C networks.

      There are 3 reserved address ranges for LANs, one in each class (A, B and C), but only A is a single network range from its class: 10... (A), 172.16-31.. (16xB), 192.168.. (256xC, like a B assigned from the C range).

      Even better, some As and Bs have been broken up and resold, and so companies have ranges of Bs and Cs that they treat as one larger network. Some ISPs have completely discontinuous ranges that they assign IPs from to customers. Some ISPs assign IPs from the same ranges across an entire country, meaning 199.1.1.1 could be one hop from 137.2.2.2, and 1000 miles, 37 routers and 1000ms from 199.1.1.2. This makes it very difficult to work out which hosts are on the same ISP and geographically nearby by IP address alone.

      Things are better under IPv6 because addresses are vaguely hierarchical, so the number of bits at the start of address that you have in common with another IP is a good measure of closeness.

      The best way to tell is still to do a hop count and/or bandwidth test.

      Most BitTorrent clients will prefer peers that they get a better transfer rate from, which is understandable. If you have better connectivity inside your ISP's network than to the outside, it even works as a rudimentary way of prioritising by location.

    6. Re:Non-geo-ip by nabsltd · · Score: 1

      Although it's not perfect, what the GP suggested ("C first, then B, then A, then the rest") would mean that if you are match on /24, then it's likely to be very close. After that, check /16 then /8.

      You could generalize this to just XOR your public IP with the IP address for the proposed peer and count the leading set bits. More bits means the peer is likely closer to you.

      Again, this isn't perfect, but it would help some and doesn't require any extra information about the network other than what is already available to the client.

    7. Re:Non-geo-ip by Anonymous Coward · · Score: 0

      And that's going to work wonder with VPLS...

    8. Re:Non-geo-ip by Anonymous Coward · · Score: 0

      You would want to AND, not XOR. And #25962567 clearly just finished a day class on network administration, and further opted not to read the parent.

    9. Re:Non-geo-ip by Sancho · · Score: 1

      Most BitTorrent clients will prefer peers that they get a better transfer rate from, which is understandable. If you have better connectivity inside your ISP's network than to the outside, it even works as a rudimentary way of prioritising by location.

      And for the stated purpose of the request, it works out better. Unless you've got political concerns, you shouldn't care where your packets are going, or where they're coming from. You should only care that you can send and receive as fast as possible. If that is accomplished, the goal of transferring the whole of the data as quickly as possible is almost certainly going to be accomplished.

      There are other things to be concerned with, though. If only a single peer has a chunk of the data, it's important to get that chunk and replicate it a bit. This prevents the entire torrent from being worthless if that peer drops off before someone else gets it. But assuming a well-distributed torrent, just prioritizing based on speed should be enough.

  7. They should prioritize by altitude by Anonymous Coward · · Score: 4, Funny

    That way they can take advantage of the tendency of IP packets to flow downhill.

    1. Re:They should prioritize by altitude by megamerican · · Score: 1, Redundant

      So that's why my download speed is so much more than my upload speed!

      --
      If you have something that you dont want anyone to know, maybe you shouldnt be doing it in the first place -Eric Schmidt
    2. Re:They should prioritize by altitude by daybot · · Score: 1


      === Joke =====>
      You

    3. Re:They should prioritize by altitude by geirnord · · Score: 1

      Not so good an idea. Then you ould have to create an exception for IP over Avian Carriers, and Ip over Avian Carriers with Quality of Service.

      http://www.faqs.org/rfcs/rfc1149.html
      http://www.faqs.org/rfcs/rfc2549.html

  8. Already Made "Ono" by StarWreck · · Score: 4, Informative

    What you're looking for is an Azureus plugin called "Ono". It prioritized based on router hops. Theoretically, this would make those connected to the same ISP preffered. After that it would make ISP's with direct connections to your ISP preferred. After that, resonably close geographically, ie same country.

    --
    ... and in the DRM, bind them.
    1. Re:Already Made "Ono" by drchoffnes · · Score: 2, Informative

      For the record, it's not quite based on router hops. Ono exploits CDN redirections for very efficient peer baising. You can find the technical details here: http://www.aqualab.cs.northwestern.edu/publications/DChoffnes08Sigcomm.html Also, if you want to restrict biasing to a custom set of IP address blocks, Ono now supports "manual peer biasing" toward those blocks. A description of how to use this feature (tailored for Kiwis) is here: http://homepages.xnet.co.nz/~createcoms/

    2. Re:Already Made "Ono" by asamad · · Score: 1

      that seems to contradict what they say on their site

      from http://www.aqualab.cs.northwestern.edu/projects/Ono.html

      I thought Vuze was already doing network positioning. Why use Ono? Well, as Ledlie, et al have shown, Vuze network coordinates are, too put it mildly, terribly inaccurate. In our own independent measurements, we found that only 10% of the network coordinates had less than 10% error. More than 60% had errors of 100% or more! Besides, unlike traditional network positioning systems, Ono doesn't require active network path measurement to determine relative locations in the network. Only infrequent DNS lookups are needed.

    3. Re:Already Made "Ono" by drchoffnes · · Score: 1
      There's no contradiction.

      Only infrequent DNS lookups are needed.

      In other words, Ono is not counting router hops, though it is true that Ono generally finds peers along shorter IP-level paths. This makes sense, since Ono finds peers relatively nearby.

  9. Latency? Hops? by Midnight+Thunder · · Score: 3, Interesting

    How good is latency or hops as indicator of distance from peer? The idea is that if it takes 5 hops, as opposed to 10, then the peer taking the least hops to get to is the closest.

    --
    Jumpstart the tartan drive.
    1. Re:Latency? Hops? by Anonymous Coward · · Score: 0

      It depends on the algorithm used with the routers.

      http://en.wikipedia.org/wiki/Routing#Comparison_of_routing_algorithms

      I studied this stuff in school and it's not always the closest geographically. It's based on the cost of the network connection and algorithm used. OSPF, Bellman-Ford, etc.

      Look at that article and it'll probably help alleviate some confusion.

    2. Re:Latency? Hops? by Shotgun · · Score: 1

      What the parent was speaking of is basically RIP, and it would work fairly well up to the ISP's border routers. Everything would appear to be fairly flat between various end host inside the ISP's network, and then the hop count would get erratic. After the border routers, the RIP algorithm would be next to useless.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
  10. For Vuze, there's Ono and P4P by chrysrobyn · · Score: 5, Informative

    For Vuze, formerly Azureus, there are Ono and P4P, which should do what you're looking for, although for different reasons. Unfortunately, they both rely on people in your region being interested in the same torrents you are, while P4P additionally benefits from an iTracker, an ISP provided tracker that's topology aware (they did some work to prioritize based on ping latency, using that as a distance estimate, but I don't know if it's a fallback mechanism). Due to the iTracker infrastructure and possibly conflicting supporters, there are some privacy concerns.

    1. Re:For Vuze, there's Ono and P4P by onkelonkel · · Score: 1

      "they both rely on people in your region being interested in the same torrents you are"

      No Problem. I mean, come on, who doesn't like midget llama spanking pr0n?

      --
      None of them can see the clouds; The polished wings don't care.
    2. Re:For Vuze, there's Ono and P4P by Anonymous Coward · · Score: 0

      Wait a minute. Is that midgets spanking llamas, or midget llamas being spanked by regular sized folk? If it is the former, I'm right in the swarm with you, but the latter is just sick.

  11. Geolocation libraries by VGPowerlord · · Score: 2, Informative

    "Bittorrent clients apparently don't prioritize other users on the same ISP or at least in the same country. Why is that? Is it difficult to manage?"
    The reason BitTorrent doesn't prioritize other users on the same ISP or the same country is that it doesn't know which ones are part of the same ISP or the same country. For ISPs, since the introduction of CIDR addresses, ISPs can have multiple blocks of IPs. Can you honestly tell me what all of, say, Comcast's IP blocks are with any degree of certainty?

    For countries, you either need to know which IP blocks IANA has allocated to which IP registry or use a geolocation library.

    MaxMind's GeoIP seems to be the de facto geolocation library, but they charge money for the "good" version. There is a free version now, but it has some annoying requirements, such as having to include "This product includes GeoLite data created by MaxMind, available from http://maxmind.com/" in all advertising materials and documentation. It also only has a 99.5% accuracy as claimed by its creators, which means the the accuracy is probably considerably lower than they claim. Even if it were 99.5%, that means it's wrong for 1 out of every 200 people.

    --
    GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    1. Re:Geolocation libraries by yachius · · Score: 3, Insightful

      The 99.5% accuracy number is considerably greater than 1/200. The accuracy figure is not a percentage of lookups that are incorrect, but of how close to the correct physical location the query result will be. Even the .5% of wrong locations won't be on the wrong side of the planet so it still makes for a very useful resource for figuring out regions.

    2. Re:Geolocation libraries by vux984 · · Score: 1

      Even if it were 99.5%, that means it's wrong for 1 out of every 200 people.

      How wrong is wrong, and is its wrongness regional?

      If it gets the country/state/province right... but wrong town/city, that's not all that bad for this purpose.

      Or If the wrong results / sketchy results are heavily concentrated in Africa and Eastern Europe that's not really going to impact me much, again, that's just fine... at least for me.

    3. Re:Geolocation libraries by Lennie · · Score: 1

      It probably just says something is in europe, instead of country in europe. The free database only has country-information.

      --
      New things are always on the horizon
    4. Re:Geolocation libraries by Bieeanda · · Score: 1
      Another problem is that ISPs will sometimes acquire blocks that the GeoIP services still think are in other countries. One of the big Stateside ones just did (Comcast?) and Google spent some time shunting users in that block to an 'appropriate' Google International start page. I don't want to think about the trouble they must have had with sites that specifically block access from outside of the States, like Showtime.

      And geography is one thing, when you've got trans-oceanic cables to contend with... but routing isn't necessarily going to be any worse internationally, than it is intranationally.

    5. Re:Geolocation libraries by Cajun+Hell · · Score: 1

      Even if it were 99.5%, that means it's wrong for 1 out of every 200 people.

      Is it just my imagination, or is 199 out of 200 pretty damn useful? So you have one slow connection and 199 fast ones? Oh, the horror!

      --
      "Believe me!" -- Donald Trump
  12. Why don't the ISPs help? by PhrostyMcByte · · Score: 4, Insightful

    I've always wondered why ISPs can't give higher speeds if you stay within their network. You'd get your download faster. You'd use less peering bandwidth, costing the ISP less money. Everybody wins.

    1. Re:Why don't the ISPs help? by larry+bagina · · Score: 5, Funny

      Better yet, ISPs should just snail mail their customers linux cds/dvds. That would basically eliminate all torrent traffic.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    2. Re:Why don't the ISPs help? by mewsenews · · Score: 1

      newgroups

    3. Re:Why don't the ISPs help? by drspliff · · Score: 1

      NTL (now virgin media or something) had a large Linux/BSD repository covering all the major distros just a few hops away from me, and yes I got maximum speed downloading from it.

    4. Re:Why don't the ISPs help? by MooseMuffin · · Score: 5, Funny

      And then they could work on snail mailing truckloads of porn. That would basically eliminate all other traffic.

    5. Re:Why don't the ISPs help? by Xtravar · · Score: 1

      I seem to recall there once was an initiative to push ISPs to have local p2p caches or somesuch. Of course, they want nothing to do with that. Pretty sure I read it on /., but too lazy to find a link.

      --
      Buckle your ROFL belt, we're in for some LOLs.
    6. Re:Why don't the ISPs help? by benthurston27 · · Score: 1

      It would be cool if there was some company that would let you send them all the torrents you want and they download it on their high speed connection and send you a dvd next day. privacy would be an issue though.

    7. Re:Why don't the ISPs help? by arkhan_jg · · Score: 1

      Isn't that what email is for now?

      --
      Remember kids, it's all fun and games until someone commits wholesale galactic genocide.
    8. Re:Why don't the ISPs help? by Shotgun · · Score: 1

      Time-Warner is still not going to give me more than 50k upstream.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    9. Re:Why don't the ISPs help? by bsdewhurst · · Score: 1

      I was a customer of an ISP that did that once, of course you had to mail them the blank CDs first and the only distro that they had was Debian stable.

      I'm not joking, this was back in the good old days of dial up.

  13. Re:Stop It by Sparr0 · · Score: 5, Insightful

    Prioritize by network topology is a better way to put it, that just happens to coincide with physical AND political geography in many cases. In the case where you can get 10Mb over a 10-hop connection, or 8Mb over a 3-hop connection, which do you pick? If you pick the latter, there is a good chance that two other users can utilize the other 70% of that 10-hop connection, making total throughput (theoretically) 24Mb.

  14. Re:Stop It by X0563511 · · Score: 1, Flamebait

    Oh, you meant prioritize by politics, not geography.

    No. You can try reading the summary, asshole. Here, I'll repost it here in case you were too lazy to read it above:

    "While I live in S.Korea and have virtually unlimited bandwidth in and out of the country, not all my Asian friends are so lucky. Many of the SE Asian and African countries have small international pipes. Even when a user has a high-speed local connection, downloads from abroad will trickle in.
    Bittorrent clients apparently don't prioritize other users on the same ISP or at least in the same country. Why is that? Is it difficult to manage? If I were to write a plug-in for, say, Deluge, what hurdles would I be likely to come across? If this functionality is available in other clients or through plug-ins, please chime in."

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  15. You Asians Have Big Pipelines by Anonymous Coward · · Score: 0

    So big pipeline! We American have tiny pipeline. Not big pipeline like you!

    1. Re:You Asians Have Big Pipelines by OpenYourEyes · · Score: 4, Funny

      But we American get email all the time offering to make our pipeline bigger!

    2. Re:You Asians Have Big Pipelines by Kooty-Sentinel · · Score: 1

      The asians are trying to compensate for their tiny pipelines by getting big fat internet pipes. Kind of like the guys who drive hummers and pickup trucks.

      Disclaimer: I'm half asian. I get to pick on my own race.

      --
      Your evaluation period for Productivity 1.0 has ended. Please purchase more coffee to continue using this product.
  16. Re:Stop It by Ian+Alexander · · Score: 1

    Actually, reading the summary, the submitter is concerned with people in countries which have small international pipes- if they can prioritize peers who aren't constrained by the international bottleneck then those people might see a speed bump with bittorrent.

  17. Re:Stop It by Anonymous Coward · · Score: 2, Interesting

    No. Prioritize by ASN. A smart tracker would get a BGP feed and then hook users together based on locality of network connectivity.

    Any other approach is "wrong."

  18. Because it's a pointless thing to do by Nick+Ives · · Score: 4, Insightful

    If your ISPs international pipe is flooded then bittorrent will automatically prefer local peers as they'll be the only people who can send you data at a fast enough rate. If you notice local peers who you're not connected to then it's most likely just because they've already reached their connection limit.

    Most bittorent clients will connect to many peers and try to saturate your downstream bandwidth. They don't care where in the world those peers are as long as they're fast. If, in your part of the world, local peers are faster then that means you should just automatically connect to more local peers.

    --
    Nick
  19. this is a tracker problem, not a client problem by Anonymous Coward · · Score: 0

    This should be solved in the tracker, it should know about Internet topology (full BGP table) and send 2/3 of answers with clients in the same AS-number or max one AS-hop away from you.

    Unfortunately tracker programmers I have spoken to so far have seen this as a performance problem and a complication of their software, and been little interested in this. I am sure the ISP business would be able to save substantial amount of money with this enhancement, and at the same time end users would see improved download times. This is only true to larger torrents though, as torrents with 50-100 peers are less likely to be closer to you.

    1. Re:this is a tracker problem, not a client problem by Intron · · Score: 1

      Since ISPs pay for inter-ISP data and get intra-ISP data "free" you would think they would be willing to spend money on developing the tracker software. Downloads are a significant fraction of their traffic.

      --
      Intron: the portion of DNA which expresses nothing useful.
    2. Re:this is a tracker problem, not a client problem by Klaus_1250 · · Score: 1

      Since ISPs pay for inter-ISP data and get intra-ISP data "free"

      Inter-ISP data can be free as well. Google Peering.

      --
      It only takes one man to change the Wisdom of the Crowd to Tyranny of the Masses.
  20. why not just seek out the higest bandwidth peers? by Anonymous Coward · · Score: 0

    All of this would go away if (and maybe some do already) bittorrent clients just seeked out (and always continued to seek out) the highest bandwidth peers they can find.

    That would even give ISPs the opportunity to promote "in-network" sharing by allowing in-network clients huge amounts of (what is essentially free for the ISP -- when compared to peering bandwidth costs) bandwidth while limiting out-of-network bandwidth.

  21. Napster's Old Peer Selection by Aloisius · · Score: 5, Interesting

    At Napster I wrote a system to weight peers that were closer to the person searching by using network distance.

    It was mostly because universities were complaining and so we weighted everyone on Internet 2 towards each other, but it also worked quite well for service providers like @Home and AOL. Since ISPs don't seem to care as much when their own bandwidth is used, a lot of complaints about our bandwidth consumption disappeared overnight. Indiana state university and someone else helped out if I remember correctly.

    It was a rather simple system that used BGP routing tables from a number of routers to build a graph of network connectivity. It wasn't perfect, but it didn't have to be.

    That said, with IPv6 weighting is *much* easier because of how the IP space is divided up. You can do a super naive implementation just by prefix.

    An Azureus plugin Ono does something similar, though I believe they just look up the IP address for a CDN and weight people that look up the same IP towards each other. It is a decent solution, but it only works for between people who are running the plugin.

    1. Re:Napster's Old Peer Selection by edgecase · · Score: 1

      I agree that using routing information from the BGP routing system makes a lot of sense. Each ISP could give a feed of their routing table to their own customers, which may already contain tags or "community strings" which show what routes are internal, via settlement free "peering" at an Internet Exchange, or via paid transit (their upstream ISPs). The feed could give P2P and other clients information on the prefixes/routes that are "lower cost". The burden of all 269,000 prefixes could be lowered to say 10%by filtering out the ones that have no "discount" on their useage. One obvious use outside p2p/p4p is DNS. There are often "closer" or "farther" choices when given more than one DNS server to query, starting with the root-servers, yet they are normally queried at random. Bind8's sort-list feature could be re-activated, and fed a BGP table of "local" routes, giving quicker and more reliable DNS lookups everywhere.

  22. Silly question. by pluto+replies · · Score: 1

    If people are able to get suped up downloads from their peers based on their location, could this ever lead to extra implications with copyright infringment?

  23. Re:Stop It by Klaus_1250 · · Score: 1

    That approach is wrong as well. Whos says I want or only want to connect to certain pre-selected peers? I don't need or want a tracker doing that for me, I'll do that myself.

    --
    It only takes one man to change the Wisdom of the Crowd to Tyranny of the Masses.
  24. Re:Stop It by inasity_rules · · Score: 1

    No. Prioritize by ASL. A smart tracker would get a BGP feed...

    There fixed it for you...

    Seriously though, I'm not that clued up on network acronyms. I know I'll be told to google it, but why can't we just type the whole set of words out? It's not that hard is it?

    --
    I have determined that my sig is indeterminate.
  25. Tune your TCP Receive Window first by WinDev · · Score: 5, Informative

    The biggest speed issue facing Asia/Australia is the latency of traffic to the rest of the planet. The (Windows) TCP Receive Window is tuned too small for the distances required. If you change the receive window to the maximum, you can get 4x more data in the same period using any client (P2P, browsers, etc...).

    Refer to:
    http://cable-dsl.navasgroup.com/index.htm#IncreasingWindow

    1. Re:Tune your TCP Receive Window first by PhrostyMcByte · · Score: 1

      Note that Vista automatically tunes your receive window for each connection.

  26. Re:Stop It by Anonymous Coward · · Score: 2, Insightful

    I'm, I'll, can't, it's?

    Autonomous System Number. I don't think it helps much either way. You either know what it means or you don't. Also, Border Gateway Protocol.

  27. Re:Stop It by Anonymous Coward · · Score: 1, Interesting

    I suppose it depends on what problem you are solving. If your goal is to get a particular piece of data as quickly as possible, then if it exists on a peer on your local network, that is where you should pull it from.

    If you want a file A, broken up into parts A1, A2, A3, ... A6. Parts A1 - A4 are on computers on your local network (50 Mbps) and parts A1 - A6 are on computers across the ocean (1.5 Mbps), the quickest result will be to begin fetching A5 & A6 from the slow, distant peers and begin fetching A1 - A4 from the fast, local peers. Given the general pointlessness of providing a full BGP feed to every participant in the network, putting it at the tracker is the best location. What's more is that it would be an optimization that could be done now without making any changes at the client end.

    In fact, I would not be surprised to find that ISPs would raise the cap on protocols that encouraged transfers within the ISP's network.

    Basically a self configuring akamai.

  28. They're MY bits, not YOURS by PJ+The+Womble · · Score: 3, Interesting

    When I was in my first year at college, we were asked to produce a questionnaire about using ATMs, including the question: "If you could change one thing about your bank's ATMs, what would it be?"

    The most popular answer I managed to get was "if the machine's running out of money, they should restrict the cash withdrawal function to customers of this branch".

    Does anyone see a parallel here?

    1. Re:They're MY bits, not YOURS by PingSpike · · Score: 1

      Odd. I would have thought "Make it give me free money" would have been the most popular answer.

    2. Re:They're MY bits, not YOURS by TheLink · · Score: 1

      No. If an ATM is running out of money, a notification should be sent, and someone/something should go reload it with money.

      If lots of machines are running out of money, a notification should be sent so that the Bank can ask the Government for a bailout and to make hopefully confidence inspiring statements :).

      --
    3. Re:They're MY bits, not YOURS by PJ+The+Womble · · Score: 2, Funny

      I went to University of Teesside for 3 years. Have you ever been to Middlesbrough? It's grey, cold and wet in July, and the rest of the year the weather is *really* depressing. They're not the most optimistic people in the world. Even free money wouldn't improve their stoical disposition, IMHO.

    4. Re:They're MY bits, not YOURS by fred+fleenblat · · Score: 2, Funny

      I just want to see the see-through pneumatic tubes make a comeback.
      Or at least the ATM should make that THUMK sound when the cash is dispensed.

    5. Re:They're MY bits, not YOURS by PJ+The+Womble · · Score: 1

      Moderate +many. Interesting and funny.

      Though I haven't had a bank statement in 10 years that inspired any confidence.

  29. Re:Stop It by sexconker · · Score: 1

    Yeah, I don't see talking about mountains and canyons and rivers and oceans.
    I see talking about countries and borders and pipes.

  30. Re:Stop It by sexconker · · Score: 1

    Countries. Politics.

    Geography = mountains and canyons and rivers and oceans and etc.

  31. Won't work by Andy+Dodd · · Score: 2, Insightful

    There is little to no support for multicast by last-mile ISPs.

    It would be nice - ISPs keep bitching about how P2P is eating their bandwidth, but they don't bother implementing multicast which would make P2P use a fraction of the bandwidth it currently does.

    Admittedly, in addition to lack of support, IPv4 multicast is pretty "meh" - there aren't many multicast addresses available and I have yet to see a good way of choosing/assigning them on a global network.

    --
    retrorocket.o not found, launch anyway?
    1. Re:Won't work by bluefoxlucid · · Score: 2, Insightful

      It would be nice - ISPs keep bitching about how P2P is eating their bandwidth, but they don't bother implementing multicast which would make P2P use a fraction of the bandwidth it currently does.

      I believe you mean P2P uses a fraction of the bandwidth it would if we had multicast. I have a constant upstream of 200k/s, to 5 clients, each getting 40k/s down from me. With multicast, I could have a constant upstream of 200k/s, to 5 clients, each getting 200k/s from me. This means I would send 200k/s up; my router would route for about 6 hops, then send duplicate packets out to 5 different routers from that hop, which would then send 200k/s down to various points on the Internet. Instead of consuming 200k/s + 200k/s, I'd consume 200k/s + 1000k/s. Further, if 100 people want to download that file at once, I can handle 200k/s transfer to 100 people, and 3 other people can do such, and they can download the file at 600k/s, and really clog the tubes.

      It'd be faster, but it'd chew a hell of a lot more bandwidth at once. The DoS potential would be massive.

    2. Re:Won't work by Sancho · · Score: 1

      Seems like for the bandwidth that ISPs care about (that which they have to send across the backbone), it'd be about the same. But they'd be providing better service, assuming they can fix the DoS issue.

      But it's obviously never going to happen because the implementation details are a pain in the butt.

    3. Re:Won't work by Andy+Dodd · · Score: 3, Informative

      Look at it from a different perspective - 100 people want one file of size A megabytes, and you start with one person seeding.

      With classic unicast distribution, 100*A needs to be sent by that one person.

      With P2P, much less needs to be sent, but still 100*A needs to traverse the network. It may or may not traverse fewer hops - it may in fact traverse more.

      With multicast, A megabytes leave the single origin, and that gets multipled by routers as needed in the most efficient manner. In the end, the least amount of data needs to be sent in order for everyone to achieve completion. Yes, in the short term the network load will probably not be reduced much, but the time that high load occurs for will be far less before everyone has the file and there is little need for lots of bandwidth.

      --
      retrorocket.o not found, launch anyway?
  32. Re:Stop It by bluefoxlucid · · Score: 1

    It's called 'political geography'. You're both right. Now shut the fuck up uneducated troll.

  33. No ISP could afforrd the legal risk by Savage650 · · Score: 1

    The problem is not "getting the software developed" but getting its deployment okayed by the legal department. The risk of being seen as "helping the pirates" will keep ISPs away from this kind of "optimisation".

  34. ISP's are against local serving by Gabrill · · Score: 1

    ISP's in America are against locals serving content. This is very obvious by the fact that your upload allowances are a significant digit smaller than your download allowances. For this reason, bit torrents are far better prioritizing a larger pipe than a shorter hop.

    Remember, ISP's are NOT your friends. They are a contract partner. Their interest is not to make your experience better; it's to only make your experience slightly better than the competition.

    For torrents to coexist with ISP's would require:

    1. Extending a business partnership with them, and convincing them that they CAN allow users to serve content without choking their already oversold bandwidth

    2. Proving to their salespeople that doing so would be an advertisable asset, thus bringing them more customers.

    3. Proving to their lawyers that they would be safe from litigation, both from the media conglomerate and from Uncle Sam controlled by the media conglomerate, for encouraging the spread of unregulated data copying (or copyright infringement to the aforementioned parties).

    --
    Always going forward, 'cause we can't find reverse.
    1. Re:ISP's are against local serving by nabsltd · · Score: 2, Insightful

      Extending a business partnership with them, and convincing them that they CAN allow users to serve content without choking their already oversold bandwidth

      This is fairly easy to do right now eith US ISPs...it's called a "business account".

      They do cost more, but in my case I get 5 static IPs, guaranteed bandwidth, and no interference of any kind with my data (no port blocking, no throttling, and no caps) for $140. Compared to the non-business version with one dynamic IP, port blocking and some throttling (but no caps yet) at $70, it's not a bad deal.

    2. Re:ISP's are against local serving by HeronBlademaster · · Score: 1

      Not all ISPs hate their customers ;) Mine gives me 15Mbps up and down, for $41.90/month. I asked if I can host a server, they said yes. I asked if there's a bandwidth limit; the answer was "yes but we don't have a way to enforce it right now. We'll let you know when that changes."

      Contrast that with what Comcast told me when I called. 7Mbps down, 3Mbps up (or something along those lines) for approximately the same price. Can't host a server. "No bandwidth limit, but if you use too much we'll cut you off." (I understand that Comcast recently made their non-limit limit official, but it's still lame that they told me that.)

    3. Re:ISP's are against local serving by Chandon+Seldon · · Score: 1

      They do cost more, but in my case I get 5 static IPs, guaranteed bandwidth, and no interference of any kind with my data (no port blocking, no throttling, and no caps) for $140.

      Is that for a symmetric link, or do you just get a standard asymmetric account with a couple IPs and a different TOS?

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
    4. Re:ISP's are against local serving by nabsltd · · Score: 1

      That's 20Mbps symmetric for both the regular and business accounts.

      The only real differences are the TOS, the support (24/7 for business), and the static IPs.

    5. Re:ISP's are against local serving by Chandon+Seldon · · Score: 1

      That's 20Mbps symmetric for both the regular and business accounts.

      If consumer accounts are symmetric, then you don't have the general problem that was being complained about in this thread to begin with. Many people are stuck with drastically asymmetric connections as the only consumer-level internet accounts available (think 10Mbps down / 1Mbps up).

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
    6. Re:ISP's are against local serving by mr_walrus · · Score: 1

      last time i tried, my ISP (rogers cable broadband in ontario,canada)
      refuses to provide "business" service to addresses not located
      in a area zone by the municipality as "commercial" in some way.

      i REALLY wish i could get the business class service :(

    7. Re:ISP's are against local serving by kriebz · · Score: 1

      Where do you live? I'd seriously consider moving there.

    8. Re:ISP's are against local serving by nabsltd · · Score: 1

      It's called fiber to the home and it is quickly going to change that.

      Sure, it's not available everywhere, but where it is, other providers will have to match it, or else suffer. Not all the available consumer connections are symmetric, and you pay less if it isn't:

      • 10/2: $48
      • 20/5: $58
      • 20/20: $70
      • 50/20: $145

      This also isn't guaranteed bandwidth, but until you see at least 50% uptake, you'll get those speeds. At 100% uptake, Verizon only has infrastructure to support something like 17Mbps for everyone. Only the highest tier will really be hurt, and honestly I just can't even get 20Mbps download from any one site...I really need multiple connections to do that.

    9. Re:ISP's are against local serving by Anonymous Coward · · Score: 0

      it's not a bad deal.

      Yes. It is.

    10. Re:ISP's are against local serving by HeronBlademaster · · Score: 1

      Provo, Utah. The same fiber network is available up north in Midvale, but I'm not sure if the pricing is the same, since access is through a different company.

    11. Re:ISP's are against local serving by lysergic.acid · · Score: 1

      $140/month for 20 Mbps is a little steep (particularly for home users), even if it's symmetric bandwidth; not to mention the fact that such plans aren't offered in most areas.

      i would hardly call getting a leased-line in a residential area "fairly easy to do" when we have virtually no FttH deployment (1-2%, i think). even Comcast's self-proclaimed "wideband" service that's 50 Mbps for $150/month is still ridiculously overpriced and available in very few areas. in comparison, Japan's already upgrading from their current 100 Mbps home broadband connections to 1 Gbps; and, yes, it's all symmetric.

      but we should have known where broadband was headed as soon as DSL first supplanted dial-up and major ISPs like Verizon tried to limit their residential DSL service to one computer per connection, forbidding the use of internet-sharing NAT routers. i think even now residential broadband subscribers are still prohibited from running any kind of internet server, which is why symmetric bandwidth is not offered to residential subscribers.

    12. Re:ISP's are against local serving by Anonymous Coward · · Score: 0

      I just can't even get 20Mbps download from any one site
      You need to talk to more Koreans and Norwegians.

    13. Re:ISP's are against local serving by Gabrill · · Score: 1

      You have missed the point entirely. The article talks about making bittorrent more efficient using the average account and optimizing "by Geography". So what part of that has the majority of your neighbors upgrading to business accounts, also, let alone the type of individual who would rather chance copyright violation sharks than spend a few bucks on a dvd rental?

      --
      Always going forward, 'cause we can't find reverse.
    14. Re:ISP's are against local serving by Zsub · · Score: 1

      You are right it is :P I get a static IP, no throttling, no blocked ports and no messing with my data at 100 mbit symmetrical for slightly under â3/month. So hah! :P

      On the down side, I am in one subnet with my entire university and there are some guys and galls who like my share of stuff a little too much... It's pretty unbelievable how many port scans and login attempts with default user+pass combinations I see in my sniffer's logs.

  35. Re:Stop It by sexconker · · Score: 1

    Just because there's a term for it doesn't make it true.

    I bet you think male and female refer to behavioral traits and societal norms. You know, just ignore all that biology and science.

  36. Re:Stop It by bluefoxlucid · · Score: 1

    We have male and female RJ-45 connectors, are these biological? Are you going to tell me they're not really "male"?

  37. That isn't what ono does by Nick+Ives · · Score: 2, Interesting

    Ono uses statistical data from CDNs to be a little bit smarter about picking peers in certain cases. In most cases the random solution is fine; your client can just randomly pick peers then stick with fast ones and drop slow ones. Ono aims to improve performance in certain cases where that strategy isn't very good.

    Just in case anyone reading doesn't notice, Ono aims to find peers that are close to you on the network. That doesn't necessarily mean close to you geographically and so doesn't answer this ask /..

    --
    Nick
  38. Personally.. by StikyPad · · Score: 1

    I'd prefer one that deprioritizes (or outright bans) my ISP and geographical region.. but then again, I'm a Comcast subscriber in the US. As a Comcast subscriber, I know that I'm not likely to get decent speed from other Comcast subscribers (unless they happen to be on my node), and as a US citizen, I'm well within the reach of anyone who decides they want to sue me because my kids torrented some MP3s when I wasn't looking.

  39. They already do. by skulgnome · · Score: 1

    It's not explicit, but the tit-for-tat algorithm which is at the core of the self-organization mechanism of BitTorrent already favours fast connections. These generally translate to geographical closeness, but they also end up preferring links that are otherwise quick: for instance, in Finland I get quite a bit of stuff from Sweden thanks to the interconnections and the swedish Bredbandsbolaget.

    Adding a GeoIP style thing to BitTorrent can only make the algorithm perform worse, as it would prefer addresses by geographical locality rather than locality as defined by network topology.

    1. Re:They already do. by rtfa-troll · · Score: 1

      I believe your torrent client normally knows only about a few other users. It's not a large enough sample for you to have a good chance of having someone close. You need the tracker to deliberately distribute some neighbours to you.

      --
      =~ s,(.*),<sarcasm>$1</sarcasm>,g if any_point_you_wish();
    2. Re:They already do. by skulgnome · · Score: 1

      This is incorrect. While it is true that at any given moment a torrent client has connections to a few tens of peers, which peers among the swarm these are changes constantly. The sample size may be small, and typically is by design, but the sampling frequency is quite high.

      Over time (typically a hour or two), combined with the "random unchoke" feature of the tit-for-tat algorithm, this tends to optimize to prefer peers who have demonstrated a high upload bandwidth.

      Introducing a complication such as geolocation data to this can only lead to swarm bisection and other nasty misfeatures that aren't generally foreseen by people enamoured with the Latest, Hottest Thing... Such as the Azureus developers, by how their Java code is structured.

  40. ISPs would love that by Britz · · Score: 1

    Because ISPs need to pay for traffic that leaves their network they try hard for p2p traffic to stay within their network. If someone big would pay for something like this it would be a large ISP. And I think they are already working on something like this. If I am not mistaken it is for Bittorrent. So keep checking.

  41. IP address based routing with CIDR by tepples · · Score: 1

    That doesn't work well with networks split with CIDR

    It does if the algorithm ignores "class" and just prefers hosts with a longer common IP address prefix. Imagine three hosts: you, A on the same /22 as you, and B which is only on the same /9. You're more likely to be close to A than B.

    1. Re:IP address based routing with CIDR by VGPowerlord · · Score: 1

      I don't know how IANA works... do they assign the registries /8 blocks or do they go all the way down to the /24? Since each registry represents an entire continent, this kind of thing is important.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
  42. Re:Stop It by X0563511 · · Score: 1

    Just because three islands are labeled A, B, and C, doesn't change the fact that the cable connecting B and C is small while the one between A and B is larger. Politics has nothing to do with this.

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  43. Re:Stop It by sexconker · · Score: 1, Troll

    They're called male and females colloquially.
    They're called such because they mate (physically couple, much as most male and female organisms do during sexual intercourse).

    And you don't have a male RJ-45 connector.
    RJ-45 is registered jack 45.
    Only the female end is RJ-45.

    Keep trying though.

  44. Re:Stop It by sexconker · · Score: 1

    Politics has a lot to do with it, and in fact is often the reason why countries put big pipes to some countries and small pipes to others. Politics has a lot to do with filtering. Politics has a lot to do with why a person would want to prefer/block certain peers/hops in certain areas.

    Geography has very little to do with it.
    Last I checked, undersea cables were pretty reliable when they weren't being cut "accidentally".
    Mountains don't exactly block packets.
    Rivers don't make my bits come out soggy on the other end.

    Throughput is what matters, and network topology is the best thing to consider (aside from raw throughput, of course).

  45. Someone is working on this already by Cajun+Hell · · Score: 1

    Even when a user has a high-speed local connection, downloads from abroad will trickle in. Bittorrent clients apparently don't prioritize other users on the same ISP or at least in the same country.

    I heard some people are working on an advanced file transfer protocol that solves that problem. They call it HTTP. I don't remember what the letters stand for. Combine that with something called (sorry if I get jargony) a "caching proxy" at the ISP, and it works beautifully.

    --
    "Believe me!" -- Donald Trump
  46. There's no point... by Anonymous Coward · · Score: 0

    BT's tit-for-tat transfer algorithm already favors trading with the peers that you have the fastest connection to. Trying to make it geo-specific will just slow it down.

  47. Re:Stop It by rk · · Score: 1

    You have confused "geography" with "topography" and "terrain". Network topology is certainly constrained by both politics and terrain, both of which are things that can be studied with geography.

  48. Re:Stop It by bluefoxlucid · · Score: 1

    Aha, troll mode: excessive pedant. Got it.

  49. Re:Stop It by sexconker · · Score: 1

    Really, the charting of the earth?

  50. 2 meg data file could solve most of this! by WittyName · · Score: 2, Interesting

    And I proposed it for two popular BitTorrent clients, only to be told, "we don't need that.."

    Simple enough to do. Start with Class C address.. less then 2^24 of them, as some
    are reserved, and not routable. Make a bitmap that big, so divide by 8.
    Only a two meg file. Then just watch your connections, total by bytes received, then divide by 8. If the result is greater than say 1 kb/sec sustained, then
    set the appropriate bit to true. Allow the bitmap to be zeroed if you move or whatever.

    After getting the list of peers, prioritize connection attempts towards those
    that have a useful sustainable rate. Nothing worse than seeing 80% of my
    connections saying connected 30 minutes, 100 KB transferred. Sigh.

    While in china, I had a 2 mb connection. But too many Chinese hammering it, so
    I could sustain, 2 mbit up, and 1 mbit down. Asymmetric the wrong way..

    Seems blindingly obvious to me, yet I still see no clients with this feature.

    --
    The law is a weapon of the government, not a protection for the likes of you. Surely you understand that.
    1. Re:2 meg data file could solve most of this! by dotwaffle · · Score: 1

      That's because Class C addresses haven't existed since 1994.

      On "the internet" right now are address sizes all the way from /8 down to /25 - meaning that there are potentially more than 30 million entries, so you're looking at a 300 MB file, that would have to be updated fairly regularly.

      The best way of dealing with it is just to do a WHOIS lookup on your IP, find out which AS it is associated with, and what the next-hop AS is - if it's declared as peering, use it. If it's transit, don't prefer it, but keep it anyway.

      As many have alluded to, the best way to do this is on the tracker, where the tracker has access to a BGP feed, and a copy of the RIPE/ARIN/APNIC etc databases, to save on DB load.

      Or, just use HTTP with caching proxies set up by the ISP, and stop downloading the latest episode of Strictly Come Dancing on BitTorrent.

      When the IPv4 pool runs out, I can see carrier-grade NAT becoming a real option, and caching proxies would then be "easy" to implement, and would save a lot of transit costs for the smaller ISPs. Except in Europe, because we're all about the peering.

    2. Re:2 meg data file could solve most of this! by WittyName · · Score: 1

      Class C = /24 Your quibble changes this to /25.
      So 30 million DIVIDED BY EIGHT is still only 4 megs.
      A tiny file. A trivial amount of ram.
      Not to mention Class A's and B's would need only one entry..

      We only need a bitmap. Not a 32 bpp bitmap with alpha channel,etc.
      Just a single bit. True/False. Either the route can sustain > 1 KB/sec
      or not.

      A few lines of code in any bittorrent client, and Voila, faster..
      No need to fiddle with trackers. The popular ones get overloaded
      enough as is, without considering throwing extra work at them.

      Again, half my connections say something like 100KB transferred, and connected
      30 minutes. Setting an idle timeout does not help if they send one packet every
      5 minutes.

      Being in asia has its pluses, but internet connectivity can be dodgy.
      Vietnam mostly routes through Hong Kong. That routes through Taiwan.
      So it is shared with china. This goes to seattle.

      When connecting to much of europe, things go through new york.
      England and scandinavia are quite fast, but east europe is quite crap.
      The packets literally go the LONGEST way around the world. If any router
      in between is choking, then throughput goes to crap. Same for much of
      south america. Quite crap..

      When downloading a popular torrent with 30-40K peers I should do better
      than 20k a second.

      Limit the above approach a bit, so it only applies to torrents with more
      than 1000 peers, and I think the benefit would be very obvious.

      Not sure why everybody wants to shoot this idea down..

      --
      The law is a weapon of the government, not a protection for the likes of you. Surely you understand that.
    3. Re:2 meg data file could solve most of this! by dotwaffle · · Score: 1

      Ok, let's say you're right, and there are a maximum possible number of prefixes at 30 million.

      Why do I divide by 8? Surely an IP address is 4 bytes, plus a 4 byte origin AS number, and a path length, and some community information and costs and so forth...

      The current BGP table weighs in at 70MB. Compressed.

      The full routing information base on 29th September (the last copy I downloaded) is 740MB. And that's only with AS path information, no costings or communities.

      Put simply, the most efficient way to make P2P efficient is to choose the following peers, in order of most preferred to least preferred.

      Is the peer local (i.e. on the same subnet)
      Is the peer in the same prefix range?
      Is the peer in the same AS number (a simple lookup)
      Is the peer in a peering relationship with the ISP (no transit link means faster and cheaper - again, a simple WHOIS lookup)
      Is the peer two hops away (i.e. can you see it through a transit link without passing through someone else)
      Is the peer in the same RIR (RIPE for Europe/Middle East, ARIN for America/South Africa etc)
      Is the peer reachable at all?

      No BGP feed necessary, it can all be done with a copy of the DBs from RIPE, ARIN, AFRINIC etc, which could be downloaded *once* and updated once a year or something, rather than getting "live" data with all the bouncing etc.

      Put simply, it doesn't matter WHERE in the world the other side is, ping doesn't matter with file transfers. All that matters is packet loss and congestion.

      The reason your internet sucks is that if you were given good upload bandwidth, people would run servers from their homes - and that's a premium service someone can charge you a lot extra for. If you want guaranteed bandwidth, with no contention and speeds that don't suck, you'll pay for it, and trust me, it ain't cheap. Especially not to your home.

    4. Re:2 meg data file could solve most of this! by WittyName · · Score: 1

      I do not see the need for all this routing information.
      I already know one point of the connection - MINE.
      I only care about throughput to the other point.
      I do not care where this point is, or the hops, or anything about it.
      If throughput is greater than 1KB/Sec then flag it.
      Group these by any factor you want. /28 div 8
      is still only 32 megs..

      I don't care so much about optimal, perfect, best. Good enough
      to give a speed boost, without much code, and no tracker changes
      would be great. My idea does all of these..

      The reason my internet sucked in china had mostly to do with billions
      of chinese downloading tons of stuff. The overseas links are saturated.
      PERIOD. 1 million new broadband users a DAY. Still only at something like
      20% of population. So, a new fat pipe goes in. Things go from 60 KB/sec
      to 100+. YAY. over the next few months, it goes back to 60. more like 30
      most evenings and weekends. After 2am things go fast again.
      I had a 2 mbit ethernet to the house deal for about 10 USD/ month.
      I had 2 mbit up ALL THE TIME. But most people do not upload much.
      The chinese do download A LOT. so 60kb down, 200kb UP.
      Asymmetric the wrong way.. Simple supply and demand here, no conspiracy
      by the hosting providers.

      I could get torrents in china, but I can not read chinese to navigate the sites. They rename the files into chinese too. Then they dub chinese audio
      on it, or embed subtitles into the video stream.. And they like RM files..
      So, it would be faster, but not what I want.

      I have had similar conversations before:
      1) It is not optimal - so what, it would work
      2) Don't need, is fast here. - so what, I am not there.
      3) Get a better ISP. - Don't need, just need to choose peers better.
      4) etc.

      If 95% of the problem can be solved with a small client change, with
      5% of the work, then lets do that.

      I do not see the need to analyze the topology of the internet, and try
      to outsmart it.. Simply flag routes that work!

      Is this really so hard to understand?!?
      Am I the only one who thinks this is simple, and would give an immediate gain?

      --
      The law is a weapon of the government, not a protection for the likes of you. Surely you understand that.
    5. Re:2 meg data file could solve most of this! by dotwaffle · · Score: 1

      Three points:

      Why are you still dividing by 8! IP addresses are 4 bytes long, not one bit!

      You need to know the AS-path for this situation. It doesn't change that often (unlike a traceroute) and generally allows you to find out easily where good peering relationships are, which gets you the fastest speeds (usually).

      If throughput is greater than 1kB/s, flag it? What are you on? "Throughput" (bandwidth) does *not* matter. You're thinking as though the internet connects to you - you don't. You are part of a collective, which collects to other collectives which exchange data.

      There is no point in thinking of things from the point of view of the user for this, it's all to do with network effects - who's closest in terms of AS path count, what's in the way (China has firewalls which slow things down) and most importantly, how oversubscribed is the remote side!

      All routes "work" - that's the whole point. You see slow speeds because the very last hop is congested, not the networks in-between.

      This is a "simple to understand" point, like you say.

      You just haven't understood it.

    6. Re:2 meg data file could solve most of this! by WittyName · · Score: 1

      Thanks for your post. We seem to be talking past each other.
      The only networking I have is an MCSE dated 12 years ago.
      Programmer since forever.. Only networking I do is to troubleshoot
      dev/app problems. You seem to have the opposite bias..

      DIVIDING by eight, since I am talking about a bit array. Other terms include
      bit vector, bitmap, etc. See Here: http://en.wikipedia.org/wiki/Bit_array
      Simply a Map of Bits. Since we have lets say 2^28 possible routes,
      we end up with 2^25 Bytes, so 32 megs to store a one bit flag for each one.
      8 = 2^3. So take your network address, treat it as a 32 bit number.
      Discard the lowest 4 bits - bit shift left in C is >>
      Then find the n'th bit in the field. This is a VERY efficient data structure.
      One bit per route! Not 4 bytes, or 8 or whatever. We do not want something
      resembling a hosts file..

      Throughput does indeed matter. If every attempt at a connection to whatever
      slice of the internet is slow, STOP TRYING. When transferring large files
      throughput is the only thing that matters. If during the life of the bitmap
      we get 1 single connection with a useful sustained rate, flag the whole chunk
      of the net as a possible. After a few dozen large torrents (maybe one week)
      we have a pretty good idea of where decent rates can be found.. This can
      be deduced as you note, but why bother. This just means it should work good, not that the route WILL work at a useful rate. As you note, this takes ZERO account of congestion. My method just looks at what works at speed, and flags it.

      And with bittorrent, the internet does indeed connect to me. My nicely static home computer, with my address advertised on trackers. People ALL over trying to connect to little old me.. Peer to Peer basis of TCPIP etc. All nodes are clients
      and servers. Bits is bits, does not matter which direction they flow, or to where.

      Regarding collectives. Yes, my collective talks to theirs. INTER net - network
      of networks. This brings us back to bitmaps. If my collective can not EVER
      get a useful rate to THEIR collective (Whatever bucket they fall into in the bitmap) then DO NOT TRY. try connecting to everybody else in the list first.
      Or wait for them to connect to me, and then scrutinize the throughput.

      Again, AS path is irrelevant. Either they have useful bandwidth, or not. How the bits get there is of no concern - separation of the layers with TCP. Apps do not care about the transport layer. Open a stream from here to there. Throw data at it. Listen for a callback from transport layer saying "Buffer is empty". Throw more data. Not much sense throwing data if the other side gets if SLOWLY. Hence the bitmap... Do not Try.

      Think of it like sending a letter. Between certain cities
      we have airmail and or trainmail. The other cities are via horse. Same price. Pretty soon you notice that some letters are SLOW. So stop doing that. Send your letters to people in the fast cities FIRST. If they reply quickly, send more letters. My letter is unaware about planes/trains/horses. But I can tell with a calendar pretty damn easy how fast it is.. So make a bitmap with all the zipcodes.
      only a 100k in the USA, so round up to 128K. 2^17 divided by 8 (2^3) so a nice 2^14 bitmap. A tiny 2k file - very small. The biggest 50 cities have airmail. Set the bits to true. Another 1000 cities are on a train route. We flag these as letters they come back. The others, linger at zero, still waiting for a fast connect, which will likely never come. Yes, as you say, the routes "WORK", but not according to how I define it in this use case. Think of it as selling perishable goods by mail order. Prioritize the orders according to the bit flag. Sometimes we get it wrong. A train bridge goes out maybe. OK. trying 1% that are no longer fast, is still a big win over trying 99% of the total which are slow. Then the phone is invented. But many people h

      --
      The law is a weapon of the government, not a protection for the likes of you. Surely you understand that.
    7. Re:2 meg data file could solve most of this! by dotwaffle · · Score: 1

      Oh, I see what you're saying now - make a big fat array and tag the bits 1 for use, 0 for don't use.

      Sorry, that doesn't work in practice.

      Plus, you're patently optimising for bulk file transfer - most file transfers are under 100 packets long, and the majority of those are under 10 packets long.

      Here's a better solution that follows your idea:

      An 8-bit array of every AS number on the internet.
      Increment the number by 16 for every AS hop.
      Increment the number by 64 for every hop through a known transit provider.
      For tiebreakers, add on single digits for end-point congestion, on a sliding scale.

      Just downloading a list of "slow vs fast" will be local to your branch of your ISP - if we're both on ABC ISP, but you're in LA and I'm in London, you're going to get faster speeds to Tokyo than I am, but I will get faster speeds to Amsterdam than you are, even though we're on the same ISP.

      Does that make sense?

    8. Re:2 meg data file could solve most of this! by WittyName · · Score: 1

      > Oh, I see what you're saying now - make a big fat array and tag the > bits 1 for use, 0 for don't use.
      >
      > Sorry, that doesn't work in practice.

      I do not see how you arrived at this conclusion:
      2^32 (minus some number of unroutable entries) / 2^8 (bits per byte)
      yields a maximum of 2^24 bytes. 16 megs worst case for ALL routes.
      On many systems this is like a rounding error..

      > Plus, you're patently optimising for bulk file transfer - most
      > file transfers are under 100 packets long, and the majority of
      > those are under 10 packets long.

      True, the above table would give priority to the endpoints with 10 packets per 1 second, vs those with one packet per second. Try the
      fast ones first..

      > An 8-bit array of every AS number on the internet.
      > Increment the number by 16 for every AS hop.
      > Increment the number by 64 for every hop through a known transit
      > provider. For tiebreakers, add on single digits for end-point
      > congestion, on a sliding scale.

      This could be done. It is the same algorithm.. Just a different
      heuristic deciding how to tag things as fast, and maybe adding a degree of potential fastness. You could just tag all the above calcs less than the half the average as TRUE, with the rest set to false.

      In mine fast bit true means it was fast at some previous time.
      With your implementation, fast bit = easy short route.

      > Just downloading a list of "slow vs fast" will be local to your
      > branch of your ISP - if we're both on ABC ISP, but you're in LA
      > and I'm in London, you're going to get faster speeds to Tokyo
      > than I am, but I will get faster speeds to Amsterdam than you are,
      > even though we're on the same ISP.

      True, this is why I say just make your own list via observing
      conditions during your normal usage of bittorrent. The more
      you run it, the more connections you attempt, the more useful
      it gets.. If your IP changes from 217.whatever to 2.whatever,
      make a new list. If the list is more than 3 months old, make a
      new list.. It is just a hint to pick known better routes earlier
      in the transfer.

      Again, I have posted this idea in several BitTorrent prog feature
      request forums. Usually get a "Nah, don't need that" kind of response.

      Duh. Don't need it, but it sure could help! At very low cost..
      The array could be smaller, too:
      http://en.wikipedia.org/wiki/Sparse_array

      No, it will not change the world, yes it would help.
      At a cost of 16 megs, and maybe 100 lines of code..

      Anyway, sorry I did not make my assumptions clear in the beginning
      regarding bitmaps, bit arrays, etc. Wasted some mutual mental
      bandwidth there :)

      --
      The law is a weapon of the government, not a protection for the likes of you. Surely you understand that.
  51. Re:Stop It by X0563511 · · Score: 1

    Last I checked, undersea cables were pretty reliable when they weren't being cut "accidentally".
    Mountains don't exactly block packets.
    Rivers don't make my bits come out soggy on the other end.

    Very true, however getting around all of these geographical obstacles can be very expensive. That's less political discrimination and simple economics - they either can't (or wont) spend the money where others will. They might have different priorities, or different revenue/expenses.

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  52. Re:Stop It by Ihmhi · · Score: 1

    Does the Akamai you refer to relate to Akamai Technologies, or is this some obscure networking term that I am unaware of.

  53. Re:Stop It by Score+Whore · · Score: 1

    It refers to AKAM.

  54. Re:Stop It by Ian+Alexander · · Score: 1

    Er, what country is where in relation to you has always been a part of geography. India's on the far side of the world, the friendly Canucks live to my north, and Mexico is down to the south. As I've already said, the prioritization isn't based on politics at all, it's preferring in-country peers because they're less liable to be slow in certain parts of the world. It would make it political if it preferred them out a sense of patriotism. But it's just reflecting the realities of telecommunications in certain parts of the world where physical proximity becomes much more important.

  55. Link to discussion by bill_mcgonigle · · Score: 1

    I brought this up on the bittorrent list in, lessee.... 2005 and there was some brief discussion in the thread about factors that might be in play.

    I've written here before that Comcast could've saved a hell of a lot of money (and now time before the FCC) by optimizing bittorrent rather than fighting (and denying fighting) it. Who knows, maybe they contributed to the recent Azureus/uTorrent plugins.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  56. Why geographic? by LS · · Score: 1

    Maybe I should read the article, but it seems to me that throughput is more important than how close peers are. Latency isn't really an issue with big downloads, so if you are getting 10 MB/s from China and 2 MB/s from your neighbor next door, why not go for the throughput instead of the neighbor? You could test all the peers for average throughput through a short test, then select the fastest ones...

    LS

    --
    There is a fine line between being a cultivated citizen and being someone else's crop. - A. J. Patrick Liszkie
  57. Re:Stop It by AmberBlackCat · · Score: 2, Interesting

    I think they've got it all wrong. The software shouldn't be connecting people to nodes in their area. It should be connecting people to nodes in regions that can't sue them for uploading.

  58. Well.. by Anonymous Coward · · Score: 0

    The main reason is you can't detect 'local peers' with zero cost.

    If you go by hop count, (which is not necessarily reliable), then you have to spend extra time at the start of each session varying the TTL field of your packets.

    If you go by database, like GeoIP, you require large databases for each client and obviously these change regularly. And as previously stated, these are not 100% reliable.

    The ideal route is ISP participation, so that mechanisms are available which make distributed systems topology aware. However, this involves a cost to the ISP.

    One of the other important factors is that the tracker will return a random subset of peers anyway. So to make this efficient at all you'd really need tracker participation.

    Finally, on the more theoretical side of things, you can not have a swarm which is entirely divided geographically. Otherwise you risk losing pieces of the torrent to a subset of peers who are only communicating with one another. So even if you did do this, you would probably want to make sure a percentage of your peers were of a random geographical location.

  59. Re:Stop It by sykes1024 · · Score: 1

    Rivers don't make my bits come out soggy on the other end.

    Heh, soggy bits.

  60. Let's see... by CarpetShark · · Score: 1

    If I'm on ADSL-2 from a great ISP, and a neighbour (next door) is with the same company but has bought their 256K ADSL service, that's going to be less hops than another person with ADSL-2 or a 1Gbit corporate link. Latency is slightly better than hops, but not much. The only way that makes sense to me is some sort of algorithm that works out the optimal number of download peers, and the minimum acceptable peer speed based on what your link can handle, the number of peers available, and the expected average transfer speed. If any peer is slower than that limit, it should be disconnected, and then a faster one found. A slight improvement on that would be to find another, connect to it as well, see if it reaches the remaining bandwidth for that slot, and if it perhaps overtakes the previous slot holder in terms of delivery. If so, the previous holder could be dropped in favor of the new one.

  61. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  62. my ono setup by Anonymous Coward · · Score: 0

    I was actually thinking of this very topic a few days ago. i had been using Ono for quite a while with limited results, but the most recent version of Ono allows us to put in our own "nearby" IP lists.

    The idea is to use get the IP list from BGP routes of your ISP. The way I did it was to go to www.robtex.com and put in my ISP. My ISP is large and they have multiple regions. I pick out my region using the AS number. Then I look at all the routes within the AS number. A bit of copying and pasting later, I have a list of close IP subnets that I can put into Ono.

    As an example, speakeasy.com only has one AS number (AS4355). It has almost 700 subnets which it considers close.

    I'm not a BGP expert so hopefully someone can explain how this works.

    The author of http://homepages.xnet.co.nz/~createcoms/ tried to do the same thing, but they rely on manual discovery

    Hopefully this method can be validated and then published on Ono's webpage. Maybe /. will be /.'d

  63. Re:Stop It by sexconker · · Score: 1

    In terms of connecting two countries, the economics takes a back seat to the politics. It's not so much "how much will it cost?" as it is "how much will do we want to spend?" "how connected do we want to be with them?" and "which of us is paying?".

  64. Re:Stop It by sexconker · · Score: 1

    No, some land mass is on the far side of the world.

  65. wow...very few people seem to understand... by Anonymous Coward · · Score: 0

    ...how routing decisions and packet switching through backbone ISPs works. It's like a brand new generation of ignorant /. readers!