[bittorrent] BT proxy

Justin Cormack justin at street-vision.com
Tue Apr 12 11:55:04 EDT 2005


On Tue, 2005-04-12 at 10:57 -0500, David P. Mott wrote:
> Yes, of course you're right.  The original problem was that people (say, 
> at a University) wanted to funnel only one copy of content through their 
> firewall, and make it internally available for whomever wanted it.  This 
> saves the University's external bandwidth, and serves internal people at a 
> high(er) rate (since external bandwidth isn't used to download the same 
> piece multiple times to the University).
> 

ok, thats a good summary.

> > If you are running the proxy tracker, why not make it give out its own 
> > address with probability 1 for all host requests, so that it stays 
> > connected to all the local peers (no external client will ever connect 
> > to the tracker anyway). You could also limit the number of external 
> > client addresses it hands out. This might be sufficient.
> 
> I don't think that's the problem.  The problem is the "proxy peer" -- the 
> BT peer that connects the internal swarm (behind the firewall) to the 
> external swarm.  The tracker could hand out all peers, but that won't do 
> any good if the one peer that has all of the data (the "proxy peer") won't 
> talk to them -- maybe because he can upload faster to people outside of 
> the firewall.
> 
> Also, the "proxy peer", while bridging the two swarms, will have peers 
> from both swarms.  If he gets peers from the outside world first, and he 
> then feels no motivation to ask for peers from the internal tracker (or 
> worse, no motivation to process those peers), then the internal peers will 
> starve.

I see the problem. I dont think you can cut off the internal peers
completely from the outside unless you change the behaviour of the proxy
peer to favour them, as otherwise they wont be offering it anything it
wants, so it will tend not to serve them at all. Thats why I suggested
just always adding the proxy peer to their peer lists, and hoping that
that would bias it enough. But you are probably better off explicitly
modifying the behaviour.

> I guess this would work itself out /eventually/, since there is 
> opportunistic unchoking, and the "proxy peer" would eventually learn that 
> internal clients can download much faster from it than external clients. 
> However, the "proxy peer" won't favor internal clients until it becomes a 
> seed, right?  Before then, it'll favor peers that can download quickly to 
> /it/, which will be /none/ of the internal peers (since they would only 
> have a subset of what the "proxy peer" has).

Eventually doesnt give you many guarantees about bandwidth use
though....





More information about the BitTorrent mailing list