Network Coding for the Internet and Wireless Networks - PowerPoint PPT Presentation

1 / 57
About This Presentation
Title:

Network Coding for the Internet and Wireless Networks

Description:

Minimizes Energy (per bit) Wu et al. (2003); Wu, Chou, ... Bit. Torrent. PeerNet. Messenger. Skype Messenger. Xbox. Live. Ad Hoc (P2P) Infra- structure (CDN) ... – PowerPoint PPT presentation

Number of Views:266
Avg rating:3.0/5.0
Slides: 58
Provided by: eecsU
Category:

less

Transcript and Presenter's Notes

Title: Network Coding for the Internet and Wireless Networks


1
Network Coding for the Internet and Wireless
Networks
  • Philip A. Chouwith Yunnan Wu and Kamal
    JainMicrosoft Researchand thanks to many
    others
  • University of MichiganMarch 28, 2006

2
Outline
  • Introduction to Network Coding
  • Basic theory
  • Practical Network Coding
  • Packet format
  • Buffering
  • Internet and Wireless Applications
  • Live Broadcasting, File Downloading, Storage,
    Messaging, Interactive Communication, Sensor
    Networks

3
IntroductionRouting vs Network Coding
y1
f1(y1,y2,y3)
y2
f2(y1,y2,y3)
y3
4
Network Coding can Increase Throughput
sender s1rate r1
receiver t2
receiver t1
sender s2rate r2
5
Single Session Unicast Case
Value ofs-t cut
  • rate(s,t) MinCut(s,t)
  • Menger (1927)
  • MinCut(s,t) is achievable, i.e., MaxFlow(s,t)
    MinCut(s,t),by packing edge-disjoint directed
    paths

6
Single Session Broadcast Case
Given
Directed graph (V,E)
Sender s
Receiver set(all other nodes in V)
  • rate(s,V) minv?V MinCut(s,v)
  • Edmonds (1972)
  • minv?V MinCut(s,v) is achievable (broadcast
    capacity)by packing edge-disjoint directed
    spanning trees

7
Single Session Multicast Case
Given
Directed graph (V,E)
Sender s
Receiver set T (subset of V)
  • rate(s,T) mint?T MinCut(s,t)
  • mint?T MinCut(s,t) is NOT always achievableby
    packing edge-disjoint Steiner (multicast) trees

8
Network CodingAchieves Multicast Capacity
a,b
optimal routingthroughput 1
network codingthroughput 2
  • Alswede, Cai, Li, Yeung (2000)
  • mint?T MinCut(s,t) is alwaysachievable by
    network coding
  • h mint?T MinCut(s,t)is multicast capacity

sender
receiver
coding node
9
Linear Network Codingis Sufficient
  • Li, Yeung, Cai (2003) IT Best Paper Award
    2006Koetter and Médard (2003)
  • Linear network coding is sufficient (to achieve
    multicast capacity)
  • Jaggi, Chou, Jain, Effros Sanders, et al.
    (2003)Erez, Feder (2005)
  • Polynomial time algorithm for finding coefficients

y1
a1y1 a2y2 a3y3
y2
ß1y1 ß2y2 ß3y3
y3
10
Network CodingMinimizes Delay
optimal routingdelay 3
network codingdelay 2
  • Jain, Chou (2004)

11
Network CodingMinimizes Energy (per bit)
a
a,b
a
a
a
b
a,b
b,a
optimal routingenergy per bit 5
network codingenergy per bit 4.5
  • Wu et al. (2003) Wu, Chou, Kung (2004)
  • Lun, Médard, Ho, Koetter (2004)

12
Network Codingapplicable to real networks?
  • Internet
  • IP Layer
  • Routers (e.g., ISP)
  • Application Layer
  • Infrastructure (e.g., CDN)
  • Ad hoc (e.g., P2P)
  • Wireless
  • Mobile / multihop ad hoc wireless networks
  • Stationary wireless (residential) mesh networks
  • Sensor networks

13
Network CodingTheory vs. Practice
  • Theory
  • Symbols flow synchronously throughout network
  • Edges have unit (or known integer) capacities
  • Centralized knowledge of topology assumedto
    compute encoding and decoding functions
  • Practice
  • Information travels asynchronously in packets
  • Packets subject to random delays and losses
  • Edge capacities often unknown, time-varying
  • Difficult to obtain centralized knowledge,or to
    arrange reliable broadcast of functions
  • Need simple technology, applicable in practice

14
Making Network Coding Practical
  • Packetization
  • Header removes need for centralized knowledge of
    graph topology and encoding/decoding functions
  • Buffering
  • Allows asynchronous packets arrivals departures
    with arbitrarily varying rates, delay, loss

Chou, Wu, and Jain Allerton 2003 Ho, Koetter,
Médard, Karger, and Effros, ISIT 2003
15
Algebraic Framework
  • Graph (V,E) having unit capacity edges
  • Sender s in V, set of receivers Tt, in V
  • Multicast capacity h mint?T MaxFlow(s,t)
  • y(e) ?e be(e) y(e)
  • b(e) be(e)e is local encoding vector

16
Global Encoding Vectors
  • By induction y(e) ?hi1 gi(e) xi
  • g(e) g1(e),,gh(e) is global encoding vector
  • Receiver t can recover x1,,xh from

17
Invertibility of Gt
  • Gt will be invertible with high probabilityif
    local encoding vectors are randomand field size
    is sufficiently large
  • If field size 216 and E 28then Gt will be
    invertible w.p. 1-2-8 0.996

Ho, Koetter, Médard, Karger, and Effros ISIT
2003 Jaggi, Sanders, Chou, Effros, Egner, Jain,
and Tolhuizen Trans IT 2005
18
Packetization
  • Internet MTU size typically 1400 bytes
  • y(e) ?e be(e) y(e) ?hi1 gi(e) xi s.t.

19
Packet Header
  • Include within each packet on edge eg(e) ?e
    be(e) g(e) y(e) ?e be(e) y(e)
  • Can be accomplished by prefixing i th unit vector
    to i th source vector xi, i1,,h
  • Then global encoding vectors needed to invert the
    code at any receiver can be found in the received
    packets themselves!

20
Header Cost vs. Benefit
  • Cost
  • Overhead of transmitting h extra symbolsper
    packet if h 50 and field size 28,then
    overhead 50/1400 3
  • Benefit
  • Receivers can decode even if
  • Network topology encoding functions unknown
  • Nodes edges added removed in ad hoc way
  • Packet loss, node link failures w/ unknown
    locations
  • Local encoding vectors are time-varying random

21
Asynchronous Communication
  • In real networks
  • Packets on unit capacity edges between each
    pair of nodes are grouped and carried
    sequentially
  • Separate edges ? separate prop queuing delays
  • Number of packets per unit time on edge varies
  • Loss, congestion, competing traffic, rounding
  • Need to synchronize
  • All packets related to same source vectors x1,,
    xh are in same generation h is generation size
  • All packets in same generation tagged with same
    generation number one byte (mod 256) sufficient

22
Buffering
edge
Transmission opportunity generate packet
random combination
arriving packets (jitter, loss, variable rate)
edge
edge
buffer
asynchronous transmission
asynchronous reception
edge
node
23
Decoding
  • Block decoding
  • Collect h or more packets, hope to invert Gt
  • Earliest decoding (recommended)
  • Perform Gaussian elimination after each packet
  • At every node, detect discard non-informative
    packets
  • Gt tends to be lower triangular, so can typically
    decode x1,,xk with fewer more than k packets
  • Much lower decoding delay than block decoding
  • Approximately constant, independent of block
    length h

24
Simulations
  • Implemented event-driven simulator in C
  • Six ISP graphs from Rocketfuel project (UW)
  • SprintLink 89 nodes, 972 bidirectional edges
  • Edge capacities scaled to 1 Gbps / cost
  • Edge latencies speed of light x distance
  • Sender Seattle Receivers 20 arbitrary (5
    shown)
  • Multicast capacity 450 Mbps Max 833 Mbps
  • Union of maxflows 89 nodes, 207 edges
  • Send 20000 packets in each experiment, measure
  • received rank, throughput, throughput loss,
    decoding delay vs.sendingRate(450),
    fieldSize(216), genSize(100), intLen(100)

25
(No Transcript)
26
Throughput Decoding Delay
Chou, Wu, and Jain Allerton 2003
27
Network Coding for Internet and Wireless
Applications
File download
wireless
Interactive Communication
(conferencing, gaming)
Instant Messaging
Live broadcast
Download from peer
Coded download
Parallel download
Internet
AkamaiRBN
Infra-structure (CDN)
ALM
CoopNetCoolStream
Digital Fountain
Gnutella Kazaa
BitTorrent
PeerNetMessenger
Skype Messenger
XboxLive
Ad Hoc (P2P)
28
Live Broadcast
  • State-of-the-art Application Layer Multicast
    (ALM) trees with disjoint edges (e.g., CoopNet,
    SplitStream)
  • FEC/MDC striped across trees
  • Up/download bandwidths equalized

a failed node
Padmanabhan, Wang, Chou, and Sripanidkulchai
NOSSDAV 2002 ICNP 2003 Castro, Druschel,
Kermarrec, Nandi, Rowstron, and Singh IPTPS 2003
29
Live Broadcast (2)
  • Network Coding sends mix of parents to each child
  • Losses/failures not propagated beyond child
  • ALM/CoopNet average throughput (1e)depth
    sending rateNetwork Coding average throughput
    (1e) sending rate

failed node
affected nodes(maxflow ht ? ht 1)
unaffected nodes(maxflow unchanged)
Jain, Lovász, and Chou J. Distrib. Computing
2005
30
File Download
  • State-of-the-Art Parallel download (e.g.,
    BitTorrent)
  • Selects parents at random
  • Reconciles working sets
  • Flash crowds stressful
  • Network Coding
  • Does not need to reconcile working sets
  • Handles flash crowds similarly to live broadcast
  • Throughput download time
  • Seamlessly transitions from broadcast to download
    mode

31
File Download (2)
Courtesy of Gkantsidis and Rodruiguez INFOCOM
2005
32
Distributed Storage
k
c ln k
k
nak
ß1
ß2
Data (sensor) nodes
ß3
Storage nodes
Dimakis, Prabhakaran, and Ramchandran Asilomar
2004 IPSN 2005 Acedanski, Deb, Médard, and
Koetter NetCod 2005
33
Instant Messaging
  • State-of-the-Art Flooding (e.g., PeerNet)
  • Peer Name Resolution Protocol (distributed hash
    table)
  • Maintains group as graph with 3-7 neighbors per
    node
  • Messaging service push down at source, pops up
    at receivers
  • How? Flooding
  • Adaptive, reliable
  • 3-7x over-use
  • Network Coding
  • Improves network usage 3-7x (since all packets
    informative)
  • Scales naturally from short message to long flows

34
Interactive Communication in mobile ad hoc
wireless networks
  • State-of-the-Art Route discovery and maintenance
  • Timeliness, reliability
  • Network Coding
  • Is as distributed, robust, and adaptive as
    flooding
  • Each node becomes collector and beacon of
    information
  • Minimizes delay without having to find minimum
    delay route
  • Can also minimize energy ( transmissions)

35
Physical Piggybacking
s
t
  • Information sent from t to s can be piggybacked
    on information sent from s to t

Wu, Chou, and Kung MSR TR 2004
36
Physical Piggybacking
t2
a overheard
b overheard
s1
t1
s2
  • Information sent from s2 to t2 can be piggybacked
    on information sent from s1 to t1 (at the
    crossing point)

Katti, Katabi, Hu, Rahul, and Médard Allerton
2005
37
Opportunistic Network Coding for Unicast in
Wireless Meshes
  • Each potential relay node maintains queue of
    packets p1, p2, , pn, destined for recipients
    r1, r2, , rn,
  • Can transmit first n packets in queue with a
    single XOR, if each recipient ri has all n1
    packets pi for j?i
  • Who has what info can be piggybacked on data
    packets, or inferred from ACKs

Katti, Katabi, Hu, Rahul, and Médard Allerton
2005
38
Total Network Throughputvs Density of Flows
  • Emsim simulation results. Flows picked as random
    pairs from 100 nodes randomly placed in 800m x
    800m area 200 mW power per node using 802.11 MAC
    at 11 Mbps, transmitting UDP as fast as MAC
    allows.

Courtesy of Katti, Katabi, Hu, Rahul, and
Médard Allerton 2005
39
Sensor Networks
Airplane Skin
Smart Surfaces
Communication Backplane
Real-time Health Monitoring
Courtesy of Petrovic, Ramchandran, and Rabaey
NetCod 2005
40
Untuned Radios
  • Sensor networks use narrowband radios to maximize
    SNR
  • Replacing crystal oscillatorPLL by on-chip LC
    reduces size, energy
  • Manufacturing variations randomize carrier
    frequency

Can a reliable communication network be made out
of such unreliable radios?
Yes, if there is enough density
Courtesy of Petrovic, Ramchandran, and Rabaey
NetCod 2005
41
Communication Method
  • Each Tx and Rx radio randomly chooses one of N
    channels
  • Adjust transmission range to include N nodes
  • Communicate through H stages of N nodes each
  • Approx 1/e (37) Txs communicate collision-free
    to some Rx radio
  • Use L Rx radios per node to listen reliably to
    L/e nodes on average

t
s
Courtesy of Petrovic, Ramchandran, and Rabaey
NetCod 2005
42
Random Graph Representation
  • Result 1 For all ßMaxFlow(s,t) ßNwith high probability as N ? 8,
    as long as logH(N)/N ? 0
  • Result 2 Routing gives constant throughput(does
    not grow with N) for H linear in N.

Courtesy of Petrovic, Ramchandran, and Rabaey
NetCod 2005
43
Summary
  • Network Coding theory is rich
  • E.g., multi-session capacity still an open
    problem
  • Network Coding is Practical
  • Packet Format
  • Buffering
  • Network Coding can improve performance
  • in IP or wireless networks
  • for live broadcast, file download, storage,
    messaging, interactive communication
  • by improving throughput, robustness, delay,
    energy consumption, manageability
  • even for broadcast and unicast communication

44
Backup Slides
45
Erasure Protection
  • Removals, failures, losses, poor random encoding
    may reduce capacity below h
  • Basic form of erasure protectionsend redundant
    packets, e.g.,last h-k packets of x1,, xh are
    known zero

46
Priority Encoding Transmission unequal error
protection
  • More sophisticated form partition data into
    layers of importance, vary redundancy by layer
  • Received rank k ? recover k layers

Albanese, Blömer, Edmonds, Luby, and Sudan
Trans IT 1996
47
Avalanche
File
Gkantsidis and Rodruiguez INFOCOM 2005
48
Avalanche in the Press
  • The Register, 6/16/05
  • Enter Avalanche P2P filesharing from Microsoft
  • Slashdot, 6/17/05
  • Microsoft Wants P2P Avalanche to Crush BitTorrent
  • John C. Dvorak, PC Magazine, 6/20/05
  • The Scheme to Discredit BitTorrent
  • Bram Cohen, Blog, 6/20/05
  • First of all, I'd like to clarify that Avalanche
    is vaporware. The 'experiments' they've done are
    simulations I think that paper is complete
    garbage. Unfortunately it's actually one of the
    better academic papers on BitTorrent I'd comment
    on academic papers more, but generally they're so
    bad that evaluating them does little more than go
    over epistemological problems with their
    methodology, and is honestly a waste of time.

49
Physical Piggybacking
s
t
  • Information sent from t to s can be piggybacked
    on information sent from s to t
  • Network coding helps even with point-to-point
    (unicast) interactive communication
  • throughput
  • delay
  • energy per bit

Wu, Chou, and Kung MSR TR 2004
50
Network Coding in Residential Mesh Network
(simulation)
51
Energy-Efficient Broadcastingin Wireless Ad-hoc
Networks
  • transmissions for broadcasting with network
    coding
  • ½ transmissions needed w/o network coding

Courtesy of Widmer, Fragouli, and Le Boudec
NetCod 2005
52
Energy-Efficient Broadcastingin Wireless Ad-hoc
Networks
transmissions for broadcasting with network
coding ¾ transmissions needed w/o network
coding
Courtesy of Widmer, Fragouli, and Le Boudec
NetCod 2005
53
Simulation Results
  • 1500m x 1500m, 144 nodes randomly placed
  • 250m radio range
  • Idealized MAC each time slot, create schedule
    pick random node, transmit if all neighbors are
    idle, repeat until full
  • Count transmissions needed per node to reach
    certain packet delivery ratio
  • Compare Network Coding, Flooding, Ideal Flooding

Widmer, Fragouli, and Le Boudec NetCod 2005
54
Flooding Algorithm
  • Each information unit originating at node is
    transmitted
  • A new packet received is retransmitted with
    probability d
  • For ideal flooding, packet is not retransmitted
    if all neighbors have already received it
    (omniscient)

Widmer, Fragouli, and Le Boudec NetCod 2005
55
Network Coding Algorithm
  • Each node maintains send counter s
    (transmissions it is allowed to make)
  • Initially, s 0
  • Each information unit originating at node
    increments s by 1
  • Each innovative packet received increments s by
    fraction d
  • Each transmission decrements s by 1
  • Cant transmit anything if s

Widmer, Fragouli, and Le Boudec NetCod 2005
56
Transmissionsvs Packet delivery ratio
Courtesy of Widmer, Fragouli, and Le Boudec
NetCod 2005
57
Packet delivery ratiovs Packet drop rate
Courtesy of Widmer, Fragouli, and Le Boudec
NetCod 2005
Write a Comment
User Comments (0)
About PowerShow.com