Re: queueing and priorizing strategies
Michael Rogers <[email protected]>
| Newsgroups | gmane.network.gnutella.devel |
|---|---|
| Message-ID | <[email protected]> |
On Oct 8 2007, Arne Babenhauserheide wrote:
> Would it be correct if I stated your idea like the following: "When asked
> to help by many people, I first help those from whom I expect to get back
> the most"?
Hi Arne,
That's it exactly.
> Do you include things like "has content which interests me" (aka 'I
> already downloaded from him/her) into the equation?
Yes, the calculation considers total bytes uploaded to and downloaded from
the peer during the session (or longer, if long-term peer identifiers are
available). That could mean parts of the same file (download mesh) or
different files transferred at different times.
> To include this in Gnutella: Could the leafs publish their receipts ("I
> uploaded to that one" and "I downloaded from that one") to the Ultrapeer
> and peruse the existing infrastructure that way? The UP could collect
> them and push them back to the leafs, so a multi-step utility can be
> calculated for neighbor leafs.
Interesting idea. You'd have to be careful about collusion (you and I both
claim to have downloaded 100 GB from each other in order to get faster
downloads from everyone else), but the phrase "multi-step utility" sounds
like you might be considering something like max flow, which can be used to
prevent collusion:
http://www.sigcomm.org/sigcomm2005/paper-CheFri.pdf
> Does your scheme work, if people in the utility chain can drop out (and
> do so very frequently)?
It depends on a few factors. First, how long do sessions last (especially
the sessions of people who share a lot of files, which I suspect are likely
to be longer than average)? Second, do peers have long-term identifiers
that persist across sessions (eg TLS certificates)? Third, how long is the
typical delay between uploading to a peer and downloading from the same
peer, or vice versa? (In the download mesh I guess it will typically be on
the order of a few seconds, but if we're talking about uploading and
downloading different files, how often does this happen, and what can we do
to make it more common?)
> Would it then be better to just push the receipt information via the
> existing inter-UP QRP infrastructre?
So if I needed receipts for peer X I'd send out a query that would be
routed via QRP, collecting the receipts?
>How does this affect pseudo-anonymity?
If the receipts only contain the number of bytes transferred, not the
details of the files, it doesn't seem to me that it's a major threat to
privacy - no worse than the information reported to a BitTorrent tracker,
anyway.
Cheers,
Michael