Anda di halaman 1dari 11

KONTROL KESALAHAN DALAM SISTEM KOMUNIKASI DATA I.

Pendahuluan Dalam perangkat komunikasi data, letak perangkatnya dapat berjarak hanya beberapa meter atau bahkan dapat beribu-ribu meter dan media transmisinya bisa berupa kabel sederhana atau yang lebih kompleks seperti microwave, satelit, fiber optik dan sebagainya. Oleh karena media transmisinya mempunyai karakteristik yang tidak ideal jika dihubungkan dengan sistem komunikasi, menyebabkan kesalahan (error) dapat terjadi, untuk itu perlu digunakan prosedur untuk mengontrol kesalahan. Kontrol kesalahan dibagi menjadi 2 kategori, deteksi kesalahan dan koreksi kesalahan. II. Perlunya Kontrol Kesalahan Selama pengiriman informasi, baik pada sinyal digital maupun sinyal analog, informasi dapat mengalami perubahan. Perubahan itu mungkin disebabkan ganggguan terhadap media tersebut atau keadaan media pengirimnya sendiri. Sinyal informasi dapat melemah karena jarak yang di tempuhnya atu juga peralatan-peralatan lain yang dipergunakan dalam pengiriman informasi tadi. Disamping itu harus diingat bahwa memang media pengiriman komunikasi data sangat terpengaruh oleh gangguan (interferensi) gejala listrik seperti kilat, medan listrik motor, peralatan elektronika, pengaruh media lain yang membawa sinyal listrik yang berdekatan dengannya dan sebagainya. Semua gejala ini dikenal dengan derau. Derau inilah yang dapat menyebabkan informasi mengalami perubahan, sehingga ada kemungkinan data tersebut salah, apalagi bila data tersebut sudah melemah karena jarak tempuhnya. Jadi kesalahan transmisi adalah terjadinya kesalahan pada data yang dikirim dari satu tempat ke tempat yang lain. Derau tidak dapat dihindarkan, akan tetapi data tetap juga harus dikirimkan dari satu tempat ke tempat lain. Oleh karena itu terdapat usaha untuk mencegah, mendeteksi bahkan memperbaiki kesalahan yang terjadi pada data yang dikirimkan, sehingga data diterima dan diproses adalah benar-benar data yang dikehendaki.

Kontrol Kesalahan Dalam Sistem Komunikasi Data

Umumnya kesalahan timbul dalam bentuk burst yaitu lebig dari satu bit terganggu dalam satuan waktu. Jadi kesalahan 1 bit tidak didistribusi secara seragam sepanjang waktu transmisi. Terjadinya kesalahan bentuk terkumpul (burst) itu mempunyai keuntungan dan kerugian. Keuntungan sifat kesalahan ini ialah waktu antara terjadinya kesalahan cukup panjang sehingga data yang disalurkan selama waktu itu dapat dikatakan bebas dari kesalahan. Kerugian dari sifat kesalahan ini ialah sukar membentuk sandi yang dapat melacak ataupun membetulkannya. Otak manusia merupakan suatu komputer yang amat canggih karena ia dapat menyesuaikan diri dengan sempurna terhadap keadaan yang berubah. Kalau satu kata yang hilang karan gangguan pada saluran, besar kemungkinan kita masih dapat mengerti apa yang di maksudkan oleh pengirim dengan melihat konteksnya. Kalau saluran makin memburuk kita dapat meminta pengirim berbicara lebih keras dan perlahan. Terlihatlah disini bahwa pengirim dan penerima mengubah karalternya sesuai dengan keadaan yang dihadapi. Komputer pada sistem komunikasi data tidak secanggih otak manusia, sehingga bila data yang diterima terganggu atau ada yang hilang ia tidak dapat mengetahui apa yang hilang. Komputer tidak dapat melacak adanya kesalahan atau hilangnya data kecuali bila ada informasi taambahan. Cara mencegah terjadinya kesalahan pada umumnya dilakukan dengan memperbaiki peralatan pengiriman dan penerimaan data maupun media pengiriman datanya sendiri. Tetapi meskipun telah terjadi perbaikan, terjadinya kesalahan data dalam perjalanan tidak dapat dicegah, karena itu ada teknik untuk melacak kesalahan agar data yang salah tidak diproses lebih lanjut. Deteksi kesalahan pada sistem komunikasi data menyangkut penggunaan redudansi yaitu tambahan informasi yang tidak ada sangkut pautnya dengan isi informasi yang dikirimkan. Data tambahan inilah akan menunjukkan ada atau tidak adanya keslahan pada data yang dikirimkan tadi, data tambahan ini yang disebut pariti dan terdapat beberapa cara penambahan pariti tersebut. Yang dimaksud dengan pariti ialah penambahan satu atau beberapa non-information carrying bit sehingga penerima dapat melakukan perhitungan matematis untuk memeriksa apakah data yang diterima benar. Makin banyak redundansi makin hamdal metode detekdi kesalahan. Tetapi informasi yang berlebih ini menggunakan lebar saluran sehingga membatasi kapasitas saluran

Kontrol Kesalahan Dalam Sistem Komunikasi Data

transmisi yang dapat digunakan untuk data sebenarnya. Oleh karena itu teknik deteksi kesalahan merupakan kompromi antara redundansi dan persentasi error yang dapat di deteksi. Salah satu cara mendeteksi dan mengkoreksi kesalahan ialah dengan mengirimkan bit tambahan. Makin banyak bit tambahan ini makin baik proteksi terhadap kesalahan tapi makin rendah troughput dari data yang berguna. Troughput adalah perbandingan antara data yang berguna dengan data keseluruhan (termasuk bit tambahan untuk proteksi kesalahan). Kesalahan mempunyai pengaruh pada besarnya blok data. Kalau ukuran kecil, sedikit kemungkinannya diperlukan transmisi kembali karena adanya blok terganggu, sedngkan blok besar kemungkinan diperlukan tranmisi kembali juga lebih besar. III. Deteksi Kesalahan Deteksi kesalahan adalah proses sederhana untuk memonitoring penerimaan data dan menetapkan kapan kesalahan transmisi terjadi. Teknik deteksi kesalahan tidak mengidentifikasi satu kesalahan telah terjadi. Tujuan dari deteksi kesalahan tidak untuk mencegah terjadi kesalahan tetapi untuk mencegah agar kesalahan terjadi tidak dapat terdeteksi. Teknik deteksi kesalahan yang umumnya digunakan untuk rangkaian komunikasi data adalah: Redundancy Pariti Vertikal dan Longitudinal redundancy check Cyclik redundansi check 3.1 Redundancy Pada redundancy setiap karakter ditrasmisikan dua kali, jika karakter yang sama tidak diterima dua kali berurutan maka terjadi kesalahan. Konsep yang sama dapat digunakan pada pengiriman berita, kesalahan terjadi jika urutan-urutan dari karakter tidak diterima dua kali berurutan. Kelemahan dari sdetaksi kesalahan ini adalah waktu transmisi yang menjadi lebih besar dan bandwidth yang digunakan juga lebih besar karena harus mentransmisikan informasi dua kali.

Kontrol Kesalahan Dalam Sistem Komunikasi Data

3.2 Pariti Pariti adalah teknik deteksi kesalahan yang paling sederhana pada sistem komunikasi data dan digunakan baik pada Vertical Redundancy Check (VRC) maupun Longitudinal Redundancy Check (LRC). Dalam pariti, sebuah bit (pariti bit) ditambahkan pada setiap karakter untuk menggenapkan (even pariti) atau meng-ganjilkan (odd pariti) bit 1 dalam karakter. Sebagai contoh, kode ASCUU untuk huruf C adalah 43 hexadesimal atau biner P1000011, dimana bit P menunjukkan pariti bit. Ada 3 bit dalam kode jika pariti bit tidak dihitung, jika pariti ganjil digunakan, bit P dibuat sama dengan 0 agar jumlah bit 1 dari kode tetap sama dengan 3 (ganjil). Jika digunakan pariti genap, bit P dibuat sama dengan 1 dan jumlah keseluruhan bit 1 sama dengan 4 (genap). Dari contoh diatas dapat dilihat bahwa pariti bit tidak bergantung pada bit 0 dalam kode dan tidak berpengaruh pada sepasang bit 1, untuk huruf C. Jika bit 0 dihilangkan, kode menjadi P1-11, untuk pariti ganjil bit P masih tetap sama dengan 0 dan pariti bit genap bit P tetap sama dengan 1. Untuk membangun pembangkit pariti bit dapat digunakan gerbang logika EXOR. Pada gerbang logika EXOR jika inputnya sama, maka output-nya bernilai 0, jika input tidak sama maka output-nya bernilai 1. Gambar dibawah menampilkan dua rangkain pembangkit pariti bit. Rangkaian gambar 3.1 menggunakan perbandingan secara serial dan gambar 3.2 secara peralel.

b0 b1 b2 b3 b4 Pariti bit bias bit

Gambar 3.1 Pembangkit Pariti Serial

Kontrol Kesalahan Dalam Sistem Komunikasi Data

b0 b1

b2 b3 b4 bias bit Pariti bit

Gambar 3.2 Pembangkit Pariti Paralel Pada pembangkit pariti serial b0 di EXOR kan dengan b1, hasilnya di EXOR-kan dengan b2. Hasil dari proses EXOR dibandingkan dengan bias bit. Jika dinginkan pariti genap, bias bit dibuat berlogika 0, jika diinginkan pariti ganjil, bias bit dibuat berlogika 1. keluaran dari rangkaian adalah pariti bit yang ditambahkan pada kode karakter. Rangkaian pada gambar diatas dapat juga digunakan sebagai pengecek pariti pada penerima. Pengecek pariti menggunakan prosedur yang sama dengan pembangkit pariti kecuali bahwa kondisi logic dari akhir perbandingan digunakan untuk menentukan jika gangguan pariti telah terjadi (untuk pariti ganjil 1menunjukkan satu kesalahan dan 0 menunjukkan tidak terjadi kesalaha; untuk pariti genap, juga berlaku hal yang sama 1 menunjukkan satu kesalahan dan 0 menunjukkan tidak terjadi kesalahan). Keuntungan utama dari pariti adalah kesederhanaannya, kekurangannya adalah ketika nomor genap dalam bit diterima dengan kesalahan. Pengecek pariti tidak akan mendeteksi kesalahan (sama jika kondisi logic dari 2 bit berubah, pariti tetap sama). 3.3 Vertical dan Longitudinal Redundancy check Vertical Redundancy Check (VRC) adalah pendeteksi kesalahan yang menggunakan parity untuk menentukan jika kesalahan transmisi telah terjadi dalam sebuah karakter, untuk itu VRC disebut juga parity karakter. Dengan VRC setiap karakter mempunyai bit parity yang ditambahkan ke karakter sebelum di transmisikan. Horisontal atau Longitudinal Redundancy Check (HRC atau LRC) adalah pendeteksi kesalahan yang juga menggunakan parity untuk mendeteksi kesalagan transmisi yang terjadi dalam sebuah pesan, untuk itu LRC disebut juga priti pesan (message parity). Dengan LRC, setiap posisi bit mempunyai parity bit , dengan kata lain

Kontrol Kesalahan Dalam Sistem Komunikasi Data

b0 dari semua karakter pesan dalam pesan di EXOR-kan, demikian juga dengan b1, b2 dan seterusnya. Di EXOR-kan dengan bit yang sama dari seluruh bit karakter dalam pesan. LRC adalah hasil dari meng-EXOR-kan karakter dalam pesan sedang VRC meng-EXORkan bit dalam satu karakter. LRC hanya menggunakan pariti genap. Bit LRC dihitung dalam pemancar sebelum data dikirimkan dan diletakkan sebagai karakter akhir dari pesan. Pada penerima LRC dikomputasi ulang dari data, LRC hasil perhitungan dari penerima dibandingkan dengan LRC yang dikirimkan, jika sama menunjukkan tidak ada kesalahan yang terjadi, namun jika berbda terjadi kesalahan trnasmisi. Sebagai contoh, berikut akan ditentukan VRC dan LRC untuk ASCII pada pesan THE CAT, dengan menggunakan pariti ganjil untuk VRC dan pariti genap untuk LRC. VRC setiap bit dari sebuah karakter dihitung dalam arah vertikal dan LRC bit dihitung dalam arah horisontal. Grup karakter yang ada dalam pesan biasanya disebut blok data, untuk itu susunan bit untuk LRC sering disebut Block Check Character (BCC) atau Block Check Sequence (BCS). BCS lebih cocok sebab LRC bukan fungsi dari karakter. LRC adalah susunan bit sederhana yang digunakan untuk deteksi kesalahan. LRC tidak akan mendeteksi kesalahan transmisi jika karakter yang mempunyai kesalahan berjumlah genap pada posisi bit yang sama. Sebagai contoh, jika b4 mempunyai 2 karakter yang berbda dalam kondidi salah (error). Jika VRC dan LRC digunakan secara bersama, waktu kesalahan tidak akan terdeteksi ketika kesalahan terjadi akibat jumlah bit genap berada dalam karakter yang juga genap dan posisi bit yang sama dalam karakter yang juga salah. Kondisi ini sering terjadi dan sangat tidak disukai. VRC tidak mengenal bit mana yang salah dalam karakter dan LRC tidak mengenal karakter yang mempunyai kesalahan. Untuk kesalahan pada 1 bit, VRC digunakan bersama LRC tidak akan mengenal bit mana yang salah, VRC dan LRC hanya mengidentifikasi telah terjadi kesalahan.

Kontrol Kesalahan Dalam Sistem Komunikasi Data

3.4 Cyclik Redundancy Check (CRC) Dari semua deteksi kesalahan yang telah dijelaskan sebelumnya kurang handal jika dibandingkan dengan CRC. Dengan CRC sekitar 99.95% dari semua kesalahan transmisi dapat di deteksi.CRC umumnya menggunakan kode 8 bit seperti EBCID atau 7 bit jika tidak menggunakan pariti bit. Kode CRC yang umum digunakan adalah CRC-16 yang sesuai degan standar internasional CCITI V.41. Pada CRC 16, 16 bit digunakan untuk Block Sequence Check (BSC). Karakter CRC merupakan sisa dari proses pembagian. Data dari pesan berbentuk polinomial G(x) dibagi dengan generator polinomial P(x). hasilnya diabaikan dan sisanya dijadikan 16 bit yaitu menambahkan sisa dari pembagian G(x)/P(x) dengan data dan disebut BSC. Dengan pembangkit CRC pembagian tidak seperti pada operasi aritmatik standar, dimana sisa diperoleh dari pengurangan namun pada proses ini sisa diperoleh dari operasi EXOR. Pada penerima urutan data dan BSC dibagi dengan P(x), jika tidak ada kesalahan yang terjadi, sisa sama dengan nol. Generator polinimoal untuk CRC-16 adalah : P(x) = x16 + x12 + x5 + x0 Dimana: x0 = 1 Jumlah bit dalam kode CRC sama dengan pangkat tertinggi dari generator polinominal. Pernagkat menunjukkan posisi bit yang berisi 1, untuk itu b16, b12, b5 dan b0 adalah 1 dan yang lainnya adalah 0. Gambar 3.3 menampilkan blok diagram dari rangkaian yang akan membangkitkan CRC-16. BCS untuk standar CCITT V.41. Catatan bahwa setiap posisi bit dari pembangkit polynomial yang nilai 1 terdapat gerbang EXOR.

6 x1

2 x1 5 x1 4 x1 3 x1 2 x1 1 x1 0 x1

x5 x9 x8 x7 x6 x5 x4 x3 x2 x1 x0

Dt a a T nm r s i/ a t Rci e ee v

Gambar 3.3 Rangkaian pembangkit CRC-16. BCS untuk standar CCITT V.41

Kontrol Kesalahan Dalam Sistem Komunikasi Data

IV.

Koreksi Kesalahan Ada 3 jenis koreksi kesalahan, yaitu: 1. Subtitusi Simbol 2. Re-Transmisi 3. Forward Errod Correction

4.1 Subtitusi Simbol Subtitusi simbol dirancang untuk digunakan pada lingkungan manusia, ketika seorang operator berada dekat dengan terminal penerima untuk menganalisa data dan membuat keputusan sesuai dengan kepandaiannya, maka ia akan dapat memutuskan apakah data yang diterima mempunyai kesalahan atau tidak. Dengan subtitusi simbolm jika karakter yang diterima salah, contoh N?ama maka operator akan melihat apakah karakter ? adalah karakter yang salah dan akan memutuskan bahwa karakter yang benar adalah a. Jika kesalahan tidak dapat disimpulkan oleh operator maka harus dilakukan pengiriman ulang dari data, contoh $.000.000 operator tidak bisa melakukan subtitusi disebabkan operator tidak bisa memutuskan pengganti karakter . 4.2 Re-Transmisi Sesuai dengan namanya, ketika pesan yang diterima salah dan penerima secara otomatis memanggil untuk mengirim ulang pesan yang salah tersebut. Re-transmisi sering disebut ARQ (Automatic Request for Retransmission). ARQ adalah metode koreksi kesalahan yang cukup handal walaupun kadang-kadang kurang efisien. Kerusakan dalam media transmisi terjadi dalam blok data. Jika digunakan pesan yang pendek, suka tidak suka maka kerusakan terjadi selama pengiriman pesan yang pendek. Meskipun pesan pendek memerlukan lebih banyak ACK (Acknowledgments) dan waktu berbalik arah transmisi dari Kontrol kesalahan diletakkan dalam overhead. Pada pesan yang panjang dibutuhkan waktu berbalik arah transmisi yang lebih singkat walaupun suka atau tidak suka kesalahan transmisi yang akan terjadi lebih besar dibanding pesan pendek. 4.3 Forward Error Correction (FEC) Adalah teknik koreksi kesalahan yang sebetulnya dapat mendeteksi dan mengoreksi kesalahan pada penerima tanpa harus memanggil untuk pengiriman ulang.

Kontrol Kesalahan Dalam Sistem Komunikasi Data

Dengan FEC, bit ditambahkan kepada pesan sebelum ditransmisikan. Koreksi kesalahan yang popular dalam komunikasi data adalah Hamming Code yang di kembangkan oleh R.W Hamming pada laboratorium BELL. Jumlah bit dalam kode hamming bergantung pada jumlah bit pada karakter data. Sejumlah hamming bit ditambahkan ke karakter ditentukan dari persamaan berikut ini : 2n m + n + 1 Dimana: n = jumlah hamming bit m = jumlah bit dalam karakter Sebagai contoh, kita akan mementukan jumlah hamming bit yang dibutuhkan untuk 12 bit data string 101100010010 kemudian kita akan menentukan kondisi setiap hamming bit. 2n m + n + 1 Untuk n = 4 24 = 16 m + n + 1 = 12 + 4 + 1 = 17 16 17 , untuk itu 4 hamming bit tidak memenuhi Untuk n = 5 25 = 32 m + n + 1 = 12 + 5 + 1 = 18 32 18 , 5 hamming bit sudah bisa memenuhi Jumlah seluruh bit data = 12 + 5 = 17 bit yang terkandung dalam data Meletakkan hamming bit dalam data :
17 H 16 1 15 0 14 1 13 H 12 1 11 0 10 0 9 H 8 H 7 0 6 1 5 0 4 H 3 0 2 1 1 0

Untuk menentukan kondisi logic dari hamming bit, tampilkan semua posisi bit yang bernilai 1 sebagai bilangan biner 5 bit dan di-EXOR kan satu sama lain :

Posisi bit 2 6 EXOR

Bilangan Biner 00010 00110 00100

Kontrol Kesalahan Dalam Sistem Komunikasi Data

12 EXOR 14 EXOR 16 EXOR

01100 01000 01110 00110 10000 10110

10110 adalah Hamming code b17 = 1, b13 = 0, b9 = 1, b8 = 1, b4 = 0 17 bit urutan data menjadi :
H 1 1 0 1 H 0 1 0 0 H 1 H 1 0 1 0 H 0 0 1 0

Asumsikan bahwa selama pengiriman data terjadi kesalahan pada bit posisi 14, urutan data yang diterima:
1 1 0 0 0 1 0 0 1 1 0 1 0 0 0 1 0

Pada penerima untuk menentukan bit posisi salah, EXOR kan biner hamming bit dengan setiap data yang bit 1
Posisi bit Kode Hamming 2 EXOR 6 EXOR 12 EXOR 16 EXOR Bilangan Biner 10110 00010 10100 00110 10010 01100 11110 10000 01110

01110 = biner 14 Kode hamming yang dijelaskan pada bagian ini hanya akan mendeteksi kesalahan 1 bit, tidak bisa digunakan untuk mendeteksi kesalahan yang banyak atau mendeteksi kesalahan yang terjadi dalam hamming bit itu sendiri. Kode Hamming seperti pada semua jenis FEC membuthkan bit tambahan pada data akibatnya pesan yang ditransmisikan semakin panjang. Tujuan dari kode FEC adalah untuk menurunkan atau membatasi kehilangan waktu dari re-transmisi, kenyataannya penambahan bit FEC pada setiap pesan juga menambah waktu transmisi. Dari ketiga sistem koreksi kesalahan yang telah dibahas menunjukkan bahwa masing-masing teknik sesuai dengan sistem tertentu. FEC sering digunakan untuk transmisi simplex ke banyak terminal bilamana acknowledgement tidak praktis.

Kontrol Kesalahan Dalam Sistem Komunikasi Data

10

Kontrol Kesalahan Dalam Sistem Komunikasi Data

11

Anda mungkin juga menyukai