32
Network Coding “Codarea reţelei” Zsolt Polgar Communications Department Faculty of Electronics and Telecommunications, Technical University of Cluj-Napoca

Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Network Coding – “Codarea reţelei”

Zsolt Polgar

Communications Department

Faculty of Electronics and Telecommunications,

Technical University of Cluj-Napoca

Page 2: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Conţinutul prezentării Aspecte teoretice de bază;

Performanţe NC;

Selecţia coeficienţilor de codare RNC;

Efectul erorilor asupra operaţiilor NC;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 2

Page 3: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Aspecte teoretice de bază

Network Coding (“Codarea Reţelei”) – se referă la

combinarea pachetelor şi a fluxurilor transmise prin reţea;

Se consideră combinaţii liniare cu coeficienţi de combinare/

codare selectaţi după o anumită regulă;

Motivul utilizării codării este creşterea throughput-ului prin reţea

prin utilizarea mai eficientă a resurselor disponibile;

Controlul congestiei în situaţia în care nu este posibilă utilizarea altor tehnici

de rutare se poate realiza tot prin operaţii de codare – vezi figura;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 3

b1 b2

b1

b1

b1

b1

b2

b2

b2

b2

ST

W

YX

Z

Ub1 b2

b1

b1

b2

b2

ST

W

YX

Z

U

1 2b b

1 2b b 1 2b b

Page 4: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Aspecte teoretice de bază

Un alt exemplu clasic: utilizarea NC în WLAN

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 4

UV

UV

UV

ST

ST

ST

S’T’

S’T’

S’T’

b1

b2

1 2b b

Unitate de timp 1

Unitate de timp 2

Unitate de timp 3

Page 5: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Aspecte teoretice de bază

În fiecare nod se poate defini un set () de procese

aleatoare (secvenţe de date) :

Procesul aleator transmis pe legătura e (de ieşire) a nodului ,

notat cu Y(e), depinde de procesele aleatoare locale, X(), şi

de procesele aleatoare de pe legăturile de intrare e’ ,Y(e’);

“head” link = link “end” ; “tail” link = link “start”;

Coeficienţii şi sunt selectaţi după o anumită metodă în mod

determinist sau aleator – “Random” NC (RNC);

Dacă un nod este un nod terminal atunci datele decodate sunt

reprezentate de procesele aleatoare:

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 5

,1 , ,2 ,..., , ( )X v X v X v X v v

( )

, ',

1 ': ( ') ( )

, 'v

e l e e

l e head e tail e

Y e X v l Y e

,1 , ,2 ,..., , ( )Z v Z v Z v Z v v

',

': ( ')

, 'e j

e head e v

Z v j Y e

Page 6: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Aspecte teoretice de bază

Se utilizează o descriere o matricială:

Matricea de incidenţă F, de dimensiune EE; E – numărul de

linkuri din reţea;

Matricea A – corespunde proceselor sursă; are dimensiunea E,

unde este numărul total de procese sursă în toate nodurile reţelei;

l – numărul de ordine al procesului sursă dintr-un anumit nod;

Matricea B – corespunde proceselor destinaţie; are dimensiunea E,

unde este numărul total de procese destinaţie în nodurile terminale;

l – numărul de ordine al procesului destinaţie dintr-un anumit nod;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 6

,

,

( ) ( )

0

i je e i j

i j

head e tail eF

in rest

,

,

( ( ), )

0

je l i j

i j

x X tail e lA

in rest

1 2 1 1 1 1 2, ,..., ( ,1), ( ,2),..., ( , ( )), ( ,1),..., ( , ( ))V V

x x x x X v X v X v v X v X v v

( )i

i

v

,

,

( ( ), )

0

je l i j

i j

z Z head e lB

in rest

1 2 1 1 1 1 2, ,..., ( ,1), ( ,2),..., ( , ( )), ( ,1),..., ( , ( ))V V

z z z z Z v Z v Z v v Z v Z v v

( )i

i

v

Page 7: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Aspecte teoretice de bază

Dacă o reţea este descrisă prin matricile A, B şi F,

matricea de transfer a reţelei, M, este dată de:

I este matricea identitate de dimensiune EE;

Decodarea simbolurilor este posibilă dacă matricea M

este inversabilă;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 7

vY(1)

Y(2)

(3) (1) (2)1,3 1 1,3 2,3Y a X f Y f Y

X1 ST

W

YX

Z

U

X1,X2

1 1 2 2X X 3 1 4 2X X

5 1 1 2 2

6 3 1 4 2

X X

X X

1( ) TM A I F B

Page 8: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC Teorema “max-flow min-cut”

Într-o reţea care transmite fluxuri (“flow network”) fluxul maxim

care trece de la sursă la destinaţie este egal cu capacitatea de

transfer minimă care trebuie eliminată din reţea astfel încât nu se

mai poate trimite nici un flux între sursă şi destinaţie;

Capacitatea minimă se poate determina prin diverse metode de

analiză/căutare pe graf; o astfel de metodă este algoritmul Ford-

Fulkerson

Teorema presupune că nodurile reţelei nu realizează

duplicări de pachete;

Un pachet ce soseşte într-un nod pe un link de intrare este direcţionat

numai către un singur link de ieşire;

Capacitatea reţelei se modifică dacă se permit duplicări/replicări de

pachete;

Duplicările de pachete stau la baza operaţiilor de multicast;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 8

Page 9: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC Reţeua de test de bază – varianta 1

Numerele de pe legături reprezintă debite de

transfer în simboluri/pachete pe unitate de timp;

Este vorba de o tratare teoretică; semnificaţia

practică de debitelor specificate poate fi un

multiplicator al unui debit de bază/referinţă;

Reţele de test modificate/extinse

Nodurile 3, 4 şi 5 sunt indentice cu nodurile

cu acelaşi număr din prima figură; are loc

modificarea numărului de destinaţii;

Se consideră o transmisie multicast între sursa 0 şi destinaţii;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 9

0

1

13

3 4 5

6 7

22

27

16 12 9 14

7 12 6 14

3 4 5

67

1920

3 4 5

6 7 8

78

9

5

610

3 4 5

6 7

108

97

8 98

6

a b c

Page 10: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Debite “max flow” fără duplicări/replicări de pachete

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 10

0

5

10

15

20

25

30

35

40

1 2 3 4

Ma

x-f

low

[s

ym

bo

ls/t

ime

un

it]

No. of sinks

Sink 1 Sink 2

Sink 3 Sinkl 4

Page 11: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Debite “max flow” cu duplicări/replicări de pachete

“Pericolul” este că unele pachete pot fi

considerate/numărate de mai multe ori;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 11

0

5

10

15

20

25

30

35

40

45

1 2 3 4

Ma

x-f

low

[sym

bo

ls/t

ime u

nit

s]

No. of sinks

Sink 1 Sink 2

Sink 3 Sink 4

Page 12: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC Comparaţie între ratele de transfer codate şi necodate

Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

media ratelor de transfer maxime ce se pot obţine în nodurile destinaţie fără replicări

de pachete;

rata de transfer minimă care se poate obţine în nodurile destinaţie cu replicări de

pachete;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 12

0

5

10

15

20

25

30

35

40

1 2 3 4

Tra

nsfe

r ra

te [

sym

bo

ls/t

ime u

nit

]

No. of terminals

Coded

Non-coded

Page 13: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Reţeua de test de bază – varianta 2

Probabilitatea de nedecodare

depinde de rata de transfer codată;

este identică cu probabilitatea ca

matricea de transfer a reţelei să aibă

determinant nul;

reţeaua din figură poate

transfera un debit maxim

de 11 simb./unit. timp;

s-a utilizat GF(2^5);

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 13

0

1

3

54

6

213 8

9 10

12 65

7 11

0.00E+00

5.00E-03

1.00E-02

1.50E-02

2.00E-02

2.50E-02

3.00E-02

3.50E-02

9 10 11 12

Pro

ba

bilit

ate

de

term

ina

nt

nu

l

Rata

Terminal1

Terminal2

Page 14: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Timpul de execuţie în funcţie de rată

Numărul de operaţii în medie este aceeaşi pentru orice rată;

Creşterea ratei duce la scăderea timpului de execuţie / simbol transmis;

Creşterea ratei codate peste valoarea maximă posibilă duce la

creşterea timpului de execuţie datorită inversărilor de matrici

nereuşite;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 14

03:36.0

03:44.6

03:53.3

04:01.9

04:10.6

04:19.2

04:27.8

04:36.5

04:45.1

9 10 11 12

Rata

Tim

pu

l d

e e

xecu

tie

Timpul de executie

Page 15: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Efectul dimensiunii câmpului Galois asupra probabilităţii de

decodare corectă;

asigurarea unei

probabilităţi de decodare

reduse necesită o anumită

dimensiune a câmpului

Galois;

Un câmp Galois redus

creşte probabilitatea de

determinant nul;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 15

0.00E+00

5.00E-02

1.00E-01

1.50E-01

2.00E-01

2.50E-01

3.00E-01

3 4 5 6

Pro

ba

bili

tate

de

term

ina

nt

nu

l

Dimensiunea câmpului

Terminal1

Terminal2

0.00E+00

5.00E-02

1.00E-01

1.50E-01

2.00E-01

2.50E-01

3 4 5 6

Pro

ba

bilit

ate

sim

bo

l e

ron

at

Dimensiune câmp GF

Terminal1

Terminal2

Page 16: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Variaţia timpului de execuţia cu dimensiunea câmpului Galois

Numărul de operaţii executate depinde în mare măsură de

operaţiile executate în câmp Galois;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 16

00:00.0

01:26.4

02:52.8

04:19.2

05:45.6

07:12.0

08:38.4

3 4 5 6

Dimensiune camp GF

Du

rata

de e

xecu

tie

Timp de executie

Page 17: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Reţeua de test de bază – varianta 3

Efectul complexităţii reţelei asupra debitului codat maxim;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 17

a b c

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

3 4 5

De

bit

ma

xim

Numar noduri intermediare

Terminal1

Terminal2

0

1

2

3

4

5

3 4 5

Ra

ta d

e t

ra

ns

fee

r

Numar noduri intermediare

Rata

Page 18: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Reţeua de test de bază – varianta 4

Se modifică reţeaua pentru a obţine diferite configuraţii; se

urmăreşte studiul efectului eliminării, respectiv adăugării unei

legături;

Capacităţile legăturilor sunt 1;

Modificările efectuate:

1. se elimină legătura dintre nodurile 2 şi 9;

2. se dublează capacitatea legăturii dintre 4 şi 6;

3. se dublează şi capacitatea legăturii dintre 5 şi 7;

4. capacitatea legăturii 4-6 se readuce la 1, iar capacitatea legăturii

5-7 rămâne dublată;

5. se reintroduce legătura 2-9, şi legăturile 4-6, respectiv 5-7 se

dublează;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 18

0

321

4 5

6 7

1098

Page 19: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Se studiază variaţia debitului maxim obţinut la fiecare terminal

fără codare:

Folosind tehnicile de codare se obţine un debit maxim egal cu 2

în fiecare dintre cazurile de mai sus;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 19

0

0.5

1

1.5

2

2.5

0 1 2 3 4 5

Configuratie

Maxfl

ow

Terminal1

Terminal2

Terminal3

Page 20: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC Optimizarea reţelei de codare – reţea de test varianta 5

Reducerea complexităţii operaţiilor de codare necesită reducerea

numărului de noduri care realizează codare şi a legăturilor care

transportă datele codate;

a) – reţea de test cu o sursă şi două destinaţii; operaţie de multicast 3 simb/s;

b) – reţea de test optimizată cu număr de operaţii de codare şi link-uri reduse;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 20

1

2

6

5

4

3

7

4 1

1

12

2

2

2 2

1

2

6

5

4

3

7

unused link

symbol a

symbol b

symbol c

a XOR c

XOR = GF field

operation

a) b)

Page 21: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Performanţe NC

Optimizarea reţelei de codare – un alt exemplu

Reţea de test varianta 6;

Reţeaua originală Reţeaua optimizată

Există posibilitatea eliminării unui link şi a unei operaţii de codare; An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 21

Page 22: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Selecţia coeficienţilor de codare RNC

Coeficienţii a, b, c, a', b', c', a”, b”, c” sunt selectaţi aleator şi

uniform din elementele câmpului GF(q);

Nodul v multiplică fiecare simbol recepţionat cu un coeficient

aleator (k, k', k”) şi adună valorile obţinute;

Distribuţia coeficienţilor de codare globali rămâne aceeaşi,

adică uniformă, datorită transformării liniare;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 22

Page 23: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Selecţia coeficienţilor de codare RNC

Exemplu: Coeficienţi de codare sunt selectaţi aleator din

GF(29) şi se efectuează asupra lor o serie de transformări

liniare;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 23

Page 24: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Selecţia coeficienţilor de codare RNC

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 24

, ,i jM m matrice n n definita GF q

1

1 ,n i

ip q daca n

Fie

Se consideră că fiecare element al matricii este independentă şi

distribuită în mod identic;

Elementele matricii sunt distribuite uniform în câmpul GF(q);

Matricea reprezintă matricea de transfer dintre sursă şi o destinaţie

– matricea asociată ecuaţiei care trebuie rezolvată în nodul

destinaţie;

Probabilitatea ca matricea să aibă determinant nenul este:

O altă formulă ce exprimă aceeaşi probabilitate (dar într-un

context mai extins legat şi de topologia reţelei) este:

d – număr de noduri destinaţie; d>q; n’ - numărul maxim de linkuri

din toate seturile care asigură soluţii pentru toate destinaţiile;

'

1n

p d q

Page 25: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Selecţia coeficienţilor de codare RNC

Reţea de test varianta 5

probabilitatea ca matricea de transfer a reţelei să fie inversabilă;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 25

Page 26: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Selecţia coeficienţilor de codare RNC

Reţea de test varianta 1.b

probabilitatea ca matricea de trasfer a reţelei să fie inversabilă;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 26

Page 27: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

Se consideră un exemplu simplu: o sursă şi

o destinaţie;

Relaţiile de bază care descriu operaţiile NC:

- reprezintă nodul sursă;

() – reprezintă numărul de procese generatoare

de date în nodul sursă, ;

Unde M este matricea de transfer a reţelei

dintre sursă şi destinaţie şi are expresia:

x,y – este

coef. de

codare între

in x şi out y;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 27

,1 , , 2 , , ,

',1 , ', 2 , , ', '

z x M

x X X X

z Z Z Z

1 5 1 4 4 6 1 4 4 7

2 5 2 4 4 6 2 4 4 7

3 6 3 7

, , , , ,

, , , , ,

, ,0

e e e e e e e e e e

T

e e e e e e e e e e

e e e e

M A B

Page 28: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

Matricile A şi B sunt exprimate de:

unde y,x – reprezintă coeficientul de codare dintre secvenţa de

date x şi linkul y; y,x – reprezintă coeficientul de codare dintre

linkul y şi secvenţa destinaţie x;

Dacă sunt erori pe anumite linkuri unele din simboluri sau

toate simbolurile decodate vor fi eronate;

O detecţie de erori bazată pe CRC sau chiar o corecţie de

erori se poate aplica pe fiecare legătură;

Dacă sunt detectate erori pe anumite legături, acele legături

nu trebuie incluse în determinarea matricii de transfer M;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 28

1 2 3 5 5 5

1 2 3 6 6 6

1 2 3 7 7 7

,1 ,1 ,1 ,1 ,2 ,3

,2 ,2 ,2 ,1 ,2 ,3

,3 ,3 ,3 ,1 ,2 ,3

;

e e e e e e

e e e e e e

e e e e e e

A B

Page 29: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

Există eroare pe linkul e1:

Există eroare pe linkul e2:

Decodarea nu se poate realiza în aceste situaţii

Există eroare pe linkul e6:

Există eroare pe linkul e7:

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 29

2 5 2 4 4 6 2 4 4 7

3 6 3 7

, , , , ,

, ,

0 0 0

0

T

e e e e e e e e e e

e e e e

M A B

1 5 1 4 4 6 1 4 4 7

3 6 3 7

, , , , ,

, ,

0 0 0

0

e e e e e e e e e e

T

e e e e

M A B

1 5 1 4 4 6 1 4 4 7

2 5 2 4 4 6 2 4 4 7

3 7

, , , , ,

, , , , ,

,0 0

e e e e e e e e e e

T

e e e e e e e e e e

e e

M A B

1 5 1 4 4 6 1 4 4 7

2 5 2 4 4 6 2 4 4 7

3 6

, , , , ,

, , , , ,

,0 0

e e e e e e e e e e

T

e e e e e e e e e e

e e

M A B

Page 30: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

În ultimele două cazuri decodarea poate fi posibilă în funcţie de

structura matricilor M, A şi B;

Decodarea corectă a simbolurilor necesită un anumit grad de

redundanţă:

Redundanţă în domeniul timp:

Este vorba de o corecţie tipică de ştergeri; secvenţa de simboluri

aplicată codorului NC se codează cu un cod corector de ştergeri

care reface simbolurile lipsă;

Corecţia de ştergeri se poate realiza şi separat pe legăturile reţelei de codare NC;

Are loc o scădere a throughput-ului;

Redundanţă de linkuri (sau redundanţă de topologie):

Se utilizează un număr mai mare de legături decât este necesar;

Legăturile cu erori se exclud, dar decodarea va rămâne posibilă;

Reţeaua de codare rămâne destul de complexă (după eliminarea legăturilor cu

erori) pentru a asigura o matrice de transfer cu determinant nenul;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 30

Page 31: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

Exemplu de redundanţă de linkuri:

În topologia din figură se consideră numai două secvenţe de

date X(v,1) and X(v,2);

Reţeaua conţine în acest caz mai multe linkuri decât sunt necesare pentru

asigurarea decodării corecte a simbolurilor de date codate NC;

Structura matricii M rămâne aceeaşi, dar se schimbă structura matricilor A

şi B:

Dacă sunt erori pe linkul e2 structura matricii M devine:

Simbolurile sursă pot fi decodate datorită linkului redundant e1;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 31

5 5

1 2 3

6 6

1 2 3

7 7

,1 ,2

,1 ,1 ,1

,1 ,2

,2 ,2 ,2

,1 ,2

;

e e

e e e

e e

e e e

e e

A B

1 5 1 4 4 6 1 4 4 7

3 6 3 7

, , , , ,

, ,0

e e e e e e e e e e T

e e e e

M A B

Page 32: Network Coding “Codarea reţelei” - users.utcluj.rousers.utcluj.ro/~dtl/TACCFD/Laborator/Lab_NC.pdf · Debitul codat (acelaşi în toate destinaţiile) este aproximativ egal cu:

Efectul erorilor asupra operaţiilor NC

Caz particular: 1 nod sursă, n noduri

intermediare, 2 noduri destinaţie –

vezi fig. alăturată

Max-flow fără codare este de n

simboluri de date / unitate de timp;

Dacă o legătură se întrerupe un link,

max-flow devine n-1; nu se poate

atinge fără codare NC, doar prin

rutare;

În mod similar dacă se întrerup k

linkuri, prin codare NC se poate

asigura o rată de n-k simb./unit. timp;

An universitar 2014 – 2015

Semestrul II Tehnici Avansate de Control al Fluxului de Date 32