Re: Re: Trackerless BitTorrent
John Hoffman <[email protected]>
| Newsgroups | gmane.network.bit-torrent.general |
|---|---|
| Message-ID | <[email protected]> |
>The problem hits once you're contacted the degree 1 and greater peers,
>and gotten the list consisting of degree 1 and 2 peers. How do you tell
>what degree a peer is? If you ask *all* your degree 0 peers for their
>lists, you can build a complete list of degree 1 peers, and filter them
>out and have a list of degree 2 peers. This does mean you've got to
>spend those 300 (900 for v6) bytes on every connection asking for peers.
>So, you can build a list of degree 2 peers. How about building a list of
>degree 3 peers? Well, connect to all your degree 1 peers...
>
>The basic issue is you're trying to detect an unhealthy mesh, and this
>quickly becomes prohibitively expensive. Yet you must do so, otherwise
>you risk getting stuck on an island completely separated from the swam.
>Wherever the border where you stop constructing complete lists of peers
>a gap could form and disconnect you from the swarm.
>
>So the main issue becomes, how dangerous is this? The presence of a
>tracker doesn't guarentee this won't happen, it merely makes it
>extraordinarily unlikely (good old stochastic methods work). It boils
>down to the issue, do peer lists aggravate island-forming behavior?
>Looking for higher degree peers won't stop island forming behavior,
>merely make those islands larger.
>
Just realized a very simple solution to the problem, and it only
requires one flag per connection. Basically, make two classes of
connection; one where peers were introduced via tracker, and one where
peers were introduced via P2P. If the "fast-reannounce" period comes
due and the peer doesn't have enough tracker-introduced connections, it
reannounces.
The question is, how many of these types of connections per peer is
sufficient? IMO, only a small number is required; 5 should be plenty,
and even 3 ought to be enough. BT establishes 40 connections (on
average) per peer, which means the absolute minumum size of an "island"
will be 40 peers, where if each peer has 3 tracker-initiated
connections, it means even if only 3 connections per peer were via
tracker, the island will have 120 "bridges" to the rest of the swarm,
which ought to be sufficient to introduce new data to the sub-swarm.
------------------------ Yahoo! Groups Sponsor --------------------~-->
$4.98 domain names from Yahoo!. Register anything.
http://us.click.yahoo.com/Q7_YsB/neXJAA/yQLSAA/dkFolB/TM
--------------------------------------------------------------------~->
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/BitTorrent/
<*> To unsubscribe from this group, send an email to:
[email protected]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/