[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [freehaven-dev] Fwd: Re: Thoughts on general equilibrium for mix-acc paper

On Fri, Mar 02, 2001 at 04:28:59PM -0500, Michael J Freedman wrote:
> >1) You have node owners, node scorers, and users. What are their
> >incentives? What is each of these parties trying to maximize? The
> >node-owners presumably do not want a lot of traffic. So whatever the
> >scoring mechanism, they will try to avoid looking like the nodes that can
> >handle traffic. This is a classic gaming problem - if you set up a

I don't think this captures the whole situation here. Because

a) people have excess resources
b) these resources are temporary -- "use them or lose them"

then people really are going to be acting in what appears to be a generous
fashion. The node-owners have the goal not of minimizing traffic, but
of maximizing traffic as long as it doesn't interfere with their own
network use, and as long as the traffic they provide is high-quality.
(On second thought, it's probably better to phrase that as "They want
to balance traffic volume with ...")

The incentive to the node-owner for providing reliable bandwidth is that
people will think he's cool.

To that end, I think in 'reality' we're going to need a more complex
reputation system than simply who is dropping your packets and who isn't.

The current reputation system in the mix-acc paper assumes that "all
nodes are created equal", and some of them are just more evil than others.
Yet some nodes are on a T3, and some are on a cablemodem. And we want to
be able to take advantage of both. And labelling the cablemodem users as
"80% evil" just because they can't keep up with the same flow of traffic
as the T3 guy is going to discourage people. Plus it's not an accurate
reflection of the situation -- that 80% evil guy is very different from
the T3 user who selectively drops 4/5 of his incoming packets.

Hm. If we want to make this possible to analyze, we need to pick a very
simple scoring system (such as the one we've picked). We can convince
ourselves (I claim) that it will maximize some sort of global efficiency,
since it ill dynamically load balance based on node loads (and actually
evil nodes will become quickly apparent). But this scoring system neglects
external notions, notably that 'perceived usability' beast that we've been
doing our best to ignore so far.

One approach is for nodes to sign up for various 'service classes'. Thus
one might be presented as "really good, for a cablemodem node". But I
don't know how to actually implement that, in terms of actually allocating
network load based only on local heuristics. I guess it would have some
use for 'good' clients even if it's just a label, in that it would help
prevent them from picking a "T3 to T3 to modem to T3" path accidentally.

I wonder what a good way to solve this is.

> >To avoids situations like the above one, we try to implement so-called
> >incentive-compatible mechanisms. In them, each agent type has a clear
> >incentive to behave in a way that is expected. Therefore, others can
> >interpret behavior to deduce the underlying type (like interpreting a high
> >score to mean good node). Unfortunately and probably obviously, these
> >mechanisms do not always exist and often come at a cost.

Hrm. Are there some examples of this in a context I'm familiar with?