dynamic transmission power control in wireless ad-hoc networks ee194 wireless sensor networks stuart...
TRANSCRIPT
Dynamic Transmission Power Control Dynamic Transmission Power Control in Wireless Ad-Hoc Networksin Wireless Ad-Hoc Networks
EE194 Wireless Sensor NetworksEE194 Wireless Sensor Networks
Stuart Peloquin & Joe CerraStuart Peloquin & Joe Cerra
OutlineOutline
GoalsGoals Reasons for changing transmit strengthReasons for changing transmit strength HardwareHardware Distributed algorithmsDistributed algorithms Proposed basic algorithmProposed basic algorithm JiST / SWANSJiST / SWANS
• Reduce single node and entire network Reduce single node and entire network power consumptionpower consumption
Define the link metric as a function of Define the link metric as a function of transmit powertransmit power
Efficiently update link information for use in Efficiently update link information for use in effective routingeffective routing
• Simulate an adaptive transmitter power Simulate an adaptive transmitter power algorithm using JiST/SWANSalgorithm using JiST/SWANS
GoalsGoals
Project considerationsProject considerations
• Highly mobile environmentHighly mobile environment Distributed algorithms, no central serverDistributed algorithms, no central server Distributed routing tablesDistributed routing tables Increased loss modelIncreased loss model
• Hardware considerationsHardware considerations Crossbow Mica2 MotesCrossbow Mica2 Motes
• RSSI capableRSSI capable• Programmable transmit powerProgrammable transmit power
• Simulation considerationsSimulation considerations JiST/SWANSJiST/SWANS
Why use dynamic power Why use dynamic power model?model?
• Free space signal attenuation: Free space signal attenuation: theoreticaltheoretical
Loss ~ dLoss ~ d22
• Loss model ~ dLoss model ~ d44:: Mobile nodesMobile nodes Large d: d > 4Large d: d > 4ππhhtthhrr//λλ Multi-path fading due to:Multi-path fading due to:
• Urban/congested environmentUrban/congested environment• IndoorsIndoors
● Save energy at each node with reduced transmission cost● Easily accessed and updated accurate link metric for routing● Can eliminate some channel assignment issues:
4 Channels:
BlackRedBlueYellow
Able to change power needs
All nodes operate at full transmission power.
Overlap.This channel cannot be used here.
Why use dynamic power model?Why use dynamic power model?
Single-hop vs. Multi-hopSingle-hop vs. Multi-hop
As seen before:As seen before:• Transmitted power ~ dTransmitted power ~ d22 – d – d44
• 2 nodes 50m away could drastically 2 nodes 50m away could drastically decrease the power needed to decrease the power needed to communicate if relay nodes are usedcommunicate if relay nodes are used
50m
10m
50m
Power ~ 504 ~ 6.25x106Power ~ 104 * 5 ~ 5x104
Single-hop vs. Multi-hopSingle-hop vs. Multi-hop When that model failsWhen that model fails
• From link metrics shown, B is the obvious choice for routingFrom link metrics shown, B is the obvious choice for routing• How to establish these routesHow to establish these routes
Polling: Very wastefulPolling: Very wasteful Random inquiries: Can be shown to perform better than constant pollingRandom inquiries: Can be shown to perform better than constant polling Include link status messages in some/all data packetsInclude link status messages in some/all data packets
2
3
4
7
1
AA. B.
Information propagationInformation propagation Need for an effective routing protocolNeed for an effective routing protocol
• Must be able to adapt quickly to changing network Must be able to adapt quickly to changing network topology and link statustopology and link status
• Cannot be over-cumbersome Cannot be over-cumbersome Each node does not have unlimited memory to store this Each node does not have unlimited memory to store this
datadata
Need for an effective method to update link Need for an effective method to update link metricsmetrics• RSSI is only so good on its ownRSSI is only so good on its own
Each node can reduce/increase the cost to send to its Each node can reduce/increase the cost to send to its neighborneighbor
Each node should also forward that information so routing Each node should also forward that information so routing tables can changetables can change
RSSIRSSI
Received Signal Strength IndicatorReceived Signal Strength Indicator• Available on most Transceivers. RSS can Available on most Transceivers. RSS can
be interrogated from receiver.be interrogated from receiver.• RSS to dB conversion rates availableRSS to dB conversion rates available
How to use RSS?How to use RSS?• RSS does not directly translate to distanceRSS does not directly translate to distance• Sending node should include the Sending node should include the
transmitted signal strengthtransmitted signal strength Roughly, loss ~ RSS – Transmitted powerRoughly, loss ~ RSS – Transmitted power
HardwareHardware Mica2, Mica2 DOTMica2, Mica2 DOT
• CPUCPU Active: 8maActive: 8ma Sleep: <15uASleep: <15uA
• Transceiver – data rate: 38.4 KbaudTransceiver – data rate: 38.4 Kbaud Send: 25 – 27 mA (maximum power)Send: 25 – 27 mA (maximum power) Receive: 8 – 10 mAReceive: 8 – 10 mA Sleep: <1uASleep: <1uA RF Power: -20 - 10 dB (programmable)RF Power: -20 - 10 dB (programmable) Received Sensitivity: -98 - -101dB (RSSI Received Sensitivity: -98 - -101dB (RSSI
capable)capable)
Hardware – Mica2Hardware – Mica2• Typical Battery life: Typical Battery life:
1000 milliamp - hours1000 milliamp - hours
• CPU:CPU: 1000/8mA ~ 125 hours at full CPU consumption1000/8mA ~ 125 hours at full CPU consumption
• Transmitter:Transmitter: 25mA * (38000)25mA * (38000)-1-1 sec/bit * (60) sec/bit * (60)-1-1 hour/sec ~ 1.1x10 hour/sec ~ 1.1x10-5-5
mA – hour /bit mA – hour /bit 1000/1.1x101000/1.1x10-5-5 ~ 9.12x10 ~ 9.12x1077 bits bits
• Doesn't consider MAC encoding scheme, collision error Doesn't consider MAC encoding scheme, collision error checkingchecking
• Simple 8-bit CDMA: 9.12x10Simple 8-bit CDMA: 9.12x1077/8 = 1.14x10/8 = 1.14x107 7 bits = bits = 1.425x101.425x1066 bytes bytes
• 1.425x101.425x1066 ~ 1.36MB: 1 floppy disk ~ 1.36MB: 1 floppy disk
Distributed AlgorithmsDistributed Algorithms
Determine appropriate transmission Determine appropriate transmission power levels per nodepower levels per node
Reduce or increase the amount of Reduce or increase the amount of neighbors a node hasneighbors a node has
Reduce average RF interferenceReduce average RF interference
• Outline of 5 distributed algorithms…Outline of 5 distributed algorithms…
Fixed Transmission PowerFixed Transmission Power
Simplest solutionSimplest solution
Arbitrarily assign a fixed transmission Arbitrarily assign a fixed transmission power level to all nodes.power level to all nodes.• Does not adjust transmission power at all.Does not adjust transmission power at all.
Distributed Algorithm # 1Distributed Algorithm # 1
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Local Mean Algorithm (LMA)Local Mean Algorithm (LMA)
1.1. All nodes start with same initial transmission power.All nodes start with same initial transmission power.2.2. Every node periodically broadcasts a LifeMsg.Every node periodically broadcasts a LifeMsg.3.3. These nodes than count the number of responses These nodes than count the number of responses
(LifeAckMsg) they receive.(LifeAckMsg) they receive. Called NodeRespCalled NodeResp
4.4. If NodeResp < NodeMinThresh, than node increases If NodeResp < NodeMinThresh, than node increases transmission powertransmission power
5.5. If NodeResp > NodeMaxThresh, than node decreases If NodeResp > NodeMaxThresh, than node decreases transmission powertransmission power
6.6. If NodeResp is between these bounds, than the node If NodeResp is between these bounds, than the node does not change its transmission power.does not change its transmission power.
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Distributed Algorithm # 2Distributed Algorithm # 2
Threshold in Mean Number of Threshold in Mean Number of Neighbors (LMN)Neighbors (LMN)
Similar to previous algorithm.Similar to previous algorithm.• LifeAckMsg also contains its own number of LifeAckMsg also contains its own number of
neighbors.neighbors. Node receiving the LifeAckMsg computes a Node receiving the LifeAckMsg computes a
mean value from thismean value from this• The new NodeRespThe new NodeResp
Distributed Algorithm # 3Distributed Algorithm # 3
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Global Solution with Equal Global Solution with Equal Transmission PowerTransmission Power
Uses the Equal Transmission Power (ETP) Uses the Equal Transmission Power (ETP) Algorithm. Algorithm. • Assigns a uniform transmission power to all nodesAssigns a uniform transmission power to all nodes• Chooses the minimal value to ensure a fully connected Chooses the minimal value to ensure a fully connected
network.network. ETP Algorithm on next page…ETP Algorithm on next page…
Distributed Algorithm # 4Distributed Algorithm # 4
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Equal Transmission Power (ETP) Equal Transmission Power (ETP) AlgorithmAlgorithm
1.1. Among the node pairs that are not yet Among the node pairs that are not yet connected, choose the one with the connected, choose the one with the smallest distance.smallest distance.
2.2. Set transmission power of Set transmission power of allall nodes to a nodes to a value sufficient to connect these two value sufficient to connect these two nodes.nodes.
3.3. Check connectivity of the resulting Check connectivity of the resulting network. If not connected, loop.network. If not connected, loop.
4.4. When network is connected, minimum When network is connected, minimum power level is found.power level is found.
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Global Solution with Diverse Global Solution with Diverse Transmission PowerTransmission Power
Uses the Diverse Transmission Power (DTP) Uses the Diverse Transmission Power (DTP) Algorithm.Algorithm.• Creates a connected networkCreates a connected network• Does not set all transmission ranges to the same value.Does not set all transmission ranges to the same value.• Tries to find a minimal power level for every node.Tries to find a minimal power level for every node.
DTP Algorithm on next page…DTP Algorithm on next page…
Distributed Algorithm # 5Distributed Algorithm # 5
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Diverse Transmission Power (DTP) Diverse Transmission Power (DTP) AlgorithmAlgorithm
1.1. Among the node pairs that are not yet Among the node pairs that are not yet connected, choose the one with the connected, choose the one with the smallest distance.smallest distance.
2.2. Set transmission power of Set transmission power of these twothese two nodes to a value sufficient to connect nodes to a value sufficient to connect them.them.
3.3. Check connectivity of the resulting Check connectivity of the resulting network. Loop if not connected.network. Loop if not connected.
4.4. When network is fully connected, When network is fully connected, minimum power level is found.minimum power level is found.
http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
Proposed Basic Algorithms Proposed Basic Algorithms
Before initiating communication with ABefore initiating communication with A1.1. Make sure there will be no communication interferenceMake sure there will be no communication interference
2.2. Put node into FCL if above conditions applyPut node into FCL if above conditions apply
A sends RTS(FCL, LA sends RTS(FCL, Ldd) at maximum power) at maximum power When B receives RTSWhen B receives RTS
1.1. Check whether there is some channel in the FCLCheck whether there is some channel in the FCL
2.2. Ensure some channel is a free channel after CTS and Data Ensure some channel is a free channel after CTS and Data transmission durations, and that it does not interfere with transmission durations, and that it does not interfere with any other channelany other channel
B replies with CTS(DB replies with CTS(Djj, NAV, NAVCTSCTS, P, PCTSCTS)) Each mobile host keeps power[…] arrayEach mobile host keeps power[…] array
• For each host Id, power[Id] is the power to transmitFor each host Id, power[Id] is the power to transmit
http://pages.cpsc.ucalgary.ca/~caox/papers/multichannel02.pdf
A B
Java Simulation EnvironmentJava Simulation Environment
JiSTJiST• New and rapidly growing simulation environmentNew and rapidly growing simulation environment
Simulates using virtual machinesSimulates using virtual machines
SWANSSWANS• Runs on top of JiSTRuns on top of JiST• Functionality similar to ns2 and GloMoSimFunctionality similar to ns2 and GloMoSim
Component based architectureComponent based architecture ParallelizedParallelized
JiSTJiST
High performance, discrete event simulationHigh performance, discrete event simulation engine that runs over standard java virtual engine that runs over standard java virtual machine machine
Advantages:Advantages:• EfficientEfficient• TransparentTransparent• StandardStandard
Java in Simulation Time
http://jist.ece.cornell.edu/docs/040325-yorku.pdf
SWANSSWANS
http://jist.ece.cornell.edu/docs/040108-swans-dsr.pdf
Scalable Wireless Ad hoc Network Simulation
•Newest technology in wireless sensor networking simulation
•Simulation program features include:
• Routing protocol, field dimensions, number of nodes, client/server pairs, transmissions, packet loss probability, node movement rate
•Control Flow: Route request, route reply
•Data Structures: Buffers, route cache, route tables – scalable
•Layers: Routing, network, MAC
•Routing: DSR, ZRP
•Detail: Approximate physical level, packet level
Future PlanFuture Plan
Simulate a mobile wireless network in Simulate a mobile wireless network in JiST/SWANS.JiST/SWANS.
1.1. Without power controlWithout power control
2.2. With power controlWith power control• Develop a refined power control algorithm.Develop a refined power control algorithm.
ReferencesReferences http://bwrc.eecs.berkeley.edu/People/Grad_Students/czhong/documents/kubischtxCtrl.pdf
http://pages.cpsc.ucalgary.ca/~caox/papers/multichannel02.pdf
http://jist.ece.cornell.edu/docs/040325-yorku.pdf http://jist.ece.cornell.edu/docs/040108-swans-dsr.pdf http://computer.howstuffworks.com/mote4.htm http://www.xbow.com/Products/Product_pdf_files/
Wireless_pdf/6020-0042-06_B_MICA2.pdf http://www.engineering.uiowa.edu/~ece195/2005/
lectures/lecture03.ppt http://groups.csail.mit.edu/robotics/journal_club/papers/
nana.dankwa.ee.pdf