laporan selektif repeat

22
Makalah Komunikasi Data SELECTIVE REPEAT Oleh : 1. Gigih Adi Cita (2205.100.138) 2. Yuni Almaadin (2206.100.035) 3. Robby Hartanto (2206.100.174) 4. Hartedi Gobel (2206.100.701) Jurusan Teknik Elektro Fakultas Teknologi Industri Institut Teknologi Sepuluh Nopember Surabaya 2008

Transcript of laporan selektif repeat

Page 1: laporan selektif repeat

Makalah

Komunikasi Data

SELECTIVE REPEAT

Oleh :

1. Gigih Adi Cita (2205.100.138) 2. Yuni Almaadin (2206.100.035) 3. Robby Hartanto (2206.100.174) 4. Hartedi Gobel (2206.100.701)

Jurusan Teknik Elektro Fakultas Teknologi Industri Institut Teknologi Sepuluh Nopember Surabaya 2008

Page 2: laporan selektif repeat

Bab 1 Pendahuluan

1.1 Latar Belakang Dalam pengiriman paket data melalui suatu medium tertentu, akan selalu

terjadi adanya perbedaan antara sinyal yang dikirim dengan sinyal yang diterima.

Perbedaan tersebut dapat mengakibatkan adanya error atau kesalahan pada paket

data yang dikirim tersebut sehingga data tersebut tidak dapat dibaca dengan baik

oleh penerima.

Untuk menghindari terjadinya error atau kesalahan pada paket data yang

dikirim maka diperlukan adanya deteksi kesalahan (checking error), perbaikan

kesalahan (correction error), dan pengendalian kesalahan (control error).

Checking error telah kita pelajari pada pertemuan sebelum UTS. Di antara

beberapa metode checking error adalah bit parity, BCC (Block Check Character),

dan CRC (Cyclic Redundancy Check).

Pada error control terdapat tiga metode yang sering dipakai dalam

komunikasi data, yaitu stop and wait request, go back N request, dan selective

request. Error control meliputi mekanisme-mekanisme sebagai berikut :

ACK/NAK, timeout, dan sequence number. Pada error control terjadi proses-

proses sebagai berikut : error detection, acknowledgment, retransmission after

timeout, dan negative acknowledgment.

1.2 Pembatasan Masalah

Dalam penulisan makalah ini kami membatasi masalah yang akan kami

bahas agar tidak keluar dari pokok masalah yang kita bahas karena masalah dalam

komunikasi data sangat luas. Permasalahan yang akan kami angkat dalam makalah

ini adalah mengenai continuous request, selective repeat, sequence number, dan

protocol specification.

Page 3: laporan selektif repeat

1.3 Tujuan

Tujuan dari penulisan makalah ini adalah untuk memenuhi tugas kuliah

Komunikasi Data dan juga untuk memberikan gambaran kepada para pembaca

mengenai proses pengendalian kesalahan dalam komunikasi data.

Page 4: laporan selektif repeat

Bab 2

Pembahasan

Tujuan dilakukan pengontrolan terhadap error adalah untuk menyampaikan frame-

frame tanpa error dalam urutan yang tepat ke lapisan jaringan. Teknik yang umum

digunakan untuk error control berbasis pada dua fungsi, yaitu:

• Error detection, biasanya menggunakan teknik CRC (Cyclic Redundancy Check)

• Automatic Repeat Request (ARQ), ketika error terdeteksi pengirim meminta

mengirim ulang frame yang terjadi kesalahan.

Error control dibagi menjadi tiga yaitu :

1. Manual error control

Misalnya jika kita melakukan kesalahan dalam pengetikan kita koreksi dengan

melakukan penghapusan terhadap karakter yang salah misalkan dengan tombol

delete atau backspace.

2. Echo checking

Prosedur yang sama digunakan ketika suatu terminal terhubung dengan remote

computer katakanlah dengan menggunakan analog PSTN dan sebuah modem. Di

samping tiap karakter yang dimasukkan ditampilkan secara langsung pada

terminal display mula-mula ia ditransmisikan ke remote computer. Remote

computer tersebut kemudian membaca dan menyimpan karakter dan

mentransmisikan ulang ke terminal yang menampilkannya. Jika berbeda dengan

apa yang telah dimasukkan user dapat memulai lagi transmisi untuk penghapusan

karakter yang salah.

3. Automatic repeat request

Terdiri dari idle request dan continuous request. Kita akan membahas lebih dalam

continuous request terutama selective repeat.

Continuous Request

Dengan skema error control continuous request, penggunaan jaringan lebih mahal

karena kebutuhan buffer untuk penyimpanan data meningkat. Dan dapat kita lihat bahwa

Page 5: laporan selektif repeat

jaringan duplex dibutuhkan untuk implementasi continuous request. Contoh seperti pada

gambar di bawah ini.

Error Control

Tujuan dilakukan pengontrolan terhadap error adalah untuk menyampaikan frame-

frame tanpa error dalam urutan yang tepat ke lapisan jaringan. Teknik yang umum

digunakan untuk error control berbasis pada dua fungsi, yaitu:

• Error detection, biasanya menggunakan teknik CRC (Cyclic Redundancy Check)

• Automatic Repeat Request (ARQ), ketika error terdeteksi pengirim meminta

mengirim ulang frame yang terjadi kesalahan.

Error control dibagi menjadi tiga yaitu :

1. Manual error control

Misalnya jika kita melakukan kesalahan dalam pengetikan kita koreksi dengan

melakukan penghapusan terhadap karakter yang salah misalkan dengan tombol

delete atau backspace.

2. Echo checking

Prosedur yang sama digunakan ketika suatu terminal terhubung dengan remote

computer katakanlah dengan menggunakan analog PSTN dan sebuah modem. Di

samping tiap karakter yang dimasukkan ditampilkan secara langsung pada

N+1 N+2 N+3 N+4N N+5

N N

N+1

N

N+1

N+2

N+1

N+2

N+3

N+2

N+3

N+4

N+3

N+4

I(N) I(N+1) I(N+2) I(N+4)I(N+3)

I(N) I(N+1) I(N+2) I(N+4)I(N+3)

I(N+1)

I(N)

AC

K(N

)

I(N+2)

AC

K(N

+1)

I(N+3)

AC

K(N

+2)

I(N+4)

AC

K(N

+3)

Time

N+1 N+2 N+3 N+4N

N N+1 N+2 N+3 N+4

V(S) = Send sequence variable

V(R) = Receive sequence variable

Contents of link retransmission list

Contents of link receive list

Primary, P

Secondary, S

Page 6: laporan selektif repeat

terminal display mula-mula ia ditransmisikan ke remote computer. Remote

computer tersebut kemudian membaca dan menyimpan karakter dan

mentransmisikan ulang ke terminal yang menampilkannya. Jika berbeda dengan

apa yang telah dimasukkan user dapat memulai lagi transmisi untuk penghapusan

karakter yang salah.

3. Automatic repeat request

Terdiri dari idle request dan continuous request.

Mekanisme Error control meliputi

• ACK/NAK : Provide sender some feedback about other end

• Time-out: for the case when entire packet or ACK is lost

• Sequence numbers: to distinguish retransmissions from originals

Untuk menghindari terjadinya error atau memperbaiki jika terjadi error yang

dilakukan adalah melakukan pengiriman message secara berulang, proses ini dilakukan

secara otomatis dan dikenal sebagai Automatic Repeat Request (ARQ).

Pada proses ARQ dilakukan beberapa langkah diantaranya :

• Error detection

• Acknowledgment

• Retransmission after timeout

• Negative Acknowledgment

Macam-macam error control adalah :

1. Stop and Wait ARQ

Mekanisme ini menggunakan skema sederhana stop and wait acknowledgment

dan dapat dijelaskan seperti tampak pada gambar 3.13 Stasiun pengirim mengirimkan

sebuah frame dan kemudian harus menunggu balasan dari penerima. Tidak ada frame

data yang dapat dikirimkan sampai stasiun penerima menjawab kedatangan pada stasiun

pengirim. Penerima mengirim sebuah positive acknowledgment (ACK) jika frame benar

dan sebuah negative acknoledgment jika sebaliknya.

Page 7: laporan selektif repeat

2. Go Back N ARQ

Gambar 3.14 menampilkan aliran frame untuk mekanisme go-back-and ARQ

pada sebuah jalur full-duplex. Ketika frame 2,3, dan 4 ditransmisikan, dari stasiun A ke

stasiun B, sebuah ACK dari penerimaan sebelumnya frame 1 mengalir dari B ke A.

Beberapa waktu kemudian, frame 2 diterima dalam kondisi error. Frame-frame 2,3,4 dan

5 dikirimkan, stasiun B mengirimkan sebuah NAK2 ke stasiun A yang diterima setelah

frame 5 dikirimkan tetapi sebelum stasiun A siap mengirim frame 6.

Sekarang harus dilakukan pengiriman ulang frame-frame 2,3,4, dan 5 walaupun

hanya pada frame 2 terjadinya kesalahan. Sekali lagi, catat bahwa stasiun A harus sebuah

copy dari setiap unacknowledgment frame.

Page 8: laporan selektif repeat

3. Selective Repeat

Selective Repeat atau dikenal juga sebagai Selective-reject. Dengan selective-

reject ARQ, frame-frame yang akan dikirimkan hanya frame-frame yang mendapat

balasan negatif, dalam hal ini disebut SREJ atau frame-frame yang waktunya sudah habis.

Cara selective-reject ARQ dalam memperbaiki kesalahan dengan cara = mulanya

bagian transmiter mengirim stream data kontinyu dari frame yang kontinyu, pada sisi

penerima data tersebut disimpan dan dilakukan proses CRC. Tapi proses CRC ini

berlangsung pada stream data yang kontinyu dari frame yang diterima. Ketika dijumpai

frame yang error, penerima mengirim informasi pada sisi pengirim melalui ‘return

channel’. Bagian pengirim kemudian mengambil frame tersebut dari tempat penyimpanan

data, lalu dimasukkan dalam antrian transmisi. Ada beberapa poin penting bagi pembaca

frame, yang pertama adalah harus ada cara untuk mengidentifikasi frame. Yang kedua

adalah harus ada cara yang baik untuk mengetahui frame mendapat balasan positif atau

balasan negatif. Kedua poin penting tersebut bisa di atasi dengan menggunakan angka

sekuensial yang dikirim dan yang diterima. Angka sekuensial yang dikirim ada pada

pengirim, begitu juga dengan angka sekuensial yang diterima berada pada penerima.

Angak sekuensial yang diterima yang dikirim kembali pada sisi pengirim adalah angka

sekuensial yang dikirim oleh sisi pengirim dan mendapat balasan positif dari sisi

penerima. Ketika sisi penerima mendeteksi kesalahan pada frame, maka sisi penerima

akan mengirimkan angka sekuensial yang dikirim bersama frame yang dianggap error.

Tentu daja pada akhirnya sisi penerima harus menata kembali frame sesuai urutannya

seperti pada sisi pengirim sebelum data diteruskan ke pengguna akhir.

Selective-reject ARQ lebih efisien terhadap go-back-N karena mengurangi

jumlah retransmisi. Namun selective-reject memerlukan kapasitas penyimpanan data

yang lebih besar baik disisi pengirim dan penerima untuk menyimpan frame sampai

frame yang rusak diretransmisi. Selain itu disisi penerima juga harus terdapat software

yang dapat mengirim frame diluar urutan agar data bisa sampai secara urut pada

pengguna akhir. Selective repeat dapat diimplementasikan dengan dua cara :

1. S menyatakan bahwa frame telah diterima dengan benar dan P menentukan dari

sequence ACK yang diterioma bahwa sebuah frame telah hilang (implicit

retransmisi)

2. S mengembalikan pernyataan negative khusus dikarenakan ada frame hilang dari

sequence (explicit request)

Page 9: laporan selektif repeat

Dari kedua event tersebut kejadian frame diterima di luar sequence, S menahan frame ini

di saluran penerima sampai sequence frame masuk berikutnya diterima.

Pada kasus implicit retransmission dengan asumsi semua frame ACK diterima

dengan benar dapat dijelaskan sebagai berikut (Gb A) :

• Diasumsikan I-frame N+1 rusak (hilang)

• S mengembalikan frame ACK untuk tiap-tiap I-frame yang telah diterima dengan

benar.

• S mengembalikan frame ACK untuk I-frame N, N+2, N+3, …

• Pada penerimaan ACK untuk I-frame N+2, P menngetahui bahwa frame N+1

tidak diterima

• Untuk dapat mengetahui bahwa lebih dari 1 I-frame yang rusak, P memasukkan

retransmission state pada frame yang hilang (tidak diterima).

• Dalam kondisi ini, transmisi frame baru ditunda sampai frame yang tidak

diterima ditransmisikan ulang.

I(N+1)

I(N)

AC

K(N

)

I(N+2)

I(N+3)

AC

K(N

+2)

I(N+4)

AC

K(N

+3)

I(N+1)

AC

K(N

+4)

I(N+5)

AC

K(N

+1)

Gb. A. Implicit Retransmission corrupted I-frame

Page 10: laporan selektif repeat

• P menghilangkan I-frame N+2 pada daftar retransmisi dan mengirimkan ulang I-

frame N+1 sebelum mentransmisikan frame N+5

• Dalam penerimaan I-frame N+1, isi dari frame antrian pada link receive list

dikirimkan oleh S ke LS_user pada urutan yang benar.

Sedangkan pada implicit retransmission dengan asumsi bahwa semua I-frame diterima

dengan benar kecuali ACK frame N dapat dijelaskan sebagai berikut.

• Pada penerimaan ACK frame N+1 P mengetahui bahwa I-frame N masih

menunggu pernyataan telah diterima dengan benar. Jadi P mentransmisikan I-

frame N.

• Saat penerimaan I-frame N yang diretransmisi S menentukan dari sequence

variable bahwa frame tersebut telah diterima dengan benar dan oleh karena itu

merupakan sebuah duplikat.

• S membuang frame tapi mengembalikan ACK frame untuk menggantikannya

untuk memastikan P menghilangkan frame dari daftar retransmisi.

N+1 N+2 N+3 N+4N N+4

N N

N+1

N

N+1

N+2

N+1

N+2

N+3

N+2

N+3

N

N+3

N

I(N) I(N+1) I(N+2) I(N)I(N+3)

I(N) I(N+1) I(N+2) I(N)I(N+3)

I(N+1)

I(N)

AC

K(N

)

I(N+2)

ACK(

N+1

)

I(N+3)

AC

K(N

+2)

I(N)

AC

K(N

+3)

Time

N+1 N+2 N+3 N+4N

N N+1 N+2 N+3 N+4

V(S) = Send sequence variable

V(R) = Receive sequence variable

Contents of link retransmission list

Contents of link receive list

Primary, P

Secondary, S

N

AC

K(N

)

P enters retransmission state P leaves retransmission state

N+4

Gb. B. Implicit Retransmission corrupted ACK-frame

Page 11: laporan selektif repeat

Operasi di atas bergantung pada penerimaan frame ACK yang berhubungan

dengan frame-frame berikutnya untuk menginisiasi retransmisi frame sebelumnya yang

rusak. Usaha yang lain adalah dengan menggunakan explicit negative acknowledgment

frame untuk meminta trasnmisi ulang frame yang error. Negative acknowledgment

tersebut dikenal dengan selective reject.

Pada explicit request dengan asumsi bahwa acknowledgments hilang dalam

perjalanan dapat dijelaskan sebagai berikut (lihat Gb. C di bawah ini) :

• Mula-mula sebuah ACK frame menyatakan telah diterima semua frame di

retransmission list termasuk I-frame dengan sequence number yang dimiliki ACK

• Asumsikan I-frame N+1 rusak.

• S mengembalikan sebuah ACK frame untuk I-frame N

• Ketika S menerima I-frame N+2 S mengetahui bahwa I-frame N+1 hilang jadi S

mengirim NAK frame yang mengandung identifier untuk I-frame N+1 yang

hilang tersebut

• Dalam penerimaan NAK N+1, P menterjemahkan NAK N+1 dan saat itu S masih

N+1 N+2 N+3 N+4N N+5

N N

N+1

N

N+1

N+2

N+1

N+2

N+3

N+2

N+3

N+4

N+2

N+3

I(N) I(N+1) I(N+2) I(N+4)I(N+3)

I(N) I(N+2) I(N+4)I(N+3)

I(N+1)

I(N)

AC

K(N

)

I(N+2)

I(N+3)

N

AK(N

+1)

I(N+4)

Time

N+1 N+1 N+1 N+1N

N N+2

N+3

N+2

V(S) = Send sequence variable

V(R) = Receive sequence variable

Contents of link receive list

Primary, P

Secondary, S

I(N+1) I(N+5)

I(N+1) I(N+5)

I(N+1)

I(N+5)

AC

K(N

+1)

N+2

N+4

N+3

N+2

N+4

N+3

N+1

N+5

N+1 N+5

N+1

N+4

N+5

N+2

P enters retransmission state

N+5

N+6

P leaves retransmission state

N+1

N+4

N+1

N+5

N+3

N+6

S enters retransmission state S leaves retransmission state

Gb. C. Explicit Request Effect Correct Operation

Page 12: laporan selektif repeat

menunggu I-frame N+1 sehingga P mentransmisikan ulang I-frame N+1.

• Ketika S mengirim NAK frame S memasukkan retransmission state

• Ketika dalam retransmission state pengembalian ACK frame ditunda

• Saat penerimaan I-frame N+1 S meninggalkan retransmission state dan

melanjutkan pengembalian ACK frame

• ACK N+4 mengakui bahwa semua frame sampai I-frame N+4 telah diterima

dengan benar termasuk frame N+4

• Timer digunakan dengan masing-masing NAK frame untuk memastikan bahwa

suatu frame rusak akan ditransmisikan ulang

Flow control

Flow control adalah suatu teknik untuk menjamin bahwa sebuah stasiun pengirim

tidak membanjiri stasiun penerima dengan data. Stasiun penerima secara khas akan

menyediakan suatu buffer data dengan panjang tertentu. Ketika data diterima, dia harus

mengerjakan beberapa poses sebelum dia dapat membersihkan buffer dan mempersiapkan

penerimaan data berikutnya.

Bentuk sederhana dari kontrol aliran dikenal sebagai stop and wait, dia bekerja

sebagai berikut. Penerima mengindikasikan bahwa dia siap untuk menerima data dengan

mengirim sebual poll atau menjawab dengan select. Pengirim kemudian mengirimkan

data.

Flow control ini diatur/dikelola oleh Data Link Control (DLC) atau biasa disebut

sebagai Line Protocol sehingga pengiriman maupun penerimaan ribuan message dapat

terjadi dalam kurun waktu sesingkat mungkin. DLC harus memindahkan data dalam lalu

lintas yang efisien. Jalur komunikasi harus digunakan sedatar mungkin, sehingga tidak

ada stasiun yang berada dalam kadaan idle sementara stasiun yang lain saturasi dengan

lalu lintas yang berkelebihan. Jadi flow control merupakan bagian yang sangat kritis dari

suatu jaringan. Berikut ini ditampilkan time diagram Flow control saat komunikasi

terjadi pada kondisi tanpa error dan ada error.

Mekanisme Flow control yang sudah umum digunakan adalah Stop and Wait dan

Sliding window, berikut ini akan dijelaskan kedua mekanisme tersebut.

Page 13: laporan selektif repeat

Stop and Wait

Protokol ini memiliki karakteristik dimana sebuah pengirim mengirimkan sebuah

frame dan kemudian menunggu acknowledgment sebelum memprosesnya lebih lanjut.

Mekanisme stop and wait dapat dijelaskan dengan menggunakan gambar 3.6, dimana

DLC mengizinkan sebuah message untuk ditransmisikan (event 1), pengujian terhadap

terjadinya error dilakukan dengan teknik seperti VCR (Vertical Redundancy Check) atau

LRC (Longitudinal Redundancy Check) terjadi pada even 2 dan pada saat yang tepat

sebuah ACK atau NAK dikirimkan kembali untuk ke stasiun pengirim (event 3). Tidak

ada messages lain yang dapat ditransmisikan selama stasiun penerima mengirimkan

kembali sebuah jawaban. Jadi istilah stop and wait diperoleh dari proses pengiriman

message oleh stasiun pengirim, menghentikan transmisi berikutnya, dan menunggu

jawaban.

Pendekatan stop and wait adalah sesuai untuk susunan transmisi half duplex,

karena dia menyediakan untuk transmisi data dalam dua arah, tetapi hanya dalam satu

arah setiap saat. Kekurangan yang terbesar adalah disaat jalur tidak jalan sebagai akibat

dari stasiun yang dalam keadaan menunggu, sehingga kebanyakan DLC stop and wait

sekarang menyediakan lebih dari satu terminal yang on line. Terminal-terminal tetap

beroperasi dalam susunan yang sederhana. Stasiun pertama atau host sebagai penaggung

jawab untuk peletakkan message diantara terminal-terminal (biasanya melalui sebuah

terminal pengontrol yang berada di depannya) dan akses pengontrolan untuk hubungan

komunikasi.

Urutan sederhana ditunjukkan pada gambar 3.6 dan menjadi masalah yang serius

ketika ACK atau NAK hilang dalam jaringan atau dalam jalur. Jika ACK pada event 3

Page 14: laporan selektif repeat

hilang, setelah habis batas waktunya stasiun master mengirim ulang message yang sama

untuk kedua kalinya. Transmisi yang berkelebihan mungkin terjadi dan menciptakan

sebuah duplikasi record pada tempat kedua dari file data pengguna. Akibatnya, DLC

harus mengadakan suatu cara untuk mengidentifikasi dan mengurutkan message yang

dikirimkan dengan berdasarkan pada ACK atau NAK sehingga harus dimiliki suatu

metoda untuk mengecek duplikat message.

Sliding Window Control

Sifat inefisiensi dari stop and wait DLC telah menghasilkan teknik pengembangan

dalam meperlengkapi overlapping antara message data dan message control yang sesuai.

Data dan sinyal kontrol mengalir dari pengirim ke penerima secara kontinyu, dan

beberapa message yang menonjol (pada jalur atau dalam buffer penerima) pada suatu

waktu. DLC ini sering disebut sliding windows karena metode yang digunakan sinkron

dengan pengiriman nomer urutan pada header dengan pengenalan yang sesuai. Stasiun

transmisi mengurus sebuah jendela pengiriman yang melukiskan jumlah dari

message(dan nomor urutannya) yang diijinkan untuk dikirim. Stasiun penerima mengurus

sebuah jendela penerimaan yang melakukan fungsi yang saling mengimbangi. Dua

tempat menggunakan keadaan jendela bagaimana banyak message dapat/ menonjol dalam

suatu jalur atau pada penerima sebelum pengirim menghentikan pengiriman dan

menunggu jawaban.

Page 15: laporan selektif repeat

Deteksi Dan Koreksi Error

Sebagai akibat proses-proses fisika yang menyebabkannya terjadi, error pada

beberapa media (misalnya, radio) cenderung timbul secara meletup (burst) bukannya satu

demi satu. Error yang meletup seperti itu memiliki baik keuntungan maupun kerugian

pada error bit tunggal yang terisolasi. Sisi keuntungannya, data komputer selalu dikirim

dalam bentuk blok-blok bit. Anggap ukuran blok sama dengan 1000 bit, dan laju error

adalah 0,001 per bit. Bila error-errornya independen, maka sebagian besar blok akan

mengandung error. Bila error terjadi dengan letupan 100, maka hanya satu atau dua blok

dalam 100 blok yang akan terpengaruh, secara rata-ratanya. Kerugian error letupan adalah

bahwa error seperti itu lebih sulit untuk dideteksi dan dikoreksi dibanding dengan error

yang terisolasi.

Kode-kode Pengkoreksian Error

Para perancang jaringan telah membuat dua strategi dasar yang berkenaan dengan

error. Cara pertama adalah dengan melibatkan informasi redundan secukupnya bersama-

sama dengan setiap blok data yang dikirimkan untuk memungkinkan penerima menarik

kesimpulan tentang apa karakter yang ditransmisikan yang seharusnya ada. Cara lainnya

adalah dengan hanya melibatkan redundansi secukupnya untuk menarik kesimpulan

bahwa suatu error telah terjadi, dan membiarkannya untuk meminta pengiriman ulang.

Strategi pertama menggunakan kode-kode pengkoreksian error (error-correcting codes),

sedangkan strategi kedua menggunakan kode-kode pendeteksian error (error-detecting

codes). Untuk bisa mengerti tentang penanganan error, kita perlu melihat dari dekat

tentang apa yang disebut error itu. Biasanya, sebuah frame terdiri dari m bit data (yaitu

pesan) dan r redundan, atau check bits. Ambil panjang total sebesar n (yaitu, n=m+r).

Sebuah satuan n-bit yang berisi data dan checkbit sering kali dikaitkan sebagai codeword

n-bit.

Ditentukan dua buah codeword: 10001001 dan 10110001. Disini kita dapat

menentukan berapa banyak bit yang berkaitan berbeda. Dalam hal ini, terdapat 3 bit yang

berlainan. Untuk menentukannya cukup melakukan operasi EXCLUSIVE OR pada kedua

codeword, dan menghitung jumlah bit 1 pada hasil operasi. Jumlah posisi bit dimana dua

codeword berbeda disebut jarak Hamming (Hamming, 1950). Hal yang perlu

diperhatikan adalah bahwa bila dua codeword terpisah dengan jarak Hamming d, maka

Page 16: laporan selektif repeat

akan diperlukan error bit tunggal d untuk mengkonversi dari yang satu menjadi yang

lainnya.

Pada sebagian besar aplikasi transmisi data, seluruh 2m pesan data merupakan

data yang legal. Tetapi sehubungan dengan cara penghitungan check bit, tidak semua 2n

digunakan. Bila ditentukan algoritma untuk menghitung check bit, maka akan

dimungkinkan untuk membuat daftar lengkap codeword yang legal. Dari daftar ini dapat

dicari dua codeword yang jarak Hamming-nya minimum. Jarak ini merupakan jarak

Hamming bagi kode yang lengkap.

Sifat-sifat pendeteksian error dan perbaikan error suatu kode tergantung pada jarak

Hamming-nya. Untuk mendeteksi d error, anda membutuhkan kode dengan jarak d+1

karena dengan kode seperti itu tidak mungkin bahwa error bit tunggal d dapat mengubah

sebuah codeword yang valid menjadi codeword valid lainnya. Ketika penerima melihat

codeword yang tidak valid, maka penerima dapat berkata bahwa telah terjadi error pada

transmisi. Demikian juga, untuk memperbaiki error d, anda memerlukan kode yang

berjarak 2d+1 karena hal itu menyatakan codeword legal dapat terpisah bahkan dengan

perubahan d, codeword orisinil akan lebih dekat dibanding codeword lainnya, maka

perbaikan error dapat ditentukan secara unik.

Sebagai sebuah contoh sederhana bagi kode pendeteksian error, ambil sebuah

kode dimana parity bit tunggal ditambahkan ke data. Parity bit dipilih supaya jumlah bit-

bit 1 dalam codeword menjadi genap (atau ganjil). Misalnya, bila 10110101 dikirimkan

dalam parity genap dengan menambahkan sebuah bit pada bagian ujungnya, maka data

itu menjadi 101101011, sedangkan dengan parity genap 10110001 menjadi 101100010.

Sebuah kode dengan parity bit tunggal mempunyai jarak 2, karena sembarang

error bit tunggal menghasilkan sebuah codeword dengan parity yang salah. Cara ini dapat

digunakan untuk mendeteksi erro-error tunggal.

Sebagai contoh sederhana dari kode perbaikan error, ambil sebuah kode yang

hanya memiliki empat buah codeword valid :

0000000000,0000011111,1111100000 dan 1111111111

Kode ini mempunyai jarak 5, yang berarti bahwa code tersebut dapat memperbaiki

error ganda. Bila codeword 0000011111 tiba, maka penerima akan tahun bahwa data

orisinil seharusnya adalah 0000011111. Akan tetapi bila error tripel mengubah

0000000000 menjadi 0000000111, maka error tidak akan dapat diperbaiki. Bayangkan

Page 17: laporan selektif repeat

bahwa kita akan merancang kode dengan m bit pesan dan r bit check yang akan

memungkinkan semua error tunggal bisa diperbaiki. Masing-masing dari 2m pesan yang

legal membutuhkan pola bit n+1. Karena jumlah total pola bit adalah 2n , kita harus

memiliki (n+1)2m = 2n. Dengan memakai n = m + r, persyaratan ini menjadi (m + r +

1)=2r. Bila m ditentukan, maka ini akan meletakkan batas bawah pada jumlah bit check

yang diperlukan untuk mengkoreksi error tunggal.

Sequence Number

Sebelum masuk ke sequence number, ditinjau lebih dahulu tentang pengiriman

pesan antara dua komputer. Dalam suatu pengiriman pesan, andaikan aplikasi

berhubungan dengan Service Access Point 1 (SAP1) dari komputer A ke aplikasi lain

yang berhubungan dengan SAP2 dalam komputer B. Aplikasi yang berada dalam

komputer A mengirim pesan itu ke lapisan transport dengan instruksi berisi kirim pesan

itu ke SAP2 dalam komputer B. Lapisan transport kemudian mengirim pesan tersebut ke

lapisan network access, yang memberi perintah pada jaringan agar mengirim pesan

tersebut ke komputer B. Di sini jaringan tidak perlu tahu tentang identitas SAP tujuan,

yang perlu diketahui adalah data tersebut benar-benar data yang ditujukan untuk

komputer B.

Untuk mengontrol operasi di atas, control information, sama halnya dengan data

user harus ditransmisikan seperti diagram berikut :

Transport header

Data aplikasi

Transport header

Network Header Network Header

Page 18: laporan selektif repeat

Dari gambar di atas dapat ditarik kesimpulan bahwa aplikasi pengiriman

membangkitkan blok data dan meneruskannya ke lapisan transport. Di lapisan transport

blok ini dibagi jadi dua belahan agar bisa diatur dengan mudah. Kedua belahan ditambah

dengan transport header yang berisi dengan informasi mengenai control protocol.

Kombinasi antara data lapisan berikutnya dengan control information dinamakan protocol

data unit (PDU). Dalam hal ini berkaitan pada transport PDU. Header yang ada pada

PDU ini meliputi :

• Destination SAP

Saat lapisan transport tujuan menerima transport PDU, harus diketahui kepada

siapa data tersebut dikirim.

• Sequence number

Karena protocol transport mengirimkan deretan PDU, dan memasukkannya

dalam antrian secara sekuensial sehingga saat mereka tiba tidak sesuai dengan

yang diperintahkan, entiti transport tujuan dapat memerintah mereka kembali.

• Error detection code

Entiti transport yang dikirimkan meliputi suatu kode yang merupakan fungsi dari

isi dari sisa PDU. Protocol transport yang menerima melakukan kalkulasi yang

sama dan membandingkan hasilnya dengan kode yang datang. Hasilnya akan

mengalami ketidaksesuaian bila ada error pada transmisinya. Bila hal itu terjadi,

receiver akan membuang PDU dan melakukan tindakan perbaikan.

Page 19: laporan selektif repeat

Bab 3

Penutup

Metode koreksi error continuous request mengijinkan pengirim untuk mengirim

frame secara kontinu (terus menerus) tanpa harus menunggu penerima mengirimkan

suatu pemberitahuan bahwa frame telah diterima oleh penerima. Pemberitahuan yang

dimaksud dapat berupa positif acknowledgment (ACK) atau negative acknowledgment

(NAK).

Dengan menggunakan metode selective repeat maka frame data dapat dikirim

dengan tingkat efisiensi yang tinggi karena jika terjadi error pada saat pengiriman maka

hanya frame yang mengalami error yang akan diretransmisi sehingga dapat mengurangi

jumlah frame yang diretransmisi. Berbeda dengan metode go back N yang

meretransmisikan frame mulai dari frame yang terjadi error hingga frame yang

selanjutnya.

Tapi jika kita menggunakan metode selective repeat, kita membutuhkan kapasitas

penyimpanan yang lebih besar untuk menyimpan retransmission state dan receive list.

Selain itu juga dibutuhkan software khusus untuk mengurutkan frame-frame yang telah

diterima pada penerima.

Page 20: laporan selektif repeat

Daftar Pustaka

http://www.techscape.co.id

Stalling, William. Komunikasi Data dan Komputer : Dasar-Dasar Komunikasi Data. Edisi Pertama. Jakarta : Salemba Teknika, 2001.

Halshall, Fred. Data Communication. 1st edition.

Page 21: laporan selektif repeat

Pertanyaan dan Jawaban Presentasi

1. Apakah aplikasi selective repeat?

Jawab :

Aplikasi selective repeat adalah untuk koreksi error pada pengiriman suatu paket

data. Contohnya adalah pengiriman paket data pada jaringan internet. Metode

koreksi error ini bisa dikatakan paling efisien karena hanya frame yang

mengalami error yang akan diretransmisi. Koreksi error ini bertujuan agar

informasi yang dikirimkan pada penerima dapat diterima dengan baik oleh

penerima tanpa adanya kesalahan sehingga tidak merugikan pihak pengirim dan

penerima.

2. Bagaimana pengiriman data ulang? Apakah data langsung dikirim ulang saat

terjadi error atau menunggu setelah semua frame selesai dikirimkan?

Jawab :

Pengiriman data ulang akan langsung dikirim setelah pengirim tahu bahwa

penerima belum menerima paket data tertentu sesuai dengan sekuennya. Pada

metode koreksi error dengan menggunakan continuous request, pengirim dapat

mengirimkan paket data secara kontinu. Misalnya pengirim dapat mengirim paket

data ke-1, 2, 3, dan 4 secara langsung dan kontinu walaupun pengirim belum

menerima ack atau nak dari penerima. Pengirim bisa mengetahui bahwa suatu

paket data tidak terkirim atau tidak diterima oleh penerima dari ack atau NAK.

Jika pengirim tidak menerima ack dari penerima maka pengirim menyimpulkan

bahwa penerima tidak menerima paket data tersebut. Jika pengirim menerima

atau tidak menerima NAK maka pengirim menyimpulkan bahwa penerima tidak

menerima paket data tersebut.

3. Mana yang lebih efektif untuk metode koreksi error?

Jawab :

Setiap metode memiliki keunggulan dan kelemahan masing-masing.

Untuk metode go back N, keunggulannya adalah tidak memerlukan kapasitas

penyimpanan yang besar baik pada penerima maupun pada pengirim dan juga

tidak membutuhkan software khusus untuk pengurutan frame karena jika

terjadi error pada salah satu frame maka frame yang mengalami error dan

frame dengan urutan sekuen setelah frame error yang telah terkirim akan

diretransmisi. Sedangkan frame yang double akan dibuang.

Page 22: laporan selektif repeat

Kelemahan dari metode go back N adalah kurang efisien karena terlalu

banyak retransmisi.

Keunggulan dari selective repeat adalah lebih efisien karena mengurangi

jumlah retransmisi data. Hanya frame yang mengalami error yang akan

diretransmisi sedangkan yang lain tetap.

Kelemahannya adalah memerlukan kapasitas penyimpanan data yang lebih

besar baik disisi pengirim dan penerima untuk menyimpan frame sampai

frame yang rusak diretransmisi. Selain itu disisi penerima juga harus terdapat

software yang dapat mengirim frame diluar urutan agar data bisa sampai

secara urut pada pengguna akhir.

Dari perbandingan keduanya, yang paling efisien adalah metode selective repeat.

4. Saat yang bagaimana harus menggunakan metode koreksi error? Apakah sudah

ditentukan sejak awal?

Jawab :

Metode yang digunakan sudah ditentukan sejak awal. Metode go back N dipakai

karena kita tidak memerlukan space penyimpanan yang besar baik pada penerima

maupun pada pengirim. Metode selective repeat dipakai karena tingkat efisiensi

dalam pengiriman paket-paket data (frame). Pengirim hanya akan mengirimkan

ulang paket data (frame) yang mengalami error dalam perjalanannya. Sedangkan

yang tidak mengalami error tidak dikirim ulang.