Anda di halaman 1dari 70

Flow Control

&
Error Control
1
EE184302
Dasar Sistem dan Jaringan Telekomunikasi
3 sks
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
2 ERROR CONTROL

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


MENGENDALIKAN ERROR-DATA
3
• Teknik yang sudah dibahas sebelumnya tentang mekanisme dasar
tentang pengiriman dan penerimaan informasi, harus mampu
mendeteksi kehadiran error transmisi.
• Saat error transmisi terdeteksi, bahkan hanya satu bit tunggal
sekalipun, maka 1 blok data komplit (1 paket = 1 frame) harus
dibuang → skema best-try transmission; dikenal sebagai
connnectionles mode transmission.
• Skema reliable transmission (dikenal sbg connection-oriented
transmission): mendeteksi saat error hadir dan mendefinisikan
sebuah set aturan atau prosedur pengontrolan yang diadosi baik
pada kedua sisi komunikasi (sender & receiver) untuk memastikan
transfer pesan yang HANDAL.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
4 Kebutuhan ERROR CONTROL

Untuk melengkapi proses transfer yang handal, divais


pengontrol di sisi penerima harus menginformasikan ke
sumber (pengirim) bahwa sebuah error telah terdeteksi dan
kopi lain yang terkait frame tsb harus dikirim ulang.
Kombinasi siklus deteksi kesalahan/koreksi kesalahan
disebut “error control”
Error Control = error detection + error correction

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


5 FLOW CONTROL
Selain error control, terdapat mekanisme kontrol lain yang
harus diperiksa oleh 2 sisi komunikasi, yaitu oleh Tx & RX
→ protokol DATA LINK (Control).
Perlu untuk koreksi error:
→ Kemampuan untuk mendeteksi bit-bit SALAH
→ Kemampuan untuk mendeteksi bit mana yang SALAH
Untuk meminimalisir error karena paket SALAH atau paket
ACK/NACK HILANG maka diperlukan FLOW CONTROL
Flow Control→ memungkinkan masing-masing sisi Tx-Rx
disediakan ruang tunggu (BUFFER)
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
6
MANUAL ERROR CONTROL
• Ketika memasukkan data ke dalam komputer (menggunakan
keyboard), menghasilkan codeword dari setiap key (tuts) yang
ditekan, yang normalnya oleh komputer ditransmisikan secara
bit-serial menggunakan sebuah UART (Asynchronous Receiver-
Transmitter) dan transmisi asinkron.
• Program dalam komputer akan mengontrol proses input ke layer
display. Jika karakter yang didisplai berbeda dengan yang
dimasukkan atau yang dimaksud, maka karakter kontrol yang
sesuai (delete atau backspace) bisa dimasukkan.
• Saat kontrol diterima, program kontrol akan membuang karakter
yang dimasukkan sebelumnya dan melenyapkannya dari layer.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
7 AUTOMATIC ERROR CONTROL

Ketika komputer sedang mentransfer blok karakter (frame)


secara serial melintasi saluran data menuju komputer lain
(receiver), maka program dalam komputer penerimaan:
→ Harus bisa mengendalikan proses peneriman
→ Harus bisa memperlihatkan prosedur kendali kesalahan
otomatis tanpa ada intervensi apapun dari pengguna
(user): Automatic Repeat Request (ARQ)

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


8
Beberapa Terminologi

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


9 Catatan:
Frame = paket = blok informasi= codeword= pesan
Pengirim= sender=source=transmitter= Tx
Penerima = sink= destination=receiver = Rx
CO = connection-oriented → sebelum mengirim informasi harus
reservasi dulu (contoh : telepon)
CS= connectionless-oriented → sebelum mengirim informasi tidak
perlu reservasi dulu (contoh : email, sms)
ACK = Acknowledgement → tanda bukti informasi sudah BENAR
NACK = Negative-Acknowledgement→ tanda bukti informasi yang dikirim
SALAH/RUSAK (dan minta dikirim ulang =retransmisi)
TIMEOUT = waktu menunggu ACK/NACK habis (bisa karna paket HILANG
atau ACK/NACK yang hilang), shg transmitter berinisiatif mengirim ulang paket.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


10 Perbedaan Lintasan Paket
 LINK = jalur yang menghubungkan
Tx-Rx secara langsung

 PATH = jalur yang menghubungkan


Tx-Rx secara TIDAK LANGSUNG
(bisa melewati beberapa NODE lain)

 ROUTE = beberapa alternatif jalur


yang menghubungkan Tx-Rx, bisa
berupa link atau path.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


11
Perbedaan Link, Path & Route
Link: menghubungkan 2 buah NODE (berurutan)
Dapat berupa link pada jaringan yang masing-masing node menggunakan
kabel disebut Wireline (jaringan kabel). Sedangkan jaringan yang
menggunakan link berupa jalur transmisi tanpa kabel disebut Wireless
(jaringan tanpa kabel).
Path: menghubungkan 2 buah NODE yang tidak bersisian
(tidak berurutan), sehingga harus melewati satu atau lebih
NODE lain.
Route: menghubungkan 2 buah NODE yang mungkin tidak
bersisian (tidak berurutan) dan tersedia lebih dari satu alternatif
lintasan yang bisa dipilih. Mirip dengan sambungan PARALEL
dari beberapa lintasan SERIAL yang berbeda.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
12 LAJU BIT Data (bps)
 Laju bit = bit rate = jumlah bit yang sampai ke penerima dalam
periode waktu 1 detik.
 Satuan bit-rate : bps (Bit per second = bit per detik)
 Terkadang ada satuan Bps (Byte per second), yang bisa diubah
ke dalam bps :
Bit rate = Bps x 8 bit (bps)
 Jika yang datang adalah data dalam bentuk paket/frame, maka
bisa dikonversi menjadi bit, dengan mengalikan jumlah frame
dlm yang datang selama rentang waktu 1 detik dengan jumlah
ukuran frame (jumlah bit per frame).
Bit rate = jumlah frame per detik x jumlah bit per frame (bps)

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


ROUND TRIP TIME (RTT) → Transmisi Data Paket
13
Primary (P) : stasiun pengirim
Secondary (S) : stasiun penerima

ROUND TRIP TIME (RTT):


Adalah waktu 1 siklus paket data normal,
yaitu dari saat pertama dikeluarkan oleh
stasiun pengirim (transmistter) hingga
pengirim menerima pemberitahuan ACK
dari stasiun penerima.

RTT = Tp+Tix+Tip+Tp+Tax+Tap
Tp = Frame propagation delay (P → S)
Tix = Frame transmission time (P → S)
Tip = Frame processing time in S
Tp = ACK propagation delay (S → P)
Tax = ACK transmission time (S → P)
Tap = ACK processing time in P
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
14
RTT = Tp+Tix+Tip+Tp+Tax+Tap
Tp = Frame propagation delay (P → S) Tp = ACK propagation delay (S → P)
→Waktu (delay) yang diperlukan oleh →Waktu (delay) yang diperlukan oleh
paket data untuk melintasi jarak frame ACK untuk melintasi jarak
(link/path) dari Tx (stasiun P) ke Rx (link/path) dari Rx (stasiun S) ke Tx
(stasiun S) (stasiun P)
Tix = Frame transmission time (P → S) Tax = ACK transmission time (S → P)
→ Waktu yang setara dengan lebar paket → Waktu yang setara dengan lebar frame
(bit serial) setelah dikonversi dlm waktu ACK (bit serial) setelah dikonversi dlm
(delay). waktu (delay).
Tip = Frame processing time in S Tap = ACK processing time in P
→ Waktu yang diperlukan Rx (Stasiun S) → Waktu yang diperlukan Tx (Stasiun P)
untuk memeriksa paket yang datang untuk memeriksa frame ACK/NACK,
(BENAR atau SALAH/RUSAK) sebelum memutuskan menyiapkan paket
berikutnya atau mengulang paket
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
sebelumnya yang RUSAK/SALAH.
15 Delay Propagasi vs Delay Transmisi
 Mengitung Delai Propagasi (Tp):  Mengitung Delai Transmisi (Tix):
Misal: Misal:
Cepat rambat link/path = 2.10 8 m/s Laju bit link/path = 200 kbp.
Jarak Tx-Rx (jarak P-S) = 1500 km. Lebar frame = 1000 Byte
Delay propagasi (Tix) : waktu yang
Delay propagasi (Tp) : waktu yang diperlukan untuk menggeser sebuah frame
diperlukan untuk menempuh jarak 1500 1000 Byte.
km.
1000 Byte = 1000x 8 = 8000 bit.
Tp = (1,5.106)/(2.108) = 7,5 ms Laju bit (Rb) = 200.000 bit/s
Periode bit (Tb) = 1/ Rb =1/200.000 = 5 μs

Tix = 8000 x 5 μs = 40 ms.


SRI RAHAYU - TEKNIK ELEKTRO (ITS)
16 WAKTU “TIMEOUT”

Timeout:
T
waktu maksimal yang diperlukan (ditetapkan)
oleh stasiun pengirim (transmistter) untuk
menunggu datangnya ACK/NACK sebagai
respon dari data (paket) yang sudah dikirim,
sebelum TRANMISTTER memutuskan
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
mengirim ulang.
17
Penentuan Waktu “Timeout”
 Waktu Timeout sebaiknya ≥ RTT.
 Waktu timeout yang terlalu KECIL, akan memungkinkan banyak terjadi
pengulangan data (retransmisi) atas inisiatif Tx. Akibatnya di sisi Rx juga banyak
terjadi paket data yang dobel.
 Waktu timeout yang terlalu BESAR, akan memungkinkan waktu tunggu
ACK/NACK akan menjadi lebih lama. Ini seperti mengulur waktu propagasi yang
berdampak pada laju frame per detiknya yang menjadi lebih rendah.
 Waktu timeout yang baik (tidak terlalu besar & tidak terlalu kecil), untuk
memberikan waktu bagi protokol routing untuk memilihkan jalur alternatif lain
yang mungkin sedikit lebih panjang.
 Ditinjau dari performansi sistem komunikasi data:
- Timeout yang terlalu kecil → Paket LOSS akan tinggi
- Timeout yang terlalu besar → Delay paket (total) rata-rata akan tinggi
- NACK yang terlalu banyak → menunjukkan Paket Error yang tinggi
- Timeout yang sedikit longgar → memberi jitter (variasi delay) yang kecil.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
Automatic Repeat Request
(ARQ)
Stop and Wait
18
Go Back N
Selective Reject

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


19
Model Transmisi Paket/Frame

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


20 PRINSIP KENDALI KESALAHAN
(ERROR CONTROL)
• Secara khas, komputer penerima akan memeriksa frame yang diterima untuk
mengecek kemungkinan ada atau tidaknya data yang SALAH (error
transmisi) dan kemudian mengirim kembali pesan kontrol singkat (frame),
entah berupa ACK (bukti penerimaan data sudah BEBAR) atau NACK
(sebagai permintaan salinan frame yang sudah dikirim sebelumnya untuk
dikiram ulang → Automatic Repeat Request (ARQ)

Ada 2 tipe dasar ARQ:


1. Idle RQ : digunakan dalam skema transmisi data berbasis karakter/byte
2. Continuous RQ: digunakan dalam skema transmisi berbasis BIT
(menerapkan strategi retransmisi SELECTIVE REPEAT atau GO-BACK-N).
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
PENGERTIAN “ARQ”
21
Automatic Repeat Request (ARQ) adalah mekanisme yang mengijinkan
protokol DATA LINK untuk mengelola ERROR dan meminta kirim ulang
paket yang SALAH tsb.

Ada 3 pendekatan dasar:


1. Stop & Wait: (Idle RQ): digunakan untuk menghentikan & menunggu
protokol pengontrol aliran.Membutuhkan notifikasi spesifik untuk setiap
paket.
2. Go-Back-N: kontinyu RQ : digunakan dengan protokol pengendali aliran
“sliding-window”. Dibutuhkan oleh pengirim (sender) yang menerapkan
konsep retransmisi paket SALAH sejak dari awal periode window.
3. Selective Repeat: RQ kontinyu: digunakan dengan protokol kendali aliran
“sliding window”. Dibutuhkan bila pengirim hanya retransmisi paket
tertentu (yang SALAH saja).
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
22
Kendali Kesalahan (Error Control)
Persyaratan untuk mekanisme kontrol kesalahan:
 Pendeteksi kesalahan (Error Detection): Baik pengirim dan penerima, harus
bisa memastikan bahwa mungkin ada kesalahan sbg dampak transmisi data.
 ACK positif (ACK = Aknowledgement): Ketika penerima mendapat frame/paket
yang BENAR, harus mengenalinya.
 Negatif-ACK (NACK): Ketika penerima (receiver) menerima frame/paket
RUSAK (ERROR), maka NACK akan dikirim ke transmitter dan minta frame
dikirim ulang (retransmisi). Ini retransmisi atas permintaan penerima.
 Pengiriman ulang (retransmission): Pengirim mempertahankan clock dan
menetapkan periode waktu habis (time-out). Jika selama waktu tsb, ternyata ACK
atau NACK (tentang frame data yang dikirim sebelumnya) tidak tiba, maka
transmitter berpikir mengirim ulang. Ini retransmisi atas inisiatif pengirim.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


“Idle” Repeat Request
23 (Idle RQ)

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


24 KENDALI KESALAHAN (ERROR CONTROL)

KENDALI KESALAHAN
→Pengertian-pengertian dasar dalam
kendali kesalahan
IDLE RQ
→Prinsip kerja kendali kontrol IDLE RQ
→Arsitektur Idle RQ
→Spesifikasi Idle RQ
→Penggunaan Idle RQ

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


25
IDLE - RQ
• Sering disebut protokol pengendali aliran : STOP & WAIT.
• Beroperasi secara mode HALF-DUPLEX (bergantian).
• Setelah pengirim (A) mengirim paket, ia akan menunggu dulu datangnya
ACK dari penerima (B), sebelum mengirimkan paket berikutnya.
Prosesnya:
- A mengirim data ke B
- A menunggu respon dari B.
Kemungkinan Responnya:
Jika ACK yang tiba → A akan mengirim paket berikutnya.
Jika NACK yang tiba → A akan mengirim ulang paket sebelumnya.
Jika tidak ada yang tiba → setelah selang waktu tertentu dilampaui (time-
out), A akan mengirim ulang paket (retransmisi).
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
26
Cara Kerja Protokol IDLE - RQ
• Transisi berikut dapat terjadi di Stop-and-Wait ARQ:
• Pengirim mempertahankan waktu tertentu (time-out).
• Ketika frame dikirim, pengirim memulai
mengaktifkan time-out counter.
• Jika ACK frame datang tepat waktu, pengirim
mentransmisikan frame berikutnya dalam antrian.
• Jika ACK tidak datang tepat waktu, pengirim
mengasumsikan bahwa frame atau ACK hilang
dalam perjalanan. Pengirim mentransmisikan ulang
frame dan memulai penghitungan time-out kembali.
• Jika ternyata yang diterima NACK, pengirim
mentransmisikan ulang frame.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


27 Beberapa Kasus Protokol STOP & WAIT

Deteksi dan koreksi kesalahan


Frame yang hilang
Frame yang rusak
Operasional normal:
→ Deteksi kesalahan
→ ACK positif
Permintaan pengulangan otomatis:
→ Pengiriman ulang setelah batas waktu (time-out)
→ Pengiriman ulang setelah N-ACK

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


28 Kasus Proses Transmisi NORMAL

Semua PAKET berjalan lancar, proses berlangsung NORMAL


SRI RAHAYU - TEKNIK ELEKTRO (ITS)
Kasus Paket Hilang (Tidak Sampai ke Rx)
29

Karena PAKET tidak sampai ke Rx (=S), maka tidak akan ada ACK yang dikirim
ke Tx (=P). Setelah TIMEOUT terlampaui, maka Tx (=P) mengirim ulang paket
sebelumnya atas inisiatif Tx sendiri (= permintaan retransmisi scr IMPLISIT).
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
30 Kasus ACK Hilang (Tidak Sampai ke Tx)

PAKET sudah sampai ke Rx (=S), tapi ACK yang dikirim TIDAK SAMPAI ke Tx (=P). Setelah
TIMEOUT terlampaui, maka Tx (=P) mengirim ulang paket sebelumnya atas inisiatif Tx sendiri.
Hal tsb menyebabkan FRAME/PAKET DOBEL.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
31 Kasus Paket Error/Salah (NACK dikirim ke Tx)

PAKET sudah sampai ke Rx (=S), tapi setelah diperiksa ternyata ERROR. Rx kemudian
mengirim NACK ke Tx (=P). Tx (=P) kemudian mengirim ulang paket sebelumnya yang
SALAH (permintaan retransmisi secara EKSPLISIT).
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
32 Link Utilization → U = Tix/(Tp+Tix+Tip+Tp+Tax+Tap)

Tp = Frame propagation delay (P → S)


T Tix = Frame transmission time (P → S)
Tip = Frame processing time in S
Tp = ACK propagation delay (S → P)
Tax = ACK transmission time (S → P)
Tap = ACK processing time in P
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
33 Perhitungan Praktis “Link Utility”
Tp = Frame propagation delay (A → B) = P
Tix = Frame transmission time (A → B) = X
Tip = Frame processing time in B Definisi:
Tp = ACK propagation delay (B → A) = P
Tax = ACK transmission time (B → A) = y L = Panjang pesan/paket/frame (bit)
Tap = ACK processing time in A R = Laju bit dari A ke B (bps)
X = Waktu transmisi paket = L/R (detik)
Link Utility:
U = Tix/(Tp+Tix+Tip+Tp+Tax+Tap)x 100% P = delai propragasi dari A ke B (detik)
Tip, Tax, Tap → DIABAIKAN

U = Tix/(Tp+Tix+Tp) x 100% U = Tix/(Tp+Tix+Tp) x 100%


= X/( X + 2P) x 100 %
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
34

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


35

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


36
Tp = Frame propagation delay (A → B) = P
Tix = Frame transmission time (A → B) = X
Tip = Frame processing time in B
Tp = ACK propagation delay (B → A) = P
Tax = ACK transmission time (B → A) = y
Tap = ACK processing time in A

Tip, Tax, Tap → DIABAIKAN

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


37
Stop & Wait Link Utilization

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


38 SOAL:
 Jika sebuah frame data berukuran 1000 byte, dilewatkan kabel serat optik
berkecepatan 2.108 m/s (berkapasitas 10 Mbps) ) yang memisahkan 2
terminal sepanjang 10 km.
 Hitung konstanta delay ratio (a)
 Hitung Round Trip Time (RTT)
 Berapa besarnya (%) link utility?
 Jika link tsb digunakan untuk mengirim file 5 kB menggunakan protokol
stop & wait , dan ACK frame ke-3 tdk sampai shg pengiriman hrs diulang.
Berapa total waktu yg diperlukan untuk mengirim file tsb.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


“Continuous” Repeat Request
39

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


40
Pokok Bahasan

 Prinsip Flow Control


“Continuous” Error Control
1. (Review) Stop-and-Wait ARQ
2. Go-Back-N ARQ
3. Selective-Reject ARQ
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
41 Prinsip Flow Control
Memastikan entitas pengiriman tidak membanjiri entitas
penerima
→ Mencegah buffer overflow

Waktu transmisi :
→ Waktu yang diperlukan untuk memancarkan semua bit
ke media (X)

Waktu propagasi:
→ Waktu (delay) yang diperlukan frame untuk melintasi
tautan/medium (P)
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
42 Stop and Wait Flow Control

 Sumber (source, transmitter) Karakteristik STOP & WAIT :


mentransmisikan frame.
 Tujuan (destination, receiver) menerima
Sederhana (Simple)
frame dan mengirim ACK balasan. Tidak efisien (Inefficient)
 Sumber menunggu ACK, sebelum
mengirim frame berikutnya.
 Tujuan dapat saja menghentikan aliran
dengan tidak mengirim ACK.
 Bisa bekerja baik untuk beberapa frame
ukuran besar.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


Prosedur Protokol
43 “Stop and Wait”
 Sumber mengirim frame tunggal
 Menunggu ACK
 Jika saat diterima frame dalam kondisi RUSAK, frame
akan dibuang.
→ Transmitter memiliki ukuran waktu “time-out”
→ Jika tidak ada ACK dalam selang waktu sebelum
time-out, maka akan dilakukan retransmisi frame
sebelumnya.
 Jika ACK yang dikirim RUSAK (tidak sampai), maka
transmitter tentu tidak tahu kalau ada ACK yang
dikirim.
 Transmitter akan melakukan retransmisi.
 Penerima menjadi punya 2 kopi frame yang sama
(dobel).
 Menggunakan ACK0 dan ACK1.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
44 Fragmentation
• Blok data yang BESAR perlu dipecah menjadi frame-frame kecil.
→ Ukuran buffer terbatas.
→ Kesalahan terdeteksi segera, ketika seluruh frame diterima.
→ Saat terjadi kesalahan, pengiriman ulang frame yang lebih kecil
diperlukan.
→ Mencegah satu stasiun menempati medium untuk waktu yang l
lama.
• Berhenti dan menunggu giliran (penggunaan protokol STOP &
WAIT) menjadi sudah tidak memadai lagi.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


45 Perlunya BUFFER di SISI Tx & Rx

Kontrol aliran data diperlukan sebagai kebijakan, dimana jika


A memiliki sesuatu untuk dikirim ke B, maka A mungkin
perlu “hold-back” untuk beberapa saat, sebelum
mengirimkannya → ditampung di BUFFER (A).

Ini diperlukan karena B atau jaringan di luar B, mungkin


terjadi kongesti (kemacetan), sehingga tidak menyebabkan
overflow pada ruang BUFFER B.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


46 Sliding Window Flow Control
• Mengijinkan beberapa frame dalam transit.
• Receiver memiliki buffer dengan panjang W.
• Pemancar dapat mengirim frame hingga W, tanpa ACK.
• Setiap frame diberi nomor.
• Nomor urut dibatasi oleh ukuran bidang (k)
→ Frame diberi nomor modulo 2 k
• ACK mencakup sejumlah frame berikutnya yang
diharapkan.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


47
Sliding Window Diagram

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


48
Penjelasan:
Ilustrasi yang menunjukkan gambaran proses SLIDING WINDOW:
 Diasumsikan digunakan 3 bit nomor urut, sehingga frame-frame diberi nomor urut 0-7, kmd
nomor yang sama digunakankembali untuk frame-frame berikutnya. Kotak/persegi yang
berbayang mengindikasikan frame yang mungkin dikirim.
 Dalam gambar terlihat bahwa pengirim mungkin mengirimkan 5 frame (dimulai dari frame 0).
Setiap kali semua frame dikirim, jendela berbayang menyusut dan setiap kali jawaban
diterima, jendela berbayang muncul.
 Frame diantara jendela berbayang dan batang vertikal telah dikirim, tetapi belum diketahui
nasibnya. Pengirim harus mem-buffer frame-frame tsb (jaga-jaga jika frame-frame tsb harus
dikirim ulang).
 Ukuran jendela sebenarnya tidak perlu dalam ukuran maksimal yang memungkinkan untuk
panjang sebuah nomor urut. Misal dengan menggunakan numor urut 3-bit, sebuah ukuran
jendela 5 dapat dipilih untuk mengatur stasiun yang menggunakan protokol sliding-window
flow control. Jadi tidak harus menggunakan ukuran 7 frame (maksimal).

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


Example Sliding Window
49

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


Penjelasan:
50 Contoh yang mengambil field dengan nomor urut 3-bit dan 7 frame ukuran jendela
maksimum.
 Pada awalnya, A dan B memiliki jendela yang mengindikasikan bahwa A mungkin
mengirimkan 7 frame dimulai dari frame 0 (F0). Setelah mengirim 3 frame (F0,
F1 dan F2) tanpa jawaban, A menyusutkan jendelanya menjadi 4 frame dan
mempertahankan 3 frame yang dikirimkan.
 Jendela mengindikasikan A mengirim 4 frame (dimulai dari frame nomor 3) dan B
kmd mengirim RR (siap menerima). Yang berarti: “Saya telah menerima seluruh
frame smp dengan nomor 2 dan siap menerima nomor 3; kenyataannya, saya telah
menerima 7 frame (dimulai dari nomor urut 3)”.
 Dengan jawaban demikian, A menyalin ulang ijin untuk 7 frame (masih diawali
frame 3), A juga boleh membuang frame buffer yang telah dikenali BENAR. A
melakukan proses pengiriman frame 3, 4, 5 dan 6.
 B mengembalikan RR 4, yang memberitahukan F3 dan mengijinkan F4 melalui
peristiwa berikutnya dari F2. Ketika RR tsb sampai di A, A telah siap
mengirimkan F4, F5 dan F6 dan karenanya A hanya membuka jendela untuk
memperbolehkan transmisi 4 frame yang dimulai dari F7.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


51 Sliding Window Enhancement

Penerima dapat memeriksa frame tanpa mengizinkan transmisi


lebih lanjut. Penerima dalam status tidak siap (not-ready).
Harus mengirim tanda terima (ACK) yang normal untuk
melanjutkan.
Jika dupleks, gunakan piggybacking
→Jika tidak ada data untuk dikirim, gunakan frame ACK.
→Jika ada data tetapi tidak ada ACK untuk dikirim, kirim ACK
terakhir, yang memiliki tanda ACK yang valid (TCP).

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


52 Prinsip Protokol Go-Back-N

 Berdasarkan “sliding window” (seperti jendela bergeser).


 Menggunakan ukuran “window” untuk mengontrol jumlah frame
yang sedang beredar.
 Jika tidak ada kesalahan frame (no error), maka ACK akan dikirim
seperti biasa dengan berharap frame berikutnya.
 Jika ada kesalahan, akan direspon dengan penolakan (rejection)
→ Buang frame tsb dan seluruh frame berikutnya sampai frame
terakhir yang diterima dengan benar.
 Transmitter harus kembali mentransmisikan ulang frame tsb dan
semua frame berikutnya.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


53 Stop & Wait vs Go-Back-N (ARQ)
 Mekanisme STOP & WAIT ARQ tidak memanfaatkan sumber daya
sebaik-baiknya. Ketika ACK belum diterima, pengirim duduk diam dan
tidak melakukan apapun.
 Dalam metode Go-Back-N ARQ, pengirim dan penerima memelihara
kondisi jendela (window).
 Ukuran jendela pengirim memungkinkan pengirim untuk mengirim
beberapa frame tanpa menunggu mendapat ACK dari frame-frame
sebelumnya.
 Sementara jendela penerima memungkinkan penerima untuk menerima
banyak frame dan melakukan pemeriksaan padanya. Penerima
mempertahankan trek nomor urut frame yang masuk.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


54
Flow Control Go-Back-N (ARQ)

Ketika pengirim (sender) mengirim semua frame di jendela, ia


memeriksa hingga nomor urut berapa yang ACK-nya telah tiba.
Jika semua frame mendapat ACK positif, pengirim (sender)
akan mengirim kelompok frame berikutnya.
Jika pengirim menemukan bahwa ia telah menerima NACK
atau belum menerima ACK untuk frame tertentu (setelah
timeout), ia mengirim ulang semua frame (sekelompok frame)
yang setelah itu ia tidak menerima ACK positif.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


55 Kasus 1: Go-Back-N → Lost Frame (1)

• Frame i hilang.
• Transmitter mengirimkan frame i+1
• Penerima mendapat frame i +1 dari urutan.
• Receiver mengirim penolakan i.
• Transmitter kembali ke frame i dan mentransmisikan
kembali.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


56 Kasus 2: Go-Back-N → Damaged Frame

Penerima mendeteksi kesalahan pada frame i.


Penerima mengirim penolakan i
Transmitter menerima penolakan i
Transmitter mengirim ulang frame i dan semua
yang berikutnya.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


57 Kasus 3: Go-Back-N → Lost Frame (2)
• Frame i hilang dan tidak ada frame tambahan yang dikirim.
• Penerima tidak mendapat apa-apa dan tidak memberikan
respon apapun, baik ACK atau penolakan.
• Saat waktu tunggu pengirim habis (time-out) dan
mengirimkan frame ACK dengan P bit diatur ke 1.
• Receiver mengartikan ini sebagai perintah yang dikenal sbg
ACK dengan jumlah frame berikutnya yang diharapkan
(frame i)
• Transmitter kemudian mentransmisikan ulang frame i.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
58
Kasus 4: Go-Back-N → Damaged Acknowledgement

• Penerima mendapat frame i dan mengirim ACK (i +1) yang


kemudian hilang
• ACK bersifat kumulatif, jadi ACK selanjutnya (i + n) dapat tiba
sebelum waktu transmitter habis (timeout) pada frame i
• Jika pemancar (pengirim) timeout, ia mengirim ACK dengan P bit
diatur seperti sebelumnya
• Ini dapat diulang beberapa kali sebelum prosedur reset dimulai.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


59
Kasus 5: Go-Back-N → Damaged Rejection
 As for lost frame (2)

• Frame i hilang dan tidak ada frame tambahan yang dikirim.


• Penerima tidak mendapat apa-apa dan tidak memberikan respon
apapun, baik ACK atau penolakan.
• Saat waktu tunggu pengirim habis (time-out) dan mengirimkan
frame ACK dengan P bit diatur ke 1.
• Receiver mengartikan ini sebagai perintah yang dikenal sbg
ACK dengan jumlah frame berikutnya yang diharapkan (frame i)
• Transmitter kemudian mentransmisikan ulang frame i.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


60 Go-Back-N → Diagram
Contoh aliran frame Go-Back-N ARQ:
• Oleh karena penundaan perambatan pada jalur, ketika sebuah
jawaban tiba di pengirim (bisa positif atau negatif), stasiun
pengirim telah mengirmkan setidaknya satu frame tambahan
di luar 1 frame yang telah dijawab.
• Pada contoh frame 4 RUSAK, frame 5 & 6 telah diterima di
luar perintah dan REJ untuk frame 4 yang diterima. Maka
frame 4, 5 dan 6 harus dikirim ulang (bukan hanya frame 4
saja).
• Maka dari itu, pengirim harus tetap menyimpan salinan dari
semua frame yang belum memiliki jawaban (diterima/
ditolak).
• Gambar di samping menunjukkan contoh transmisi ulang
setelah TIMEOUT. Tidak ada jawaban yang diterima untuk
frame 5 selama interval timeout, oleh karenanya A
mengirimkan sebuah RR untuk menentukan status B.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
61

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


62
• Yang dikirim ulang frame 2, 3
& 4, meski ACK yang hilang
hanya untuk frame 2 saja.

• Saat sudah TIMEOUT, ACK


untuk frame 2 belum tiba (dlm
kondisi frame 3 & frame 4
telah dikirim), maka pengirim
akan melakukan pengiriman
ulang untuk frame 2, frame 3
dan frame 4 (meski yang
hilang hanya ACK punya
frame 2).

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


63
Selective Reject
(Selective Retransmission)
Disebut juga transmisi ulang selektif.
Hanya frame yang ditolak (salah/error) yang dikirim ulang.
Frame selanjutnya akan tetap diterima oleh penerima dan disangga
(di-buffer).
Meminimalkan pengiriman ulang (retransmisi).
Penerima harus memelihara (menyediakan) buffer yang cukup
besar.
Login yang lebih komplek dalam pemancar.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


Selective
64
Reject →Diagram

Contoh aliran frame Selective-Reject ARQ:


• Dengan selective-reject ARQ, hanya satu frame yang
ditransmisikan ulang jika diterima jawaban NEGATIF
(dlm hal ini disebut SREJ) atau TIMEOUT.
• Ketika frame 5 diterima di luar perintah, B
mengirimkan SREJ 4, yang mengindikasikan bahwa
fare 5 = 4 dianggap belum diterima. Bagaimanapun ,
B terus menerima frame yang datang dan membuffer
mereka sampai frame 4 yang valid diterima.
• Pada titik tsb, B dapat menempatkan frame pada
urutan yang tepat untuk pengiriman kepada Perangkat
Lunak dengan lapisan yang lebih tinggi.
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
Selective-Repeat vs Go-back-N
65

Pada Go-back-N ARQ, diasumsikan bahwa penerima tidak


memiliki ruang penyangga untuk ukuran jendelanya dan harus
memproses setiap frame sesuai dengan yang ada. Ini memaksa
pengirim untuk mengirim ulang semua frame yang tidak diakui..
Dalam Selective-Repeat ARQ, penerima sambil melacak nomor
urut, akan mempertahankan frame dalam buffer memori dan
mengirimkan NACK untuk hanya frame yang hilang atau rusak.
Pengirim dalam hal ini, hanya mengirim ulang paket yang NACK-
nya diterima.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


66
Selective Repeat ARQ

Yang diulang hanya


frame2 saja, yang
kebetulan
pengiriman ACK-
nya hilang.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


67
Plus-Minus SELECTIVE-REJECT(REPEAT)
 Selective-Reject akan lebih efisien dari pada Go-Back-N, karena mampu
meminimalkan jumlah transmisi ulang.
 Sebaliknya receiver harus mempertahankan sebuah buffer yang cukup
besar untuk menyimpan frame SREJ (sembari menunggu pengiriman
ulang frame yang masih SALAH) dan harus memiliki logika tertentu
untuk menyisipkan kembali frame tsb pada urutan yang tepat.
 Transmitter juga membutuhkan logika yang lebih komplek, untuk dapat
mengirimkan sebuah frame di luar urutan. Oleh karenanya SELECTIVE-
REJECT jarang dipakai dibanding Go-Back-N (Contoh Go-Back-N:
Aplikasi video di Youtube, saat di-pause dan kemudian di-play kembali
maka ada beberapa segmen/potongan video yang diulang lagi).
 Selective-Reject merupakan pilihan yang berguna untuk link satelit,
karena alasan delay tinggi akibat lintasan yang panjang.

SRI RAHAYU - TEKNIK ELEKTRO (ITS)


68 Performansi Idle RQ
Link Utilization
Performance: Stop & Wait ARQ
 Note that utilization U = Tf/Tt where:
• Tf = time for transmitter to emit a single frame
• Tt = total time-line is engaged in transmission of 1 frame

 For error free Stop & Wait:


Tf 1
U= if a = then U =
Tp
,
T f + 2Tp Tf
1 + 2a

 For errors, U = Tf/(Nr Tt), where Nr is the expected number of


transmissions of a particular frame 1
U=
N r (1 + 2a )
SRI RAHAYU - TEKNIK ELEKTRO (ITS)
69 Performansi Continuous RQ
Link Utilization  1 N  2a + 1

 Recall for Sliding Window: U = N
 N  2a + 1
 2 a + 1
N = ukuran lebar window
 1− P N  2a + 1

U =  N (1 − P )
 For Selective Repeat:  N  2a + 1
 2a + 1

 For Go-Back-N; consider all retransmitted


 1− P
 N  2a + 1
 1 + 2aP
U =
 N (1 − P)
N  2a + 1
 (1 + 2a)(1 − P + NP)
SRI RAHAYU - TEKNIK ELEKTRO (ITS) 
70 Terima Kasih…

SRI RAHAYU - TEKNIK ELEKTRO (ITS)

Anda mungkin juga menyukai