ExOR:Opportunistic Multi-Hop Routing For Wireless Networks Sanjit Biswas and Robert Morris MIT CSAIL

advertisement
ExOR:Opportunistic Multi-Hop
Routing For Wireless Networks
Sanjit Biswas and Robert Morris
MIT CSAIL
http://pdos.csail.mit.edu/roofnet
What is Ex Opportunistic Routing ?



A Link/Network Layer diversity routing
technique that uses standard radio hardware
Achieves substantial increase in throughput
for large unicast transfers in mesh network.
Thoughts :



Does opportunistic mean Greedy ?
Do we need Dijkstra’s algorithm?
How is it different?
Traditional Routing
Packet
Packet
B
A
Packet
D
S
C
 Packets get forwarded on fixed path
 Retried on failures
 Looks like a circuit switched network
Cooperative Diversity /
Probabilistic Broadcast
B
A
D
S
C
 Packets are broadcasted
 Selects each hop, after the transmission for that hop.
 Unlike Coop Diversity only a single node forwards each packet
Why ExOR promises high throughput?
S
N1
N2
N3
N4
N5
N6
N7
N8
D
Traditional Path
 Gradual falloff of probability with distance (80%, 40%, 20%..)
 Lucky longer path can reduce transmission count
 Shorter path ensures some forward progress
Why ExOR promises high throughput?
25%
25%
S
25%
S
S
S
100%
100%
D
100%
100%
25%
S
 Reception at different node is independent, no interference
 Traditional Routing: 1/ 0.25 + 1 = 5tx
4
 ExOR: 1/ (1-(1-0.25) ) + 1 = 2.5tx
Design Challenges – Order in Anarchy
1)
2)
3)
4)
The nodes must agree on which subset of
them received each packet – Protocol ?
A metric to measure the probable cost of
moving packet from any node to destination
Choosing most useful participants
Avoid simultaneous transmission to
minimize collisions.
Agreement using Gossip and Batch
N7
F
N8
F
F
N1
N2
N5
S
F
Batch
N4
D
N3
1st round
2nd round
3rd round




N6
F
A complete schedule, undelivered packet are retried in subsequent one
A subset within a transmission batch is called Fragment (F)
After each batch destination sends packet just containing batch map
Okay, where is the agreement ?
Gossip – Protocol – Very similar to P2P

Only one kind of packet/message.




Batch Map (Summary) - Map of each packet
against the received highest priority node.
Forwarder List – A list of nodes ordered in priority
i.e. proximity towards the destination.
Knowledge is shared by means of Gossip.
Each data packet contains summary.
Summary is updated, retrofitted and
transmitted by each node.
Cost Metric and Selection of Participants

ETX (Expected Transmission Count) metric
based on Forward Delivery Probability




Periodically link state flooding
Path is weighted shortest path (Dijkstra)
The source runs ExOR simulation and
selects only the nodes which transmit at least
10% of total transmissions in a batch.
Need to know about entire Mesh before
hand? Is that okay?
Forwarding Timer and
Transmission Tracker
N7
F
N8
F
F
N1
N2
N5
S
F
Batch
N4
D
N3
1st round
2nd round
3rd round
N6
F
 Header contains information to predict source transmission rate
 Transmission schedule allows high priority node to send first
 Uses EMWA to set Forwarding Timer
Batch? What’s going on with TCP
Window?
25 Highest Throughput Pairs
 ACK might get dropped even for single hop.
25 Lowest Throughput Pairs
 Asymmetric long links affect ACK handling
Transmission Range
 ExOR requires less packet transmissions to travel far.
Going Forward





Leverage 802.11 bit rate for throughput
improvement.
Cooperation between simultaneous flows.
Transport level protocol development ?
Security ?
More organic improvements based on
cooperative diversity theory ?
Download