DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses...

27
KOMUNIKASI DATA DETEKSI DAN KOREKSI KESALAHAN Oleh: Fahrudin Mukti Wibowo, S.Kom., M.Eng

Transcript of DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses...

Page 1: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

KOMUNIKASI DATA

DETEKSI DAN KOREKSI KESALAHAN

Oleh:

Fahrudin Mukti Wibowo, S.Kom., M.Eng

Page 2: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan
Page 3: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Jenis Error• Single bit error

• Burst error

Page 4: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Redudancy

• mengirim sejumlah bit tambahan yang disertakan bersamaan dengan bit data yang dikirim

• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan proses untuk mendeteksikesalahan

Page 5: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan
Page 6: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Deteksi Error

Page 7: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

1. Parity Check / Bit Paritas

• bit tambahan yang digunakan untuk mendeteksi terjadinya error dengan hanya menambahkan 1 bit paritas pada data yang akan ditransmisikan

• jika terdapat k-bit dataword maka akan diubah menjadi n-bit codeword, (n = k+1)

ASCII 7 bit

P

Bit Paritas

Page 8: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

aturan bit paritas

• Even Parity (paritas genap)- Bit paritas bernilai 1, bila jumlah bit 1 adalah ganjil- Bit paritas bernilai 0, bila jumlah bit 1 adalah genap contoh: 10101010 (data) 10101010 0

• Odd Parity (paritas ganjil)- Bit paritas bernilai 1, bila jumlah bit 1 adalah genap- Bit paritas bernilai 0, bila jumlah bit 1 adalah ganjilcontoh: 10101010 (data) 10101010 1

Page 9: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Contoh even parity

Page 10: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Keterbatasan:

• hanya mampu mendeteksi (bukanmengoreksi kesalahan), karena tidakdapat menunjukkan posisi bit yang salah

• hanya mampu mendeteksi satu atausejumlah ganjil kesalahan. Bila ada duakesalahan akan dianggap benar

Page 11: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

2. Kode Hamming

• Mekanisme pendeteksian kesalahan denganmenambahkan beberapa buah check bit data paritas (C) ke dalam data word (D)

• D = 2n bit C = (n+1) bit

• Data yang disimpan memiliki panjang D + C

• C disisipkan pada D dengan rumus perhitungan posisi Ci= 2(i-1)

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D7

1 2 3 4 5 6 7 8 9 10 11 12

D8

Page 12: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Nilai check bit

• Nilai check bit adalah penjumlahan X-OR :

C1 = D1 D2 D4 D5 D7 (lompat 1) P1

C2 = D1 D3 D4 D6 D7 (lompat 2) P2

C3 = D2 D3 D4 D8 (lompat 4) P4

C4 = D5 D6 D7 D8 (lompat 8) P8

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D71 2 3 4 5 6 7 8 9 10 11 12

D8

Page 13: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

data : 0011 0010

C1 = D1 D2 D4 D5 D7

0 0 1 0 1 = 0 (P1)

C2 = D1 D3 D4 D6 D7

0 1 1 0 1 = 1 (P2)

C3 = D2 D3 D4 D8

0 1 1 0 = 0 (P4)

C4 = D5 D6 D7 D8

0 0 1 0 = 1 (P8)

Data dikirim : 010001110010

C1 C2 0 C3 0 1 1 C4 0 0 1

1 2 3 4 5 6 7 8 9 10 11 12

0

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D7

1 2 3 4 5 6 7 8 9 10 11 12

D8

Page 14: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Data dikirim : 010001110010Data diterima : 010011110010

C1 = D1 D2 D4 D5 D70 1 1 0 1 = 1 seharusnya 0

C2 = D1 D3 D4 D6 D70 1 1 0 1 = 1

C3 = D2 D3 D4 D8 1 1 1 0 = 1 seharusnya 0

C4 = D5 D6 D7 D8 0 0 1 0 = 1

Karena kesalahan terjadi di P1 dan P4, maka 20+22 = 5. Maka kesalahan terjadi di bit ke-5, maka di invers.

C1 C2 0 C3 1 1 1 C4 0 0 1

1 2 3 4 5 6 7 8 9 10 11 12

0

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D7

1 2 3 4 5 6 7 8 9 10 11 12

D8

Page 15: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Diskusi kelompok

• Kelebihan dan kekurangan kode hamming

Page 16: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

3. Cyclic Redudancy Checking

• Pendeteksian kesalahan dengan cara membaginilai bilangan binari dari data dengan suatunilai bilangan lainnya (constanta/pattern).

• Pengecekkan dilakukan dengan mencocokkansisa bagi (remainder)

• Teknik CRC : modulo 2 arithmetic danpolynomials

Page 17: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

1) Aritmatika Modulo – 2

• Merupakan operasi X-OR • Menggunakan penjumlahan binary tanpa carry

pada proses penjumlahan dan tanpa borrow pada proses pengurangan

Page 18: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Contoh :data 1001 M = 4 bitconstant 1011 r = 4 bit

Sisi Pengirim - Tambahkan data yang dikirim dengan r-1 bit 0

M 1001 000

- Bagi M (1001000) dengan r (1011), maka akan didapathasil bagi (quotient) dan sisa pembagian (remainder)

- Tambahkan remainder ke data asal (M asal) menggantikan data tambahan r-1 bit 0 FCS

1001 000 1001 110

Page 19: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Sisi Penerima:

Frame yang diterima (1001 110) dibagi dengan r,

jika tidak ada remainder maka dianggap tidak ada error.

Page 20: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

2) Polynomial

• Pola bit 0 dan 1 dapat direpresentasikan sebagai polynomial dengan koefisien 0 atau 1

• Koefisien merupakan nilai dari sebuah bit

• Pangkat merupakan posisi dari bit

Page 21: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan
Page 22: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Operasi polynomial

• Proses perkalian suku polynomial, dengan menjumlahkan pangkat dari setiap suku. contoh: X4 * X3 = X7

• Proses pembagian polynomial, dengan mengurangi pangkat suku pertamadengan pangkat suku ke-2. contoh: X5 : X3 = X(5-3)

= X2

Proses pembagian polynomial konsepnya sama dengan pembagian biner

Page 23: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Contoh :message M = 1001 (4 bit)constant r = 1011 (4 bit)

Sisi Pengirim

- Tambahkan data yang dikirim dengan r-1 bit 0

M menjadi 1001 000

- Bagi M dengan r (dalam format polynomial)M = 1001 000

= X6 + X3

r = 1011= X3 + X + 1

Page 24: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Tambahkan remainder ke data asal (M asal)

X6 + X3 + X2 + X

Page 25: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Sisi Penerima:

Kode polynomial yang diterima

(X6 + X3 + X2 + X)

dibagi dengan r,

jika tidak ada remainder maka dianggap tidak ada error.

Page 26: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Diskusi kelompok

• Kelebihan dan kekurangan CRC

Page 27: DETEKSI DAN KOREKSI KESALAHANfahrudin.dosen.ittelkom-pwt.ac.id/wp-content/uploads/...• Proses melakukan perbaikan atau koreksi terhadap error yang terjadi lebih sulit dibandingkan

Thank You