Encoding adalah proses untuk mengubah sinyal ke dalam bentuk yang dioptimasi untuk
keperluan komunikasi data dan penyimpanan data. Kedua hal inilah yang saling
mendukung untuk mengubah bentuk sinyal sehingga bisa disalurkan dari pengirim
ke penerima. Dalam hal modulasi, komunikasi data ada yang menggunakan sinyal
digital. Tetapi komunikasi ini memiliki kelemahan yaitu jarak tempuh yang tidak
terlalu besar akibat pengaruh noise berupa redaman yang terjadi pada media
transmisi. Sedangkan komunikasi data menggunakan sinyal analog jarak tempuhnya
akan menjadi lebih besar.
Sinyal digital adalah sinyal diskrit dengan pulsa tegangan diskontinyu. Tiap pulsa adalah
elemen sinyal data biner diubah menjadi elemen – elemen sinyal.
Spektrum sinyal : disain sinyal yang bagus harus
mengkonsentrasikan kekuatan transmisinya pada daerah tengah dari bandwidth
transmisi; untuk mengatasi distorsi dalam penerimaan sinyal digunakan disain
kode yang sesuai dengan bentuk dari spektrum sinyal transmisi.
Elemen sinyal adalah tiap pulsa dari sinyal digital. Data binary ditransmisikan dengan
meng-encoder-kan tiap bit data menjadi elemen-elemen sinyal.
Ketentuan :
- Unipolar: Semua elemen-elemen sinyal dalam bentuk
yang sama yaitu positif semua atau negatif semua.
- Polar :adalah elemen-elemen sinyal dimana salah satu
state logic dinyatakan oleh level tegangan positif dan sebaliknya oleh tegangan
negatif
- Rating Data : Rating data transmisi data dalam bit
per secon
- Durasi atau panjang suatu bit: Waktu yang dibutuhkan
pemancar untuk memancarkan bit
- Rating modulasi
- Rating dimana level sinyal berubah
- Diukur dalam bentuk baud=elemen-elemen sinyal per
detik
- Tanda dan ruang
- Biner 1 dan biner 0 berturut-turut
- Modulation rate adalah kecepatan dimana level sinyal
berubah, dinyatakan dalam bauds atau elemen sinyal per detik.
- Istilah mark dan space menyatakan digit binary ’1′
dan ’0′.
Tugas-tugas receiver dalam mengartikan sinyal-sinyal
digital :
- receiver harus mengetahui timing dari tiap bit
- receiver harus menentukan apakah level sinyal dalam
posisi bit high(1) atau low(0).
Tugas-tugas ini dilaksanakan dengan men-sampling tiap
posisi bit pada tengah-tengah interval dan membandingkan nilainya dengan
threshold.
Faktor yang menentukan sukses dari receiver dalam
mengartikan sinyal yang datang :
- Data rate (kecepatan data) : peningkatan data rate
akan meningkatkan bit error
rate (kecepatan error dari bit).
- S/N : peningkatan S/N akan menurunkan bit error
rate.
- Bandwidth : peningkatan bandwidth dapat meningkatkan
data rate.
Lima faktor yang perlu dinilai atau dibandingkan dari
berbagai teknik komunikasi :
- Spektrum sinyal : disain sinyal yang bagus harus
mengkonsentrasikan kekuatan transmisinya pada daerah tengah dari bandwidth
transmisi; untuk mengatasi distorsi dalam penerimaan sinyal digunakan disain
kode yang sesuai dengan bentuk dari spektrum sinyal transmisi.
- Clocking : menentukan awal dan akhir dari tiap
posisi bit dengan mekanisme synchronisasi yang berdasarkan pada sinyal
transmisi.
- Deteksi error : dibentuk dalam skema fisik encoding
sinyal.
- Interferensi sinyal dan Kekebalan terhadap noise
- Biaya dan kesulitan : semakin tinggi kecepatan
pensinyalan untuk memenuhi data rate yang ada, semakin besar biayanya.
Perlu diketahui
- Waktu bit saat mulai dan berakhirnya
- Level sinyal
Faktor-faktor penerjemahan sinyal yang sukses :
- Perbandingan sinyal dengan noise(gangguan)
- Rating data
- Bandwidth
- Perbandingan Pola-Pola Encoding
- Spektrum sinyal : Kekurangan pada frekuensi tinggi
mengurangi bandwidth yang dibutuhkan. Kekurangan pada komponen dc menyebabkan
kopling ac melalui trafo menimbulkan isolasi Pusatkan kekuatan sinyal di tengah
bandwidth
- Clocking
- Sinkronisasi transmiter dan receiver
- Clock eksternal
- Mekanisme sinkronisasi berdasarkan sinyal
- Pendeteksian error
- Dapat dibangun untuk encoding sinyal
- Interferensi sinyal dan kekebalan terhadap noise
- Beberapa code lebih baik daripada yang lain
- Harga dan Kerumitan
- Rating sinyal yang lebih tinggi(seperti kecepatan
data) menyebabkan harga semakin tinggi
- Beberapa code membutuhkan rating sinyal lebih tinggi
Pola –Pola encoding :
- Nonreturn to Zero-Level (NRZ-L)
- Nonreturn to Zero Inverted (NRZI)
- Bipolar-AMI
- Pseudoternary
- Manchester
- Differential Manchester
- B8ZS
- HDB3
Nonreturn to Zero Inverted (NRZI) : yaitu suatu kode dimana suatu transisi (low ke high
atau high ke low) pada awal suatu bit time akan dikenal sebagai binary ’1′
untuk bit time tersebut; tidak ada transisi berarti binary ’0′. Sehingga NRZI
merupakan salah satu contoh dari differensial encoding.
- Nonreturn to Zero Inverted (NRZI) dalam kesatuan
- Pulsa tegangan konstan untuk durasi bit
- Data dikodekan / diterjemahkan sebagai
kehadiran(ada) atau ketiadaan sinyal transisi saat permulaan bit time
- Transisi (dari rendah ke tinggi atau tinggi ke
rendah) merupakan biner 1
- Tidak ada transisi untuk biner 0
- Sebagai contoh encoding differential
Keuntungan differensial encoding :
- lebih kebal noise
- tidak dipengaruhi oleh level tegangan.
Kelemahan dari NRZ-L maupun NRZI :
- keterbatasan dalam komponen dc dan kemampuan
synchronisasi yang buruk
NRZ
Bipolar with 8-Zeros Substitution (B8ZS) yaitu suatu
kode dimana :
- jika terjadi oktaf dari semua nol dan pulsa tegangan
terakhir yang mendahului oktaf ini adalah positif, maka 8 nol dari oktaf
tersebut di-encode sebagai 000+ -0-
- jika terjadi oktaf dari semua nol dan pulsa tegangan
terakhir yang mendahului oktaf ini adalah negatif, maka 8 nol dari oktaf
tersebut di-encode sebagai 000-+0+ -.
High-density bipolar-3 zeros (HDB3) : yaitu suatu kode dimana menggantikan string-string
dari 4 nol dengan rangkaian yang mengandung satu atau dua pulsa atau disebut
kode violation, jika violation terakhir positive maka violation ini pasti
negative dan sebaliknya.
Pendeteksi Error
Masalah yang harus dihadapi dalam sistem komunikasi
apapun adalah terjadinya/adanya error/kesalahan yang menyebabkan sistem
tersebut tidak sesuai dengan yang diinginkan. Hal ini terjadi juga pada sistem
komunikasi data. Masalah utama dalam komunikasi data adalah realibility. Sinyal
yang dikirim melalui medium tertentu dapat mengalami pelemahan, distorsi, dan
adanya keterbatasan bandwidth. Hal tersebut dapat membuat data yang dikirim
menjadi rusak, hilang, berubah, atau terduplikasi. Kesalahan/error yang terjadi
tersebut dapat diakibatkan oleh berbagai hal seperti kesalahan dalam transmisi
(hardware), network interface, interferensi elektrik, noise (misal thermal
noise), koneksi, dll.
Berikut ini akan dijelaskan beberapa jenis Metode
Error Checking :
1. Parity Bit
Metode parity bit adalah untuk mendeteksi bit error
dengan asynchronous dan transmisi synchronous yang berorientasi karakter. Pada
suatu skema bahwa transmitter memberikan bit tambahan (parity bit) untuk setiap
karakter pokok yang ditransmisi. Parity bit adalah suatu fungsi dari bit untuk
melapisi karakter yang sedang ditransmisi, menerima masing-masing karakter
kemudian melakukan fungsi yang sama untuk karakter lain, membandingkan hasil
dengan parity bit yang diterima.
2. CYCLIC REDUNDANCY CHECK (CRC)
CRC (Cyclic Redundancy Check) adalah algoritma untuk
memastikan integritas data dan mengecek kesalahan pada suatu data yang akan
ditransmisikan atau disimpan. Data yang hendak ditransmisikan atau disimpan ke
sebuah media penyimpanan rentan sekali mengalami kesalahan, seperti halnya
noise yang terjadi selama proses transmisi atau memang ada kerusakan perangkat
keras. Untuk memastikan integritas data yang hendak ditransmisikan atau
disimpan, CRC dapat digunakan. CRC bekerja secara sederhana, yakni dengan
menggunakan perhitungan matematika terhadap sebuah bilangan yang disebut
sebagai Checksum, yang dibuat berdasarkan total bit yang hendak ditransmisikan
atau yang hendak disimpan.
Dalam transmisi jaringan, khususnya dalam jaringan
berbasis teknologi Ethernet, checksum akan dihitung terhadap setiap frame yang
hendak ditransmisikan dan ditambahkan ke dalam frame tersebut sebagai informasi
dalam header atau trailer. Penerima frame tersebut akan menghitung kembali
apakah frame yang ia terima benar-benar tanpa kerusakan, dengan membandingkan
nilai frame yang dihitung dengan nilai frame yang terdapat dalam header frame.
Jika dua nilai tersebut berbeda, maka frame tersebut telah berubah dan harus
dikirimkan ulang.
CRC didesain sedemikian rupa untuk memastikan
integritas data terhadap degradasi yang bersifat acak dikarenakan noise atau
sumber lainnya (kerusakan media dan lain-lain). CRC tidak menjamin integritas
data dari ancaman modifikasi terhadap perlakukan yang mencurigakan oleh para hacker,
karena memang para penyerang dapat menghitung ulang checksum dan mengganti
nilai checksum yang lama dengan yang baru untuk membodohi penerima.
3. AUTOMATIC REPEAT REQUEST (ARQ)
Automatic Repeat reQuest (ARQ), juga dikenal sebagai
Ulangi otomatis Query, adalah metode error-kontrol untuk transmisi data yang
menggunakan acknowledgment (pesan yang dikirim oleh penerima menunjukkan bahwa
ini benar menerima data frame atau paket) dan timeout (ditentukan periode waktu
diperbolehkan untuk berlalu sebelum pengakuan harus diterima) untuk mencapai
transmisi yang handal data melalui layanan tidak bisa diandalkan. Jika pengirim
tidak menerima pemberitahuan sebelum timeout, biasanya kembali mentransmisikan
frame / paket sampai pengirim menerima pengakuan atau melebihi jumlah yang
telah ditentukan re-transmisi.
Jenis protokol ARQ termasuk
a) Stop-dan-wait ARQ
b) Go-Back-N ARQ
c) Ulangi ARQ Selektif
Protokol ini berada di Lapisan data Link atau
Transport dari model OSI.
a) stop and wait
Informasi tentang Stop-dan-tunggu permintaan repreat
otomatis (Stop-dan-tunggu ARQ)
Stop-dan-tunggu permintaan repreat otomatis
(berhenti-dan-tunggu ARQ) merupakan koreksi kesalahan teknik di mana pengirim
mengirimkan suatu blok data dan kemudian menunggu acknowledgment sebelum
transmisi
b) Go Back N ARQ
Go-Back-N ARQ adalah contoh khusus dari permintaan
ulang otomatis (ARQ) protokol, di mana proses pengiriman terus mengirimkan
sejumlah frame ditentukan oleh ukuran jendela bahkan tanpa menerima pengakuan
(ACK) paket dari penerima. Ini adalah kasus khusus dari protokol sliding window
umum dengan mengirimkan ukuran jendela N dan menerima ukuran jendela 1. Proses
penerima melacak nomor urutan frame berikutnya mengharapkan untuk menerima, dan
mengirimkan nomor yang dengan setiap ACK yang dikirimkan. Penerima akan
mengabaikan setiap frame yang tidak memiliki nomor urut yang tepat itu
mengharapkan - apakah frame yang merupakan "masa lalu" duplikat dari
bingkai itu sudah ACK'ed [1] atau apakah frame yang merupakan "masa depan"
bingkai masa lalu paket terakhir itu sedang menunggu. Setelah pengirim telah
mengirimkan semua frame di jendela, itu akan mendeteksi bahwa seluruh frame
frame yang hilang sejak pertama beredar, dan akan kembali ke nomor urutan ACK
terakhir yang diterima dari proses penerima dan isi jendela dimulai dengan
bingkai tersebut dan melanjutkan proses lagi.
Go-Back-N ARQ adalah penggunaan yang lebih efisien
sambungan dari Stop-dan-tunggu ARQ, karena tidak seperti menunggu suatu
pengakuan untuk setiap paket, koneksi masih digunakan sebagai paket yang sedang
dikirim. Dengan kata lain, selama waktu yang seharusnya dapat dihabiskan
menunggu, lebih banyak paket yang sedang dikirim. Namun, metode ini juga
mengakibatkan frame mengirimkan beberapa kali - jika frame apapun telah hilang
atau rusak, atau ACK yang mengakui mereka adalah hilang atau rusak, maka frame
dan semua frame berikut di jendela (bahkan jika mereka telah diterima tanpa
kesalahan) akan akan kembali dikirim. Untuk menghindari hal ini, ARQ Ulangi
Selektif dapat digunakan
c) Selective Reject
Informasi tentang Selektif-menolak permintaan ulang
secara otomatis (Selective-reject ARQ)
Selektif-menolak permintaan ulang otomatis
(selektif-menolak ARQ) adalah teknik error kontrol yang dalam pengiriman hanya
memancarkan kembali blok yang salah
Topik lain sumber daya pada Sistem Komunikasi yang
terkait dengan Selective-menolak permintaan ulang otomatis meliputi:
- Pengakuan (Ack)
- Go-back-N otomatis mengulangi permintaan (Go-back-N
ARQ)
- Stop-dan-tunggu permintaan repreat otomatis (Stop-dan-tunggu
ARQ)
- Negatif pengakuan (NACK)