Title: Remote Routing Control
1Remote Routing Control
2Overview
- Project Description
- Hardware Architecture
- Software Architecture
- Progress and Future Work
3Project Goal
- Being able to remotely control routing paths
chosen for end-to-end connectivity - Choose routes based on different routing
characteristics - Debugging routing algorithms on deployed networks
- Three Steps Algorithm
- Topology Discovery
- Reporting Neighbor Tables
- Route Assignment
4Topology Discovery
Route discovery messages by way of broadcasting.
5Discovery Message
- Broadcast level
- Increment at each node
- Node source address
- Tells receiver their parent node
- Broadcast sequence number
- To distinguish between discovery periods
6Reporting Back
Neighbor table and link information messages
7Neighbor Report Messages
- Up to 6 neighbors with
- Node ID
- Signal strength estimation
- Message relayed up to base station
8Route Assignment
Route assignment message tells each node along
the path their upstream or downstream parents.
9Route Assignment Messages
- Source node address
- Original source (initiating base station)
- Destination node (other base station)
- Hop count
- Stream assignment type
- Upstream, downstream, or both
- Path information
10Hardware
- Crossbow MicaZ (MPR2400) motes
- Atmel ATMega 128L processor
- CC2420 Radio chip
- 2.4 Ghz
- IEEE 802.15.4 compliant
- 250 kbps radio data rate
- 512 kB nonvolatile memory
11Software
- Motes run TinyOS
- Written in nesC
- And extension of C
- Event driven
- Limited resources
- Component-based architecture
- Built on software components and software
wrappers around hardware - Split phased operation
- Send and sendDone
12Progress and Future Work
- Currently in simulation phase
- DiSens simulator
- Power and cycle accurate simulator
- Work needed on PC endpoint application
- Aiming for deployment on 25 motes
13Questions
14Architecture for Multi-hop layer
15Overview
- Implementation Facts and Details
- End Point Application
- Mote Routing Layer
- Demo
16End Point Application
- End point app is connected to mib510 programming
broad via serial port. - Mib510 communicates with a mote via UART
- Connected mote provides a gateway to the wireless
network
17End Point Application Features
- Multithreaded (4 threads total)
- Serial communication
- HDLC like framing
- CRC checking
- Packet Statistics
- Input and output queuing
- Both reliable and unreliable messages
- Text messaging
- Encoding/Decoding Audio
18End Point Application
- RRC User Commands
- Broadcast Initialization
- Motes will respond back with neighbor tables
- Route Assignments
- Upstream, downstream, or both
- Destroying Routes
- Mote app can go into low power mode
- Application User Commands
- Stream audio
- Send text
- Get stats
- Log audio
19RRC Architecture
Intercept
Snoop
Receive
StdControl
RRCSend
RouteControl
RrcM
RouteControl
Send/Receive
Stdcontrol
RrcLEPSM
Stdcontrol
SendMsg
Timer
ReceiveMsg
CommControl
QueuedSend
Comm
TimerC
20Example Interface
- RRCSend Interface
- command result_t sendUp(TOS_MsgPtr msg, uint16_t
length) - command result_t sendDown(TOS_MsgPtr msg,
uint16_t length) - command result_t sendTo(TOS_MsgPtr msg, uint16_t
addr, uint16_t length) - command result_t broadcast(TOS_MsgPtr msg,
uint16_t length) - event result_t sendDone(TOS_MsgPtr msg, result_t
success)
21Mote Routing Layer Details
- CC2420 Radio Chip
- Provides Acks
- Received Signal Strength Indicator (RSSI)
- Link Quality Indicator (LQI)
22Acknowledgements
- Enabled by RRC routing layer
- MacControl.enableAck()
- Retransmits RRC related messages for reliability
- sendDone(TOS_Msgptr pMsg, result_t success)
- retransmit if the sendDone event informs of
failure - Messages for application layer also get a
sendDone event with result
23Link Estimation
- Link Quality Indicator
- Chip error rate calculated over 8 bits following
start frame delimiter - Mean LQI correlates well with packet reception
rate - Received Signal Strength Indicator
- Estimate signal power calculated over 8 symbol
periods and stored in RSSI_VAL register - When above the sensitivity threshold the rate is
above 85 reception - Below the threshold is a gray area
- Other Tactics
- Use a sequence number and calculate reception
rate over a fixed window of time
24RSSI versus LQI
Data taken from Kannan Srinivasan and Philip
Levis from RSSI is Under Appreciated
25Average LQI to PRR
26Simulator Issues
- Disens Simulator needed more features
- Having my own radio model with asymmetric links
- Being able to have two or more base stations
- Will be used for
- power profiling
- packet analysis
- proving correctness of mote application
27Simulation
Disens
App1
Port 7777
App2
UART(0)
Port 8888
UART(1)
Specify which nodes have serial forwarders and
their respective ports. App1 and App2 are on the
same PC
28Progress So Far
- Simulated for 10 motes
- Successful end-to-end connectivity
- Actual deployment on 5 motes
- Voice transmission over the network
- Easily allows for analysis of application over
different number of hops - Voice stream sounds good over one hop, but
deteriorates with additional hops
29Future Work
- Randomly generate topologies for simulation and
see the effects - Variable number of nodes (100)
- Use a more complicated radio model
- Asymmetric links
- Deploy and test on 25 motes
30Demo
31CC2420 Physical Layer Frame