Network Layer: Non-Traditional Wireless Routing Localization Intro Y. Richard Yang 12/4/2012
2 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing Traditional routing Non-traditional routing r Localization m Intro
Admin. r Projects m please use Sign Up on classesv2 for project meetings m project code/<6-page report due Dec. 12 m final presentation date? m First finish a basic version, and then stress/extend your design 3
4 Recap: Routing r So far, all routing protocols are in the framework of traditional wireline routing m a graph representation of underlying network point-to-point graph, edges with costs m select a best (lowest-cost) route for a src-dst pair
5 Traditional Routing r Q: which route?
6 Inefficiency of Traditional Routing r In traditional routing, packets received off the chosen path are useless r Q: what is the probability that at least one of the intermediate nodes will receive from src?
7 Inefficiency of Traditional Routing r In traditional routing, packets received off the chosen path are useless
8 Motivating Scenario r Src A sends packet 1 to dst B; src B sends packet 3 to dst A r Traditional routing needs to transmit 4 packets r Motivating question: can we do better, i.e., serve multiple src-dst pairs? ABR
9 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing Traditional routing Non-traditional routing –Motivation –Opportunistic routing: “parallel computing for one src- dst pair”
Key Issue in Opportunistic Routing 10 Key Issue: opportunistic forwarding may lead to duplicates.
11 Extreme Opportunistic Routing (ExOR) [2005] r Basic idea: avoid duplicates by scheduling r Instead of choosing a fix sequential path (e.g., src->B->D->dst), the source chooses a list of forwarders (a forwarder list in the packets) using ETX-like metric m a background process collects ETX information via periodic link-state flooding r Forwarders are prioritized by ETX-like metric to the destination
12 ExOR: Forwarding r Group packets into batches r The highest priority forwarder transmits when the batch ends r The remaining forwarders transmit in prioritized order m each forwarder forwards packets it receives yet not received by higher priority forwarders m status collected by batch map
13 Batch Map r Batch map indicates, for each packet in a batch, the highest-priority node known to have received a copy of that packet
ExOR: Example 14 N0 N3 N1 N2
ExOR: Stopping Rule r A nodes stops sending the remaining packets in the batch if its batch map indicates over 90% of this batch has been received by higher priority nodes m the remaining packets transferred with traditional routing 15
16 Evaluations r 65 Node pairs r 1.0MByte file transfer r 1 Mbit/s bit rate r 1 KByte packets r EXOR bacth size kilometer
17 Evaluation: 2x Overall Improvement r Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional Throughput (Kbits/sec) Cumulative Fraction of Node Pairs ExOR Traditional
18 OR uses links in parallel Traditional Routing 3 forwarders 4 links ExOR 7 forwarders 18 links
19 OR moves packets farther r ExOR average: 422 meters/transmission r Traditional Routing average: 205 meters/tx Fraction of Transmissions ExOR Traditional Routing Distance (meters) 25% of ExOR transmissions 58% of Traditional Routing transmissions
20 Comments: ExOR r Pros m takes advantage of link diversity (the probabilistic reception) to increase the throughput m does not require changes in the MAC layer m can cope well with unreliable wireless medium r Cons m scheduling is hard to scale in large networks m overhead in packet header (batch info) m batches increase delay
21 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing Traditional routing Non-traditional routing –Motivation –Opportunistic routing: “parallel computing for one src- dst pair” »ExOR »MORE
MORE: MAC-independent Opportunistic Routing & Encoding [2007] r Basic idea: m Replace node coordination with network coding m Trading structured scheduler for random packets combination 22
Basic Idea: Source r Chooses a list of forwarders (e.g., using ETX) r Breaks up file into K packets (p1, p2, …, pK) r Generate random packets r MORE header includes the code vector [c j1, c j2, …c jK ] for coded packet p j ’ 23
Basic Idea: Source 24
Basic Idea: Forwarder r Check if in the list of forwarders r Check if linearly independent of new packet with existing packet r Re-coding and forward 25
Basic Idea: Destination r Decode r Send ACK back to src if success 26
Key Practical Question: How many packets does a forwarder send? r Compute zi: the expected number of times that forwarder i should forward each packet 27
Computes z s 28 Compute z s so that at least one forwarder that is closer to destination is expected to have received the packet : Єij: loss probability of the link between i and j
Compute z j for forwarder j r Only need to forward packets that are m received by j m sent by forwarders who are further from destination m not received by any forwarder who is closer to destination r #such pkts: 29
Compute z j for forwarder j r To guarantee at least one forwarder closer to d receives the packet 30
Evaluations r 20 nodes distributed in a indoor building r Path between nodes are 1 ~ 5 hops in length r Loss rate is 0% ~ 60%; average 27% 31
Throughput 32
Improve on MORE? 33
Mesh Networks API So Far NetworkForward correct packets to destination PHY/LLDeliver correct packets
S R1 R2 D BER Motivation 0% 570 bytes; 1 bit in 1000 incorrect Packet loss of 99%
S R1 R2 D 99% (10 -3 BER) Implication 0% Opportunistic Routing 50 transmissions Loss ExOR MORE
37 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing Traditional routing Non-traditional routing –Motivation –Opportunistic routing: “parallel computing for one src- dst pair” »ExOR [2005] »MORE [2007] »MIXIT [2008]
New API PHY + LL Deliver correct symbols to higher layer NetworkForward correct symbols to destination
What Should Each Router Forward? R1 R2 D S P1 P2 P1 P2 P1 P2
What Should Each Router Forward? R1 R2 D S P1 P2 1)Forward everything Inefficient 2)Coordinate Unscalable P1 P2 P1 P2 P1 P2 P1 P2
Forward random combinations of correct symbols R1 R2 D S P1 P2 Symbol Level Network Coding P1 P2 P1 P2
… … R1 R2 D … … … Routers create random combinations of correct symbols … Symbol Level Network Coding
R1 R2 D … … Solve 2 equations Destination decodes by solving linear equations Symbol Level Network Coding
… … R1 R2 D … … … Routers create random combinations of correct symbols … Symbol Level Network Coding
R1 R2 D … … Solve 2 equations Destination decodes by solving linear equations Symbol Level Network Coding
Destination needs to know which combinations it received Use run length encoding Original Packets Coded Packet
Original Packets Coded Packet Use run length encoding Destination needs to know which combinations it received
Original Packets Coded Packet Destination needs to know which combinations it received Use run length encoding
Original Packets Coded Packet Destination needs to know which combinations it received Use run length encoding
Destination needs to know which combinations it received Use run length encoding
Symbol-level Network Coding Original Packets Coded Packet R1 Forward random combinations of correct symbols
Original Packets Coded Packet Symbol-level Network Coding R1 Forward random combinations of correct symbols
Original Packets Coded Packet Symbol-level Network Coding R1 Forward random combinations of correct symbols
Original Packets Coded Packet Symbol-level Network Coding R1 Forward random combinations of correct symbols
Evaluation Implementation on GNURadio SDR and USRP Zigbee (IEEE ) link layer 25 node indoor testbed, random flows Compared to: 1.Shortest path routing based on ETX 2.MORE: Packet-level opportunistic routing
Throughput (Kbps) CDF Throughput Comparison 2.1x 3x Shortest Path MORE MIXIT
57 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing Traditional routing Non-traditional routing –Motivation –Opportunistic routing: “parallel computing for one src- dst pair” –Opportunistic routing: “parallel computing for multiple src-dst pairs”
58 Motivating Scenario r A sends pkt 1 to dst B r B sends pkt 3 to dst A ABR
Opportunistic Coding: Basic Idea r Each node looks at the packets available in its buffer, and those its neighbors’ buffers r It selects a set of packets, computes the XOR of the selected packets, and broadcasts the XOR 59
60 Opportunistic Coding: Example
61 Wireless Networking: Summary send receive status info info/control - The ability to communicate is a foundational support of wireless mobile networks -The capacity of such networks is continuously being challenged as demand increases (e.g., Verizon LTE-based home broadband) - Much progress has been made, but still more are coming.
Outline r Admin. r Network layer r Localization m overview 62
63 Motivations r The ancient question: Where am I? r Localization is the process of determining the positions of the network nodes r This is as fundamental a primitive as the ability to communicate
64 Localization: Many Applications r Location aware information services m e.g., E911, location-based search, advertisement, inventory management, traffic monitoring, emergency crew coordination, intrusion detection, air/water quality monitoring, environmental studies, biodiversity, military applications, resource selection (server, printer, etc.) “ Sensing data without knowing the location is meaningless. ” [IEEE Computer, Vol. 33, 2000]
65 Measurements The Localization Process Localizability (opt) Location Computation Location Based Applications
66 Classification of Localization based on Measurement Modality r Coarse-grained measurements, e.g., m signal signature a database of signal signature (e.g. pattern of received signal, visible set of APs ( at different locations match to the signature m Connectivity r Advantages m low cost; measurements do not need line-of-sight r Disadvantages m low precision For a detailed study, see “Accuracy Characterization for Metropolitan-scale Wi-Fi Localization,” in Mobisys 2005.
67 Classification of Localization based on Measurement Modality (cont’) r Fine-grained localization m distance m angle (esp. with MIMO) r Advantages m high precision r Disadvantages m measurements need line-of-sight for good performance Cricket iPhone 4 GPS (iFixit)
Outline r Admin. r Localization m Overview m GPS 68
69 Global Position Systems r US Department of Defense: need for very precise navigation r In 1973, the US Air Force proposed a new system for navigation using satellites r The system is known as: Navigation System with Timing and Ranging: Global Positioning System or NAVSTAR GPS
70 GPS Operational Capabilities Initial Operational Capability - December 8, 1993 Full Operational Capability declared by the Secretary of Defense at 00:01 hours on July 17, 1995
71 NAVSTAR GPS Goals r What time is it? r What is my position (including attitude)? r What is my velocity? r Other Goals: - What is the local time? - When is sunrise and sunset? - What is the distance between two points? - What is my estimated time arrival (ETA)?
72 GSP Basics Simply stated: The GPS satellites are nothing more than a set of wireless base stations in the sky r The satellites simultaneously broadcast beacon messages (called navigation messages) r A GPS receiver measures time of arrival to the satellites, and then uses “trilateration” to determine its position
73 GPS Basics: Triangulation r Measurement: Computes distance
74 GPS Basics: Triangulation r In reality, receiver clock is not sync’d with satellites r Thus need to estimate clock called pseudo range
75 GPS with Clock Synchronization?
76 GPS Design/Operation r Segments (components) m user segment: users with receivers m control segment: control the satellites m space segment: the constellation of satellites transmission scheme
77 Control Segment Master Control Station is located at the Consolidated Space Operations Center (CSOC) at Flacon Air Force Station near Colorado Springs
78 CSOC r Track the satellites for orbit and clock determination r Time synchronization r Upload the Navigation Message r Manage Denial Of Availability (DOA)
79 Space Segment: Constellation
80 Space Segment: Constellation r System consists of 24 satellites in the operational mode: 21 in use and 3 spares 3 other satellites are used for testing r Altitude: 20,200 Km with periods of 12 hr. r Current Satellites: Block IIR- $25,000, KG r Hydrogen maser atomic clocks m these clocks lose one second every 2,739,000 million years
81 GPS Orbits
82 GPS Satellite Transmission Scheme: Navigation Message r To compute position one must know the positions of the satellites r Navigation message consists of: - satellite status to allow calculating pos - clock info r Navigation Message at 50 bps m each frame is 1500 bits m Q: how long for each message? More detail: see
83 GPS Satellite Transmission Scheme: Requirements r All 24 GPS satellites transmit Navigation Messages on the same frequencies r Resistant to jamming r Resistant to spoofing r Allows military control of access (selected availability)
84 GPS As a Communication Infrastructure r All 24 GPS satellites transmit on the same frequencies BUT use different codes m i.e., Direct Sequence Spread Spectrum (DSSS), and m Code Division Multiple Access (CDMA) m Using BPSK to encode bits
85 Basic Scheme
86 GPS Control r Controlling precision m Lower chipping rate, lower precision r Control access/anti-spoofing m Control chipping sequence
87 GPS Chipping Seq. and Codes r Two types of codes m C/A Code - Coarse/Acquisition Code available for civilian use on L1 Chipping rate: M 1023 bits pseudorandom numbers (PRN) m P Code - Precise Code on L1 and L2 used by the military Chipping rate: M PRN code is × (repeat about one week) P code is encrypted called P(Y) code
88 GPS PHY and MAC Layers
89 Typical GPS Receiver: C/A code on L1 r During the “acquisition” time you are receiving the navigation message also on L1 r The receiver then reads the timing information and computes “pseudo-ranges”
Military Receiver r Decodes both L1 and L2 m L2 is more precise m L1 and L2 difference allows computing ionospheric delay 90
91 Denial of Accuracy (DOA) r The US military uses two approaches to prohibit use of the full resolution of the system r Selective availability (SA) m noise is added to the clock signal and m the navigation message has “lies” in it m SA is turned off permanently in 2000 r Anti-Spoofing (AS) - P-code is encrypted
92 Extensions to GPS r Differential GPS m ground stations with known positions calculate positions using GPS m the difference (fix) transmitted using FM radio m used to improve accuracy r Assisted GPS m put a server on the ground to help a GPS receiver m reduces GPS search time from minutes to seconds m E.g., iPhone GPS: Silicon-Solutions/BCM4750http:// Silicon-Solutions/BCM4750
93 GPS: Summary r GPS is among the “simplest” localization technique (in terms topology): one-step trilateration
94 GPS Limitations r Hardware requirements vs. small devices r GPS can be jammed by sophisticated adversaries r Obstructions to GPS satellites common each node needs LOS to 4 satellites GPS satellites not necessarily overhead, e.g., urban canyon, indoors, and underground
95 Percentage of localizable nodes localized by Trilateration. Uniformly random 250 node network. Limitation of Trilateration Ratio Average Degree