230 likes | 376 Views
Programmable Mobile Networking. Mobiware Team. Coordinator: Michael Kounavis Muin Alzougbi Kamal Chebaklo Ravi Gadhia Apostolos Manolitzas Stylianos Sidiroglou. Vision. Mobile networks will become programmable! Dynamic creation of wireless physical layers!
E N D
Mobiware Team Coordinator: Michael Kounavis Muin Alzougbi Kamal Chebaklo Ravi Gadhia Apostolos Manolitzas Stylianos Sidiroglou
Vision • Mobile networks will become programmable! • Dynamic creation of wireless physical layers! • Easy deployment of new services!
GSM access network IEEE 802.11 Wireless LAN Example of new service beacons that identify the access network architecture ‘programmable’ PCS phone
GSM access network IEEE 802.11 Wireless LAN Example of new service PCS phone moves to the wireless LAN
GSM access network IEEE 802.11 Wireless LAN Example of new service access network injects IEEE 802.11 software radio and mobile IP support
GSM access network IEEE 802.11 Wireless LAN Example of new service PCS phone becomes a wireless Internet host!
adapters separate handoff detection from handoff execution handoff control is decomposed into basic functions session rerouting session rerouting session rerouting mobility state management wireless transport session rerouting software radios ‘open up’ the physical layer Architecture beaconing systems beaconing systems beaconing systems measurement systems beaconing systems detection algorithms beaconing systems handoff adapters physical/data link layers physical/data link layers
(b (b 5) measureReport () 5) measureReport () (b (b 3) measureON () 3) measureON () (b (b 2) detectHandoff () 2) detectHandoff () (b (b 6) measureOFF () 6) measureOFF () NCHO_ APSNRMonitor Handoff Control Models NCHO_ DetectionAlgorithm MAHO_ DetectionAlgorithm MCHO_ DetectionAlgorithm - (a - 5) reportMobileSNR () (c - 2) get - - (a - 2) detectHandoff () - APSNR() (a - 3) getMobileSNR() MAHO_ APSNRMonitor MAHO_ MDSNRMonitor MCHO_ MDSNRMonitor (c - 1) query (a - 4) queryBeaconInfo () (b - 1) queryBeaconInfo() (a - 1) queryBeaconInfo () (b - 4)queryBeaconInfo () BeaconInfo () MeasurementProducer MeasurementProducer MeasurementProducer MeasurementProducer neighboring access point access point mobile device mobile device access points (a) network (b) mobile (c) mobile controlled assisted controlled handoff handoff handoff
Goals • Obtain ‘hands-on’ experience with building a prototype mobile network service • Implement Programmable Mobile Assisted Handoff • Understand design trade-offs, synchronization issues, and wireless systems programming!
CORBA / Orbix • Pros • Dynamic bindings at run time • Object interfaces are separated from their implementation • Remote method invocation support • Component-based system development • Cons • slow! • doesn’t scale well • ORBIX original is full of bugs
Bindings and Method Invocations • Binding = • the dynamic association between two remote processes at run time • Remote method invocations = • the object invokes a method ‘locally’ • Orbix mediates transfer of function call & arguments through the network
Description of Methods • DetectHandoff • MeasureON • MeasureOFF • MeasureReport
Access Point 0 Access Point 1 Detection Algorithm Detection Algorithm MD MeasureReport If (BestAP != CurrAP) ExecuteHandoff GetReadyToBind Binds to MDMonitor Call MDBindToNewDetection Activates MonitorMobile DetectHandoff Call MeasureOn Layer Interaction MD Monitor AP Monitor AP Monitor MDBindToNewDetection MonitorMobile If (SNR < SNRThresh) call DetectHandoff MeasureOff MonitorMobile If (SNR < SNRThresh) call DetectHandoff MeasureOn While (MeasureOn) Call Measure Report UpdateMeasurements UpdateMeasurements UpdateMeasurements Measurement Producer Measurement Producer Measurement Producer TakeMeasurements TakeMeasurements TakeMeasurements Beacon Producer (MD) Beacon Producer (APs) Beacon Producer (MD) XmitBeacons XmitBeacons XmitBeacons
MON: Algorithms sample data (2 x ~300ms) MON: UpdateMeasurements Thread (~300ms) MP: TakeMeasurementsThread (~250ms) BP: TransmitBeacons Thread (~100ms) Timing Analysis (1) • Concurrent Timing Loops • Tunable Parameters • Data Synchronization w/ Semaphores • Latency
SNRThresh ExecuteHandoff MeasureOn Timing Analysis (2) • Low Mobility/AP’s Far, Mult. Reports • High Mobility/AP’s Near, One Report SNRThresh = 23dB ExecuteHandoff MeasureOn SNRValley
Timing Analysis (3) • THandoff= ExecuteHandoff – MeasureOn • Latency (SNRThresh->MeasureOn) • not measured • Latency (SNRValley->ExecHandoff) • In THandoff, if Multiple Reports
Experimental Environment • 2 Access Points running Windows NT • 200 MHz Pentium PCs • 1 Mobile running Windows NT • Gateway Pentium notebook @ 300 MHz • IONA’s ORBIX 2.0 • original libraries used • 3 x 900 MHz WaveLAN Cards • Open API provided by Lucent for programming the beacon
Future Work • Java Emulator (Mobile) • Integration with the switch controllers • Mobiware v 2.0 release • Combine software radio/signaling plane programmability
Lessons Learned • Designing with Corba • Asynchronous systems are difficult to debug! Many corner cases… • Trade-offs in Wireless Systems • Latency vs Power Consumption • NCHO vs MAHO • Programmable Networks
In Closing…. • Thanks to Michael Kounavis! • Please come to our Demo! • 5:20-6:00pm