[e2e] Active Addressing

Jon Crowcroft Jon.Crowcroft at cl.cam.ac.uk
Fri Jan 30 04:24:53 PST 2004


Here is an idea worthy of consideration along 
with all the offers of v1agra ext3nsion l0ans...

active addresses are a technique whose time has come - 
basically, to dive in to detail,  the idea is to solve problems like
mobility ina futureproof way

as shoch said, a name is what you are, a route i how to get to you but
an address is where you are - now if you are mobile, a lookup of a name
returning an address is clearly not a useful thing to do - so what we
find in the current world is that lookups yield a care-off agent (a sip
proxy or a mobile ip HA etc etc) but to be more flexible, a lookup of a
name should return an Active Address - a program which can then be used
with packets to get to you - obviosuly, the program shouldn't be too
complex otherwise the use of the program might turn into abuse - butof
course one could write "defensive" address programms, as well as
subversive ones - for example, i could implement the puzzle spam filter
by use of such programs - so the MX record in my DNS for my smtp relay
could return a program that takes so many memory/cpu cycles to run,
then gets a packet (or email) to the right place, without actually
revealing the address to directly route to me....we could implement the
indirection necessary using onion (or i^3)..

of course, one problem for active addresses is routing - most routing
includes notions of hierarchy to reduce memory, message and cpu
complexity of distributed computation - organisational, topological,
geographical, etc - so we need hierarchical active addresses - this is
easy - its just like nested procedures or functions in normal
structured programs....so instead of address a packet to 
	joesephine bonaparte
	11 rue morgue
	paris 6
	france
	EU
	etc
you would address the packet with code like
	printf("tonight?");
	map(english2french("tonight?", EmpressName));
	if (betterfoodthansurroundingnations() && usesEuro()) {
		metroWorksWell();
		for(i=0;i<12;i++);
	}

perhaps?

or instead of
	blair at dictator.hq.blighty
it would be
	friendOfBush() && NoFriendofBBC()

if "you" see what I mean


cheers
jon




More information about the end2end-interest mailing list