“future directions” for wireless technology &
TRANSCRIPT
“Future Directions” for Wireless Technology
www.winlab.rutgers.edu &
www.orbit-lab.org
Some History – Failure of 3G
Reality Bites: and they still don’t get it …
Some History – Success of 802.11
802.11 Problem: Alphabet soup
802.11 Standards
And how do you get in?
• Create more “standards”– RFID ~ 10-1000 b/sec
– ZigBee (802.15.4) ~ 250 Kb/s
– Bluetooth ~ 1 Mb/sec
– Wi-Max (802.16)
– 802.11n
– 3G (they are still trying)
– 4G?
• Big problem: how to verify claims?
Orbit Project Rationale
• Wireless testbeds motivated by:– cost & time needed to develop experimental prototypes
– need for reproducible protocol evaluations
– large-scale system studies (...emergent behavior)
– growing importance of cross-layer protocol studies
– creation of communities for wireless network research
• ORBIT: open-access multi-user facility for experimental wireless networking research primarily in unlicensed bands– ~24/7 service facility with remote access
– open interfaces for flexible layer 2,3 & cross-layer protocols
– extensive measurements at PHY, MAC and Net layers
– support for wide range of radio system scenarios
Orbit• ORBIT consists of radio grid emulator + field trial network• Emulator used for detailed protocol evaluations in reproducible
complex radio environments• Field trial network for further real-world evaluation & application
trials
Orbit co-PI’s
• WINLAB, Rutgers University – Dipankar Raychaudhuri– Max Ott– Ivan Seskar – Wade Trappe – Manish Parashar – Yanyong Zhang
• Columbia University– Henning Schulzrinne
• Princeton University– Hisashi Kobayashi
• IBM Research – Arup Acharya
• Lucent Bell Labs– Sanjoy Paul
• Thomson– Kumar Ramaswamy
Urban
300 meters
500 meters
Suburban
20 meters
ORBIT Testbed
20 meters
HallwayOffice
30 meters
Radio Mapping Algorithm
The Grid: Architecture
80 ft ( 20 nodes )
70
ft
m (
20
no
de
s )
Control switch
Data switch Application Servers
(User applications/ Delay nodes/
Mobility Controllers / Mobile Nodes)
Internet VPN Gateway / Firewall
Back-end servers
Front-endServers
Gigabit backboneVPN Gateway to
Wide-Area Testbed
SA1 SA2 SAP IS1 IS2 ISQ
RF/Spectrum Measurements Interference Sources
The Grid: Hardware
512 MBRAM
Gigabit Ethernet(control)
GigabitEthernet
(data)
Atheros miniPCI 802.11a/b/g
22.1Mhz
1 Ghz
pwr/resetvolt/temp
20 GBDISK
Serial Console
110 VAC
RJ11 NodeIdBox+5v standby
PowerSupply
CPUVIA
C3 1Ghz
Atheros miniPCI 802.11a/b/g
BluetoothUSB
CPURabbit Semi
RCM3700
10 BaseTEthernet
(CM)
RF Interference grid
• Number of transmitter antennas providing spatial distribution of interference sources (BW = 40 MHz, f0=250 KHz – 6 GHz)
• Ideally @ each antenna linear combination of 2-8 sources (cost issue)
• Variety of interference types (W-CDMA, cdma2000, 1xEV-DO/DV, TD-SCDMA, cdmaOne, GSM/EDGE, GPRS/EGPRS, Bluetooth, GPS, enhanced multitone, NPR, AWGN, or up to 8 sec of arbitrary waveform generation)
AgilentESG
…
…AgilentESG
AgilentESG
+
ORBIT Field trial (Phase 2)
• Requires ruggedized outdoor ready equipment (suggesting of the shelf technologies)
• Standard nodes used in dual role of mobile AP/mobile nodes deployed on busses
• Where possible connected to wired infrastructure; otherwise use of second radio interface for mesh type networking/wide area access
Experiment Support Architecture
System
Control
Measure
Dep
loy
& C
onfi
gure
Experimenter
Results
Definition
Defining an Experiment
Experiment
Static
- Mapping nodes to prototype
- Binding free properties
Dynamic
P1
Pi
Topology Application
Properties
Measurements
Test code
Prototype
App 1
Sys
Mapping Strategy
Formulation of Link SNR Mapping
STEP 1
Modeling Link SNR of Real Environments
Prototype network (AP, Ad Hoc, etc.)
Spatial distribution of terminals
Empirical/Analytical path loss model
Setting dedicated noise-like sources
Setting locations of grid nodes
Setting transmission powers of nodes
Fidelity of Grid SINR to Link SNR
STEP 2
Configuring Grid SINR
OML: Measurement Framework
XDR Encoded data over multicast channel .
Collection server
SQL DB
OML transport layer
OML XDR decoder
OML SQL module
User application
OML interface to user application
OML transport layer
OML data filter , id = xx
OML data filter , id = yy pluggable filters
Experiment node
Berkeley Queues
Experiment Definition
Experiment.name = "tutorial-1"Experiment.project = "Orbit::Tutorial"Experiment.startMode = Experiment::REBOOT
## Define nodes used in experiment#node([2, 3], :sender) {|n| n.prototype("http://apps.orbit-lab.org/sender", { :if => Node::W0_IF, :packetSize => Experiment.parameter("packetSize"), :rate => Experiment.parameter("rate") })}node([3, 4]) {|n| n.prototype("http://apps.orbit-lab.org/receiver", {:if => Node::W0_IF})}
## Configure environment#node("/*/*").net.w0 {|n| n.essid = "HelloWorld" n.mode = "ad-hoc" n.channel = 1 n.xmitPower = 1 ;# What is 1? n.bitrate = "11Mbps" # Force single rate n.ip = "%10.0.%x.%y"}
# Start experimentwhenReady {|e, n| p.packetSize = 1024 p.rate = 250 e.sleep 5.0 e.done}
Prototype Definition
p = Prototype.create("http://apps.orbit-lab.org/sender")p.name = "Sender"p.description = "Nodes which send a stream of packets"p.addParameter(:if, "Name of interface to use", Node::W0_IF)p.addParameter(:packetSize, "Payload length of outgoing packets", 1000)p.addParameter(:rate, "Rate to send", 1000)p.addParameter(:channel, "Channel to send on", 1)p.addParameter(:useSocket, "If true use socket, otherwise use libmac for transport", true)
genny = p.addApplication(:gennySender, "http://apps.orbit-lab.org/gennySender#gennySender")genny.bindProperty(:interface_name, :if)genny.bindProperty(:rate)genny.bindProperty(:payload_length, :packetSize)genny.bindProperty(:use_socket, :useSocket)
genny.addMeasurement(:group3, Filter::SAMPLE, {Filter::SAMPLE_SIZE => 100}, [ ["offered_load", Filter::MEAN] ])
<prototype id='http://apps.orbit-lab.org/sender'> <name>Sender</name> <url>http://apps.orbit-lab.org/sender</url> <description>Nodes which send a stream of packets</description> <parameters> <parameter name='packetSize' id='packetSize'> <description>Payload length of outgoing packets</description> <default>1000</default> </parameter> … </parameters> <applications> <application refid='http://apps.orbit-lab.org/gennySender#gennySender'> <properties> <property idref='interface_name'><binding idref='if'/></property> … </properties> <measurements> <measurement id='group3'> <properties> <property idref='uri:oml:filter:trigger'> … </properties> <metric refid='offered_load'> <filter idref='uri:oml:filter:mean'/> …
Analyzing Experiments
function nsf(dbServer, dbUser, dbPW, database);
% Part where we retrieve data from the database;mysql('open',dbServer, dbUser, dbPW);mysql('use', database);output = struct('time',[],'thr_all',[],'node',[]);[output.time, output.thr_all, output.node] = mysql('select timestamp, throughput, node_id from group2');[thru1_4, time1_4, thru3_1, time3_1] = sort_mysql(output);
% Finally, the plotting partsubplot(2,1,1); plot(time1_4, thru1_4, '-*');title('Throughput On Obstructed Link');xlabel('Time (sec)'); ylabel('Throuhput (bps)'); grid on;subplot(2,1,2); plot(time3_1, thru3_1, '-*');title('Throughput On Monitor Node'); xlabel('Time (sec)');
ylabel('Throuhput (bps)'); grid on;
Progress
• Installed Production Nodes• Scaled to 64 Nodes• Added Bluetooth• Semi-automated calibration (+/- 10db)• Web site is up • Supporting “Click”• Started with external experimenter (Columbia)• Started exploring mobility & NS-2 integration• V2 of node handler & OML in beta• 5 Papers accepted
Future
• Extend Beta testers to industry EWPs• Move into new building (ribbon cutting done)• Explore new radios (already have Zigbee, Mote,
GNU radio)
• Install to 400
• Interested? Join mailing list www.orbit-lab.org/community/mailingLists
www.orbit-lab.org