topology management in ad hoc and sensor networks
TRANSCRIPT
Topology Management in Ad hoc and Sensor Networks
The need for Topology Management
– Energy/Power consumptionEnergy/Power consumption
– InterferenceInterference
– ThroughputThroughput
– ConnectivityConnectivity
Motivation for Backbone Architecture
essential for management of large ad hoc networksessential for management of large ad hoc networks
helps generate the minimum possible overhead for construction helps generate the minimum possible overhead for construction
and maintenance of the backbone networkand maintenance of the backbone network
can provide efficient solution for mobility and node/link failures in can provide efficient solution for mobility and node/link failures in
very large ad hoc networksvery large ad hoc networks
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks[Basagni+ 2001]
Proposed B-Protocol Description
B-ProtocolB-Protocol
• Also known as Also known as backbonebackbone protocols protocols
• Sets up and maintains a connected network (Sets up and maintains a connected network (B-networkB-network))
• B-network convey the time-sensitive network management informationB-network convey the time-sensitive network management information
• from every node in the network with minor overhead and in a from every node in the network with minor overhead and in a timely mannertimely manner
• Comprises two major tasks:Comprises two major tasks:
(a) B-nodes selection(a) B-nodes selection
(b) B-links establishment(b) B-links establishment
Nodes that are not selected as B-nodes are termed Nodes that are not selected as B-nodes are termed F- nodesF- nodes that belong to the that belong to the flat networkflat network
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Executed at each node based on a node’s Executed at each node based on a node’s own weightown weight
Weight Weight is computed based on what is most critical to that node for the is computed based on what is most critical to that node for the
specific network applicationspecific network application
The highest weight of a node is more suitable to be a B-nodeThe highest weight of a node is more suitable to be a B-node
A node knows A node knows
Its own identifier (ID) and weightIts own identifier (ID) and weight
Ids, weights and roles (B-node or F-node) of one-hop neighborsIds, weights and roles (B-node or F-node) of one-hop neighbors
Once a node Once a node bb determines its role as B-node, all its neighbors may determines its role as B-node, all its neighbors may
become the F-nodes served under become the F-nodes served under bb unless they have decided to join unless they have decided to join
another nodeanother node
B-nodes selection B-nodes selection is adaptive to node mobility and changes in its local is adaptive to node mobility and changes in its local
statusstatus
B-nodes Selection
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
4(9)
5(8)
7(5)
6(1)
2(3)
1(6)
8(1)
3(2)
Numbers represent node IDs and numbers within parentheses represent the node weights
Illustrative Example:
B-nodes Selection
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
4(9)
5(8)
7(5)
6(1)
2(3)
1(6)
8(1)
3(2)
B-node B-node
B-node
Illustrative Example:
B-nodes Selection
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Determines the inter-B-nodes links to be established in order for the Determines the inter-B-nodes links to be established in order for the
network to be connectednetwork to be connected
Two types of B-links:Two types of B-links:
PhysicalPhysical – when a direct link between B-nodes at most three hops – when a direct link between B-nodes at most three hops
away can be established without involving intermediate F-nodes away can be established without involving intermediate F-nodes
(via power control or directional antenna)(via power control or directional antenna)
VirtualVirtual – when a direct link between B-nodes at most three hops – when a direct link between B-nodes at most three hops
away away cannotcannot be established. In this case, virtual link is implemented be established. In this case, virtual link is implemented
among two B-nodes by a corresponding physical path with at most among two B-nodes by a corresponding physical path with at most
three linksthree links
The rules stated follow the theorem proven in [Chlamtac ’96]The rules stated follow the theorem proven in [Chlamtac ’96]
B-links Establishment
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Theorem 1 [Chlamtac ’96]:
Given a set B of network nodes such that no two of them are neighbors Given a set B of network nodes such that no two of them are neighbors
and every other node has a link to a node in B, then a connected and every other node has a link to a node in B, then a connected
backbone is guaranteed to arise if each node in B establishes links to all backbone is guaranteed to arise if each node in B establishes links to all
other nodes in B that are other nodes in B that are at most three hops awayat most three hops away. Moreover, these links . Moreover, these links
are all needed for the deterministic guarantee in the worst case, in the are all needed for the deterministic guarantee in the worst case, in the
sense that if any of them is left out then it is not true anymore that the sense that if any of them is left out then it is not true anymore that the
arising backbone is connected for any underlying flat network.arising backbone is connected for any underlying flat network.
B-links Establishment
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
1.1. Each node in flat network knows Each node in flat network knows onlyonly its one-hop neighbors. This its one-hop neighbors. This
induces the minimum possible overheadinduces the minimum possible overhead
2.2. B-link establishment is run at each B-node B-link establishment is run at each B-node onlyonly with no knowledge of with no knowledge of
the surrounding B-nodes. Again, this induces the minimum overheadthe surrounding B-nodes. Again, this induces the minimum overhead
3.3. Every B-node serves a number of F-nodes each of which is Every B-node serves a number of F-nodes each of which is at mostat most
three-hops away. B-node selection protocol guarantees that all the F-three-hops away. B-node selection protocol guarantees that all the F-
nodes are served by only one neighboring B-nodenodes are served by only one neighboring B-node
4.4. There are no two B-nodes that are neighbors in the flat network. This There are no two B-nodes that are neighbors in the flat network. This
guarantees that B-nodes are evenly distributed in the networkguarantees that B-nodes are evenly distributed in the network
5.5. B-node selection is based on the node’s current status (weight)B-node selection is based on the node’s current status (weight)
Properties of B-protocol
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
6.6. The B-network is always connected provided that the underlying flat The B-network is always connected provided that the underlying flat
network is connectednetwork is connected
7.7. B-protocols takes into account different technologies and mechanisms B-protocols takes into account different technologies and mechanisms
that can be used to link the B-nodes in the network. Two types of B-that can be used to link the B-nodes in the network. Two types of B-
links are provided; namely physical and virtual links. Physical links are links are provided; namely physical and virtual links. Physical links are
used when there is a direct link between B-nodes at most three hops used when there is a direct link between B-nodes at most three hops
away and virtual links are used when there is a direct link cannot be away and virtual links are used when there is a direct link cannot be
established established
Properties of B-protocol
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
A simulator used for an ad hoc network of nodes ranges 100 - 1000A simulator used for an ad hoc network of nodes ranges 100 - 1000
Nodes can freely move around in a rectangular region (a grid)Nodes can freely move around in a rectangular region (a grid)
Node movements are discretized to grid units of 1 meterNode movements are discretized to grid units of 1 meter
A node determines its direction randomly by choosing between its A node determines its direction randomly by choosing between its
current direction (with 75% probability) and uniformly among all other current direction (with 75% probability) and uniformly among all other
directions (with 25% probability) directions (with 25% probability)
When a node hits a grid boundary, it bounces back into the region with When a node hits a grid boundary, it bounces back into the region with
an angle determined by the incoming directionan angle determined by the incoming direction
Fixed transmission range of each node (250 m) and the grid size have Fixed transmission range of each node (250 m) and the grid size have
been chosen to obtain a good network connectivitybeen chosen to obtain a good network connectivity
Each packet contains the time-stamped, node identified weight of the Each packet contains the time-stamped, node identified weight of the
sending node. All packets are sent for the one-hop neighbors onlysending node. All packets are sent for the one-hop neighbors only
Simulation Environment
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Figure 1: Number of B-nodes (% w.r.t the number of the network nodes)
kk is the total number of F-is the total number of F-
nodes a B-node can serve nodes a B-node can serve
at any point in timeat any point in time
Three cases:Three cases: k < n k < n (where n is total (where n is total
number of nodes in number of nodes in network)network)
k < 4k < 4 k < 8k < 8
Simulation Results
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Figure 2: Number of B-links (%) when a physical link between any two B-nodes can be established directly.
kk is the total number of F-is the total number of F-
nodes a B-node can serve nodes a B-node can serve
at any point in timeat any point in time
Three cases:Three cases: k < n k < n (where n is total (where n is total
number of nodes in number of nodes in network)network)
k < 4k < 4 k < 8k < 8
Simulation Results
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
Figure 3: Number of B-links (%) when a link between B-nodes is implemented by a physical path with at most three hops away
kk is the total number of F-is the total number of F-
nodes a B-node can serve nodes a B-node can serve
at any point in timeat any point in time
Three cases:Three cases: k < n k < n (where n is total (where n is total
number of nodes in number of nodes in network)network)
k < 4k < 4 k < 8k < 8
Simulation Results
Mobility-Adaptive Protocols for Managing Large Ad hoc Networks
– SPANSPAN is a power is a power saving technique for multi-hop ad hoc networks that saving technique for multi-hop ad hoc networks that
reduces energy consumption with the consideration of maintaining the reduces energy consumption with the consideration of maintaining the
capacity or connectivity of the networkcapacity or connectivity of the network
– It is distributed and randomized algorithm in which the nodes make It is distributed and randomized algorithm in which the nodes make
local decisions on whether to sleep or join to the backbonelocal decisions on whether to sleep or join to the backbone
– Each node decides based on an estimate of how many neighbors will Each node decides based on an estimate of how many neighbors will
benefit from it being awake and the energy available to itbenefit from it being awake and the energy available to it
– Improvement in the system lifetime increases along with the ratio of Improvement in the system lifetime increases along with the ratio of
idle-to-sleep energy consumptionsidle-to-sleep energy consumptions
– Non-coordinators remain in power saving mode and periodically check Non-coordinators remain in power saving mode and periodically check
to see if they should wake up and become coordinatorsto see if they should wake up and become coordinators
SPAN: An Energy-Efficient Coordination Algorithm for Topology Maintenance in Ad hoc Wireless Networks[Chen+ 2002]
– A good power saving technique for ad hoc networks should have the following:A good power saving technique for ad hoc networks should have the following:
1.1. Allow as many as nodes to turn their radios off most of the timeAllow as many as nodes to turn their radios off most of the time
2.2. Forward packets between any source and destination with the minimum Forward packets between any source and destination with the minimum
possible delay than if all nodes were awakepossible delay than if all nodes were awake
3.3. Distributed algorithm where having each node making local decisionsDistributed algorithm where having each node making local decisions
4.4. Backbone formed by the awake nodes should provide close to total capacity as Backbone formed by the awake nodes should provide close to total capacity as
the original networks such that congestion can be avoidedthe original networks such that congestion can be avoided
5.5. Do not make many assumptions about the link layer’s facilities for sleeping and Do not make many assumptions about the link layer’s facilities for sleeping and
work with any link layer that provides sleeping and periodic pollingwork with any link layer that provides sleeping and periodic polling
6.6. Inter-operate correctly with any routing algorithm being usedInter-operate correctly with any routing algorithm being used
– SPAN fulfills all the above requirementsSPAN fulfills all the above requirements
– Each node makes periodic local decisions to sleep or stay awake as a Each node makes periodic local decisions to sleep or stay awake as a coordinatorcoordinator
and participate in the forwarding backbone topologyand participate in the forwarding backbone topology
SPAN
– In order to keep the same level of capacity of the original network, a node may In order to keep the same level of capacity of the original network, a node may
volunteer to become a coordinator if it figures out from the local information volunteer to become a coordinator if it figures out from the local information
gathering that two of its neighbors cannot communicate directly or through one or gathering that two of its neighbors cannot communicate directly or through one or
two existing coordinatorstwo existing coordinators
– In order to keep the number of coordinators low and rotate this role amongst all In order to keep the number of coordinators low and rotate this role amongst all
nodes, each node delays sending message about its desire to become a nodes, each node delays sending message about its desire to become a
coordinator by a random time intervalcoordinator by a random time interval
– The decision is based on two factors:The decision is based on two factors:
1.1. the remaining battery energythe remaining battery energy
2.2. the number of pairs of neighbors it can connect togetherthe number of pairs of neighbors it can connect together
– This allows SPAN to maintain capacity-preserving backbone at any time with the This allows SPAN to maintain capacity-preserving backbone at any time with the
nodes consuming about the same level of energynodes consuming about the same level of energy
– SPAN also scales well with the number of nodesSPAN also scales well with the number of nodes
SPAN
SPAN DesignSPAN Design
– The goals of SPAN includes:The goals of SPAN includes:
1.1. Ensures enough coordinators to be elected such that each node is in radio Ensures enough coordinators to be elected such that each node is in radio
range of at least one coordinatorrange of at least one coordinator
2.2. Rotates coordinators to ensure that all nodes provides equal support to Rotates coordinators to ensure that all nodes provides equal support to
achieve global connectivityachieve global connectivity
3.3. Increases the network lifetime, preserves the capacity with minimum latency by Increases the network lifetime, preserves the capacity with minimum latency by
minimizing the number of elected coordinatorsminimizing the number of elected coordinators
4.4. Coordinators are elected based on local available informationCoordinators are elected based on local available information
– SPAN is proactive such that each node periodically broadcasts HELLO messages SPAN is proactive such that each node periodically broadcasts HELLO messages
which contains the node’s status (coordinator or not), its current coordinators, and which contains the node’s status (coordinator or not), its current coordinators, and
its current neighborsits current neighbors
– From these HELLO messages, each node keeps tracks of a list of the node’s From these HELLO messages, each node keeps tracks of a list of the node’s
neighbors and coordinators, and for each neighbor, a list of its neighbors and neighbors and coordinators, and for each neighbor, a list of its neighbors and
coordinatorscoordinators
SPAN
Coordinator AnnouncementCoordinator Announcement
– Each non-coordinator node periodically determines whether it should become a Each non-coordinator node periodically determines whether it should become a
coordinator or notcoordinator or not
– The coordinator eligibility rules ensures that the network is covered with sufficient The coordinator eligibility rules ensures that the network is covered with sufficient
number of coordinatorsnumber of coordinators
Coordinator Eligibility RuleCoordinator Eligibility Rule
A non-coordinator node should become a coordinator if it figures out from the local A non-coordinator node should become a coordinator if it figures out from the local
information gathering that two of its neighbors cannot communicate directly or throughinformation gathering that two of its neighbors cannot communicate directly or through
one or two existing coordinatorsone or two existing coordinators
– If many nodes are willing to become coordinators, SPAN solves this contention by If many nodes are willing to become coordinators, SPAN solves this contention by
delaying coordinator announcement with a randomized backoff delaydelaying coordinator announcement with a randomized backoff delay
– Each node selects a delay value and delays sending HELLO message indicating Each node selects a delay value and delays sending HELLO message indicating
the desire to become coordinator for that amount of timethe desire to become coordinator for that amount of time
– At the end of the delay, the node reevaluates its eligibility based on the HELLO At the end of the delay, the node reevaluates its eligibility based on the HELLO
messages received from neighbors and if it is still eligible, it makes announcementmessages received from neighbors and if it is still eligible, it makes announcement
SPAN
Coordinator AnnouncementCoordinator Announcement
– At the end of the delay, the node reevaluates its eligibility based on the HELLO At the end of the delay, the node reevaluates its eligibility based on the HELLO
messages received from neighbors and if it is still eligible, it makes announcementmessages received from neighbors and if it is still eligible, it makes announcement
– Consider a case where all the nodes have the same level of energy which means Consider a case where all the nodes have the same level of energy which means
that only topology is considered in the decision of becoming a coordinatorthat only topology is considered in the decision of becoming a coordinator
– Consider a case where the nodes have unequal energy leftConsider a case where the nodes have unequal energy left
EErr = energy remaining at node = energy remaining at node NNii = number of neighbors for node i = number of neighbors for node i
EEmm = maximum amount of energy = maximum amount of energy T = round-trip delay for packetT = round-trip delay for packet
CCii = number of new connections through node i = number of new connections through node i R = random number in [0, 1]R = random number in [0, 1]
SPAN
Eq. 2
Eq. 1
Coordinator AnnouncementCoordinator Announcement
– In Eq. 1, if nodes with high CIn Eq. 1, if nodes with high C ii become coordinators, total number of coordinators become coordinators, total number of coordinators
needed would be less to ensure that every node in the network is coveredneeded would be less to ensure that every node in the network is covered
– Therefore, the nodes with a high CTherefore, the nodes with a high C ii values should volunteer for coordinator position values should volunteer for coordinator position
quicker than those with smaller Cquicker than those with smaller C ii
– In Eq. 2, the node with large value of (EIn Eq. 2, the node with large value of (Err/E/Emm) is expected to volunteer quicker to ) is expected to volunteer quicker to
become a coordinator than the nodes with smaller ratio in order to assure the become a coordinator than the nodes with smaller ratio in order to assure the
fairnessfairness
SPAN
Coordinator WithdrawalCoordinator Withdrawal
– Each node periodically checks whether it should withdraw as a coordinator Each node periodically checks whether it should withdraw as a coordinator
– A node withdraws if all of its neighbors can reach each other directly or with one or A node withdraws if all of its neighbors can reach each other directly or with one or
more coordinatorsmore coordinators
– For fairness, after some period of time, a coordinator withdraws and declares itself For fairness, after some period of time, a coordinator withdraws and declares itself
as a tentative coordinator if all neighbors can reach each other via other neighbors, as a tentative coordinator if all neighbors can reach each other via other neighbors,
even if these are not coordinators (allows neighbors to act as coordinators)even if these are not coordinators (allows neighbors to act as coordinators)
– A tentative coordinator is still used to forward packets and described coordinator A tentative coordinator is still used to forward packets and described coordinator
announcement algorithm treats tentative coordinators as non-coordinator nodesannouncement algorithm treats tentative coordinators as non-coordinator nodes
– A coordinator nodes gives its neighbors the opportunity to become coordinators by A coordinator nodes gives its neighbors the opportunity to become coordinators by
declaring itself as tentative coordinatordeclaring itself as tentative coordinator
– A coordinator maintains its position as tentative for WA coordinator maintains its position as tentative for WTT time, where W time, where WTT is the is the
maximum value of Eq. 2 which is maximum value of Eq. 2 which is
WWTT = 3 x N = 3 x Nii x T x T
SPAN
Coordinator WithdrawalCoordinator Withdrawal
– If the coordinator has not withdrawn within WIf the coordinator has not withdrawn within WTT time period, it clears its tentative bit time period, it clears its tentative bit
– In order to prevent node to drain its battery completely, the amount time a node acts In order to prevent node to drain its battery completely, the amount time a node acts
as a coordinator before turning on its tentative bit is proportional to the amount of as a coordinator before turning on its tentative bit is proportional to the amount of
energy it has, indicated as (Eenergy it has, indicated as (Err/E/Emm) )
SPAN
Simulation Results
SPAN
– In In ASCENTASCENT, the nodes coordinate to exploit the redundancy provided by , the nodes coordinate to exploit the redundancy provided by
high density to extend the overall system lifetimehigh density to extend the overall system lifetime
– Nodes achieve self-configuration to establish a topology that provides Nodes achieve self-configuration to establish a topology that provides
communication and sensing coverage under energy constraintscommunication and sensing coverage under energy constraints
– Each node examines its connectivity and adapts its participation in the Each node examines its connectivity and adapts its participation in the
multi-hop network topology based on the operating regionmulti-hop network topology based on the operating region
– The nodeThe node
Signals when it detects high message loss, requesting additional nodes to Signals when it detects high message loss, requesting additional nodes to
join the network to continue relaying messagesjoin the network to continue relaying messages
Reduces its duty cycle if high messages losses are detected due to Reduces its duty cycle if high messages losses are detected due to
collisionscollisions
Probes local communication environment and only joins to the multi-hop Probes local communication environment and only joins to the multi-hop
routing infrastructure if it is usefulrouting infrastructure if it is useful
ASCENT: Adaptive Self-Configuring sEnsor Networks Topologies[Cerpa+ 2002]
– Sensor nodes do local processing to reduce communication and energy costsSensor nodes do local processing to reduce communication and energy costs
– Challenges arises from the increased level of Challenges arises from the increased level of dynamicsdynamics (systems and (systems and
environmental)environmental)
– One of the most important challenge arises from One of the most important challenge arises from energy constraintsenergy constraints imposed imposed
by by unattended systemsunattended systems
These systems must be long-lived and operate without manual intervention These systems must be long-lived and operate without manual intervention
They need to self-configure and adapt to environmental dynamics and some They need to self-configure and adapt to environmental dynamics and some
terrain conditions may result regions with non-uniform communication densityterrain conditions may result regions with non-uniform communication density
These issues can be addressed by deploying redundant nodes and designing These issues can be addressed by deploying redundant nodes and designing
algorithms to use redundancy to extend the system lifetimealgorithms to use redundancy to extend the system lifetime
Scaling challenges are associated with spatial coverage and robustnessScaling challenges are associated with spatial coverage and robustness
Central vs. DistributedCentral vs. Distributed
– When energy is constraint and environment is dynamic, distributed approaches are When energy is constraint and environment is dynamic, distributed approaches are
preferable and practicalpreferable and practical
ASCENT
– Scalable wireless sensor networks require to avoid large amounts of data Scalable wireless sensor networks require to avoid large amounts of data
being transmitted over long distancesbeing transmitted over long distances
– ASCENT applies well-known techniques from MAC layer protocols to the ASCENT applies well-known techniques from MAC layer protocols to the
problem of distributed topology formationproblem of distributed topology formation
– Imagine a habitat monitoring sensor network that is deployed in remote forestImagine a habitat monitoring sensor network that is deployed in remote forest
– The deployed systems must confer with the following conditions The deployed systems must confer with the following conditions
Ad-hoc deploymentAd-hoc deployment
Energy constraintsEnergy constraints
Unattended operation under dynamicsUnattended operation under dynamics
– If we use too few nodes initially:If we use too few nodes initially:
the distance between neighboring nodes will be too farthe distance between neighboring nodes will be too far
packet loss rate may increasepacket loss rate may increase
energy required to transmit over larger distances may be prohibitiveenergy required to transmit over larger distances may be prohibitive
ASCENT
– If we use all deployed nodes simultaneously:If we use all deployed nodes simultaneously:
system will expand unnecessary energysystem will expand unnecessary energy
nodes interfere with each other by congesting the channelnodes interfere with each other by congesting the channel
– ASCENT does not use localized distributed algorithm to find a single solutionASCENT does not use localized distributed algorithm to find a single solution
– Adaptive self-configuration using localized is suited to problem spaces which Adaptive self-configuration using localized is suited to problem spaces which
have a vast number of possible solutions (in this case, large solution spaces have a vast number of possible solutions (in this case, large solution spaces
means dense node deployment)means dense node deployment)
– ASCENT has the following two assumptions:ASCENT has the following two assumptions:
Carrier Sense Multiple Access (CSMA) MAC protocolCarrier Sense Multiple Access (CSMA) MAC protocol
Possibilities for resource contention when too many neighboring Possibilities for resource contention when too many neighboring
nodes participate in the multi-hop networknodes participate in the multi-hop network
Reacts when links have high packet lossReacts when links have high packet loss
Does not detect or repair network partitions and assumes that there Does not detect or repair network partitions and assumes that there
is enough node density to connect the entire regionis enough node density to connect the entire region
ASCENT
– Two essential contributions of ASCENT design are:Two essential contributions of ASCENT design are:
1.1. Adaptive techniques that allow applications to Adaptive techniques that allow applications to configureconfigure the topology the topology
based on the needs while saving energy to extend network lifetime. The based on the needs while saving energy to extend network lifetime. The
techniques do not assume a specific model or fairness, degree of techniques do not assume a specific model or fairness, degree of
connectivity, or capacity requiredconnectivity, or capacity required
2.2. Self-configuring techniques that react to operating conditions are Self-configuring techniques that react to operating conditions are
measured locallymeasured locally. It does not assume any specific radio propagation . It does not assume any specific radio propagation
model, geographical distribution of nodes, or routing mechanisms usedmodel, geographical distribution of nodes, or routing mechanisms used
ASCENT DesignASCENT Design
– Adaptively elects Adaptively elects activeactive nodes from all the nodes nodes from all the nodes
– Active nodes stay awake always and participate in routing while the other Active nodes stay awake always and participate in routing while the other
nodes remain nodes remain passivepassive and periodically checks if they should become active and periodically checks if they should become active
– Initially, only some nodes are active while other are passively listening to Initially, only some nodes are active while other are passively listening to
packets but not transmittingpackets but not transmitting
ASCENT
ASCENT DesignASCENT Design
– When source starts transmitting data packets towards the sink, the sink gets When source starts transmitting data packets towards the sink, the sink gets
high message loss from the source due to limited radio range, called high message loss from the source due to limited radio range, called
communication holecommunication hole
– The receiver gets high packet loss due to poor connectivity with the senderThe receiver gets high packet loss due to poor connectivity with the sender
– Sink start sending Sink start sending help messageshelp messages to neighbors that are in listen-only mode, to neighbors that are in listen-only mode,
called called passive neighborspassive neighbors, to join the network, to join the network
ASCENT
(a) Communication Hole
Help Messages
Data Message
SinkSource
Active NeighborPassive Neighbor
ASCENT DesignASCENT Design
– When a neighbor receive a When a neighbor receive a help messagehelp message, it decides to join the network or not, it decides to join the network or not
– If the node joins, it becomes an If the node joins, it becomes an active neighboractive neighbor and signals the existence of a new and signals the existence of a new
active neighbor to other passive neighbors by sending a active neighbor to other passive neighbors by sending a neighbor announcement neighbor announcement
messagemessage
– It continues until the number of active nodes stabilizes on a certain value and the It continues until the number of active nodes stabilizes on a certain value and the
cycle stopscycle stops
– When the process is completed, the newly joined nodes participate in the data When the process is completed, the newly joined nodes participate in the data
delivery process from source to sink more reliablydelivery process from source to sink more reliably
– The process will be repeated in the case of network event (e.g., node failure) or The process will be repeated in the case of network event (e.g., node failure) or
environmental effect (e.g., new obstacle) causes message lossenvironmental effect (e.g., new obstacle) causes message loss
ASCENT
Sink
(b) Self-configuration transition (c) Final State
SinkSource
Neighbor AnnouncementsMessages
Data Message
Source
NT: neighbor threshold
LT: loss threshold
T?: state timer values (p: passive, s: sleep, t: test)
DL: Data loss rate
Test
Passive Sleep
Activeafter Tt
after Tp
after Ts
neighbors < NT and• loss > LT• loss < LT & help
neighbors > NT (high ID for ties); orloss > loss T0
ASCENT
ASCENT State TransactionsASCENT State Transactions
ASCENT State TransactionsASCENT State Transactions
– Initially, a random timer turns on the nodes to avoid synchronizationInitially, a random timer turns on the nodes to avoid synchronization
– Node initializes to test state:Node initializes to test state:
Sends data and routing control messagesSends data and routing control messages
Sets up a timer, Tt and sends neighbor announcement messagesSets up a timer, Tt and sends neighbor announcement messages
Moves into passive state if the conditions are met before Tt expiresMoves into passive state if the conditions are met before Tt expires
When Tt expires, it enters to active stateWhen Tt expires, it enters to active state
– The reasoning behind theThe reasoning behind the test test state is to probe the network to decide whether the state is to probe the network to decide whether the
addition of a new node would improve connectivityaddition of a new node would improve connectivity
– On entering the passive state, node:On entering the passive state, node:
Sets up a timer Tp and when Tp expires, it enters to sleep stateSets up a timer Tp and when Tp expires, it enters to sleep state
If before Tp expires, it enters to test state only if the conditions are metIf before Tp expires, it enters to test state only if the conditions are met
Nodes in passive state can hear all packets transmitted, but no routing or Nodes in passive state can hear all packets transmitted, but no routing or
data packets are forwarded in this state since this is listen-only statedata packets are forwarded in this state since this is listen-only state
ASCENT
ASCENT State TransactionsASCENT State Transactions
– The reasoning behind theThe reasoning behind the passive passive state is to gather information about the state of state is to gather information about the state of
the network without causing interference with other nodesthe network without causing interference with other nodes
– Nodes in passive and test states update the number of active neighbors and data Nodes in passive and test states update the number of active neighbors and data
loss ratesloss rates
– In passive states, the nodes still consume energy since the radio is on In passive states, the nodes still consume energy since the radio is on
– The nodes in sleep state turns the radio off, sets up timer Ts and goes to sleepThe nodes in sleep state turns the radio off, sets up timer Ts and goes to sleep
– When Ts expires, the nodes moves into passive stateWhen Ts expires, the nodes moves into passive state
– A node in the active state continuous to forward data and routing packets until it A node in the active state continuous to forward data and routing packets until it
runs out of energyruns out of energy
ASCENT
ASCENT Parameters TuningASCENT Parameters Tuning
– ASCENT has many parameters and the choices are left to the applications such as ASCENT has many parameters and the choices are left to the applications such as
a particular application may trade energy savings for greater sensing coveragea particular application may trade energy savings for greater sensing coverage
Neighbor Threshold (NT):Neighbor Threshold (NT):
Determines the average connectivity if the networkDetermines the average connectivity if the network
Tradeoff between energy consumed and/or level of interference (packet loss) Tradeoff between energy consumed and/or level of interference (packet loss)
vs. desired sensing coveragevs. desired sensing coverage
Loss Threshold (LT):Loss Threshold (LT):
Determines the maximum amount of data loss an application can tolerate Determines the maximum amount of data loss an application can tolerate
before requesting help to improve network connectivitybefore requesting help to improve network connectivity
This value is highly application dependentThis value is highly application dependent
Test timer (Tt), Passive timer (Tp), Sleep timer (Ts):Test timer (Tt), Passive timer (Tp), Sleep timer (Ts):
Determines the maximum time a node remains in test, passive, sleep statesDetermines the maximum time a node remains in test, passive, sleep states
Tradeoff between power consumption vs. decision qualityTradeoff between power consumption vs. decision quality
ASCENT
References [Basagni+ 2001] S. Basagni, D. Turgut, and S.K. Das, Mobility-Adaptive Protocols for Managing Large
Ad hoc Networks, Proceedings of IEEE International Conference on Communications (ICC), Helsinki, Finland, June 11-14, 2001, pp. 1539-1543.
[Chen+ 2002] B. Chen, K. Jamieson, R. Morris, and H. Balakrishnan, SPAN: An Energy-Efficient Coordination Algorithm for Maintenance in Ad hoc Wireless Networks, To appear in ACM Wireless Networks Journal, Vol. 8, No. 5, September 2002.
[Cerpa+ 2002] A. Cerpa and D. Estrin, ASCENT: Adaptive Self-Configuring Sensor Networks Topologies, Proceedings of the Twenty First International Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2002), New York, NY, USA, June 23-27 2002.