Robert Hailey wrote:
> First, there is an equal chance of nodes from either network swapping. 
> In the freenet network (since swapping is done through the network) it 
> is not equal (if for no other cause than the scarce links between the 
> two networks).

I was under the impression that the random walks for swapping were long 
enough to reach any node with roughly equal probability - I believe that 
was Oskar's intention. If the random walks aren't escaping from local 
clusters then we'll never be able to smooth out the clusters...

> Second, it looks like you forgot to actually make any connections 
> between the two networks; without the stress points (plus the fact of 
> equal weighting on swaps), it is no wonder the nodes flee so quickly!

I'm probably overlooking some really obvious error, but doesn't this 
part of the code create connections between the two networks?

// Join the networks at a few randomly chosen points
for (int i = 0; i < JOINS; i++) {
        Node r = reds.get ((int) (Math.random() * REDS));
        Node b = blacks.get ((int) (Math.random() * BLACKS));
        r.neighbours.add (b);
        b.neighbours.add (r);
}

> Once I added the joins to the two networks on your sim, I noticed that 
> the networks would "bunchup", but not split the keyspace.

Yes, it seems like the more connections there are between the networks, 
the longer it takes them to segregate and the more pieces each subnet 
breaks into. However, in the very long term the pieces of each subnet 
still tend to coalesce.

> ASSUMING that the keyspace would be split (i.e. as the networks grow up 
> together) [which I still don't think is the case],

I'm not sure what you mean by grow up together but I'll happily modify 
the simulation if you don't mind explaining.

> However, surely as the 
> probability of swapping (between the two networks) approaches zero they 
> overlap the keyspace. Actually, it is well before zero... logically it 
> is that small probability of randomizing the location after the swap 
> (new locations entering the network at the same rate they leave).

True, but I'm not sure that's desirable either - if we only allow nodes 
to swap within their own subnets then we'll never smooth out the subnets.

> I've quite enjoyed playing around with this, particularly tracking 
> particular nodes in the network to see if I could catch the two networks 
> rotating to match each other, but also varying probabilities of swaps 
> across the networks.

Glad you liked it. :-) Speaking of rotation, that's something else I 
meant to simulate: can a few attackers "spin" the network by gradually 
moving clockwise?

Cheers,
Michael

Reply via email to