XORs in the Air: Practical Wireless Network Coding - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

XORs in the Air: Practical Wireless Network Coding

Description:

... with both TCP and UDP flows, and runs real applications. ... Network coding does have practical benefits, and can substantially improve wireless throughput. ... – PowerPoint PPT presentation

Number of Views:92
Avg rating:3.0/5.0
Slides: 46
Provided by: eshareS
Category:

less

Transcript and Presenter's Notes

Title: XORs in the Air: Practical Wireless Network Coding


1
XORs in the Air Practical Wireless Network Coding
Sachin K., Dina K., Wenjun Hu Hariharan R. and
Muriel M.
  • ??????? ??
  • ?????
  • ??M97G0216

2
Outline
3
Introduction
  • COPE, a new forwarding architecture that
    substantially improves the throughput of wireless
    networks.
  • COPE inserts a coding shim between the IP and MAC
    layers, which identifies coding opportunities and
    benefits from them by forwarding multiple packets
    in a single transmission.

4
(No Transcript)
5
  • COPE leads to larger bandwidth savings than are
    apparent from this example.
  • COPE exploits the shared nature of the wireless
    medium which, for free, broadcasts each packet in
    a small neighborhood around its path.
  • Each node stores the overheard packets for a
    short time.
  • When a node transmits a packet, it uses its
    knowledge of what its neighbors have heard to
    perform opportunistic coding.

6
  • COPEs design is based on two key principles.
  • COPE disposes of the point-to-point abstraction
    and embraces the broadcast nature of the wireless
    channel.
  • COPE employs network coding.
  • Our work is rooted in the theory of network
    coding, which allows the routers to mix the
    information content in the packets before
    forwarding them.

7
  • Allerton 2005 ,this paper departs from our
    previous paper and all prior work on network
    coding in three main ways
  • It articulates a full-fledged design that
    integrates seamlessly into the current network
    stack, works with both TCP and UDP flows, and
    runs real applications.
  • The implementation is deployed on a 20-node
    wireless testbed, creating the first deployment
    of network coding in a wireless network.

8
  • The paper studies the performance of COPE, and
    reveals its interactions with the wireless
    channel, routing, and higher layer protocols.
  • Our findings can be summarized as follows
  • Network coding does have practical benefits, and
    can substantially improve wireless throughput.
  • When the wireless medium is congested and the
    traffic consists of many random UDP flows, COPE
    increases the throughput of our testbed by 3-4x.
  • If the traffic does not exercise congestion
    control ,COPEs throughput improvement may
    substantially exceed the expected theoretical
    coding gain.

9
  • For a mesh network connected to the Internet via
    an access point, the throughput improvement
    observed with COPE varies depending on the ratio
    between total download and upload traffic
    traversing the access point.
  • Hidden terminals create a high collision rate
    that cannot be masked even with the maximum
    number of 802.11 retransmissions.

10
(No Transcript)
11
COPE Overview
  • Our protocol is designed for wireless mesh
    networks.
  • It uses network coding for unicast traffic.
  • The main characteristic of our approach is
    opportunism
  • Each node relies on local information to detect
    and exploit coding opportunities whenever they
    arise.
  • The scheme has two components
  • Opportunistic listening
  • Opportunistic coding

12
  • Opportunistic Listening
  • Wireless is a broadcast medium, creating many
    opportunities for nodes to hear packets even when
    they are not the intended recipient.
  • We make all nodes in the network store all
    packets they hear for a limited amount of time T
    .
  • Reception reports.

13
(No Transcript)
14
  • Opportunistic Coding
  • What packets to code, and how?
  • Each node should answer this question based on
    local information and without consulting with
    other nodes.
  • When the MAC indicates that the node can send,
    the node picks the packet at the head of the
    queue, checks which other packets in the queue
    may be encoded with this packet, XORs those
    packets together, and broadcasts the XOR-ed
    version.

15
(No Transcript)
16
  • Learning Neighbor State
  • But how does a node know what packets its
    neighbors have?
  • Each node announces to its neighbors the packets
    it stores in reception reports.
  • A node cannot rely solely on reception reports,
    and may need to guess whether a neighbor has a
    particular packet.

17
Understanding Copes Gains
  • How beneficial is COPE?
  • Its throughput improvement depends on the
    existence of coding opportunities, which
    themselves depend on the traffic patterns.
  • Coding Gain
  • We defined the coding gain as the ratio of the
    number of transmissions required by the current
    non-coding approach, to the minimum number of
    transmissions used by COPE to deliver the same
    set of packets.

18
(No Transcript)
19
  • What is the theoretical capacity of a wireless
    network that employs COPE?
  • The capacity of general network coding for
    unicast traffic is still an open question for
    arbitrary graphs.
  • THEOREM 4.1. In the absence of opportunistic
    listening, COPEs maximum coding gain is 2, and
    it is achievable.

20
  • CodingMAC Gain
  • It turns out that the interaction between coding
    and the MAC produces a beneficial side effect
    that we call the CodingMAC gain.
  • The mismatch between the traffic the router
    receives from the edge nodes and its
    MAC-allocated draining rate makes the router a
    bottleneck
  • Half the packets transmitted by the edge nodes
    are dropped at the routers queue.

21
  • For topologies with a single bottleneck,the
    CodingMAC gain is the ratio of the bottlenecks
    draining rate with COPE to its draining rate
    without COPE.
  • what is the maximum CodingMAC gain?
  • The maximum possible CodingMAC gains with and
    without opportunistic listening are properties of
    the topology and the flows that exist in a
    network.
  • THEOREM 4.2. In the absence of opportunistic
    listening, COPEs maximum CodingMAC gain is 2,
    and it is achievable.

22
(No Transcript)
23
Making It Work
  • Packet Coding Algorithm
  • To build the coding scheme, we have to make a few
    design decisions.
  • We design our coding scheme around the principle
    of never delaying packets.
  • COPE gives preference to XOR-ing packets of
    similar lengths, because XOR-ing small packets
    with larger ones reduces bandwidth savings.
  • Notice that COPE will never code together packets
    headed to the same nexthop, since the nexthop
    will not be able to decode them.

24
  • Searching for appropriate packets to code is
    efficient due to the maintenance of virtual
    queues.
  • Another concern is packet reordering.
  • We want to ensure that each neighbor to whom a
    packet is headed has a high probability of
    decoding its native packet.
  • Let the probability that a nexthop has heard
    packet i be Pi.

25
  • Formally, each node maintains the following data
    structures.
  • Each node has a FIFO queue of packets to be
    forwarded, which we call the output queue.
  • For each neighbor, the node maintains two
    per-neighbor virtual queues, one for small
    packets , and the other for large packets. The
    virtual queues for a neighbor A contain pointers
    to the packets in the output queue whose nexthop
    is A.
  • The node keeps a hash table, packet info, that is
    keyed on packet-id. For each packet in the output
    queue, the table indicates the probability of
    each neighbor having that packet.

26
(No Transcript)
27
  • Pseudo Broadcast
  • This section shows that implementing network
    coding directly on top of 802.11 broadcast may
    produce lower throughput than no coding at all.

28
  • 802.11 MAC, which works in two modes
  • Unicast
  • Broadcast.
  • Our solution, called pseudo-broadcast, piggybacks
    on 802.11 unicast, which has a backoff mechanism.
  • Pseudo-broadcast unicasts packets meant to be
    broadcast

29
  • Hop-by-hop ACKs and Retransmissions
  • Why hop-by-hop acks?
  • Encoded packets require all nexthops to
    acknowledge the receipt of the associated native
    packet for two reasons.
  • Encoded packets are headed to multiple nexthops,
    but the sender gets synchronous MAC-layer acks
    only from the nexthop that is set as the link
    layer destination of the packet.
  • COPE may optimistically guess that a nexthop has
    enough information to decode an XOR-ed packet,
    when it actually does not.

30
  • Asynchronous Acks and Retransmissions
  • How should we implement these hop-by-hop acks?
  • For non-coded packets, we simply leverage the
    802.11 synchronous acks.
  • Unfortunately, extending this synchronous ack
    approach to coded packets is highly inefficient,
    as the overhead incurred from sending each ack in
    its own packet with the necessary IP and WiFi
    headers would be excessive.

31
  • Preventing TCP Packet Reordering
  • Asynchronous acks can cause packet reordering,
    which may be confused by TCP as a sign of
    congestion.
  • COPE has an ordering agent, which ensures that
    TCP packets are delivered in order.

32
Implementation Details
  • Packet Format
  • Ids of the coded native packets
  • The first block records metadata to enable packet
    decoding.
  • Expressing asynchronous acks compactly and
    robustly
  • To ensure ack delivery with minimum overhead, we
    use cumulative acks.
  • Since they implicitly repeat ack information,
    cumulative acks are robust against packet drops.

33
  • Reception reports

34
  • Control Flow

35
(No Transcript)
36
Experimental Results
  • This section uses measurements from a 20-node
    wireless testbed to study both the performance of
    COPE and the interaction of network coding with
    the wireless channel and higher-layer protocols.
  • Our experiments reveal the following findings.
  • COPE in gadget topologies
  • LongLived TCP Flows

37
  • UDP Flows

38
  • COPE in an Ad Hoc Network
  • TCP

39
(No Transcript)
40
  • UDP

41
(No Transcript)
42
  • COPE in a Mesh Access Network

43
(No Transcript)
44
Discussion and Conclusion
  • COPE can be used in multi-hop wireless networks
    that satisfy the following
  • Memory
  • Omni-directional antenna
  • Power requirements
  • Our community knows a few fundamental approaches
    that can improve wireless throughput, including
    more accurate congestion control, better routing,
    and efficient MAC protocols.

45
Thank You !
  • Add your company slogan
Write a Comment
User Comments (0)
About PowerShow.com