Anda di halaman 1dari 8

DELIMA PALWA SARI

1051 15 00000 005

TEKNIK PENDETEKSIAN KESALAHAN


Pendeteksian dan pembetulan kesalahan sering digunakan pada komunikasi data untuk
mengatasi adanya korupsi dan atau informasi yang hilang dari isyarat data yang datang pada sisi
penerima. Dalam pendeteksian kesalahan yang paling sederhana, bit paritas ditambahkan pada akhir
setiap karakter ASCII 8 bit.
Bit paritas menggunakan cacah 1 untuk setiap karakter yang bitnya berjumlah ganjil, disebut
sebagai paritas ganjil contoh karakter 1010001, sedang bit paritas yang menggunakan cacah 0 untuk
setiap karakter yang bitnya berjumlah genap. Satu Byte (karakter) terdiri dari 8 bit, setiap bit
mempunyai nilai 0 atau 1 tergantung dari standar karakternya. Bit paritas membuat penerima mampu
mendeteksi, adanya kesalahan tunggal pada setiap karakter yang dikirimkan. Pada sistem yang
sangat sederhana, terminal pengirim harus memberitahu apabila ada kesalahan pada karakter yang
diterima oleh terminal penerima. Untuk memungkinkan hal itu, data dipecah menjadi sejumlah blok
dan setiap blok mempunyai beberapa karakter pemeriksa yang ditambahkan. Penerima akan
mengkomputasi ulang karakter-karakter pemeriksa ini untuk menentukan apakah ada kesalahan atau
tidak. Jika tidak ada kesalahan, penerima akan mengirimkan karakter ACK ke terminal pengirim, dan
blok berikutnya akan dikirim oleh pengirim. Jika penerima mendeteksi adanya kesalahan, penerima
akan mengirimkan karakter NAK dan pengirim harus mengirimkan ulang blok yang mengandung
kesalahan tersebut. Hal ini disebut dengan sistem Automatic Repeat Request (ARQ) dan diguna-kan
bersama-sama dengan protokol-protokol yang berorientasi bit seperti BiSynch.
Cara yang lebih baik untuk mendeteksi kesalahan adalah Cyclic Redundancy Check (CRC)
yang digunakan oleh protokol HDLC. Ada sejumlah metoda CRC, tetapi kebanyakan sambungan
HDLC menggunakan rekomendasi ITU-T V41.
Jika tambahan bit ditambahkan ke data, penerima juga dapat melakukan perbaikan kesalahan
yang timbul. Karena memerlukan bit tambahan sistem ini disebut Forward Error Control, yang hanya
digunakan jika kanal balik,kanal yang digunakan untuk mengacknowledge penerimaan benar atau
salah, tidak tersedia.

 BCC (Block Check Character)


Pengkodean untuk pengiriman data secara blok yang dilengkapi dengan paritas ganjil atau
paritas genap merupakan cara pengujian lebih baik, karena satu blok data akan disertai dengan
paritas yang diletakan pada akhir blok data.
Untuk menguji data terkirim terjadi kesalahan bit (bit error) atau tidak bit paritas tersebutlah
yang digunakan sebagai kunci uji untuk setiap karakter terkirim, dalam sistem transmisi data secara
blok data artinya beberapa karakter terkumpul menjadi satu blok data maka bit paritas ini juga bisa
dimanfaatkan.
Adapun penempatan bit paritas pada blok data adalah ditempatkan pada akhir sebuah blok,
dengan demikian bit akhir dari blok data inilah yang disebut dengan block check character (BCC).
Pesan dibagi menjadi sejumlah blok dan setiap blok mempunyai karakter pemeriksa blok (Block
Check Character, BCC) yang ditambahkan pada akhir blok. Lihat gambar berikut menunjukan
sebuah blok dengan 10 karakter yang masing-masing mempunyai paritas yang sesuai dengan
karakter masing-masing. Bit-bit paritas diletakkan pada setiap karakter berfungsi sebagai
longitudinal redundancy Check, LRC. BCC merupakan paritas untuk menjadikan setiap kolom bit
menjadi berparitas yang telah ditetapkan, apabila paritas tidak sesuai maka ditambah oleh paritas
yang disebut Vertical Redundancy Check, pada gambar paritas karakter adalah 01000100 maka VRC
yang dalam hal ini sama dengan 01001011; kemudian ditambahkan ke bit paritas karakter agar
membentuk paritas BCC, sehingga BCC yang lengkap adalah 00001111.
Tabel 1 BCC akan ditransmisikan di akhir blok data.

Pada sisi penerima, setiap kolom dari sebuah baris (satu karakter) diperiksa lebih dahulu.
Apabila dari lokasi kolom pada baris tersebut hanya terdapat kesalahan tunggal (ganjil), maka dapat
ditentukan dengan melakukan interseksi pada kolom dan baris yang mengandung kesalahan tersebut
bit paritas karakter salah. Tetapi jika terdapat dua (genap) kesalahan pada sebuah karakter, maka bit
paritas karakter akan benar. Oleh karena itu, untuk lokasi baris (karakter) yang mempunyai kesalahan
genap maka perlu dicheck lagi. Dengan menggunakan BCC, maka lokasi kolom dari baris tersebut
akan salah. Hal ini berarti bahwa munculnya kesalahan dapat dideteksi, tetapi lokasinya tidak bisa
ditentukan. Dengan cara yang sama, jika ada dua karakter yang berbeda, BCC akan benar, tetapi
paritas baris dari dua karakter ini akan salah. Hal ini menunjukan bahwa tidak semua pola kesalahan
bit dapat dideteksi. Pembangkitan BCC tidak didasarkan pada semua karakter di dalam sebuah blok
data. Hal ini ditunjukan oleh gambar berikut :
a.

BCC dihitung disini


b.

ETX = End of Text


STX = Start of Text
SYN = Synchronous
ETB = End of Blok
SOH = Start of Header

Pada saat BCC diterima, penerima telah membangkitkan BCC berdasarkan data yang
diterima, sehingga dua BCC ini akan dibandingkan oleh penerima. Jika hasilnya tidak sama,
penerima akan mengetahui bahwa ada kesalahan pada blok data yang diterima dan penerima akan
mengirimkan NAK ke terminal pengirim. Sebaliknya, jika sama, dikirim ACK.

 Longitudinal Redundancy Check (LRC)

Longitudinal Redundancy Check (LRC) merupakan pengembangan Parity Check


Code yang mempunyai kemampuan deteksi error yang lebih efisien. Pada data
Longitudinal Redundancy Check (LRC) dibagi menjadi sejumlah blok dan setiap blok
mempunyai karakter pemeriksa blok (Block Check Character/BCC) yang ditambahkan
di akhir blok.

Bit-bit paritas yang diletakan pada setiap karakter berfungsi sebagai LRC. Pada
teknik ini, satu blok bit diatur dalam bentuk baris dan kolom. LRC menggunakan paritas
genap untuk tiap kolomnya.

Jika dibandingkan Parity Check Code, LRC bisa mendeteksi junlah kesalahan
tidak hanya gasal saja tetapi bisa genap. Tetapi pada LRC memiliki kelemahan juga
yaitu jika jumlah kesalahannya 2 dan pada bit ke-n dan n+8, maka tidak terdeteksi error.
Karena LRCnya terdeteksi sama.
 Sebagai contoh, anggap pengirim ingin mengirim satu blok yang terdiri dari 32 bit.
o Sebelum pengiriman, 32 bit diatur dalam empat baris dan delapan kolom.
o Bit-bit dibaca per kolom, lalu parity bit dihitung sesuai aturan parity check code,
parity bit untuk setiap kolom tersebut membentuk baris kelima.
o Parity bit pertama dalam baris kelima dihitung berdasarkan semua bit pertama
o Parity bit kedua dalam baris kelima dihitung berdasarkan semua bit kedua, dan
seterusnya.

o Pada saat pengiriman, dilampirkan baris kelima yang


terdiri atas delapan parity bit pada data asli. Gambar
2.5 menunjukkan Longitudinal Redundancy Check.
Data Asli
1110011111011101001100110101001

Baris 1 11100111

Baris 2 11011101
Baris 3
00111001
Baris 4
10101001

Baris 5 10101010

LRC

LRC
Pengirim

111001111101110100110011010100110101010

Data Asli Parity

Penerima

111001111101110100110011010100110101010

Gambar 2.5. Longitudinal Redundancy Check (Data tak Terkorupsi).


o Penerima memeriksa blok LRC, 10101010 dan mengikuti aturan parity
genap.
 Gambar 2.6 menggambarkandata sebenarnya ditambah LRC, diterima oleh
penerima ketika data terkorupsi selama pengiriman.
Pengirim
111001111101110100110011010100110101010

Penerima
1110011111011101100010011010001110101010

Gambar 2.6. Longitudinal Redundancy Check (Data Terkorupsi).


 Ketika penerima mengecek LRC, beberapa bit tidak mengikuti aturan parity
genap,

 Cyclic Redundancy Check (CRC)

Cyclic Redundancy Check (CRC) adalah teknik untuk mendeteksi kesalahan


dalam data digital, tetapi tidak dapat mengoreksi ketika kesalahan terdeteksi. Hal ini
digunakan terutama dalam transmisi data. Penerima memeriksa bit pengecek CRC
yang sama dengan yang dikirim, untuk mendeteksi terjadinya kesalahan.

Teknik ini kadang-kadang diterapkan pada perangkat penyimpanan data, seperti


disk drive. Dalam situasi ini setiap blok pada disk akan memeriksa bit, dan hardware
secara otomatis memulai membaca kembali dari blok ketika kesalahan terdeteksi, atau
melaporkan kesalahan perangkat lunak.

CRC mempunyai kelebihan dibandingkan dengan parity check code dan LRC
,yaitu hasil koreksinya lebih akurat dan juga mempunyai bit redundant yang sedikit jika
dibandingkan LRC (jika bit pembaginya kurang dari 8 bit).

Penggunaan Cyclic Redundancy Check (CRC) dijelaskan sebagai berikut.

 Data atau pesan yang diberikan sejumlah k-bit, kemudian pengirim


membangkitkan suatu bagian n-bit, sehingga jumlah bit yang terkirim adalah
k+n bit
 Penerima memeriksa data (bit k+n).
 Data dibagi oleh angka yang belum ditentukan, dan jika tidak ada sisa, maka
tidak terjadi error.
 Gambar 2.7 menunjukkan generator CRC, Gambar 2.8 menunjukkan pengecek
CRC, dan Gambar 2.9 menunjukkan transmisi CRC.

Data 00 - - - - 0

k-bit

n+1 bit

Pembagi

CRC n-bit

Gambar 2.7. Generator CRC.

Data CRC

Angka yang belum ditentukan


Pembagi

Sisa
0 , menerima
Gambar 2.8. Pengecek CRC.

Pengirim Data CRC Penerima


Gambar 2.9. Transmisi CRC.

 Berikut ini adalah ilustrasi proses yang terjadi.


o String n ”0” diberikan pada data. Jumlah n kurang 1 dari jumlah bit pada
pembagi yang belum ditentukan, yaitu bit n+1.
o Data yang baru saja diperpanjang dibagi dengan pembagi menggunakan proses
yang disebut pembagian biner. Sisa yang dihasilkan dari pembagian adalah CRC.
o CRC pada bit n berasal dari langkah ke-2 yang menggantikan 0 yang
ditambahkan pada akhir rentetan data.
o Rentetan data tiba pada penerima data pertama, diikuti oleh CRC.

Anda mungkin juga menyukai