Sabtu, 11 Juni 2011

TEKNIK KOMUNIKASI DATA DIGITAL

TEKNIK KOMUNIKASI DATA DIGITAL
 
Salah satu tujuan komunikasi data adalah untuk mengirimkan data secara utuh dari sumber data hingga sampai ke penerima atau tujuan pengiriman. Data utuh diterima, berarti bahwa data tersebut lengkap tidak corrupt atau hilang pada saat pengiriman. Untuk menjaga dan meyakinkan bahwa data yang sedang dikirim akan tiba dengan selamat dan utuh ke tangan penerima itulah dilakukan pendeteksian kesalahan dan melakukan pembetulan kembali data jika ternyata ada yang salah.
Kesalahan dalam transmisi data, dapat terjadi karena gangguan-gangguan pada saluran, system switching, radiasi gelombang, cross talk, dan lain-lain. Ada beberapa kemungkinan terjadi kesalahan dalam pengiriman frame-frame data sebagai berikut :
P0 = probabilitas error bit tunggal yang disebut dengan bit error rate
P1 = probabilitas frame yang diterima tanpa adanya error
P2 = probabilitas frame diterima dengan error tetapi tidak terdeteksi
P3 = probabilitas frame diterima dengan error tetapi terdeteksi
Jika dalam suatu jaringan komunikasi data tidak dipasang suatu alat pendeteksian error, maka akan berlaku bahwa probabilitas error yang terdeteksi = 0 atau P3 = 0. Demikian juga dengan probabilitas frame yang diterima tanpa error (P1) akan bertambah jika probabilitas dari error bit tunggal bertambah.
Bit Paritas
Model pendeteksian kesalahan dengan menggunakan bit paritas merupakan model pendeteksian kesalahan yang paling sederhana. Dalam metode pendeteksian ini, bit paritas ditambahkan pada setiap karakter ASCII 8 bit. Bit paritas ini membuat penerima mampu mendeteksi kesalahan tunggal pada setiap karakter yang dikirimkan.
Pengendalian kesalahan dengan bit paritas terbagi menjadi dua bentuk yaitu paritas karakter dan paritas blok. Pada model paritas karakter, sebuah bit ditambahkan pada setiap karakter dalam data. Sedangkan pada paritas blok, efisiensi pendeteksian kesalahan ditingkatkan dengan membagi pesan menjadi sejumlah blok. Paritas karakter, sering disebut juga sebagai vertical redundancy check (VRC) dan paritas blok sebagai longitudinal redundancy check (LRC).
Vertical Redundancy Cheks
Pada metode ini, dalam satu byte terdapat satu bit parity. Bit paritas diletakkan setelah bit ke tujuh dan menjadi bit ke delapan. Seperti misalnya, karakter 10101000 akan menjadi 110101000 atau 010101000.
Bit paritas digunakan supaya cacah 1 pada setiap karakter berjumlah ganjil atau bertambah genap. Yang berjumlah ganjil disebut dengan nama paritas ganjil (odd parity), dan yang berjumlah genap disebut dengan nama paritas genap (even parity). Nilai dari bit tergantung dari jumlah ganjil atau genapnya jumlah bit satu dalam tiap byte. Aturan yang berlaku pada odd parity adalah bahwa jumlah bit satu dalam setiap byte harus ganjil. Komputer akan selalu melakukan pengecekan terhadap parity bit dari setiap karakter yang dikirim. Bila jumlah bit satu dari tujuh bit pertama adalah genap, maka bit paritas diubah menjadi 1 dan sebaliknya bila jumlah bit satu dari tujuh bit pertama adalah ganjil, maka bit paritas diubah menjadi 0.
Sedangkan pada even parity berlaku sebaliknya, yaitu bahwa jumlah bit satu dalam setiap byte harus genap. Sebagai contoh, jika huruf “M” disusun dalam kode biner adalah “1001101” dimana 7 bit pertama jumlah bit satunya adalah genap. Maka parity bit diubah menjadi 0 seperti pada contoh berikut :
Salah satu kelemahan dalam system bit paritas Vertical Redundancy Check ini adalah sulitnya melakukan deteksi terhadap kesalahan jika jumlah bit error adalah genap. Jika terjadi kesalahan dalam suatu pengiriman, maka bit yang diterima menjadi tidak sesuai. Misalnya di awal pengiriman berjumlah genap, tetapi tiba-tiba berjumlah ganjil. Berarti ada gangguan transmisi. Tetapi ada 2 atau 4 bit yang salah, menyulitkan pendeteksian error karena jumlah ganjil genapnya bit sama dengan jumlah ganjil genap bit sebelumnya.
Longitudinal Redundancy Checks
Longitudinal Redundancy Check ini memperbaiki kekurangan yang terjadi pada Vertical
Redundancy Check. Pengiriman data dilakukan per blok. Setiap blok terdiri dari 8 byte. Dan setiap blok memiliki block check character atau karakter pemeriksa blok yang diletakkan pada akhir blok.
Block Check Character ini memuat 7 parity bit dari bit sebelumnya. Sedangkan untuk mengubah nilai ketujuh dari bit ini adalah dengan melihat jumlah nilai bit 1 dari seluruh isi byte secara vertical.  Salah satu kelemahan dalam system bit paritas Vertical Redundancy Check ini adalah sulitnya melakukan deteksi terhadap kesalahan jika jumlah bit error adalah genap. Jika terjadi kesalahan dalam suatu pengiriman, maka bit yang diterima menjadi tidak sesuai. Misalnya di awal pengiriman berjumlah genap, tetapi tiba-tiba berjumlah ganjil. Berarti ada gangguan transmisi. Tetapi ada 2 atau 4 bit yang salah, menyulitkan pendeteksian error karena jumlah ganjil genapnya bit sama dengan jumlah ganjil genap bit sebelumnya.
Longitudinal Redundancy Checks
Longitudinal Redundancy Check ini memperbaiki kekurangan yang terjadi pada Vertical Redundancy Check. Pengiriman data dilakukan per blok. Setiap blok terdiri dari 8 byte. Dan setiap blok memiliki block check character atau karakter pemeriksa blok yang diletakkan pada
akhir blok.
Block Check Character ini memuat 7 parity bit dari bit sebelumnya. Sedangkan untuk mengubah nilai ketujuh dari bit ini adalah dengan melihat jumlah nilai bit 1 dari seluruh isi byte secara vertical.
 
Pada gambar 2 terlihat bagaimana block check character dibentuk. Pada nomor bit ke tujuh, jumlah angka 1 pada karakter adalah 4 (genap) maka block check character untuk bit ke tujuh adalah 0. Demikian juga untuk nomor bit ke enam, jumlah angka 1 pada karakter adalah 8 (genap) maka block check character untuk bit ke enam adalah 0. Sedangkan pada nomor bit ke dua, jumlah angka 1 pada karakter adalah 5 (ganjil) maka block check character untuk bit ke dua adalah 1. Seperti halnya pada nomor bit ke satu, jumlah angka 1 pada karakter adalah 7 (ganjil) maka block check character untuk bit ke satu adalah 1, demikian seterusnya.
Pada sisi penerima, setiap kolom dan setiap baris diperiksa. Lokasi kesalahan tunggal dapat ditemukan dengan melakukan interseksi pada kolom dan baris yang mengandung kesalahan.
Cyclic Redundancy Checks
Cyclic Redundancy Checks (CRC) merupakan system dengan penambahan control bit untuk menjamin keamanan data. Control bit dibentuk oleh komputer pengirim berdasarkan perhitungan atas data yang dikirim. Kemudian pada prinsipnya, ketika data sampai di komputer penerima dilakukan perhitungan seperti yang dilakukan oleh computer pengirim.
Jika hasil perhitungan sama, maka tidak ada kesalahan dalam pengiriman. Pada CRC, data dikirim per frame dan setiap frame terdiri dari deretan yang panjang. Penggunaan CRC pada sambungan data sangat efisien untuk mendeteksi kesalahan. Bilangan biner yang digunakan sebagai pembagi disebut sebagai generating polynomial dan harus mempunyai satu bit lebih panjang dibandingkan dengan panjang CRC. Jika CRC memiliki panjang n=bit, maka bilangan biner data harus dikalikan dengan 2n yaitu bit 0 sebanyak n buah
ditambah sesudah bit signifikan terkecil.
Untuk memahami lebih lanjut tentang konsep CRC, akan lebih baik jika memahami terlebih dahulu konsep pembagian modulo 2 serta konsep menjabarkan deretan bit menjadi polynomial aljabar.
Konsep Pembagian Modulo 2
Suatu proses aritmatika modulo 2, hanya memperbolehkan hasil pengoperasian “0” atau “1” dan tidak ada hasil negative. Pada konsep ini, bit-bit pada kode biner dapat diinterpretasikan sebagai polynomial koefisien. Contohnya adalah sebagai berikut :
Sebagai contoh, suatu pesan M(x), berisi deretan bit biner “101011”. Deretan bit tersebut dapat diinterpretasikan menjadi sebagai berikut :
M(x) = 1(x)5 + 0(X)4 + 1(x)3 + 0(x)2 + 1(x)1 + 1(x)0
= x5 + 0 + x3 + 0 + x + 1
= x5 + x3 + x + 1
Panjang kode error bitting pada CRC ditentukan sebagai c – bits. Jika C=2, maka dihasilkan polynomial G(x) = x2 + 1. Kemudian M(x) dikalikan dengan xc dan menjadi persamaan :
M(x) x2 = x7 + x5 + x3 + x2
Selanjutnya adalah proses membagi M(x) x2 dengan G(x) menggunakan modulo 2 dimana akan menghasilkan hasil bagi Q(x) dan sisa pembagian (remainder) R(x). M(x) x2 / G(x) = Q(x) / R(x)
Selanjutnya sisa pembagian R(x) ditambahkan pada pesan atau M(x) untuk menggeser polynomial dari pesan yang dikirim dan kemudian akan didapatkan deretan polynomial dari pesan yang dikirim T(x) sebagai berikut :
T(x) = xc M(x) + R(x)
T(x) = x7 + x5 + x3 + x2 + 1
Dari data yang akan ditransmisikan adalah data dengan deretan sebagai berikut :
T(x) = (1)x7 + (0)x6 + (1)x5 + (0)x4 + (1)x3 + (1)x2 + (1)x0
T(x) = 10101111
Dari data tersebut terlihat bahwa 6 bit pertama adalah data asli, sedangkan 2 bit selanjutnya adalah error-checking. Untuk memeriksa kesalahan pada saat pengiriman, maka receiver akan menerima blok data (polynomial) dengan deretan polynomial G(x) yang telah dihasilkan dengan menggunakan aritmetika modulo 2. Jika hasil pembagian antara T(x) dan G(x) menghasilkan nilai nol, maka pesan M(x) bebas dari kesalahan. Sebaliknya jika sisa pembagian selain nol, maka dapat dikatakan terjadi kesalahan pengiriman.
Langkah Koreksi Kesalahan
Jika terjadi kesalahan transmisi, maka akan dilakukan tindakan koreksi atau perbaikan dengan cara-cara seperti penggantian symbol, mengirimkan data koreksi dan mengirim ulang atau meminta komputer pengirim untuk mengulangi pengiriman data. Langkah penggantian symbol, berarti bahwa bila ada data yang rusak maka komputer penerima akan mengganti bagian yang rusak tersebut dengan karakter lain yang sesuai. Simbol
pengganti tersebut dapat dilihat pada program word prosesor. Contohnya adalah karakter SUB yang berupa tanda Tanya terbalik. Jika pengguna menjumpai karakter ini, maka berarti data yang dikirim telah mengalami kerusakan.
Alternatif berikutnya adalah dengan melakukan pengiriman data koreksi. Data yang dikirim harus ditambah dengan kode tertentu dan data duplikat. Bila penerima menjumpai kesalahan, maka data akan digantikan dengan data duplikat tersebut, cara ini kurang efisien dan boros memori sehingga tidak banyak digunakan.

sumber : Rijal Fadilah S.Si – www.rijalfadilah.wordpress.com 4

Tidak ada komentar:

Posting Komentar