06 Polychronis Yapdimatopoulos -- igbos g_
-
Upload
ignite-boston -
Category
Technology
-
view
1.011 -
download
0
Transcript of 06 Polychronis Yapdimatopoulos -- igbos g_
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
How do we meet/find people
● ... when wandering downtown?● ... in my neighborhood?● ... in my office?
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Why not?
● Data transfer must be efficient
(forget about TCP/IP)
● Discovery must be scalable
(humans/objects/applications)
● Overhead and Power Consumption must be minimized
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Data transfer: 1958 2008
http://www03.ibm.com/ibm/history/exhibits/specialprod2/specialprod2_5.html
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Scalable discovery
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: http://cerebro.mit.eduProvides:
● presence information (including distance) for all other users/objects in the network
● mesh networking on regular 802.11b/g devices
● extensible user profile including nickname, colors, keys, IP addresses, pictures, status message etc
● file sharing using an efficient multicast mechanism
● simple collaboration mechanism
● connect to remote mesh networks over the internet
● interoperability among different architectures (x86, ARM)
● programming API
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: discovery
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: discovery
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: discovery
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Profile arrival times
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
CDF of profile arrivals
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Protocol overhead – Convergence time
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: File sharing
How “illegal” can we get?
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro: File sharing
TCP/IP: sequential Cerebro: broadcast(opportunistic and reliable)
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Transfer of 2MB to 27 nodes
Cerebro: 1Mbps broadcast,
simultaneous
TCP/IP: 10Mbps, unicast, sequential
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Transfer of 2MB to 27 nodes
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Platforms tested
● x86 ● ARM (Nokia N800, Gumstix)● OpenMoko (Freerunner)
Requirements:● Python● Dbus
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Cerebro GUI (x86, OpenMoko)Who What
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
http://cerebro.mit.edu
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Why multiple entries? Mobility!
Node ID Witness Distance SourceC C 1 CD C 3 CE D 4 CF D 4 CG D 4 CD D 2.5 DE D 3.5 DF D 3.5 DG D 3.5 DE E 5 E
Presence information arriving at B:
Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
Presence Table
Node ID Witness Distance SourceB B 1 BC C 2 BD C 3 BE C 4 BF C 4 BG C 4 B
Presence information arriving at A:
May 2008 Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
24
1) Wait for a period T for presence beacons from neighboring nodes2) For every beacon received:
For every entry in beacon:• if it is about the current node, or the current node is the witness, or the the serial number is not newer than the existing one, discard it!• if node/witness pair exists in presence table update number of arrivals and next arrival estimate both for node and witness• else add new entry in the table
4) Eliminate stale entries in presence table (ie. entries where the next arrival estimate has lapsed)
5) Create a new beacon using the minimum distances to each node in presence table
6) Broadcast beacon to neighbors
Presence Protocol
May 2008 Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
25
Node ID Witness Distance Serial No.
ID of the node this entry is about
(MAC address, 6 bytes)
ID of the node from which this entry was
received (MAC address, 6 bytes)
Unique ID for each entry published by
node <Node ID>(2 byte)
Distance from the current node to <Node ID>
(similar to ETX metric)(1 byte)
Presence Protocol for Large Mesh Networks
Presence Frame contents
May 2008 Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
26
Distance calculation
Distance D:D = T/AT: period of timeA: number of arrivals
May 2008 Polychronis Ypodimatopoulos <[email protected]>MIT Media Lab
27
Arrival estimates
1)Count arrivals over time period T.2)Formulate a Poisson arrival rate (assuming arrivals are
independent events)3)Estimate time of next arrival with 90% accuracy
Example: For T=1sec, accuracy 90%, next arrival must be in 2.3sec
For T=1sec, accuracy 100%, next arrival must be in infinity (!)