Transcript PPT Version

UMass DieselNet:
A Disruption-Tolerant Network Testbed
John Burgess
Department of Computer Science
UMass Amherst
DieselNet
Vehicular DTN deployed in
Amherst and surrounding county
Now includes 40 buses
Each bus: Linux “brick” computer;
USB 802.11b adapter; 802.11b
AP; GPS receiver, 40GB hard
drive
Buses transfer data as they pass
by each other and via available
hot spots.
The Openbrick
• Small form factor
• Plentiful I/O
• Binary availability for x86
• 60w peak power draw
• Low heat dissipation
DieselNet Software Considerations
 Autonomous operation and “shutdown”
 Maximal failure tolerance
 No remote administrator login or local terminal
 Physical inaccessibility during operation (6am - 1am)
 Nodes versus support staff
 Handle network interface configurations
 Support IP programs
 Handle bundle routing
 Support DTN programs
Init and Restore
 Linux and initial software stored on 1st partition
 All DTN software, logs, bundles, cached web
content, etc. stored on 2nd partition
 Restore checks for the presence of critical files
 If any critical files are inaccessible
 Clear extended partition
 Restore initial software package from system disk
 Otherwise, Init starts system software
1GB hdc1
39GB hdc5
Autoupdate
 Install new software
 Check for new gzip files on prisms web site
 Verify prisms signature
 Install update atomically
 Sync system clock with server
 Report current location
 Report log entries
 Connection events
 Program error messages
 Upload files
 Bzip file, MIME encode it, and upload via HTTP request header
LiveIP
 Manage network interfaces
 802.11b
 Scan for ssid broadcasts on all channels
 Connect to other buses
 Hash foreign bus MAC address to determine subnet
 Connect to access points
 DHCP
 Ping foreign device to decide when to resume scanning
 Reload 802.11 driver to clear malfunctions
 Additional interfaces to be managed
 900mhz long-range radio (1km)
 CDMA modem
GPSupdate




Receive NMEA formatted information via RS232
Compute speed, direction, etc.
Periodically log location
Provide location information to onboard programs
DTNdaemon
 Accept data and send bundles
 via local TCP socket
 Route bundles according to configured protocol
 MaxProp
 Deliver data to appropriate onboard programs
 Programs connect via TCP socket
 Programs register as appropriate destination application
 Platform and IP network interface independent
 Java implementation with no external dependencies
 DTN2 2004 bundle format compatibility
Software Components
 Init and Restore
 Perl and Python
 Auto update
 Python
 Live IP
 Java 1.4
 GPS update
 Python
 DTN daemon
 Java 1.4 and linux-only Java 1.3
Connection Events



Red dots indicate bus-to-bus transfers
(1 month)
Measurement of real TCP throughput
Traces collected everyday
Measurements
Buses log their status via available
access points (and update
software).
Transfer duration
Bytes transferred
Inter-transfer opportunity time
Future Work
 Deploy different DTN routing protocols
 Develop useful disruption tolerant applications
 Expand network to include other types of nodes
Summary
 DieselNet is a DTN Testbed deployed on public
transportation busses
 Network inaccessibility often corresponds to
physical inaccessibility, making DTN
administration difficult
 DTN system administration must be
accomplished in a disruption-tolerant manner
 Current above-IP DTN solutions must handle
configuration of IP, Link, and physical network
 Future solutions running above the link layer will
still need to configure the link and physical layer