200 likes | 296 Views
Outline. Introduction Wireless Networks Terms & Notations MAC Protocols & Slot Assignment Asynchronous Slot Assignment Basic Approach Problems & Remedies ASAND Protocol OPNET Modeler Implementation of ASAND Simulation Results & Conclusion. Wireless Network Graphs.
E N D
Outline • Introduction • Wireless Networks • Terms & Notations • MAC Protocols & Slot Assignment • Asynchronous Slot Assignment • Basic Approach • Problems & Remedies • ASAND Protocol • OPNET Modeler Implementation of ASAND • Simulation Results & Conclusion
Wireless Network Graphs Representation of the network as a graph Each node has a transmission range, which determines its neighbors same transmission power/range symmetric links undirected graph
Basic Terms & Notations… • k-neighborhood of a node v: k(v) • k-neighborhood size of a node v: k(v) = |k(v)| • max k-neighborhood size(in the network): k = maxv k(v) • n = number of nodes in the network v 1-neighbors or “neighbors” of v 2-neighbors of v
time slot frame MAC (Medium Access Control) Protocols • Specify how nodes in a network access the shared communication channel. • Three main classes: • Contention-based • Contention-free • Limited-contention • Slot Assignment • Assign each node a time interval for channel access. • Mainly used for contention-free MAC protocols. • Existing approaches require a common view of time by all nodes, i.e. global time synchronization.
Interference / Collisions Packets that suffered collisions should be re-sent. Ideally, we would want all packets to be sent collision-free,only once… b a a and b interfere and hear noise only b b a c d c a Interference on node b Interference on node b (“Hidden terminal problem”)
Static Slot Assignment • Because of the hidden terminal problem, a node may contend with any neighbor in its 2-neighborhood for channel access. • A static slot assignment protocol should assign each node a time interval that is guaranteed to be collision-free in its 2-neighborhood.
1 2 3 i 1 2 3 i 1 2 3 4 1 2 3 4 Asynchronous Slot Assignment • We propose a new protocol that does not require global clock synchronization. • Each node locally discretizes its local time. • The number of slots in a time frame, called the frame size and denoted by , is set to 22. • Having the same frame size at all nodes ensures that overlapping time slots remain the same. • When 22, we show [JDC’07] that all nodes obtain a conflict-free slot within 2log n time slots, with probability at least 1−1/n. • The clock skew may have a small effect, which can be addressed by introducing safety gaps within slots to tolerate a given amount of clock drift.
Nonready Ready ASAND – Basic Approach Select random slot Report conflicts between neighbors Transmit beacon at Listen for slots Conflict YES NO Obtain slot
ASAND – Basic Approach Schedule nodes’ transmission times so that neighbor nodes do not transmit at the same time. Repeatedly select a randomtime slot until it is collision-free in the 2-neighborhood. u w v
u w v ASAND – Conflict Reporting • The 2-hop neighbors u and v are unaware that they have selected conflicting time slots (their transmissions collide on w). • Having observed a collision in its local time t, node w transmits at time t+, creating a spurious conflict with both u and v. • This is called conflict reporting essentially reduces a conflict between hidden terminals to a conflict between neighbor nodes. • After t+, u and v will be forced to select new slots
a a a b b b Transmitting e e e Observing a collision g g g h h h f f f c c c d d d t t+ t+2 Problem: Chains of Conflict Reports a b e g h f c d t+3 • Chain of messages goes on indefinitely and makes the time slot useless in this neighborhood. • Nodes involved in the chain waste energy. • Continuous collisions impose a problem for algorithm termination.
u 20% 40% 60% 80% 100% w v Remedy: Probabilistic Conflict Reporting • Upon detecting a collision at time t; • report the collision at t+ with probability preport. • otherwise, listen for collisions again at t+ (with prob. 1preport,). • If a collision is detected again at t+, then report it at t+2 with probability 2preport… • In general, after c consecutive collisions, report with probability c preport… • A slot conflict is always reported after at most 1/ preport frames. • To obtain a slot, a node has to transmit 1/ preport times in that slot. Example: (preport = 0.2)
u 20% 40% 60% 80% 100% w v ASAND Protocol At algorithm termination, a node discovers its neighbors and a local schedule of their channel access times: node i: v x i w u
v u Collision Detection • When a node transmits, it must be able to detect simultaneous transmissions of neighbor nodes. • Divide each slot into 4 log n +8 mini slots. • Generate a binary sequence b of 4 log n +8 bits based on unique node id. • Transmit in mini slot j only if bu(j)=1. • Guarantees that each transmitting node can detect other transmissions during its current slot.
Collision Detection X = idu Y = idv l = |idu| = log n 1 shift log n shift= log n + 1 shift= log n + 2 log n + 3 shift 2log n + 2 shift= 2log n + 3
References & Further Information • [JDC’07] C. Busch, M. Magdon-Ismail, F. Sivrikaya and B. Yener, “Contention-Free MAC Protocols for Asynchronous Wireless Networks,” to appear in the Journal of Distributed Computing (JDC). Available at http://www.cs.rpi.edu/~sivrif/academic/papers/JDC_CFMAC.pdf • [DISC’04] C. Busch, M. Magdon-Ismail, F. Sivrikaya, B. Yener, “Contention-Free MAC protocols for Wireless Sensor Networks,” In proceedings of the 18th International Conference on Distributed Computing (DISC 2004), Amsterdam, The Netherlands, pp. 245--259, October 2004. • Research with OPNET Program at RPI: http://www.cs.rpi.edu/~sivrif/opnet/ • Model files also available at the OPNET Contributed Models depot: http://www.opnet.com/support/cont_models.shtml Fikret Sivrikaya - sivrif@cs.rpi.edu