mengesan dan membetulkan kesilapan

61
MENGESAN DAN MEMBETULKAN KESILAPAN ASAS RANGKAIAN DAN DATA KOMUNIKASI: KETUJUH EDITION

Upload: ibusrikandi

Post on 18-Dec-2014

240 views

Category:

Education


2 download

DESCRIPTION

Mengesan dan Membetulkan Kesilapan hamming code

TRANSCRIPT

Page 1: Mengesan dan membetulkan kesilapan

MENGESAN DAN MEMBETULKAN KESILAPAN

ASAS RANGKAIAN DAN DATA KOMUNIKASI :KETUJUH EDITION

Page 2: Mengesan dan membetulkan kesilapan

Bunyi dan Kesilapan Bunyi Putih Bunyi Impulse crosstalk echo ketar wartawan Pencegahan Ralat Pengesanan ralat Pemeriksaan pariti Checksum aritmetik Cyclic Redundancy Checksum Kawalan Ralat Suppose The Frame / Paket Kembali Mesej A Berhenti-dan-Tunggu Kawalan Ralat Gelongsor Tetingkap Kawalan Ralat Membetulkan ralat ini Pengesanan ralat dalam Tindakan Rujukan

Page 3: Mengesan dan membetulkan kesilapan

Kenal pasti jenis bunyi biasa ditemui dalam rangkaian komputer

Nyatakan teknik ralat pencegahan yang berbeza, dan boleh memohon teknik ralat pencegahan kepada jenis bunyi

Bandingkan teknik pengesanan ralat yang berbeza dari segi kecekapan dan keberkesanan

Lakukan pariti mudah dan pengiraan persamaan membujur, dan menghitung kekuatan dan kelemahan mereka

Page 4: Mengesan dan membetulkan kesilapan

Cite kelebihan checksum aritmetikCite kelebihan kitaran lebihan checksum, dan

menentukan apa jenis kesilapan kitaran lebihan checksum akan mengesan

Membezakan antara bentuk asas kawalan ralat, dan menggambarkan keadaan di mana masing-masing boleh digunakan

Ikut contoh kod Hamming diri membetulkan

Page 5: Mengesan dan membetulkan kesilapan

Bunyi sentiasa hadirJika satu garis komunikasi mengalami bunyi

terlalu banyak, isyarat akan hilang atau rosakSistem komunikasi perlu menyemak

kesilapan penghantaranApabila kesilapan dikesan, sistem boleh

melaksanakan beberapa tindakanSesetengah sistem tidak melaksanakan

kawalan ralat, tetapi hanya membiarkan data dalam kesesatan yang dibuang

Page 6: Mengesan dan membetulkan kesilapan

Bunyi Putih

Juga dikenali sebagai haba atau bunyi Gaussian

Malar dan boleh dikurangkanJika bunyi putih terlalu kuat, ia benar-benar

boleh mengganggu isyarat

Page 7: Mengesan dan membetulkan kesilapan
Page 8: Mengesan dan membetulkan kesilapan

Bunyi Impulse

Salah satu bentuk yang paling mengganggu bunyi

Pancang rawak kuasa yang boleh memusnahkan satu atau lebih bit maklumat

Sukar untuk menghapuskan dari isyarat analog kerana ia boleh menjadi sukar untuk membezakan daripada isyarat asal

Bunyi Impulse boleh merosakkan lebih bit jika bit adalah lebih dekat bersama-sama (dihantar pada kadar yang lebih cepat)

Page 9: Mengesan dan membetulkan kesilapan
Page 10: Mengesan dan membetulkan kesilapan
Page 11: Mengesan dan membetulkan kesilapan

Crosstalk

Gandingan yang tidak diingini di antara dua laluan isyarat yang berbeza

Sebagai contoh, mendengar perbualan lain semasa bercakap di telefon

Malar dan boleh dikurangkan dengan langkah-langkah yang betul

Page 12: Mengesan dan membetulkan kesilapan
Page 13: Mengesan dan membetulkan kesilapan

Maklum balas yang mencerminkan isyarat dihantar sebagai isyarat bergerak melalui media

Selalunya berlaku pada kabel sepaksiJika echo cukup buruk, ia boleh mengganggu

isyarat asalMalar, dan boleh dikurangkan dengan ketara

Page 14: Mengesan dan membetulkan kesilapan
Page 15: Mengesan dan membetulkan kesilapan

ketar

Hasil daripada penyelewengan masa kecil semasa penghantaran isyarat digital

Berlaku apabila isyarat digital diulangi berulang

Jika cukup serius, ketar kuasa sistem untuk melambatkan penghantaran mereka

Langkah-langkah yang boleh diambil untuk mengurangkan ketar

Page 16: Mengesan dan membetulkan kesilapan
Page 17: Mengesan dan membetulkan kesilapan

kelewatan Penyelewengan

Berlaku kerana halaju perambatan isyarat melalui media berbeza dengan kekerapan isyarat

Boleh dikurangkan

Page 18: Mengesan dan membetulkan kesilapan

wartawan

Kerugian berterusan kekuatan isyarat kerana ia bergerak melalui medium

Page 19: Mengesan dan membetulkan kesilapan

Pencegahan Ralat

Untuk mengelakkan kesilapan daripada berlaku, beberapa teknik boleh digunakan:

Melindungi betul kabel untuk mengurangkan gangguan

Line dingin, telefon, atau persamaanMenggantikan media lebih tua dan peralatan

dengan yang baru, komponen mungkin digitalPenggunaan yang betul pengulang dan

amplifier digital analogPerhatikan kapasiti dinyatakan media

Page 20: Mengesan dan membetulkan kesilapan
Page 21: Mengesan dan membetulkan kesilapan

Pengesanan ralat

Walaupun teknik-teknik pencegahan yang terbaik, kesilapan masih boleh berlaku

Untuk mengesan kesilapan, sesuatu yang lebih perlu ditambah kepada data / isyarat

Tambahan ini merupakan kod pengesanan ralat

Tiga teknik asas untuk mengesan ralat: semakan pariti, checksum aritmetik, dan kitaran lebihan checksum

Page 22: Mengesan dan membetulkan kesilapan

Pemeriksaan pariti

pariti mudahJika melaksanakan pariti genap, tambah

sedikit persamaan seperti yang nombor genap 1s dikekalkan

Jika melaksanakan pariti ganjil, tambah sedikit persamaan seperti yang nombor ganjil 1s dikekalkan

Sebagai contoh, menghantar 1001010 menggunakan pariti genap

Sebagai contoh, menghantar 1001011 menggunakan pariti genap

Page 23: Mengesan dan membetulkan kesilapan

Persamaan mudah (sambungan)Apakah yang akan berlaku jika watak

10010101 dihantar dan dua yang pertama 0-an sengaja menjadi dua 1s?

Oleh itu, ciri-ciri yang berikut diterima: 11110101

Akan ada satu kesilapan pariti?Masalah: pariti Mudah hanya mengesan

nombor ganjil bit dalam kesesatan

Page 24: Mengesan dan membetulkan kesilapan

pariti membujurMenambah sedikit kuasa beli meningkat

kepada setiap watak kemudian menambah deretan bit pariti selepas blok watak

Barisan bit pariti sebenarnya sedikit persamaan bagi setiap "ruangan" watak-watak

Barisan bit pariti ditambah bit pariti ruang menambah sejumlah besar lebihan kepada blok watak-watak

Page 25: Mengesan dan membetulkan kesilapan
Page 26: Mengesan dan membetulkan kesilapan
Page 27: Mengesan dan membetulkan kesilapan

Kedua-dua persamaan mudah dan pariti membujur tidak menangkap semua kesilapan

Pariti mudah hanya menangkap nombor ganjil kesilapan sedikit

Pariti membujur adalah lebih baik menangkap kesilapan tetapi memerlukan bit cek terlalu banyak ditambah kepada blok data

Kita perlu lebih baik ralat kaedah pengesanan

Bagaimana pula checksum aritmetik?

Page 28: Mengesan dan membetulkan kesilapan

Checksum aritmetik

Digunakan dalam TCP dan IP di InternetWatak dihantar ditukar kepada bentuk angka

dan merumuskanJumlah diletakkan dalam bentuk tertentu

pada akhir penghantaran

Page 29: Mengesan dan membetulkan kesilapan

Ringkas contoh: 56 72 34 48 210

Kemudian membawa 2 ke bawah dan menambah kepada kedudukan yang paling kanan 10

2 12

Page 30: Mengesan dan membetulkan kesilapan

Penerima melakukan penukaran sama dan menjumlahkan dan membandingkan jumlah baru dengan jumlah yang dihantar

TCP dan proses IP sedikit lebih kompleks tetapi idea adalah sama

Tetapi checksum aritmetik boleh membiarkan kesilapan slip melalui. Adakah terdapat sesuatu yang lebih kuat lagi?

Page 31: Mengesan dan membetulkan kesilapan

Cyclic Redundancy Checksum

CRC kesilapan kaedah pengesanan merawat paket data untuk dihantar sebagai polinomial besar

Pemancar mengambil polinomial mesej dan menggunakan aritmetik polinomial, dibahagikan dengan polinomial menjana diberikan

Quotient dibuang tetapi selebihnya adalah "melekat" kepada akhir mesej

Page 32: Mengesan dan membetulkan kesilapan

Mesej (dengan bakinya) dihantar kepada penerima

Penerima membahagikan mesej dan bakinya oleh polinomial penjanaan yang sama

Jika baki tidak sama dengan sifar keputusan, terdapat ralat semasa penghantaran

Jika baki sifar keputusan, tidak ada kesilapan semasa penghantaran

Page 33: Mengesan dan membetulkan kesilapan

Some standard generating polynomials:CRC-12: x12 + x11 + x3 + x2 + x + 1 CRC-16: x16 + x15 + x2 + 1CRC-CCITT: x16 + x15 + x5 + 1 CRC-32: x32 + x26 + x23 + x22 + x16 + x12 +

x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1ATM CRC: x8 + x2 + x + 1

Page 34: Mengesan dan membetulkan kesilapan
Page 35: Mengesan dan membetulkan kesilapan

Kawalan Ralat

Apabila kesilapan dikesan, apa yang penerima akan lakukan?

Melakukan apa-apa (hanya melontarkan bingkai atau paket)

Kembali mesej ralat untuk pemancarBetulkan kesilapan tanpa bantuan lagi dari

pemancar

Page 36: Mengesan dan membetulkan kesilapan

Adakah Tiada apa-apa (Baling Kerangka / paket)

Seolah-olah seperti cara yang aneh untuk mengawal kesilapan tetapi beberapa protokol yang lebih rendah lapisan seperti frame relay melakukan ini jenis kawalan ralat

Sebagai contoh, jika frame relay mengesan ralat, ia hanya lambungan bingkai

Tiada mesej dikembalikanFrame relay menganggap protokol yang lebih

tinggi (seperti TCP / IP) akan mengesan bingkai dilambung dan meminta penghantaran semula

Page 37: Mengesan dan membetulkan kesilapan

Kembali Mesej A

Apabila kesilapan dikesan, mesej ralat akan dikembalikan kepada penghantar

Dua bentuk asas:Berhenti-dan-tunggu kawalan ralatGelongsor tingkap kawalan ralat

Page 38: Mengesan dan membetulkan kesilapan

Berhenti-dan-Tunggu Kawalan Ralat

Berhenti-dan-tunggu adalah yang paling mudah daripada protokol kawalan ralat

Penghantar A menghantar bingkai kemudian berhenti dan menunggu pengakuan

Jika pengakuan positif (ACK) diterima, bingkai seterusnya dihantar

Jika pengakuan negatif (NAK) diterima, rangka yang sama dihantar lagi

Page 39: Mengesan dan membetulkan kesilapan
Page 40: Mengesan dan membetulkan kesilapan

Gelongsor Tetingkap Kawalan Ralat

Teknik-teknik ini menganggap bahawa pelbagai bingkai dalam penghantaran pada satu masa

Satu protokol tingkap gelongsor membolehkan penghantar untuk menghantar beberapa paket data pada satu-satu masa sebelum menerima apa-apa penghargaan

Bergantung kepada saiz tingkapApabila penerima tidak mengakui

penerimaan, ACK kembali mengandungi bilangan kerangka yang dijangka akan datang

Page 41: Mengesan dan membetulkan kesilapan
Page 42: Mengesan dan membetulkan kesilapan

Protokol tingkap gelongsor lebih tua bernombor setiap bingkai atau paket yang telah dihantar

Lebih moden gelongsor tingkap protokol bilangan setiap bait dalam tempoh satu

Satu contoh di mana paket yang bernombor, diikuti dengan contoh di mana bait yang bernombor:

Page 43: Mengesan dan membetulkan kesilapan
Page 44: Mengesan dan membetulkan kesilapan
Page 45: Mengesan dan membetulkan kesilapan

Notis bahawa ACK tidak selalu dihantar selepas setiap frame diterima

Ia adalah lebih cekap untuk menunggu beberapa bingkai yang diterima sebelum kembali satu ACK

Berapa lama anda perlu menunggu sehingga anda kembali satu ACK?

Page 46: Mengesan dan membetulkan kesilapan

Menggunakan TCP / IP, terdapat beberapa peraturan asas mengenai ACKs:

Peraturan 1: Jika penerima sahaja menerima data dan mahu menghantar data sendiri, piggyback ACK yang bersama-sama dengan data

Peraturan 2: Jika penerima tidak mempunyai data untuk kembali dan baru sahaja ACKed paket lepas, penerima menunggu 500 ms untuk paket lain

Jika semasa menunggu, paket lain tiba, menghantar ACK serta-merta

Kaedah 3: Jika penerima tidak mempunyai data untuk kembali dan baru sahaja ACKed paket lepas, penerima menunggu 500 ms

Tiada paket, hantar ACK

Page 47: Mengesan dan membetulkan kesilapan
Page 48: Mengesan dan membetulkan kesilapan

Apa yang berlaku apabila satu paket yang hilang?

Seperti yang ditunjukkan dalam slaid seterusnya, jika bingkai hilang, kerangka berikut akan "keluar dari urutan"

Penerima akan mengadakan daripada bait urutan dalam buffer dan meminta pengirim untuk hantar semula frame yang hilang

Page 49: Mengesan dan membetulkan kesilapan
Page 50: Mengesan dan membetulkan kesilapan

Apa yang berlaku apabila ACK hilang?Seperti yang ditunjukkan dalam slaid

seterusnya, jika ACK hilang, penghantar akan menunggu ACK tiba dan akhirnya masa keluar

Apabila masa keluar berlaku, penghantar akan menghantar semula frame yang lalu

Page 51: Mengesan dan membetulkan kesilapan
Page 52: Mengesan dan membetulkan kesilapan

Membetulkan Ralat

Bagi penerima untuk membetulkan kesilapan dengan tidak ada bantuan lagi dari pemancar memerlukan sejumlah besar maklumat yang diperlukan untuk mengiringi data asal

Ini maklumat berlebihan membolehkan penerima untuk menentukan kesilapan dan membuat pembetulan

Ini jenis kawalan ralat sering dipanggil pembetulan ralat ke hadapan dan melibatkan Kod Hamming dipanggil Kod

Page 53: Mengesan dan membetulkan kesilapan

Membetulkan Ralat

Hamming Kod menambah bit cek tambahan untuk watak

Ini bit cek melakukan pemeriksaan pariti mengenai pelbagai bit

Contoh: Satu boleh mewujudkan kod Hamming di mana 4 bit cek ditambah kepada aksara 8-bit

Kami boleh nombor bit cek C8, c4, c2 dan c1Kami akan bilangan bit data B12, B11, B10, B9,

B7, B6, b5, dan b3Meletakkan bit dalam perintah yang berikut: B12,

B11, B10, B9, C8, B7, B6, b5, c4, b3, c2, c1

Page 54: Mengesan dan membetulkan kesilapan

Contoh (sambungan):C8 akan melakukan pemeriksaan pada pariti bit

B12, B11, B10, dan B9c4 akan melakukan pemeriksaan pada pariti bit

B12, B7, B6 dan b5c2 akan melakukan pemeriksaan pada pariti bit

B11, B10, B7, B6 dan b3c1 akan melakukan pemeriksaan pada pariti bit

B11, B9, B7, b5, dan b3Slaid seterusnya menunjukkan bit cek dan nilai-

nilai mereka

Page 55: Mengesan dan membetulkan kesilapan
Page 56: Mengesan dan membetulkan kesilapan

Penghantar akan mengambil aksara 8-bit dan menjana 4 bit cek seperti yang dinyatakan

4 bit cek kemudian ditambah kepada 8 bit data dalam urutan seperti yang ditunjukkan dan kemudian dihantar

Penerima akan melaksanakan 4 cek pariti menggunakan 4 bit cek

Jika tiada bit dibalik semasa penghantaran, maka tidak ada kesilapan pariti

Apakah yang akan berlaku jika salah satu bit dibalik semasa penghantaran?

Page 57: Mengesan dan membetulkan kesilapan

Sebagai contoh, bagaimana jika sedikit B9 lambungan?

C8 memeriksa bit cek bit B12, B11, B10, B9 dan C8 (01000)

Ini akan menyebabkan kesilapan paritiSedikit cek c4 memeriksa bit B12, B7, B6, b5 dan c4

(00101)Ini tidak akan menyebabkan kesilapan pariti

(walaupun beberapa 1s)The c2 bit cek cek bit B11, B10, B7, B6, b3 dan c2

(100111)Ini tidak akan menyebabkan kesilapan pariti

Page 58: Mengesan dan membetulkan kesilapan

Pengesanan Ralat Dalam Tindakan

FEC digunakan dalam penghantaran isyarat radio, seperti yang digunakan dalam transmisi televisyen digital (Reed-Solomon dan trellis encoding) dan 4D-PAM5 (Viterbi dan trellis pengekodan)

Beberapa FEC adalah berdasarkan Kod Hamming

Page 59: Mengesan dan membetulkan kesilapan

Bunyi sentiasa hadir dalam rangkaian komputer, dan jika tahap bunyi bising yang terlalu tinggi, kesilapan akan diperkenalkan semasa penghantaran data

Jenis-jenis bunyi termasuk bunyi putih, bunyi gerak hati, crosstalk, echo, ketar, dan wartawan

Antara teknik-teknik untuk mengurangkan bunyi adalah wajar melindungi kabel, telefon talian dingin atau persamaan, dengan menggunakan peralatan digital moden, dengan menggunakan pengulang digital dan penguat analog, dan memerhatikan kapasiti dinyatakan media

Page 60: Mengesan dan membetulkan kesilapan

Tiga bentuk asas pengesanan ralat pariti, checksum aritmetik, dan kitaran lebihan checksum

Cyclic lebihan checksum adalah unggul skim kesilapan pengesanan dengan hampir 100 peratus keupayaan mengiktiraf data paket rosak

Apabila kesilapan telah dikesan, terdapat tiga pilihan yang mungkin: berbuat apa-apa, kembali mesej ralat, dan membetulkan kesilapan

Page 61: Mengesan dan membetulkan kesilapan

Protokol berhenti-dan-tunggu membenarkan hanya satu paket yang akan dihantar pada satu masa

Gelongsor tingkap protokol membolehkan beberapa paket yang akan dihantar pada satu-satu masa

Pembetulan ralat kemungkinan jika data yang dihantar mengandungi maklumat yang cukup diperlukan supaya penerima betul boleh membetulkan kesilapan itu tanpa meminta penghantar untuk maklumat tambahan