Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
ORBIT Project Overview
www.orbit-lab.org
ORBIT Overview: 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– ~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 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
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
The Grid: Architecture
80 ft ( 20 nodes )
70 ft
m (
20 n
odes
)
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)
AtherosminiPCI802.11a/b/g
22.1Mhz
1 Ghz
pwr/resetvolt/temp
20 GBDISK
Serial Console110
VAC
RJ11 NodeIdBox+5v standby
PowerSupply
CPUVIA
C3 1Ghz
AtherosminiPCI802.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
+
Experiment Support Architecture
System
Control
Measure
Dep
loy
& C
onfig
ure
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
OML: Measurement Framework
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 = 1n.xmitPower = 1 ;# What is 1?n.bitrate = "11Mbps" # Force single raten.ip = "%10.0.%x.%y"
}
# Start experimentwhenReady {|e, n|p.packetSize = 1024p.rate = 250 e.sleep 5.0e.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• Delivery of 450 nodes in December• Extend Beta testers to industry EWPs• Move into new building (???)• Explore new radios (Zigbee, Mote, GNU radio)
• Scale to 400
• Interested? Join mailing list www.orbit-lab.org/community/mailingLists
www.orbit-lab.org
Testbed System• 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