Data Link Control 1

25
Pengiriman Asinkron dan Sinkron Error Control

Transcript of Data Link Control 1

Pengiriman Asinkron dan Sinkron

Error Control

Layer Data Link

• Fungsi utama: pengiriman asinkron atau

sinkron, pendeteksian dan pengkoreksian

kesalahan pengiriman (error control),

pengendalian pengiriman data (flow

control), dan multiplexing

– Unit data = frame

Timing Control di Komunikasi Data

Digital • Timing control dibutuhkan untuk

mengidentifikasikan data rate pengiriman data antara pengirim dan penerima – Mengetahui durasi waktu pengiriman sebuah bit,

sehingga setiap bit di data yang dikirimkan dapat diidentifikasikan dengan benar oleh penerima

• Metode yang digunakan tergantung pada sumber informasi dari timing control tersebut – Asinkron: jika informasinya digenerate oleh penerima,

terpisah dari pengiriman.

– Sinkron: jika informasinya digenerate (secara langsung atau tidak langsung) oleh pengirim, terpisah atau disertakan di pengiriman.

Pengiriman Asinkron

• Efektif untuk pengiriman data dengan data rate

yang rendah (≤ 20 Kbps)

• Data dikirimkan karakter per karakter (8 bit -

ASCII); sinkronisasi dilakukan disetiap karakter

• Urutan pengiriman: idle start bit 8 bit

karakter parity bit (optional) stop bit

• Penerima melakukan timing control dengan

mengatur “clock” (periode pengambilan sampel

sinyal) beberapa kali lebih cepat dari data rate

Format Frame dari Pengiriman

Asinkron

Start bit

8 bit data (1 karakter)

Parity bit (untuk

mendeteksi kesalahan

pengiriman) - optional

Stop bit

Contoh (1)

• Data yang dikirimkan: A (bilangan ASCII = 65), dalam biner menjadi 01000001

• Sinyal NRZ-L digunakan

Bit 0 (+)

Bit 1 (-)

0

Idle state

Idle state = keadaan dimana tidak ada pengiriman data; ditandai dengan

pengiriman bit 1 secara terus menerus

Start bit

1 0 0 0 0 0 1 0

Stop bit

Idle state

Contoh (2)

• Data yang dikirimkan: A (bilangan ASCII = 65 dalam biner menjadi 01000001) dan B (bilangan ASCII = 66 dalam biner menjadi 01000010)

• Sinyal NRZ-L digunakan

Idle state

1 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0

Idle state

Start bit Stop bit Stop element

Start bit Stop bit

Pengiriman Sinkron (1)

• Efektif untuk pengiriman dengan data rate yang tinggi (> 20 Kbps)

• Data yang dikirimkan dalam bentuk blok-blok bit (satu blok terdiri dari sejumlah bit yang menyusun lebih dari satu karakter)

• Untuk menentukan awal dan akhir pengiriman, setiap blok diawali dengan pola preamble bit dan diakhiri dengan pola postamble bit. – Control information ditambahkan untuk digunakan di prosedur

data link control

– Gabungan antara blok data, control information, preamble dan postamble bit disebut frame

– Format pasti dari frame tersebut tergantung pada prosedur data link control yang digunakan

– Bit Stuffing untuk menghindari pola preamble dan postamble bit terulang di bagian blok data

Pengiriman Sinkron (2)

• Pada umumnya timing control yang

digunakan adalah menggunakan salah

satu teknik pengkodean sinyal digital yang

memastikan adanya transisi di sinyal yang

merepresentasikan bit 1 dan 0, misalnya

adalah Biphase (manchester encoding

atau differential manchester encoding)

Format Frame dari Pengiriman

Sinkron

Preamble bit Blok Data Postamble bit

Control information:

alamat (MAC address),

tipe frame, dll

Control information:

pendeteksian

kesalahan pengiriman –

FCS (dengan CRC)

Ilustrasi Pengiriman Sinkron • Data yang dikirimkan: A (bilangan ASCII = 65 dalam biner menjadi

01000001) dan B (bilangan ASCII = 66 dalam biner menjadi 01000010)

• Sinyal Manchester encoding digunakan

1 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0

Preamble Bit

+ Control Info Postamble Bit

+ Control Info

Pola dari preamble dan postamble bit tergantung pada protokol data link

yang digunakan. Contoh: HDLC (High-level Data Link Control, salah satu

protokol data link yang diimplementasikan oleh CISCO) menggunakan

01111110 untuk preamble dan postamble bit-nya.

Blok Data

Jenis-Jenis Kesalahan Pengiriman

• Kesalahan satu bit – Kesalahan terjadi hanya disebuah bit dan tidak mempengaruhi

bit lainnya

• Bit 1 dikirim, bit 0 diterima; atau sebaliknya

– Adanya white noise, saat rasio sinyal terhadap noise mengecil sehingga membingungkan penerima apakah sinyal yang diterima menandakan bit 1 atau 0

• Kesalahan beruntun – Kesalahan beruntun untuk deretan B bits terjadi jika bit pertama

dan terakhir dan sejumlah bit berikutnya diterima dengan kesalahan

– Lebih sering terjadi dan sulit untuk diatasi

– Terjadi karena adanya impulse noise atau penurunan kekuatan sinyal di lingkungan pengiriman secara wireless

– Efek dari kesalahan beruntun bertambah besar sejalan dengan bertambah tingginya rate pengiriman data

Proses Pendeteksian Kesalahan

Pengiriman

Teknik Pendeteksian Kesalahan

Pengiriman • Parity Check

– Skema pendetekian kesalahan pengiriman yang paling sederhana

– Menambahkan sebuah parity bit diakhir blok data

– Parity Genap: nilai parity bit adalah 1 jika jumlah bit 1 berjumlah genap

• Untuk pengiriman sinkron

– Parity Ganjil: nilai parity bit adalah 1 jika jumlah bit 1 berjumlah ganjil

• Untuk pengiriman asinkron

– Kurang ampuh, terutama untuk blok data yang panjang, kemungkinan satu blok bit terubah cukup besar

• Cyclic Redundancy Check (CRC)

Cyclic Redundancy Check (CRC)

• Teknik pendeteksian yang banyak digunakan dan sangat powerful

• Cara kerja: – Untuk sebuah blok data dengan panjang k bits, si

pengirim men-generate deretan bit dengan panjang (n-k) yang disebut Frame Check Sequence (FCS)

– Frame yang dihasilkan terdiri dari deretan n bits (blok data dan FCS) yang dapat dibagi oleh sejumlah angka yang ditentukan sebelumnya

– Si penerima kemudian membagi frame dengan salah satu angka tersebut, jika tidak ada sisa bagi, maka tidak ada kesalahan

• Tiga prosedur: aritmetika modulus 2

• Melakukan operasi penjumlahan dengan menggunakan operasi XOR

• Contoh operasi XOR:

1111

1010

-------

0101

• Langkah-langkah pembuatan pesan dengan kode CRC:

– Ditentukan

• T = Pesan yang akan dikirimkan dengan ukuran n-bit

• D = Blok data atau pesan asli dalam bentuk bilangan biner yang merupakan k-bit pertama dari T

• R = (n-k)-bit FCS, (n-k)-bit terakhir dari T

• P = pola berukuran n-k+1 bit; ini adalah angka yang ditentukan sebelumnya

– Hitung:

– Hitung T = 2(n-k)D+R

CRC

Aritmetika Modulus 2

P

RQ

P

Dkn

)(2

CRC

Aritmetika Modulus 2 – Contoh Pengiriman

• Diketahui:

– Pesan D = 1010001101 (10 bit)

– Pola P = 110101 (6 bit)

– Untuk n = 15, k = 10, maka (n-k) = 5

• 25D = 100000×1010001101=101000110100000 • (25D)/P:

1 1 0 1 0 1 0 1 1 0 (Q)

110101 1 0 1 0 0 0 1 1 0 1 0 0 0 0 0

1 1 0 1 0 1 : : : : : : : : :

1 1 1 0 1 1 : : : : : : : :

1 1 0 1 0 1 : : : : : : : :

1 1 1 0 1 0 : : : : : :

1 1 0 1 0 1 : : : : : :

1 1 1 1 1 0 : : : :

1 1 0 1 0 1 : : : :

1 0 1 1 0 0 : :

1 1 0 1 0 1 : :

1 1 0 0 1 0 :

1 1 0 1 0 1 :

0 1 1 1 0 (R)

• T = 25D+R = 101000110101110 (pesan yang dikirimkan)

CRC

Aritmetika Modulus 2 – Contoh Penerimaan

• Pesan T diterima

• T/P:

1 1 0 1 0 1 0 1 1 0 (Q)

110101 1 0 1 0 0 0 1 1 0 1 0 1 1 1 0

1 1 0 1 0 1 : : : : : : : : :

1 1 1 0 1 1 : : : : : : : :

1 1 0 1 0 1 : : : : : : : :

1 1 1 0 1 0 : : : : : :

1 1 0 1 0 1 : : : : : :

1 1 1 1 1 0 : : : :

1 1 0 1 0 1 : : : :

1 0 1 1 1 1 : :

1 1 0 1 0 1 : :

1 1 0 1 0 1 :

1 1 0 1 0 1 :

0 (R)

• Karena R = 0, maka tidak ada error terjadi pada pesan yang diterima

Diagram Proses Perbaikan

Kesalahan Pengiriman

Prinsip Kode Blok untuk Perbaikan

Kesalahan Pengiriman

• Menggunakan hamming codes untuk mengidentifikasikan dan memperbaiki kesalahan sebuah bit dalam sebuah blok data

• Digunakan dua variabel k dan n, dimana k adalah ukuran blok data asli dan n adalah ukuran codeword hamming (n,k) code

• Aritmetika modulus 2 dengan menggunakan operator XOR

Contoh Hamming Code

• (11,7) code digunakan – 7 bit untuk data

– 4 bit untuk bit pemeriksaan di setiap posisi bit yang merupakan pangkat dari 2

Pengirim

• Data: 1001100

Posisi bit: 11 10 9 8 7 6 5 4 3 2 1

Nilai bit: 1 0 0 _ 1 1 0 _ 0 _ _

• Setiap posisi bit dengan nilai bit 1 dijumlahkan: 11: 1011

7: 0111

6: 0110

------------

1010

• Codeword yang dikirimkan adalah: 1 0 0 1 1 1 0 0 0 1 0

Contoh Hamming Code (…)

Penerima

• Data yang diterima: 1 0 0 1 1 1 0 0 0 0 0 (mengandung kesalahan)

Posisi bit: 11 10 9 8 7 6 5 4 3 2 1

Nilai bit: 1 0 0 1 1 1 0 0 0 0 0

• Setiap posisi bit dengan nilai bit 1 dijumlahkan: 11: 1011

8: 1000

7: 0111

6: 0110

-----------

0010

Contoh Hamming Code (…)

Penerima

• Data yang diterima: 1 0 0 1 1 1 0 0 0 1 0 (tidak mengandung kesalahan)

Posisi bit: 11 10 9 8 7 6 5 4 3 2 1

Nilai bit: 1 0 0 1 1 1 0 0 0 1 0

• Setiap posisi bit dengan nilai bit 1 dijumlahkan: 11: 1011

8: 1000

7: 0111

6: 0110

2: 0010

------------

0000

Teknik perbaikan kesalahan

lainnya

• Bose-Chaudhuri-Hocquenghem (BCH)

codes

• Reed-Solomon (RS) codes

• Turbo codes

• Quantum codes

Untuk detailnya dapat dilihat di

http://www.eccpage.com

Latihan

• Diketahui pesan yang akan dikirimkan yaitu “UAS”, dimana nilai ASCII U=85(01010101), A=65(01000001), dan S=83(01010011). Diasumsikan pesan akan dikirimkan dalam bentuk sinyal digital yang dikodekan dengan NRZ-L – Gunakan hamming code (17,12) untuk membentuk

codeword dari 12-bit blok data tersebut!

– Ilustrasikan pengiriman data secara asinkron dan tambahkan odd parity bit disetiap pengiriman!

– Ilustrasikan pengiriman data secara sinkron, dimana setiap blok terdiri dari 12 bit data!