420 likes | 454 Views
Discover the principles of ad hoc networks where nodes communicate without infrastructure, MAC layer 802.11, routing protocols, and handling contention. Learn about the 802.11 MAC protocol, simulation environments, communication paradigms, layered protocols, and major assumptions. Dive into network modeling and contention finding solutions.
E N D
Introduction to Wireless Networks Michalis Faloutsos
What is an ad hoc network • A collection of nodes that can communicate with each other without the use of existing infrastructure • Each node is a sender, a receiver, and a relay • There are no “special nodes” (in principal) • No specialized routers, no DNS servers • Nodes can be static or mobile • Can be thought of us: peer-to-peer communication
Example: Ad hoc network • Nodes have power range • Communication happens between nodes within range
Some Introductory Things • The MAC layer 802.11 • Typical Simulations • The routing protocols • TCP and ad hoc networks
What Is Different Here? • Broadcasts of nodes can “overlap” -> collision • How do we handle this? • A MAC layer protocol could be the answer • If one node broadcasts, neighbors keeps quite • Thus, nearby nodes compete for air time • This is called contention
Contention in ad hoc networks • A major difference with wireline networks • Air-time is the critical resource • Fact 1: connections that cross vertically interfere • Fact 2: connections that do not share nodes interfere • Fact 3: a single connection with itself interferes!
B A C D Example of contention • Yellow connection bothers pink connection • Yellow bothers itself • When A-E is active • E-F is silent • F-G is silent (is it?) F E G H
The 802.11 MAC protocol RTS RTS • Introduced to reduce collisions • Sender sends Request To Send (RTS): ask permission • Case A: Receiver gives permission Clear To Send (CTS) • Sender sends Data • Receiver sends ACK, if received correctly • Case B: Receiver does not respond • Sender waits, times out, exponential back-off, and tries again A B D CTS C CTS
RTS A B D CTS C Why is this necessary? • A: RTS, and B replies with a CTS • C hears RTS and avoids sending anything • C could have been near B (not shown here) • D hears CTS so it does not send anything to B
Some numbers for 802.11 • Typical radius of power-range: 250m • Interference range: 500m • At 500m one can not hear, but they are bothered! • RTS packet 40 bytes • CTS and ACK 39 bytes • MAC header is 47 bytes
Typical Simulation Environment • A 2-dimensional rectangle • Fixed number of nodes • Static: uniformly distributed • Dynamic: way-point model • Pick location, move with speed v, pause • Power range: fixed or variable • Sender-receivers uniformly distributed
Various Communication Paradigms • Broadcasting: • one nodes reaches everybody • Multicasting: • One node reaches some nodes • Anycasting: • One node reaches a subset of some target nodes (one) • Application Layer protocols and overlays • Applications like peer-to-peer
Layered and Cross Layer Protocols • Layering: • Modular • Isolates details of each layer • Cross Layer: • Information of other layers is used in decisions • Pros: efficiency • Cons: deployability and compatibility application transport Network Link physical application transport Network Link physical
Example: application layer multicast • Source unicasts data to some destinations • Destinations unicast data to others • Pros: easy to deploy, no need to change network layer • Cons: not as efficient
Example: application layer multicast II • Members need to make multiple copies • It would happened anyway • Link A B gets two packets • Similarly in wireline multicast • Node B sends and receives packet 4 times s A B
Some major assumptions • The way-point model is a good model for mobility • Homogeneity is a good assumption • Links are bidirectional: I hear U, U hear me • Uniform distribution of location is good • 802.11 will be used at the MAC layer • Space is two dimensional
Some “proven” claims • The smallest the range, the better the throughput • Mobility increases the capacity of a network • A node should aim for 6-7 neighbors • We can challenge these claims
End of Introduction • Resources: • Google: • Citeseer: http://citeseer.nj.nec.com/cs • C. Perkins book: Ad Hoc Networking
Modeling Contention(based on Nandagopal et al MOBICOM 200) Seminar 260 Michalis Faloutsos
Problem: Find Hotspot in a graph • Given a graph and source-destinations • Where is the bottleneck? • Or how much bandwidth can each connection have?
Solution: Find areas of contention • Intuition • Step 1: create graph “range connectivity” • Step 2: create graph of flows (route flows on graph) • Step 3: find which flows contend for airtime (find areas where only one flow can be active)
Clarification: interference • When C->D • A-B, B-C, D-E, E-F can not be active!
Clarification: Dual graph • Each edge becomes a node in G’ • An edge exists between two nodes in G’ iff the edges have a common node edge Interference
In more detail • Find topological graph • Find dual graph: edges -> nodes • Consider “interference” between non adjacent edges • Find Maximal cliques
Contention Modeling: conclusion • Elegant approaches and tools are available • The realism of the modeling must be considered • Do not over-generalize results when heavy assumptions have been made
Considering Connections • If we know which pairs want to communicate, we consider only these flows as contenders • Routing could be independent of contention of an area • If routing is contention aware, then we have a closed loop system: • Routing -> contention -> routing -> ….
Question: what is optimal routing? • Given a graph, source-destination pairs • How do I route the flows to minimize contention? • What happens if I do not know the connections ahead of time (online version of problem)?
Modeling the Physical Channel • There are several ways depending on degree of accuracy • Binary, simplified: • in one prange you communication • In two prange you interfere but do not communicate
Considering the power: path loss • P_R: received power • P_t: transmission power • d: distance • alpha: constant
The physical model • Node Y hears node i, iff received power of i is above a threshold beta • Needs to rise above noise and other transmissions Pi = Noise + SUM_k Pk
A more optimistic channel model • Node Y hears i, if i is the “loudest” • Interference from other nodes: per pair comparison • Delta>0 is a protocol specified “guard zone”
Channel Modeling: Conclusion • Several different models • You need to find and justify the model you use
Topology Control • We cannot always control the mobility • We can control the network topology • Power control • Deciding to ignore particular neighbors • From a given graph G of possible connections we keep a subset G’ of these connections • What is good topology? …
Topology Control Metrics • What is good topology? • Energy efficiency, • Robustness to mobility, • Throughput - capacity
Topics Of Interest - Wireless • Characterizing the ad hoc topology • A snapshot • Its evolution • Mobility • Realistic mobility models • Effect of topology/mobility in • Routing • Multicasting in ad hoc networks
Topics of Interest - Wireline • Generating a realistic directed graph • Reducing a real (directed) graph to a small realistic • Survey on graph generation models • Measuring the Internet topology • Router level • AS level
We need to model contention • First the obvious • Adjacent edges • Second, one edge away, considering RTS CTS • Third, interference (500m instead of 250m) • Modeling issue
Typical “Errors” • Mobility: • too slow or too fast • Mobility speed may not be the expected • Homogeneity may “hide” issues • Few nodes are responsible for most traffic • Some spots are more popular than others • Power range is too large for the area • Ie radius 250m, a grid of 1Km -> one broadcast covers “half” the area
What’s the problem? • There is no systematic way to model and simulate such networks • No clue what are the right assumptions • Not sure how the assumptions affect the results
Consequences • Simulation results are • Meaningless • Unrepeatable • Incomparable between different analysis • Prone to manipulation • Claim: give me any statement, I can create simulations to prove it
What Will We Do Here? • Identify assumptions • Some of them are subtle • Characterize the scenarios • Study their effect on the performance results