0% found this document useful (0 votes)
177 views

Data Link Layer

The document discusses error control techniques at the data link layer, including error detection and error correction. It describes several error detection methods such as parity checking, longitudinal redundancy checking (LRC), and polynomial checking including checksum and cyclic redundancy check (CRC). It also discusses error correction techniques like automatic repeat request (ARQ) which uses retransmission, and forward error correction (FEC) which allows receivers to correct errors without retransmission. Hamming codes are provided as an example of FEC.

Uploaded by

Rian Rorres
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
177 views

Data Link Layer

The document discusses error control techniques at the data link layer, including error detection and error correction. It describes several error detection methods such as parity checking, longitudinal redundancy checking (LRC), and polynomial checking including checksum and cyclic redundancy check (CRC). It also discusses error correction techniques like automatic repeat request (ARQ) which uses retransmission, and forward error correction (FEC) which allows receivers to correct errors without retransmission. Hamming codes are provided as an example of FEC.

Uploaded by

Rian Rorres
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

DATA LINK LAYER (2)

usz
Fungsi utama data link layer
1. Framing
2. Error control  Deteksi dan Koreksi Error
3. Flow control
2. Error Control
Fungsi utama data link layer
Sumber-Sumber Error
• Noise saluran dan distorsi – penyebab utama
• Lebih mungkin pd media elektrik
• Sinyal elektrik yg tdk diinginkan
• Disebabkan gangguan peralatan dan alam
• Menurunkan performansi suatu circuit
• Tanda-tanda
• Bit-bit extra
• Bit-bit berubah (“flipped” bits)
• Bit-bit hilang
Sumber Error dan Pencegahan
Source of Error What causes it How to prevent it

Line Outages Faulty equipment, Storms,


Accidents (circuit fails)
White Noise Movement of electrons (thermal Increase signal strength
More important

(Gaussian Noise) energy) (increase SNR)


Impulse Noise Sudden increases in electricity Shield or move the wires
(Spikes) (e.g., lightning, power surges)

Cross-talk Multiplexer guard bands are too Increase the guard bands, or
small or wires too close together move or shield the wires
Echo Poor connections (causing signal to Fix the connections, or
be reflected back to the source) tune equipment
Attenuation Gradual decrease in signal over Use repeaters or
distance (weakening of a signal) amplifiers
mostly on analog

Intermodulation Signals from several circuits Move or shield the wires


Noise combine
Jitter Analog signals change (small Tune equipment
changes in amp., freq., and phase)
Harmonic Amplifier changes phase (does not Tune equipment
Distortion correctly amplify its input signal)
Error control
Error control

Error detection Error correction

Forward error Backward error


correction correction

Error detection – are there incorrect bits?


Error correction – repair any mistakes that have happened?
Forward error correction – invest effort before error happened;
try to hide it from higher layers
Backward error correction – invest effort after error happened;
try to repair it
2-1. Deteksi Error
Pengirim mengkalkulasi Error Penerima kalkulasi ulang EDV
Detection Value (EDV) dan dan bandingkan dg EDV yg
mentransmisikan bersama diterima
data
Mathematical Mathematical
calculations calculations
?
=
Data yg akan EDV
ditransmisikan
– Jika sama  tdk ada error
saat transmisi
Makin besar ukuran, makin
baik deteksi error (tetapi – Jika berbeda  Terjadi
efisiensi lebih rendah) error saat transmisi
Teknik Deteksi Error
a) Parity checks
b) Longitudinal Redundancy Checking (LRC)
c) Polynomial checking
• Checksum
• Cyclic Redundancy Check (CRC)
A). Parity Checking
• Metode yg paling tua dan paling sederhana
• Satu bit ditambahkan pd tiap karakter
• Even parity: penambahan 1 bit parity  jumlah bit 1 genap (even)
• Odd parity : penambahan 1 bit parity  jumlah bit 1 ganjil (odd)
• Sisi penerima kalkulasi ulang parity bit
• Jika satu bit mengalami error transmisi jumlah bit 1 tdk sesuai dg parity
yg digunakan
• Sederhana, tetapi tdk dp mendeteksi semua error
• Jika dua (atau sejumlah genap) bit mengalami error, parity check tampak
benar
• Mendeteksi sekitar 50% dari error
Contoh Penggunaan Parity
Utk dikirimkan: huruf V pd 7-bit ASCII: 0110101

EVEN parity sender receiver


01101010
Jum semua 1
ditransmisikan EVEN
parity

ODD parity sender receiver


01101011

Jum semua 1 ditransmisikan


ODD parity
B). LRC - Longitudinal Redundancy Checking
• Tambahkan karakter tambahan (bukan satu bit)

• Block Check Character (BCC) pd tiap blok data

• Ditentukan spt parity, tetapi menghitung secara longitudinal pd pesan (dan


juga secara vertikal)
• Kalkulasi berdasarkan pd bit ke-1, ke-2 dst (dari semua karakter) pd blok

• Bit ke-1 dari BCC  jumlah 1 pada bit ke-1 dari karakter

• Bit ke-2 dari BCC  jumlah 1 pada bit ke-2 dari karakter

• Perbaikan signifikan dibandingkan parity checking

• 98% laju deteksi error utk burst errors ( > 10 bit)

• Kurang mampu deteksi single bit errors


Penggunaan LRC Utk Deteksi Error
Contoh:
kirim pesan “DATA” dg ODD parity dan LRC

Letter ASCII Parity bit


D 10001001
A 10000011
T 10101000
A 10000011
BCC 1 1 0 1 1 1 1 1

Note: parity bit BCC juga


ditentukan dg parity
C). Polynomial Checking
• Prinsip Polynomial Code :
• Mengirim frame yang sudah di ’checksum’ (T(x))
• Penerima membagi T(x) dengan G (x)
• Bila ada sisa --> ada error pada saat transmisi

• Contoh: CRC (Cyclic Redundancy Check)


14

Algoritma untuk menghitung checksum adalah sbb:


1. r merupakan pangkat tertinggi dari G(x).
Tambahkan 0 bit sebanyak r pada akhir frame,
sehingga menjadi : M + R bit
jadi : xrM(x)  dalam bentuk biner menjadi :2r M
2. Bagilah xrM(x) dengan G(x)
3. Hasilnya berupa checksumed frame yang akan
ditransmisikan : T(x)
Contoh :
Frame : 1101011011
Generator : 10011
Message setelah ditambahkan 4 bit nol :
11010110110000
Contoh
 G = x3 + 1
 M = x 5 + x4 + x 2 + 1

 Operasi berbasis XOR

 Transmisi: 110101011
2-2. Koreksi Error
• Begitu terdeteksi, error harus dikoreksi

• Teknik Koreksi Error

a) Retransmisi (Backward error correction)

• Sederhana, efektif, murah, umum digunakan

• Dikoreksi dg retransmisi data

• Penerima, jika mendeteksi error, meminta pengirim utk retransmit message

• Sering disebut Automatic Repeat Request (ARQ)

b) Forward Error Correction

• Peralatan penerima dapat mengkoreksi sendiri messages yg datang


A. Automatic Repeat Request (ARQ)
• Proses utk meminta data transmisi dikirim ulang
• Protokol utama ARQ
• Stop and Wait ARQ (teknik half duplex)
• Sender mengirimkan sebuah message dan menunggu
acknowledgment, lalu kirim message berikutnya
• Receiver menerima message dan mengirimkan acknowledgement
(ACK), dan menunggu message berikutnya
• Continuous ARQ (teknik full duplex)
• Sender secara kontinyu mengirimkan paket tanpa menunggu
acknowledge dari penerima
• Receiver secara kontinyu menerima messages tanpa harus
memberikan acknowledment dg segera
Stop and Wait ARQ
Sender Receiver
Kirim paket, lalu
tunggu kabar dari
receiver
Kirim
acknowledgement
Kirim paket
berikutnya
Kirim negative
acknowledgement

Kirim ulang
paket
Continuous ARQ
Sender kirim paket secara
kontinyu tanpa menunggu
acknowledge dari receiver

Perhatikan bhw
acknowledgments skrg
mengidentifikasi paket yg
di- acknowledged

Receiver kirim kembali


NAK utk spesifik paket
utk dikirim ulang
B. Forward Error Correction (FEC)
• Peralatan penerima dp mengkoreksi sendiri message yg datang
(tanpa retransmisi)
• Perlu informasi ekstra utk koreksi
• Kirim bersama dg data
• Memungkinkan data utk di-check dan dikoreksi oleh penerima
• Jumlah informasi extra : biasanya 50-100% dari data
• Berguna utk transmisi satelit
• Transmisi satu arah (retransmisi tidak dimungkinkan)
• Waktu transmisi sangat panjang (retransmisi akan memakan waktu lama)
• Biaya FEC tdk signifikan (dibandingkan biaya total peralatan)
Contoh FEC  Hamming Code
Contoh: Hamming (7,4) Code
Hamming code (n, k) artinya: Informasi Codeword
0000 0000000
Untuk setiap integer r≥2 terdapat code 0001 0001111
dengan panjang blok n = 2r – 1 dan panjang 0010 0010101
pesan k = 2r − r – 1. 0011 0011010
0100 0100011
𝒌 2𝑟 −𝑟−1 0101 0101100
Rate Hamming code adalah 𝑹 = 𝒏
= 2𝑟 −1 0110 0110110
r adalah Hamming distance 0111 0111001
1000 1000110
1001 1001001
1010 1010011
1011 1011100
1100 1100101
1101 1101010
1110 1110000
1111 1111111
Hamming Code
• Menangani single error code
• Cara membuat codenya :
• Posisi parity bit ada di bit sesuai 2n (1,2,4,8,16,32….)
• Selain posisi tersebut akan dipakai sebagai data (3,5,6,7…)
• Untuk mencari besar parity (0 atau 1) dapat dilakukan sbb:
Posisi paritas
• Posisi 1 : bergantian ada 1bit dan tidak ada 1bit
• Posisi 2 : bergantian ada 2 bit dan tidak ada 2 bit
• Posisi 4 : bergantian ada 4 bit dan tidak ada 4 bit :

Dan seterusnya untuk posisi 8, 16, 32, 64, ….


• Bit Paritas ditentukan sebagai 1 bila jumlah bit 1-nya
adalah ganjil. Bit Paritas ditentukan sebagai 0 bila
jumlah bit 1-nya adalah genap
 even parity
Contoh :
• Suatu data : 1 0 0 1 1 0 1 0
• Membuat data word –nya:
--1–001–1010
Carilah paritas-nya (even parity) :
Posisi 1 : ? – 1 – 0 0 1 – 1 0 1 0
Jumlah bit 1 genap  paritas : 0
Posisi 2 : 0 ? 1 – 0 0 1 – 1 0 1 0
Jumlah bit 1 ganjil  paritas : 1
Posisi 4 : 0 1 1 ? 0 0 1 – 1 0 1 0
Jumlah bit 1 ganjil  paritas : 1
Posisi 8 : 0 1 1 1 0 0 1 ? 1 0 1 0
Jumlah bit 1 genap paritas : 0
Jadi Code-word-nya :
011100101010

Contoh : temukan kesalahan pada bit paritas-nya (even parity)!


010101100011

111110001100

000010001010
Note: buktikan sendiri!!
Error-Correcting Codes
Penggunaan Hamming Code untuk koreksi burst error
Hamming distance (HD)
Jarak Hamming (Hamming distance):
 Jumlah posisi bit dimana dua code word berbeda
Caranya :
 Lakukan operasi XOR pada kedua codeword

Contoh: X = 0011010111
Y = 0110100101
X XOR Y= 0101110010

d(x,y) = 5 Hamming distance

Untuk HD = d, mampu mendeteksi hingga d-1 bit error dalam suatu codeword.
Untuk HD = d, mampu mengkoreksi hingga (d-1 )/2 bit error dalam suatu codeword
3. Flow Control
Fungsi utama data link layer
Flow Control dengan ARQ
• Menjamin sender tdk transmit terlalu cepat utk receiver

• Stop-and-wait ARQ
• Receiver kirim ACK atau NAK jika siap (utk menerima paket lebih lanjut)

• Continuous ARQ
• Kedua sisi sepakat thd ukuran sliding window

• Jumlah messages yg dp ditangani oleh receiver tanpa menyebabkan delay yg


signifikan
Contoh Flow Control
window size =4 sender receiver
...3 2 1 0
0123456789
ACK 0...
(slide window)
...4
0123456789
ACK 4...
(slide window)
…8 7 6 5
0123456789
ACK 7.. set window
(slide window) size to 2
..9
0123456789
(timeout)
...9 8
0123456789
Efisiensi Transmisi
Efisiensi Transmisi
• Tujuan suatu jaringan:
• Memindahkan sebanyak mungkin bit dg error minimum
 efisiensi lebih tinggi biaya lebih rendah
• Fator yg mempengaruhi efisiensi jaringan:
• Karakteristik dari circuit (laju error/error rate, kecepatan/speed)
• Kecepatan dari peralatan, Teknik Error control
• Protocol yg digunakan
• Bit-bit informasi (memuat informasi user)
• Bit-bit Overhead (digunakan utk error checking, pembatas frame, dll.)

= Total jumlah bit info ditransmisikan


Total jumlah bit ditransmisikan
Efisiensi Transmisi dari Protocol
Async Transmission:
7-bit ASCII (info bits), 1 parity bit, 1 stop bit, 1 start bit
Efisiensi transmisi = 7 / 10  70%
mis., V.92 modem dg 56 Kbps  laju efektif 39.2 Kbps

SDLC Transmission
Asumsi 100 karakter info (800 bit), 2 flag (16 bit)
Address (8 bits), Control (8 bits), CRC (32 bits)
Efisiensi transmisi = 800 / 864  92.6%
mis., V.92 modem with 56 Kbps  51.9 Kbps effective rate

Lebih besar panjang message, efisiensi lebih baik


namun, paket yg lebih besar kemungkinan mendapatkan error
lebih besar (kemungkinan lebih banyak memerlukan
retransmisi)  kapasitas terbuang
Throughput
• Definisi lebih akurat dari efisiensi
• Total jumlah bit informasi diterima per detik; dg
mempertimbangkan:
• Bit-bit overhead (spt pd efisiensi transmisi)
• Keperluan retransmisi paket mengandung error
• Kalkulasi kompleks; tergantung pd
• Efisiensi transmisi
• Laju error
• Jumlah retransmisi
• Transmission Rate of Information Bits (TRIB)
• Digunakan sbg ukuran dari throughput
Ukuran paket Optimum
Trade-off antara ukuran paket dan throughput
Rentang yg dpt
diterima

(lebih mahal dlm hal kapasitas


(kemungkinan mengandung error circuit utk retransmisi jika ada
kecil) error)
Transmission Rate of Information Bits (TRIB)

= Jumlah bit info diterima / total waktu diperlukan utk mendptkan bit
(jumlah bit info) (Prob. Dari transmisi sukses)
waktu diperlukan utk transmit bit-bit ini + delay propagasi
Ex:
K=7 bits/character
Jumlah bit info Rata-rata jumlah Probabilitas suatu M = 400 char/block
per karakter karakter “non-info” block membutuhkan R= 4.8 Kb/s
per block retransmisi C = 10 char/block
P = 1%
K (M – C) (1 – P) T = 25 ms
TRIB = (M / R) + T 7(400-10)(1-0.01)
TRIB =
(400/600)+0.025)
Panjang paket Delay untuk tiap block = 3.908 Kb/s
(jumlah karakter Kecepatan
per block) transmisi data
CATATAN TAMBAHAN:
parameter performansi jaringan komputer
Parameter performansi
Ada beberapa parameter untuk menyatakan kehandalan suatu
jaringan komputer. Parameter itu antara lain :
• 1. Bandwitdh
• 2. Delay
• 3. Throughput
Bandwidth
• Bandwidth adalah lebar frekuensi dimana sinyal dapat secara penuh
direpresentasikan.

• Di dalam jaringan Komputer, Bandwidth sering digunakan sebagai suatu sinonim


untuk data transfer rate yaitu jumlah data yang dapat dibawa dari sebuah titik ke
titik lain dalam jangka waktu tertentu (pada umumnya dalam detik).

• Jenis Bandwidth ini biasanya diukur dalam bps (bits per second). Adakalanya juga
dinyatakan dalam Bps (bytes per second). Suatu modem yang bekerja pada 57,600
bps mempunyai Bandwidth dua kali lebih besar dari modem yang bekerja pada
28,800 bps.
Delay
• Delay = latency
• Berapa lama dibutuhkan message utk travel dari satu ujung (end) ke end lainnya
dari jaringan
• Diukur dlm unit waktu, mis., latency melintasi US adalah 24 ms
• RTT (round trip time): waktu yg diperlukan suatu message utk mencapai
tujuannya dan kembali ke pengirim
• Komponen: delay propagasi, delay transmisi, delay antrian (queuing)

• Kecepatan cahaya: 2.3 x 108 m/s pd kabel, 2.0 x 108 m/s pd fiber
• Aplikasi dpt dibatasi oleh bandwidth atau latency
• Telnet sessions dibatasi latency tetapi transfer FTP yg besar dibatasi bw
Throughput
• Ternyata konsep bandwidth tidak cukup untuk menjelaskan kecepatan jaringan dan
apa yang terjadi di jaringan. Untuk itulah konsep Throughput muncul.
• Throughput adalah bandwidth aktual yang terukur pada suatu ukuran waktu
tertentu dalam suatu hari menggunakan rute internet yang spesifik ketika sedang
mendownload suatu file.
Bandwidth vs Throughput
• Bandwidth adalah jumlah bit yang dapat dikirimkan dalam satu detik.
bandwidth = jumlah bit / waktu

• Sedangkan throughput, walau pun memiliki satuan dan rumus yang sama dengan bandwidth,
tetapi throughput lebih pada menggambarkan actual bandwidth pada suatu waktu tertentu
dan pada kondisi tertentu.

• Berikut adalah formula pembanding throughput dengan bandwidth:


t terbaik = ukuran file/bandwidth
t rata-rata = ukuran file / throughput

• Dengan hanya mempergunakan bandwidth sebagai patokan, seseorang menganggap


seharusnya file yang akan didownloadnya yang berukuran 64 kb seharusnya bisa didownload
dalam waktu sekedip mata atau satu detik, tetapi setelah diukur ternyata memerlukan waktu 4
detik. Jadi jika ukuran file yang didownload adalah 64 kb, sedangkan waktu downloadnya
adalah 4 detik, maka bandwidth yang sebenarnya atau bisa kita sebut sebagai throughput
adalah 64 kb / 4 detik = 16 kbps
Delay x Bandwidth Product

• Perkalian RTT dan bandwidth menentukan


• Jumlah informasi yg ditransmisikan user sebelum feed-back dari tujuan dpt
diterima
• Pd broadband wide-area-networks (WAN) hasil perkalian ini dpt sangat besar
• Pengirim dpt membuat overload penerima
• Jika pengirim tdk “mengisi penuh pipa”, utilisasi jaringan akan rendah

• Contoh:
• Misalkan
• jarak 1500 km
• Laju (rate) transmisi C = 100 Mbps
• Propagasi delay dua arah adalah
• 2*1500/300,000 s = 0.01 s
• Maka, hasil perkalian RTT dan C adalah
• 0.01*100,000,000 bits
= 1,000,000 bits = 1 Mbit
THANKS!!
USZ

You might also like