Private and Confidential codeontechnologies.com
Network Coding in Satellites
Muriel Medard
Private and Confidential
Presentation by Muriel Medard @
27 November, Anaheim, California
2018 IEEE Global Conference
on Signal and Information Processing
2
Private and Confidential
Satellite in 5G
Not just point to point
3
Private and Confidential
RLNC Background
Coding Landscape
4
Block Codes
Convolutional Codes
Rateless Codes
Raptor and related codes
• Rate-less (refinement to free E2E)
• Still E2E, still static
Network Codes
• RLNC enables network coding
• Deterministic construction for special cases
• Index Coding
• CATWOMAN (Linux 3.10)
Point-to-Point (PtP)
Point-to-Multi-Point (PtMP)
Network Code
1960s
1950s
1998 2003
Modern Codes
• LDPCs
• Turbo Codes
• Polar Codes
1990
to
2010
Private and Confidential
RLNC basics
Beyond point to point
5
Private and Confidential
Where to code
Different possibilities
6
Private and Confidential
Satellite point-to-point
Improving throughput
7
Private and Confidential
RLNC for throughput
Allow more errors
At the PHY
Error-rate performance
(AWGN channel) for RS
codes (255, 239, 17) and
(255, 223, 33) in red,
along with PHY
and Effective RLNC Error
Rates with {0.5, 1,
1.5, 2, 2.5, 3}. Note that
the cost of extra
redundancy is taken into
account through a shift in
Eb/No level, whereas
throughput is kept
constant.
“RLNC as a Network-Layer Code
A study of RLNC as a complement to physical-layer coding”
CodeOn White Paper Feb 2018
8
Private and Confidential
RLNC at transport
Integrating with TCP
J. K. Sundararajan, Shah, D., Médard, M., Jakubczak, S., Mitzenmacher, M. and Barros, J.,
“Network Coding Meets TCP: Theory and Implementation”,
invited paper, Proceedings of the IEEE, March 2011, pp. 490 – 512
9
Private and Confidential
Sliding window
Structure would be prohibitive
10
Private and Confidential
TCP without coding
Window ceases to progress
TCPsender
window
p1 p2 p3 p4
p1
p2
p3
ACK(p1)
ACK(p1)
p2 p3 p4 p5 p5
ACK(p1)
p2 p3
p4
ACK(p1)
receiver
M. Kim, Cloud, J., ParandehGheibi, A., Urbina, L., Fouli, K., Leith, D., and Médard, M.,
“Congestion Control for Coded Transport Layers”,
IEEE ICC Communication QoS, Reliability and Modeling Symposium 2014
11
Private and Confidential
TCP with coding
Window continues to progress
Prevents random losses being
interpreted as congestion
Coded TCPsender
window
p1 p2 p3 p4
Σp
SEEN(1)
SEEN(2)
p4 p5 p6 p7
SEEN(4)
SEEN(5)
SEEN(6)
Σp
Σp
Σp
Σp
Σp
Σp
SEEN(3)
p7 p8 p9 p10 p11
SEEN(7)
Σp
p8 p9 p10 p11 p12
receiver
12
Private and Confidential
The four phases of queue oscillation
1. Sat gate queue not full. TCP senders
receive ACKs, increase congestion window.
Queue builds up.
2. Sat gate queue full. New packets arriving
are dropped. Senders still receive ACKs
and send more
data in the direction of the queue. Queue
continues to overflow: burst losses
3. ACKs from dropped packets become
overdue. Senders throttle back. Packet
arrival at queue slows to a trickle. Queue
drains.
4. Queue clears completely. Link sits idle for
part of the time, link not fully utilized
Note: Queue oscillation explains the packet loss phenomena on all sat links we studied
U. Speidel, L. Qian, ’E. Cocker, P. Vingelmann, J. Heide, M. Médard,
“Can Network Coding Mitigate TCP-induced Queue Oscillation on Narrowband Satellite Links?”,
International Conference on Wireless and Satellite Systems, 301–314, Springer International Publishing, July 2015
13
Private and Confidential
Transport needs to be adapted to high RTT
Simple modification
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
0
1
2
3
4
5
6
7
x 10
6
PER
Goodput(bps)
CTCPv1
CTCPv2
HTCP
Cubic
Hybla
Reno
Veno
Westwood
Rate = 10 Mbps, RTT = 500 ms
J. Cloud, Leith, D, and Médard, M. “Network Coded TCP (TCP) Performance over
Satellite Networks”, SPACOMM 2014
14
Private and Confidential
RLNC for Satellite in the Pacific
15
• O3b satellite connection
• Typical peak time link utilization around 50%
• TCP/NC encoders/decoders in Avarua and Auckland
• g=30, overhead variable based on feedback
• TCP/NC running alongside standard TCP
• Would probably need less overhead if all
connections were coded
Rarotonga
U. Speidel, Cocker, ‘E., Vingelmann, P., Heide, J., and Médard, M.,
“Can Network Coding Bridge the Digital Divide in the Pacific?”, Netcod 2015
U. Speidel, Cocker, ‘E., Médard, M., Heide, J., amd Vingelmann, P.,
“Topologies for the Provision of Network-Coded Services via Shared Satellite Channels”, SPACOMM 2017 (Winner Best Paper Award)
Private and Confidential
RLNC for Satellite in the Pacific
Funafuti, Tuvalu
16
• GEO downlink (16 Mbps)
• TCP supported by SilverPeak accelerator
• Very low link utilization below 25%
TCP/NC maintains steady goodput
with 1-10% packet loss
TCP/NC can complete some downloads
even with >10% packet loss
U. Spiedel, Cocker, ‘E., Vingelmann,
P., Heide, J., and Médard, M., “Can
Network Coding Bridge the Digital
Divide in the Pacific?”, Netcod 2015
P. Vingelmann, J. Heide, M. Médard,
“Can Network Coding Mitigate TCP-
induced Queue Oscillation on
Narrowband Satellite Links?,
International Conference on Wireless
and Satellite Systems, 2015
U. Speidel, Cocker, ‘E., Médard, M.,
Heide, J., amd Vingelmann, P.,
“Topologies for the Provision of
Network-Coded Services via Shared
Satellite Channels”, SPACOMM 2017
TCP/NC
experiments
Graphic: own measurement
Private and Confidential
Which layer?
Can do both
17
Private and Confidential
Coding and delay
Packet reception time
18
J. Cloud, D. Leith, and M.
Médard, “A Coded
Generalization of Selective
Repeat ARQ”, INFOCOM 2015
M. Karzand, Leith, D., Cloud, J.,
and Médard, M., “Design of
FEC for Low Delay in 5G”, IEEE
Journal of Selected Areas in
Communication, Vol. 35, No. 8,
Aug. 2017, pp. 1783- 1793
Private and Confidential
Coding and delay
Packet reception time
19
J. Cloud, D. Leith, and M.
Médard, “A Coded
Generalization of Selective
Repeat ARQ”, INFOCOM 2015
(RLNC)
Private and Confidential
In order decoded delay
Gains and tuning
20
Private and Confidential
Broadcast
Transmission to multiple end users
21
Private and Confidential
Satellite broadcast with feedback
TDD
dofs to decode:
dofs to decode:
dofs to decode:Rx 1
Rx 2
Rx N
Tx
M packets
M
M
M
dofs = degrees of freedom
D. Lucani, Médard, M., and Stojanovic, M., “On Coding for Delay - Network Coding for Time Division Duplexing”,
IEEE Transactions on Information Theory, vol. 58, no. 4, April 2012, pp. 2330 - 2348
22
Private and Confidential
Satellite broadcast with feedback
TDD
23
10
-3
10
-2
10
-1
0.3
0.4
0.5
0.6
MeanCompletionTime(s)
(a)
10
-3
10
-2
10
-1
10
0
10
1
10
2
Packet Erasure Probability
NumberofCodedPackets
(b)
Broadcast TDD Optimal
Broadcast TDD Worst Link Channel
Broadcast TDD Combined Erasure Effect
Broadcast TDD Optimal
Broadcast TDD Worst Link Channel
Broadcast TDD Combined Erasure Effect
N1
N5
Private and Confidential
Satellite broadcast with feedback
TDD
2424
Full Duplex Broadcast using Round Robin:
Tx Rxi
1 …2 3 1M
ACK
2 3
i-th
Channel
1 3 M 3
TDD Broadcast using Round Robin:
Tx Rxi
1 2 3
ACK
i-th
Channel
9 M
Private and Confidential
Satellite broadcast with feedback
TDD
2525
10
-3
10
-2
10
-1
10
0
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Packet Erasure Probability
MeanCompletionTime(s)
Optimal Broadcast with Network Coding TDD
Broadcast Round-Robin (RR) TDD
Broadcast RR Full Duplex (Upper Bound)
Broadcast RR Full Duplex (Lower Bound)
•Outperforms TDD
constrained Round
Robin broadcast scheme
(optimal, no coding)
•For high erasure
probability:
Outperforms
full duplex
Round Robin broadcast
Private and Confidential
Multiple paths
Difficulty without coding
26
Private and Confidential
Multiple paths
Keeping track of packets
IP flow 1 IP flow 2
Application layer
IP flow 1 IP flow 2
Application layer
Server Client
Lte NIC WiFi NIC
Block i Block i
Divide & Schedule Combine
Media
player
p1p2p3 … pw p1p2p3 … pw p1p2p3 … pw
Block 1 Block 2 Block 3 …
…
Request block i
Media file:
p1
p3
p5
p2
p4
p6
J. Cloud, du Pin Calmon, F., Zeng, W., Pau, G., Zeger, L., and Médard, M.,
“Multi-Path TCP with Network Coding for Mobile Devices in Heterogeneous Networks”,
VTC 2013
27
Private and Confidential
Multiple paths
Keeping track of packets
IP flow 1 IP flow 2
Application layer
IP flow 1 IP flow 2
Application layer
Server Client
Lte NIC WiFi NIC
Block i Block i
Divide & Schedule Combine
Media
player
p1p2p3 … pw p1p2p3 … pw p1p2p3 … pw
Block 1 Block 2 Block 3 …
…
Request block i
Media file:
p1+p4
p2+p3
p1+p5
p2+p4
p3+p6
p4+p5
28
Private and Confidential
MTP/NC
Coding over
multiple paths
All packets within
the MPTCP/NC
coding window
are coded
together and
pushed to
different sub-
flows
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
NETWORK
Network
Interface
Network
Interface
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
Network
Interface
Network
Interface
Network Coding and Reliable Communications Group
29
Private and Confidential
MTP/NC
Coding over
multiple paths
All received
packets are
ACK’ed
All packets within
the MPTCP/NC
coding window
are coded
together and
pushed to
different sub-
flows
Each packet from
TCP generates R
linearly
independent coded
packets where
each packet is
generated from the
set of packets
within the TCP
window
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
NETWORK
Network
Interface
Network
Interface
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
Network
Interface
Network
Interface
Each received
packet is
immediately
forwarded to
the TCP layer
Network Coding and Reliable Communications Group
30
Private and Confidential
MTP/NC
Coding over
multiple paths
All received
packets are
ACK’ed
All packets within
the MPTCP/NC
coding window
are coded
together and
pushed to
different sub-
flows
Each packet from
TCP generates R
linearly
independent coded
packets where
each packet is
generated from the
set of packets
within the TCP
window
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
NETWORK
Network
Interface
Network
Interface
Application
MPTCP/NC
TCP TCP
Fast-
TCP/NC
Fast-
TCP/NC
IP IP
Network
Interface
Network
Interface
MPTCP/NC
layer ACKs
all new
degrees of
freedom
received
Decoding only
occurs at the
MPTCP/NC
layer
Each received
packet is
immediately
forwarded to
the TCP layer
Network Coding and Reliable Communications Group
31
Private and Confidential
MTP/NC
Different delays
log
10
(File Size)
Averagecompletiontime(ms)
Link 1: RTT =1500ms p = 10−3
Link 2: RTT =80ms p = 10−2
3 4 5 6
10
2
10
3
10
4
10
5
10
6
10
7
10
8
Uncoded
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
log(File Size)
AverageRate(packet/s)
Link 1: RTT =1500ms p = 10−3
Link 2: RTT =80ms p = 10−2
3 4 5 6
0
200
400
600
800
1000
1200
1400
Uncoded
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
Time (s)
Jointwindowwize(packets)
Link 1: RTT=1500ms, p = 10−2
Link 2: RTT=80ms, p = 10−1
0 10 20 30 40 50 60 70
0
50
100
150
200
250
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
Uncoded
X
X
Network Coding and Reliable Communications Group
32
Private and Confidential
MTP/NC
Different delays
log(File Size)
AverageRate(packet/s)
Link 1: RTT =1500ms p = 10−3
Link 2: RTT =15ms p = 10−2
3 4 5 6
0
500
1000
1500
2000
2500
3000
3500
4000
4500
5000
Uncoded
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
log10
(File Size)
Averagecompletiontime(ms)
Link 1: RTT =1500ms p = 10−3
Link 2: RTT =15ms p = 10−2
3 4 5 6
10
2
10
3
10
4
10
5
10
6
10
7
10
8
Uncoded
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
Time (s)
Jointwindowwize(packets)
Link 1: RTT=1500ms, p = 10−3
Link 2: RTT=15ms, p = 0.3
0 5 10 15 20
0
20
40
60
80
100
120
140
160
180
200
Coded, R=(1−p)−1
Coded, R=1.05(1−p)−1
Uncoded
X
X
Network Coding and Reliable Communications Group
33
Private and Confidential
Recoding
No need to decode
CODING THE NETWORK:
NEXT GENERATION
CODING FOR FLEXIBLE
NETWORK OPERATION
IEEE CTN Issue: July 2018
K. Fouli, M. Medard, K. Shroff
34
Private and Confidential
Recoding
No ability to decode
Packet reception time
35
Private and Confidential
Satellite Context
Multiple Relevant Topologies
36
Brunel.ac.uk
Mobile
Mesh
F. Vieira et al., Satcom 2011
Multipath
Multicast
Multipath
Heterogeneous
Multi-hop
Multi-hop
kddi.com
Private and Confidential
Recoding with losses
Different losses
1 2 4
sender
From
given
data
receiver
Recoding at intermediate nodes, without decoding
37
3
Private and Confidential
Recoding with losses
Different losses
TCP End-to-end coding Re-encoding at node 3 only
0.0042 Mbps 0.1420 Mbps 0.2448 Mbps
(assuming each link has a bandwidth of 1 Mbps in the absence of erasures)
Time average throughput (over 641 seconds)
38
Private and Confidential
Satellite in 5G
Not just point to point
39
Private and Confidential
Future aspects
• Recoding at satellite
• Edge caching with coding
• On-the-ground peer-assisted satellite content delivery
• Coding for multi-beam
• Multi-sourcing with satellite
• Secure coding
Coding throughout
40
Private and Confidential 41
This document was created by Code On Network Coding LLC (“Code On”), a limited liability company based in Cambridge, MA, with
registered offices at One Broadway, Floor 14, Cambridge, Massachusetts, 02142. All rights thereto are owned and reserved by Code On.
This strictly private and confidential document was prepared exclusively for information purposes only and for discussion. This
document is incomplete without reference to–and should be viewed solely in conjunction with–the oral presentation provided by Code
On.
While all reasonable care has been taken to ensure that the facts stated herein and in the accompanying oral presentation are accurate
and that the opinions contained herein and in such presentation are fair and reasonable, the information provided is selective in nature
and is intended to serve as an introduction and overview of, the content described herein. Any opinions expressed in this document
and/or the accompanying presentation is subject to change without notice and neither Code On nor any other person is under any
obligation to update or keep current such information. No representation, undertaking, promise or warranty, express or implied, is or
will be made, or given as to, and no responsibility or liability is or will be accepted by Code On, its respective directors, officers, agents or
employees in relation to the adequacy, accuracy, completeness or reasonableness of this document or any other information (whether
written or oral), notice or document supplied or otherwise made available to any third or their respective advisers in connection with
this document.
This document and the information provided in the accompanying presentation is confidential and of a proprietary nature. This
document may not be reproduced or redistributed outside the recipient's organisation or publicised in whole or in part for any purpose,
including to the press or any media organization, without the express prior written consent of Code On.
No right or entitlement to an implementation of the presentation or the concepts presented herein arises from this document and/or
the presentation.
Disclaimer

Muriel Medard - Network Coding in Satellites - Global SIP 2018

  • 1.
    Private and Confidentialcodeontechnologies.com Network Coding in Satellites Muriel Medard
  • 2.
    Private and Confidential Presentationby Muriel Medard @ 27 November, Anaheim, California 2018 IEEE Global Conference on Signal and Information Processing 2
  • 3.
    Private and Confidential Satellitein 5G Not just point to point 3
  • 4.
    Private and Confidential RLNCBackground Coding Landscape 4 Block Codes Convolutional Codes Rateless Codes Raptor and related codes • Rate-less (refinement to free E2E) • Still E2E, still static Network Codes • RLNC enables network coding • Deterministic construction for special cases • Index Coding • CATWOMAN (Linux 3.10) Point-to-Point (PtP) Point-to-Multi-Point (PtMP) Network Code 1960s 1950s 1998 2003 Modern Codes • LDPCs • Turbo Codes • Polar Codes 1990 to 2010
  • 5.
    Private and Confidential RLNCbasics Beyond point to point 5
  • 6.
    Private and Confidential Whereto code Different possibilities 6
  • 7.
    Private and Confidential Satellitepoint-to-point Improving throughput 7
  • 8.
    Private and Confidential RLNCfor throughput Allow more errors At the PHY Error-rate performance (AWGN channel) for RS codes (255, 239, 17) and (255, 223, 33) in red, along with PHY and Effective RLNC Error Rates with {0.5, 1, 1.5, 2, 2.5, 3}. Note that the cost of extra redundancy is taken into account through a shift in Eb/No level, whereas throughput is kept constant. “RLNC as a Network-Layer Code A study of RLNC as a complement to physical-layer coding” CodeOn White Paper Feb 2018 8
  • 9.
    Private and Confidential RLNCat transport Integrating with TCP J. K. Sundararajan, Shah, D., Médard, M., Jakubczak, S., Mitzenmacher, M. and Barros, J., “Network Coding Meets TCP: Theory and Implementation”, invited paper, Proceedings of the IEEE, March 2011, pp. 490 – 512 9
  • 10.
    Private and Confidential Slidingwindow Structure would be prohibitive 10
  • 11.
    Private and Confidential TCPwithout coding Window ceases to progress TCPsender window p1 p2 p3 p4 p1 p2 p3 ACK(p1) ACK(p1) p2 p3 p4 p5 p5 ACK(p1) p2 p3 p4 ACK(p1) receiver M. Kim, Cloud, J., ParandehGheibi, A., Urbina, L., Fouli, K., Leith, D., and Médard, M., “Congestion Control for Coded Transport Layers”, IEEE ICC Communication QoS, Reliability and Modeling Symposium 2014 11
  • 12.
    Private and Confidential TCPwith coding Window continues to progress Prevents random losses being interpreted as congestion Coded TCPsender window p1 p2 p3 p4 Σp SEEN(1) SEEN(2) p4 p5 p6 p7 SEEN(4) SEEN(5) SEEN(6) Σp Σp Σp Σp Σp Σp SEEN(3) p7 p8 p9 p10 p11 SEEN(7) Σp p8 p9 p10 p11 p12 receiver 12
  • 13.
    Private and Confidential Thefour phases of queue oscillation 1. Sat gate queue not full. TCP senders receive ACKs, increase congestion window. Queue builds up. 2. Sat gate queue full. New packets arriving are dropped. Senders still receive ACKs and send more data in the direction of the queue. Queue continues to overflow: burst losses 3. ACKs from dropped packets become overdue. Senders throttle back. Packet arrival at queue slows to a trickle. Queue drains. 4. Queue clears completely. Link sits idle for part of the time, link not fully utilized Note: Queue oscillation explains the packet loss phenomena on all sat links we studied U. Speidel, L. Qian, ’E. Cocker, P. Vingelmann, J. Heide, M. Médard, “Can Network Coding Mitigate TCP-induced Queue Oscillation on Narrowband Satellite Links?”, International Conference on Wireless and Satellite Systems, 301–314, Springer International Publishing, July 2015 13
  • 14.
    Private and Confidential Transportneeds to be adapted to high RTT Simple modification 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 0 1 2 3 4 5 6 7 x 10 6 PER Goodput(bps) CTCPv1 CTCPv2 HTCP Cubic Hybla Reno Veno Westwood Rate = 10 Mbps, RTT = 500 ms J. Cloud, Leith, D, and Médard, M. “Network Coded TCP (TCP) Performance over Satellite Networks”, SPACOMM 2014 14
  • 15.
    Private and Confidential RLNCfor Satellite in the Pacific 15 • O3b satellite connection • Typical peak time link utilization around 50% • TCP/NC encoders/decoders in Avarua and Auckland • g=30, overhead variable based on feedback • TCP/NC running alongside standard TCP • Would probably need less overhead if all connections were coded Rarotonga U. Speidel, Cocker, ‘E., Vingelmann, P., Heide, J., and Médard, M., “Can Network Coding Bridge the Digital Divide in the Pacific?”, Netcod 2015 U. Speidel, Cocker, ‘E., Médard, M., Heide, J., amd Vingelmann, P., “Topologies for the Provision of Network-Coded Services via Shared Satellite Channels”, SPACOMM 2017 (Winner Best Paper Award)
  • 16.
    Private and Confidential RLNCfor Satellite in the Pacific Funafuti, Tuvalu 16 • GEO downlink (16 Mbps) • TCP supported by SilverPeak accelerator • Very low link utilization below 25% TCP/NC maintains steady goodput with 1-10% packet loss TCP/NC can complete some downloads even with >10% packet loss U. Spiedel, Cocker, ‘E., Vingelmann, P., Heide, J., and Médard, M., “Can Network Coding Bridge the Digital Divide in the Pacific?”, Netcod 2015 P. Vingelmann, J. Heide, M. Médard, “Can Network Coding Mitigate TCP- induced Queue Oscillation on Narrowband Satellite Links?, International Conference on Wireless and Satellite Systems, 2015 U. Speidel, Cocker, ‘E., Médard, M., Heide, J., amd Vingelmann, P., “Topologies for the Provision of Network-Coded Services via Shared Satellite Channels”, SPACOMM 2017 TCP/NC experiments Graphic: own measurement
  • 17.
    Private and Confidential Whichlayer? Can do both 17
  • 18.
    Private and Confidential Codingand delay Packet reception time 18 J. Cloud, D. Leith, and M. Médard, “A Coded Generalization of Selective Repeat ARQ”, INFOCOM 2015 M. Karzand, Leith, D., Cloud, J., and Médard, M., “Design of FEC for Low Delay in 5G”, IEEE Journal of Selected Areas in Communication, Vol. 35, No. 8, Aug. 2017, pp. 1783- 1793
  • 19.
    Private and Confidential Codingand delay Packet reception time 19 J. Cloud, D. Leith, and M. Médard, “A Coded Generalization of Selective Repeat ARQ”, INFOCOM 2015 (RLNC)
  • 20.
    Private and Confidential Inorder decoded delay Gains and tuning 20
  • 21.
  • 22.
    Private and Confidential Satellitebroadcast with feedback TDD dofs to decode: dofs to decode: dofs to decode:Rx 1 Rx 2 Rx N Tx M packets M M M dofs = degrees of freedom D. Lucani, Médard, M., and Stojanovic, M., “On Coding for Delay - Network Coding for Time Division Duplexing”, IEEE Transactions on Information Theory, vol. 58, no. 4, April 2012, pp. 2330 - 2348 22
  • 23.
    Private and Confidential Satellitebroadcast with feedback TDD 23 10 -3 10 -2 10 -1 0.3 0.4 0.5 0.6 MeanCompletionTime(s) (a) 10 -3 10 -2 10 -1 10 0 10 1 10 2 Packet Erasure Probability NumberofCodedPackets (b) Broadcast TDD Optimal Broadcast TDD Worst Link Channel Broadcast TDD Combined Erasure Effect Broadcast TDD Optimal Broadcast TDD Worst Link Channel Broadcast TDD Combined Erasure Effect N1 N5
  • 24.
    Private and Confidential Satellitebroadcast with feedback TDD 2424 Full Duplex Broadcast using Round Robin: Tx Rxi 1 …2 3 1M ACK 2 3 i-th Channel 1 3 M 3 TDD Broadcast using Round Robin: Tx Rxi 1 2 3 ACK i-th Channel 9 M
  • 25.
    Private and Confidential Satellitebroadcast with feedback TDD 2525 10 -3 10 -2 10 -1 10 0 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Packet Erasure Probability MeanCompletionTime(s) Optimal Broadcast with Network Coding TDD Broadcast Round-Robin (RR) TDD Broadcast RR Full Duplex (Upper Bound) Broadcast RR Full Duplex (Lower Bound) •Outperforms TDD constrained Round Robin broadcast scheme (optimal, no coding) •For high erasure probability: Outperforms full duplex Round Robin broadcast
  • 26.
    Private and Confidential Multiplepaths Difficulty without coding 26
  • 27.
    Private and Confidential Multiplepaths Keeping track of packets IP flow 1 IP flow 2 Application layer IP flow 1 IP flow 2 Application layer Server Client Lte NIC WiFi NIC Block i Block i Divide & Schedule Combine Media player p1p2p3 … pw p1p2p3 … pw p1p2p3 … pw Block 1 Block 2 Block 3 … … Request block i Media file: p1 p3 p5 p2 p4 p6 J. Cloud, du Pin Calmon, F., Zeng, W., Pau, G., Zeger, L., and Médard, M., “Multi-Path TCP with Network Coding for Mobile Devices in Heterogeneous Networks”, VTC 2013 27
  • 28.
    Private and Confidential Multiplepaths Keeping track of packets IP flow 1 IP flow 2 Application layer IP flow 1 IP flow 2 Application layer Server Client Lte NIC WiFi NIC Block i Block i Divide & Schedule Combine Media player p1p2p3 … pw p1p2p3 … pw p1p2p3 … pw Block 1 Block 2 Block 3 … … Request block i Media file: p1+p4 p2+p3 p1+p5 p2+p4 p3+p6 p4+p5 28
  • 29.
    Private and Confidential MTP/NC Codingover multiple paths All packets within the MPTCP/NC coding window are coded together and pushed to different sub- flows Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP NETWORK Network Interface Network Interface Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP Network Interface Network Interface Network Coding and Reliable Communications Group 29
  • 30.
    Private and Confidential MTP/NC Codingover multiple paths All received packets are ACK’ed All packets within the MPTCP/NC coding window are coded together and pushed to different sub- flows Each packet from TCP generates R linearly independent coded packets where each packet is generated from the set of packets within the TCP window Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP NETWORK Network Interface Network Interface Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP Network Interface Network Interface Each received packet is immediately forwarded to the TCP layer Network Coding and Reliable Communications Group 30
  • 31.
    Private and Confidential MTP/NC Codingover multiple paths All received packets are ACK’ed All packets within the MPTCP/NC coding window are coded together and pushed to different sub- flows Each packet from TCP generates R linearly independent coded packets where each packet is generated from the set of packets within the TCP window Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP NETWORK Network Interface Network Interface Application MPTCP/NC TCP TCP Fast- TCP/NC Fast- TCP/NC IP IP Network Interface Network Interface MPTCP/NC layer ACKs all new degrees of freedom received Decoding only occurs at the MPTCP/NC layer Each received packet is immediately forwarded to the TCP layer Network Coding and Reliable Communications Group 31
  • 32.
    Private and Confidential MTP/NC Differentdelays log 10 (File Size) Averagecompletiontime(ms) Link 1: RTT =1500ms p = 10−3 Link 2: RTT =80ms p = 10−2 3 4 5 6 10 2 10 3 10 4 10 5 10 6 10 7 10 8 Uncoded Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 log(File Size) AverageRate(packet/s) Link 1: RTT =1500ms p = 10−3 Link 2: RTT =80ms p = 10−2 3 4 5 6 0 200 400 600 800 1000 1200 1400 Uncoded Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 Time (s) Jointwindowwize(packets) Link 1: RTT=1500ms, p = 10−2 Link 2: RTT=80ms, p = 10−1 0 10 20 30 40 50 60 70 0 50 100 150 200 250 Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 Uncoded X X Network Coding and Reliable Communications Group 32
  • 33.
    Private and Confidential MTP/NC Differentdelays log(File Size) AverageRate(packet/s) Link 1: RTT =1500ms p = 10−3 Link 2: RTT =15ms p = 10−2 3 4 5 6 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 Uncoded Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 log10 (File Size) Averagecompletiontime(ms) Link 1: RTT =1500ms p = 10−3 Link 2: RTT =15ms p = 10−2 3 4 5 6 10 2 10 3 10 4 10 5 10 6 10 7 10 8 Uncoded Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 Time (s) Jointwindowwize(packets) Link 1: RTT=1500ms, p = 10−3 Link 2: RTT=15ms, p = 0.3 0 5 10 15 20 0 20 40 60 80 100 120 140 160 180 200 Coded, R=(1−p)−1 Coded, R=1.05(1−p)−1 Uncoded X X Network Coding and Reliable Communications Group 33
  • 34.
    Private and Confidential Recoding Noneed to decode CODING THE NETWORK: NEXT GENERATION CODING FOR FLEXIBLE NETWORK OPERATION IEEE CTN Issue: July 2018 K. Fouli, M. Medard, K. Shroff 34
  • 35.
    Private and Confidential Recoding Noability to decode Packet reception time 35
  • 36.
    Private and Confidential SatelliteContext Multiple Relevant Topologies 36 Brunel.ac.uk Mobile Mesh F. Vieira et al., Satcom 2011 Multipath Multicast Multipath Heterogeneous Multi-hop Multi-hop kddi.com
  • 37.
    Private and Confidential Recodingwith losses Different losses 1 2 4 sender From given data receiver Recoding at intermediate nodes, without decoding 37 3
  • 38.
    Private and Confidential Recodingwith losses Different losses TCP End-to-end coding Re-encoding at node 3 only 0.0042 Mbps 0.1420 Mbps 0.2448 Mbps (assuming each link has a bandwidth of 1 Mbps in the absence of erasures) Time average throughput (over 641 seconds) 38
  • 39.
    Private and Confidential Satellitein 5G Not just point to point 39
  • 40.
    Private and Confidential Futureaspects • Recoding at satellite • Edge caching with coding • On-the-ground peer-assisted satellite content delivery • Coding for multi-beam • Multi-sourcing with satellite • Secure coding Coding throughout 40
  • 41.
    Private and Confidential41 This document was created by Code On Network Coding LLC (“Code On”), a limited liability company based in Cambridge, MA, with registered offices at One Broadway, Floor 14, Cambridge, Massachusetts, 02142. All rights thereto are owned and reserved by Code On. This strictly private and confidential document was prepared exclusively for information purposes only and for discussion. This document is incomplete without reference to–and should be viewed solely in conjunction with–the oral presentation provided by Code On. While all reasonable care has been taken to ensure that the facts stated herein and in the accompanying oral presentation are accurate and that the opinions contained herein and in such presentation are fair and reasonable, the information provided is selective in nature and is intended to serve as an introduction and overview of, the content described herein. Any opinions expressed in this document and/or the accompanying presentation is subject to change without notice and neither Code On nor any other person is under any obligation to update or keep current such information. No representation, undertaking, promise or warranty, express or implied, is or will be made, or given as to, and no responsibility or liability is or will be accepted by Code On, its respective directors, officers, agents or employees in relation to the adequacy, accuracy, completeness or reasonableness of this document or any other information (whether written or oral), notice or document supplied or otherwise made available to any third or their respective advisers in connection with this document. This document and the information provided in the accompanying presentation is confidential and of a proprietary nature. This document may not be reproduced or redistributed outside the recipient's organisation or publicised in whole or in part for any purpose, including to the press or any media organization, without the express prior written consent of Code On. No right or entitlement to an implementation of the presentation or the concepts presented herein arises from this document and/or the presentation. Disclaimer