Upload
jurica-kovacevic
View
74
Download
0
Embed Size (px)
Citation preview
Komunikacijski sustavi i mree5. Sustavi5.6. Sigurnosno kodiranjeDr. sc. Predrag Valoi
14.5.2009
KSM_K_2009
1
Model telekomunikacijskog sustava
X
Y
X, Y digitalne, binarne poruke14.5.2009 KSM_K_2009 2
X 110001001110110001 N 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 Sekvenca pogreke Y 110011001100110011
Pe = P1NX 0 0 1 1 N 0 1 0 1 = = = = Y 0 1 1 0 Zbrajanje po modulu dva (XOR)
Y=X NKSM_K_2009 3
14.5.2009
5.6. Sigurnosno kodiranje1P1u P11=1-Pe P10=Pe P01=Pe P00=1-Pe
1P1i
X 0P0u
Y 0P0i
BSC binarni simetrini kanal P10=P01=Pe14.5.2009 KSM_K_2009
BC_vjerojatnosti.xls4
BSC binarni simetrini kanal 1P1u 1-Pe Pe Pe 1-Pe
1P1i
X 0P0u
Y 0P0i
14.5.2009
KSM_K_2009
5
10,4 0,2
0,8
1P1i
BSC 00,6 0,2 0,8
BC_vjerojatnosti.xls
0P0i
Koje su vjerojatnosti pojavljivanja binarnih simbola na izlazu kanala? Primjena formule totalne vjerojatnosti: P1i = P1u P11 + P0u P01 = 0,40,8+0,60,2= 0,32+0,12= 0,44 P0i = P0u P00 + P1u P10 = 0,60,8+0,40,2= 0,48+0,08= 0,56 = 1,0014.5.2009 KSM_K_2009 6
Kako razmilja dekoder u prijamniku? Primljeno je 1, to je odaslano? 1 moe doi od 1 ali i od 0. Za to se odluiti? Za ono to je vjerojatnije! Koja je vjerojatnost P1u/1i da je odaslan simbol 1, ako je primljen simbol 1? P1u/1i Bayesova formula: P1i/1u P1u P1i P1u1i = P1uP1i/1u = P1iP1u/1i P1u/1i = P1uP1i/1u / P1i = 0,40,8 / 0,44 = 0,32 / 0,44 = 0,727 Koja je vjerojatnost P0u/1i da je odaslan simbol 0, ako je primljen simbol 1? P0u1i = P0uP1i/0u = P1iP0u/1i P0u/1i = P0uP1i/0u / P1i = 0,60,2 / 0,44 = 0,12 / 0,44 = 0,273 = 1,00014.5.2009 KSM_K_2009 7
Koja je vjerojatnost P1u/0i da je odaslan simbol 1, ako je primljen simbol 0? Bayesova formula: P1u0i = P1uP0i/1u = P0iP1u/0i P1u/0i = P1uP0i/1u / P0i = 0,40,2 / 0,56 = 0,08 / 0,56 = 0,143 Koja je vjerojatnost P0u/0i da je odaslan simbol 0, ako je primljen simbol 0? P0u0i = P0uP0i/0u = P0iP0u/0i P0u/0i = P0uP0i/0u / P0i = 0,60,8 / 0,56 = 0,48 / 0,56 = 0,857 = 1,00014.5.2009 KSM_K_2009 8
Moe li se ispravno prenijeti informacija i kada primljena poruka sadri pogreke? Sigurnosno kodiranje (FEC - Forward Error Control) Provjera ispravnosti i ponavljanje poruke (ARQ). Uvodi se prividna suvinost, redundancije u kd. Mjera redundancije r definirana je izrazom: nr - ld M r = ld M14.5.2009
M broj poruka koje treba kodirati nr duljina proirene (redundantne) kodne rijei.KSM_K_2009 9
Odluimo li, da sa po 3 binarna elementa kodiramo ukupno etiri razliite vijesti (L=2, nr=3, M=4, ld M=2), redundancija je: r = (3 - 2)/2 = 0,5 = 50% Mogue je formirati 23=8 kodnih rijei duljine nr=3: 000, 001, 010, 011, 100, 101, 110 i 111. Za komuniciranje odaberemo etiri, npr. 000, 001, 010, 011, 100, 101, 110 i 111. Dekoder zna da se ne koriste sve mogue kodne rijei. Pojava nedoputene sekvence na ulazu dekodera znai da je nastupila pogreka u prijenosu poruke.14.5.2009 KSM_K_2009 10
Primjer: etiri stanja sustava, etiri poruke, duljina rijei 3, binarni kod, mogua je jednostruka pogreka. A B C D 000 010 100 110 100,010,001 110,000,011 000,110,101 010,100,111 Bolje je odabrati: 000 100,010,001 011 111,001,010 101 001,111,100 110 010,100,111
000, 001, 010, 011, 100, 101, 110 i 111. Kako konstruirati kd koji najbolje ukazuje na pogreku? Postoji li pogreka? Gdje se nalazi pogreka?14.5.2009 KSM_K_2009 11
Distanca - broj binarnih elemenata u kojima se meusobno razlikuju kodne rijei. A 000 0 1 1 1 B 001 1 0 2 2 A B C D14.5.2009
A B C D
000 001 010 100
C 010 1 2 0 2
D 100 1 2 2 0 000 011 101 110
A 000 0 2 2 2
B 011 2 0 2 2
C 101 2 2 0 2
D 110 2 2 2 012
KSM_K_2009
Geometrijski prikaz binarnog koda duljine n=3 Dva mogua naina kodiranja etiri elementarne vijesti s tri binarna simbola r=0,5=50%
A.
B.
14.5.2009
KSM_K_2009
13
U sluaju B, mogue je otkriti (detektirati) jednostruku pogreku, ali ne i pravu poruku; vie je naina kako moe nastati zabranjena sekvenca: 000 100,010,001 011 111,001,010 101 001,111,100 110 010,100,111 dij=2 Distanca je dovoljna za pouzdano otkrivanje jednostruke pogreke. Moe li se odmah pogreka ispraviti?14.5.2009 KSM_K_2009 14
Tri binarna elementa moemo iskoristiti za kodiranje samo dvije elementarne vijesti. r = (3-ld2)/ld2 = (3-1)/1 = 2. Odaberemo dvije kodne rijei s najveom meusobnom udaljenou, dij = 3, npr.: 001 i 110 (ili 100, 011...) Primljena sekvenca s jednostrukom pogrekom uspjeno prenosi informaciju! Pogreku je mogue ispraviti.14.5.2009 KSM_K_2009 15
Distanca ne mora biti jednaka za sve parove kodnih rijei. Za snagu koda - mogunost otkrivanja i korekcije pogreaka, bitna je najmanja (minimalna) distanca dmin. Minimalna vrijednost distance dmin 1 2 3 4 514.5.2009
Mogunost otkrivanja ispravljanja 0 0 1 0 2 1 3 1 4 2KSM_K_2009 16
5.6.1. Sigurnosno kodiranje - Hammingov kd Binarni kd s rijeima duljine 4 binarna elementa, n = 4. Mogue je kodirati M = 24 = 16 rijei. Neka je na ulazu kodera npr.: . . . 1 1 0 1 0 0 1 0 0 1 1 0 0 0 0 1. . . I II III IV blokovi (kodne rijei) Uvodimo redundanciju u kd tako da na n informacijskih bita dodajemo k kontrolnih (zatitnih, paritetnih) bita uz uvjet da je : 2k n + k + 1, ili k ld(n + k + 1)14.5.2009 KSM_K_2009 17
Sekvencom od k kontrolnih binarnih elemenata, mogue je numerirati sve binarne elemente u redundantnoj sekvenci duljine (n + k) binarnih elemenata. Za Hammingov kd, je k = 3, n + k=7, a redundancija je r = (7 - 4) / 4 = 0,75. 0 1 2 3 4 5 6 7 ..... lokacija pogreke k1 k2 k314.5.2009
01010101 00110011 00001111
1, 3, 5, 7 2, 3, 6, 7 4, 5, 6, 7KSM_K_2009
Kontrolni elementi Hammingova koda H(4,3)18
Kontrolne i informacijske bite razmjetamo tako, da u svakoj kombinaciji otkrivanja jednostruke pogreke imamo jedan kontrolni i tri informacijska bita. Kontrolni biti k su na pozicijama 1., 2. i 4., dok su informacijski binarni elementi na preostalim, slobodnim lokacijama sekvencije od 7 bita: 3., 5., 6. i 7. U 7-mo bitovnoj sekvenci Hammingova koda, redoslijed je slijedei: k1, k2, m1, k3, m2, m3, m4Neka je blok poruke: 1 0 014.5.2009
1 0 1
0 1 1
1 0 019
KSM_K_2009
1 k1 I. informacijski blok k1=m1 +2 m2 +2 m4 k2=m1 +2 m3 +2 m4 k3=m2 +2 m3 +2 m4 Zatieni I. blok II. informacijski blok k1=m1 +2 m2 +2 m4 k2=m1 +2 m3 +2 m4 k3=m2 +2 m3 +2 m4 Zatieni II. blok III. informacijski blok k1=m1 +2 m2 +2 m4 k2=m1 +2 m3 +2 m4 k3=m2 +2 m3 +2 m4 Zatieni III. blok IV. informacijski blok k1=m1 +2 m2 +2 m4 k2=m1 +2 m3 +2 m4 k3=m2 +2 m3 +2 m4 Zatieni IV. blok14.5.2009
2 k2
3 m1 1
4 k3
5 m2 1
6 m3 0
7 m4 1
1 0 1 0 1 0 1 1 1 1 1 1 1 0 1 1 0 0 120
0
1 0
0 0
1 0
0 1
1 0
1
0 0
1 1
0 1
1 1
0 0
1
0 0
0 0
1 0
1 0
0 1
KSM_K_2009
Dekodiranje Hammingova koda: 1 1 2 0 3 1 4 0 5 1 6 0 7 1
1, 3, 5, 7 1 1 1 1 = 0 2, 3, 6, 7 0 1 0 1 = 0 4, 5, 6, 7 0 1 0 1 = 0 Lokacija pogreke je 000 = 0, to znai da pogreke u ovome segmentu nema. Poruka je : 1 1 0 114.5.2009 KSM_K_2009 21
1 0
2 1
3 0
4 1
5 1
6 1
7 0
1, 3, 5, 7 0 0 1 0 = 1 2, 3, 6, 7 1 0 1 0 = 0 4, 5, 6, 7 1 1 1 0 = 1 Lokacija pogreke je 101 = 5, to znai pogrean je 5. binarni element. Poruka je: 0 0 1 0
14.5.2009
KSM_K_2009
22
1 0
2 1
3 0
4 0
5 1
6 1
7 0
1, 3, 5, 7 0 0 1 0 = 1 2, 3, 6, 7 1 0 1 0 = 0 4, 5, 6, 7 0 1 1 0 = 0 Lokacija pogreke je 001 = 1, to znai pogrean je 1. binarni element. Poruka je: 0 1 1 0
14.5.2009
KSM_K_2009
23
5.6.2. Paritetni bit i paritetne sekvence - CRC Za otkrivanje jednostruke pogreke u binarnoj sekvenci, dovoljna je minimalna distanca dmin=2, to je mogue postii dodavanjem jednog, paritetnog binarnog elementa na kraj sekvence.poruka a b c d e f g h14.5.2009
kodna sekvenca 000 001 010 011 100 101 110 111
paritetni bit 0 1 1 0 1 0 0 1
proirena sekvenca 0000 0011 0101 0110 1001 1010 1100 111124
KSM_K_2009
U prethodnom primjeru, minimalna distanca bilo koje dvije proirene sekvence je dij=2 Za due sekvence, paritetni bit izraunava se zbrajanjem po modulu dva svih binarnih elemenata: d 011=0 111 0=1 greka! Provjera pariteta dati e 1 ako je u prijenosu nastupila jednostruka pogreke.
CRCPoruka14.5.2009
1000111 (ili dio poruke: okvir - frame)KSM_K_2009 25
Kontrolna sekvenca P5(x) = 110101
Raunanje CRC sekvence: 100011100000 / 110101=1110011 Kolinik, nije bitan. 110101 101101 110101 110000 110101 r = (12-7)/7 = 5/7 101000 110101 111010 110101 000000001111 FCS/CRC (Frame Check Sequence/ 100011100000 Cyclic Redundancy Check) 100011101111 Sekvenca koja se otprema linijom.14.5.2009 KSM_K_2009 26
Provjera ispravnosti prijema: 100011101111 / 110101=1110011 110101 101101 110101 110000 110101 101111 110101 110101 110101 00000000000014.5.2009
Pogreke nema, prijenos ispravan!KSM_K_2009 27
Provjera ispravnosti prijema: 100011001111 / 110101=1110011 110101 101100 110101 110010 110101 111111 110101 010101 110101 000000100000 Pogreka! Trai se ponavljanje poruke!14.5.2009 KSM_K_2009 28
Provjera ispravnosti prijema: 101011100011 / 110101=110111 110101 111101 ITU standard 16 bita: 110101 10001000000100001 100000 (P16=x16+x12+x5+1) 110101 101010 110101 111111 110101 10101 000000010101 Pogreka! Trai se ponavljanje poruke!14.5.2009 KSM_K_2009 29