SlideShare a Scribd company logo
Introduzione
Network Information Flow
Network Coding
Alain Bindele
Corso di Reti Avanzate 2012/2013
14 giugno 2013
Alain Bindele Network Information Flow
Introduzione
Argomenti affrontati:
Il Network Information Flow ed il Network Coding
Soluzioni proposte: COPE
Funzionamento del protocollo
Struttura dell’header
Prestazioni
Interazione con il MAC layer
Miglioramenti proposti
Coding-Aware routing
Sviluppi futuri
Alain Bindele Network Information Flow
Introduzione
Problema del Network Information Flow
“In una rete in cui un insieme di nodi sorgenti devono trasmettere
informazioni ad una serie di nodi di destinazione attraverso un
insieme di nodi ripetitori, qual’´e il massimo flusso informativo
raggiungibile?”
Alain Bindele Network Information Flow
Introduzione
Un esempio tipico:
(a) (b)
Figura: Configurazione “Alice and Bob” senza network coding (a) e con network
coding (b)
Alain Bindele Network Information Flow
Introduzione
Un altro esempio tipico:
A B
D E
x
x
C
x,y x,y
(a) (b)
Figura: Rete di comunicazione “a farfalla” senza l’uso del network coding (a) e
con network coding (b)
Alain Bindele Network Information Flow
Introduzione
Il protocollo COPE: L’importanza di essere opportunisti...(in senso
buono)
Alain Bindele Network Information Flow
Introduzione
Il protocollo COPE:
Ascolto Opportunistico
Coding Opportunistico
Pseudo-Broadast
Riscontri Asincroni
Reception Reports
Alain Bindele Network Information Flow
Introduzione
Il problema della scelta.
P1
P2
P3
P4
Pacchetti
A
Dest.
C
C
D
0 0 0
0 0 0
1 1 1
1 1 1
0 0 0
0 0 0
1 1 1
1 1 1
0 0 0
0 0 0
1 1 1
1 1 1
D
C
BA
P1P2P3P4
P4 P3
P1 P4
P3 P1
P1+P2
(a)HopsuccessivideipacchettiincodanelnodoB (b)Sceltapessima
0 0
0 0
0 0
0 0
1 1
1 1
1 1
1 1
0 0
0 0
0 0
0 0
0 0
1 1
1 1
1 1
1 1
1 1
0 0
0 0
0 0
0 0
1 1
1 1
1 1
1 1
D
C
BA
P1P2P3P4
P4 P3
P1 P4
P3 P1
P1+P3
0 0
0 0
1 1
1 1
0 0
0 0
0 0
1 1
1 1
1 1
0 0
0 0
1 1
1 1
0 0
0 0
1 1
1 1 D
C
BA
P1P2P3P4
P4 P3
P1 P4
P3 P1
P1+P3+P4
(c)Buona Scelta (d) Miglior scelta
(C può decodificare, A no)
(A e C possono decodificare) (A, C e D possono decodificare)
Figura: Coding opportunistico: nella situazione (a) le diverse scelte portano diversi
fattori di miglioramento sulle prestazioni.Alain Bindele Network Information Flow
Introduzione
Idea!! Perch´e allora non utilizzare i protocolli broadcast??
Quasi...
Alain Bindele Network Information Flow
Introduzione
Soluzione Pseudo-Broadcast
ossia: come implementare un meccanismo broadcast su flussi
unicast.
Alain Bindele Network Information Flow
Introduzione
Codifica dei pacchetti: Obiettivi
Nessun Ritardo!
Pacchetti Omogenei
Differenti Destinazioni
Massima probabilit´a di ricezione
Alain Bindele Network Information Flow
Introduzione
Decodifica dei pacchetti
Niente di pi´u semplice:Una hashlist ed uno Xor.
Alain Bindele Network Information Flow
Introduzione
L’algoritmo di ricezione e di invio.
Encoded?
Can send
yes
no
Schedule
retransmissions
Add reception reports
To wireless device
Add acks to header
Dequeue head of
Output Queue
Encode if
possible
Encoded?
Packet
arrival
yes
no
Decode and schedule acks
Extract acks meant for me
Update retransmission events
yes
no
Enqueue in
Output Queue
Deliver
to host
Extract Reception Reports
Update Neighbor’s State
Am I nexthop?
Decodable?
Am I destination?
yes
yes
Add to Packet Pool
Add to Packet Pool
(a) Sender side (b) Receiver side
Alain Bindele Network Information Flow
Introduzione
Struttura dell’header COPE
Figura: Struttura dell’ Header del protocollo COPE.
Alain Bindele Network Information Flow
Introduzione
Prestazioni del protocollo COPE
0.6
0.8
1
1.2
1.4
1.6
1.8
2
1 1.5 2 2.5 3
TCPGoodputinMb/s
Carico offerto in Mb/s
COPE
senza COPE
0
1
2
3
4
5
6
0 2 4 6 8 10 12 14 16 18 20 22 24
ThroughputdireteinMb/s
Carico offerto in Mb/s
con COPE
senza COPE
(a) (b)
Figura: a)Prestazioni del protocollo COPE in una rete TCP senza casi di hidden
terminal. b)Prestazioni del protocollo COPE con flussi UDP in una rete wireless
ad-hoc.
Alain Bindele Network Information Flow
Introduzione
Prestazioni del protocollo COPE (2)
0
10
20
30
40
50
60
1 2 3 4 5 6
Percentuale
N°. pacchetti codificati insieme
Pacchetti Codificati
0
20
40
60
80
100
0 4 8 12 16 20 24
Percentuale
Carico offerto in Mb/s
Pacchetti codificati probabilisticamente
(a) (b)
Figura: a) Distribuzione del numero di pacchetti codificati nel punto di picco
relativamente all’esperimento della slide precedente. b)Percentuale dei pacchetti
codificati tramite considerazioni probabilistiche nel punto di picco relativamente
all’esperimento della slide precedente (parte b).
Alain Bindele Network Information Flow
Introduzione
Prestazioni del protocollo COPE: altre considerazioni
Effetto Cattura
Hidden Terminal
Confronto fra le prestazioni teoriche e pratiche
Alain Bindele Network Information Flow
Introduzione
Interazione tra MAC e COPE
0 0.5 1 1.5 2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Carico Offerto
ThroughputTotale
COPE
Routing
Figura: Funzioni del throughput teoriche con e senza NC
Alain Bindele Network Information Flow
Introduzione
Interazione tra MAC e COPE (Topologia a stella)
A
B
C
D
r
Figura: Esempio di topologia a stella
Alain Bindele Network Information Flow
Introduzione
Miglioramenti per la fairness
Coda del nodo codificante
Sequenza pacchetti inviati
Sequenza inviata
Code virtuali del nodo codificante
a)
b)
Figura: Esempio: Code dei pacchetti con e senza tecnica di round-robin
Alain Bindele Network Information Flow
Introduzione
Coding-Aware Routing
a) b) c)
Figura: a) Routing semplice. b) Routing che massimizza le opportunit´a di codifica
c) Topologia di esempio
Alain Bindele Network Information Flow
Introduzione
Le euristiche:
SPATH: Routing interference-aware su singolo percorso senza
codifica.
MPATH: Routing interference-aware su percorso multiplo
senza codifica.
SPATH-CODE: Routing non coding-aware su singolo percorso
con codifica.
CA-SPATH-CODE: Routing coding-aware su singolo percorso
con codifica.
CA-MPATH-CODE: Routing coding-aware su percorsi multipli
con codifica.
Alain Bindele Network Information Flow
Introduzione
Confronto tra le euristiche:
Interferenze vs. Opportunit´a di codifica
MPATH: buono a basso carico, ad alti carichi soffre
l’interferenza
SPATH-CODE: buone opportunit´a di codifica ma su singolo
percorso
CA-MPATH-CODE: miglior throughput
Alain Bindele Network Information Flow
Introduzione
Confronto tra le euristiche:
Coding-Aware vs. opportunistic listening
SPATH-CODE + L: +10% rispetto a SPATH-CODE,
+30% rispetto a SPATH.
CA-MPATH-CODE -L: migliore del SPATH-CODE + L
Alain Bindele Network Information Flow
Introduzione
Confronto tra le euristiche:
Banda vs. Throughput
SPATH-CODE: 17% di risparmio rispetto a SPATH
MPATH: 17% peggiori rispetto a SPATH
Le migliori performance si ottengono tramite codifica e
ascolto opportunistico.
Alain Bindele Network Information Flow
Introduzione
Confronto tra le euristiche:
a) b)
c) d)
Alain Bindele Network Information Flow
Introduzione
Confronto tra le euristiche (2):
e)
Alain Bindele Network Information Flow

More Related Content

PPT
Clil methodology: CONTENT AND LANGUAGE INTEGRATED LEARNING.Mathematics Lesson
PPTX
Second Language Acquisition & Applied Linguistics for session with Kazakh tea...
PPT
Color Coding
PPTX
I LIKE CODING ... AND YOU?
PPT
My clil powerpoint
PPT
Didattica e tecnologie: il coding
PPT
CodeMOOC 4.9: Code,org RECAP
PDF
CLIL 1: What is it? Advantages and Drawbacks
Clil methodology: CONTENT AND LANGUAGE INTEGRATED LEARNING.Mathematics Lesson
Second Language Acquisition & Applied Linguistics for session with Kazakh tea...
Color Coding
I LIKE CODING ... AND YOU?
My clil powerpoint
Didattica e tecnologie: il coding
CodeMOOC 4.9: Code,org RECAP
CLIL 1: What is it? Advantages and Drawbacks

Similar to About Network coding (20)

PPT
Introduzione a Internet (1/2) - 18/19
PPTX
5_internet
PPTX
IPv6 - Breve panoramica tra mito e realtà
PPT
2 - Introduzione ad Internet (1/2)
PPT
2 - Introduzione a Internet (1/2) - 17/18
PPTX
Confronto Modello ISO/OSI e Modello TCP/IP
PPT
Presentazione Tesi
PPT
9 Intranetting
PPTX
High Level Synthesis Using Esterel
ODP
Reti Domestiche
PPT
1 Intro Propedeutici
PPT
Thesis Murgida Panella Slide it
PPTX
Gnutella
PPT
Reti locali cablate e wireless
PPS
ILIC Dejan - MSc presentation: Secure Business Computation by using Garbled C...
PDF
01 intro pc
PPTX
Enter goes ipv6
PDF
4 Livello Ip Parte3 Bw
Introduzione a Internet (1/2) - 18/19
5_internet
IPv6 - Breve panoramica tra mito e realtà
2 - Introduzione ad Internet (1/2)
2 - Introduzione a Internet (1/2) - 17/18
Confronto Modello ISO/OSI e Modello TCP/IP
Presentazione Tesi
9 Intranetting
High Level Synthesis Using Esterel
Reti Domestiche
1 Intro Propedeutici
Thesis Murgida Panella Slide it
Gnutella
Reti locali cablate e wireless
ILIC Dejan - MSc presentation: Secure Business Computation by using Garbled C...
01 intro pc
Enter goes ipv6
4 Livello Ip Parte3 Bw
Ad

More from Alain Bindele (6)

PDF
Mystic waters
PDF
Create rails project
PDF
Rate-it! A general purpose Polling Platform (based on graph dbms Neo4j) [ENG ...
PDF
Rate-it! A general purpose Polling Platform (based on graph dbms Neo4j)
PDF
Sift - Scale Invariant Feature Transform
PDF
about botnets
Mystic waters
Create rails project
Rate-it! A general purpose Polling Platform (based on graph dbms Neo4j) [ENG ...
Rate-it! A general purpose Polling Platform (based on graph dbms Neo4j)
Sift - Scale Invariant Feature Transform
about botnets
Ad

About Network coding

  • 1. Introduzione Network Information Flow Network Coding Alain Bindele Corso di Reti Avanzate 2012/2013 14 giugno 2013 Alain Bindele Network Information Flow
  • 2. Introduzione Argomenti affrontati: Il Network Information Flow ed il Network Coding Soluzioni proposte: COPE Funzionamento del protocollo Struttura dell’header Prestazioni Interazione con il MAC layer Miglioramenti proposti Coding-Aware routing Sviluppi futuri Alain Bindele Network Information Flow
  • 3. Introduzione Problema del Network Information Flow “In una rete in cui un insieme di nodi sorgenti devono trasmettere informazioni ad una serie di nodi di destinazione attraverso un insieme di nodi ripetitori, qual’´e il massimo flusso informativo raggiungibile?” Alain Bindele Network Information Flow
  • 4. Introduzione Un esempio tipico: (a) (b) Figura: Configurazione “Alice and Bob” senza network coding (a) e con network coding (b) Alain Bindele Network Information Flow
  • 5. Introduzione Un altro esempio tipico: A B D E x x C x,y x,y (a) (b) Figura: Rete di comunicazione “a farfalla” senza l’uso del network coding (a) e con network coding (b) Alain Bindele Network Information Flow
  • 6. Introduzione Il protocollo COPE: L’importanza di essere opportunisti...(in senso buono) Alain Bindele Network Information Flow
  • 7. Introduzione Il protocollo COPE: Ascolto Opportunistico Coding Opportunistico Pseudo-Broadast Riscontri Asincroni Reception Reports Alain Bindele Network Information Flow
  • 8. Introduzione Il problema della scelta. P1 P2 P3 P4 Pacchetti A Dest. C C D 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 D C BA P1P2P3P4 P4 P3 P1 P4 P3 P1 P1+P2 (a)HopsuccessivideipacchettiincodanelnodoB (b)Sceltapessima 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 D C BA P1P2P3P4 P4 P3 P1 P4 P3 P1 P1+P3 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 D C BA P1P2P3P4 P4 P3 P1 P4 P3 P1 P1+P3+P4 (c)Buona Scelta (d) Miglior scelta (C può decodificare, A no) (A e C possono decodificare) (A, C e D possono decodificare) Figura: Coding opportunistico: nella situazione (a) le diverse scelte portano diversi fattori di miglioramento sulle prestazioni.Alain Bindele Network Information Flow
  • 9. Introduzione Idea!! Perch´e allora non utilizzare i protocolli broadcast?? Quasi... Alain Bindele Network Information Flow
  • 10. Introduzione Soluzione Pseudo-Broadcast ossia: come implementare un meccanismo broadcast su flussi unicast. Alain Bindele Network Information Flow
  • 11. Introduzione Codifica dei pacchetti: Obiettivi Nessun Ritardo! Pacchetti Omogenei Differenti Destinazioni Massima probabilit´a di ricezione Alain Bindele Network Information Flow
  • 12. Introduzione Decodifica dei pacchetti Niente di pi´u semplice:Una hashlist ed uno Xor. Alain Bindele Network Information Flow
  • 13. Introduzione L’algoritmo di ricezione e di invio. Encoded? Can send yes no Schedule retransmissions Add reception reports To wireless device Add acks to header Dequeue head of Output Queue Encode if possible Encoded? Packet arrival yes no Decode and schedule acks Extract acks meant for me Update retransmission events yes no Enqueue in Output Queue Deliver to host Extract Reception Reports Update Neighbor’s State Am I nexthop? Decodable? Am I destination? yes yes Add to Packet Pool Add to Packet Pool (a) Sender side (b) Receiver side Alain Bindele Network Information Flow
  • 14. Introduzione Struttura dell’header COPE Figura: Struttura dell’ Header del protocollo COPE. Alain Bindele Network Information Flow
  • 15. Introduzione Prestazioni del protocollo COPE 0.6 0.8 1 1.2 1.4 1.6 1.8 2 1 1.5 2 2.5 3 TCPGoodputinMb/s Carico offerto in Mb/s COPE senza COPE 0 1 2 3 4 5 6 0 2 4 6 8 10 12 14 16 18 20 22 24 ThroughputdireteinMb/s Carico offerto in Mb/s con COPE senza COPE (a) (b) Figura: a)Prestazioni del protocollo COPE in una rete TCP senza casi di hidden terminal. b)Prestazioni del protocollo COPE con flussi UDP in una rete wireless ad-hoc. Alain Bindele Network Information Flow
  • 16. Introduzione Prestazioni del protocollo COPE (2) 0 10 20 30 40 50 60 1 2 3 4 5 6 Percentuale N°. pacchetti codificati insieme Pacchetti Codificati 0 20 40 60 80 100 0 4 8 12 16 20 24 Percentuale Carico offerto in Mb/s Pacchetti codificati probabilisticamente (a) (b) Figura: a) Distribuzione del numero di pacchetti codificati nel punto di picco relativamente all’esperimento della slide precedente. b)Percentuale dei pacchetti codificati tramite considerazioni probabilistiche nel punto di picco relativamente all’esperimento della slide precedente (parte b). Alain Bindele Network Information Flow
  • 17. Introduzione Prestazioni del protocollo COPE: altre considerazioni Effetto Cattura Hidden Terminal Confronto fra le prestazioni teoriche e pratiche Alain Bindele Network Information Flow
  • 18. Introduzione Interazione tra MAC e COPE 0 0.5 1 1.5 2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Carico Offerto ThroughputTotale COPE Routing Figura: Funzioni del throughput teoriche con e senza NC Alain Bindele Network Information Flow
  • 19. Introduzione Interazione tra MAC e COPE (Topologia a stella) A B C D r Figura: Esempio di topologia a stella Alain Bindele Network Information Flow
  • 20. Introduzione Miglioramenti per la fairness Coda del nodo codificante Sequenza pacchetti inviati Sequenza inviata Code virtuali del nodo codificante a) b) Figura: Esempio: Code dei pacchetti con e senza tecnica di round-robin Alain Bindele Network Information Flow
  • 21. Introduzione Coding-Aware Routing a) b) c) Figura: a) Routing semplice. b) Routing che massimizza le opportunit´a di codifica c) Topologia di esempio Alain Bindele Network Information Flow
  • 22. Introduzione Le euristiche: SPATH: Routing interference-aware su singolo percorso senza codifica. MPATH: Routing interference-aware su percorso multiplo senza codifica. SPATH-CODE: Routing non coding-aware su singolo percorso con codifica. CA-SPATH-CODE: Routing coding-aware su singolo percorso con codifica. CA-MPATH-CODE: Routing coding-aware su percorsi multipli con codifica. Alain Bindele Network Information Flow
  • 23. Introduzione Confronto tra le euristiche: Interferenze vs. Opportunit´a di codifica MPATH: buono a basso carico, ad alti carichi soffre l’interferenza SPATH-CODE: buone opportunit´a di codifica ma su singolo percorso CA-MPATH-CODE: miglior throughput Alain Bindele Network Information Flow
  • 24. Introduzione Confronto tra le euristiche: Coding-Aware vs. opportunistic listening SPATH-CODE + L: +10% rispetto a SPATH-CODE, +30% rispetto a SPATH. CA-MPATH-CODE -L: migliore del SPATH-CODE + L Alain Bindele Network Information Flow
  • 25. Introduzione Confronto tra le euristiche: Banda vs. Throughput SPATH-CODE: 17% di risparmio rispetto a SPATH MPATH: 17% peggiori rispetto a SPATH Le migliori performance si ottengono tramite codifica e ascolto opportunistico. Alain Bindele Network Information Flow
  • 26. Introduzione Confronto tra le euristiche: a) b) c) d) Alain Bindele Network Information Flow
  • 27. Introduzione Confronto tra le euristiche (2): e) Alain Bindele Network Information Flow