Oleh Faisal Akib Bentuk pengkontrolan kesalahan didasarkan atas teknik kontrol arus sliding window yang biasa disebut juga dengan Go-back-N ARQ. Dalam metode ini, stasiun bisa mengirim deretan frame yang diurutkan berdasarkan suatu modulo bilangan. Jumlah frame balasan yang ada ditentukan oleh ukuran jendela, menggunakan teknik kontrol arus jendela penggeseran. Bila tidak terjadi suatu. kesalahan, stasiun tujuan akan membalas (RR = Receive Ready, atau piggybacked Acknowledgement) frame yang datang seperti biasa. Bila stasiun tujuan mendeteksi suatu kesalahan pada sebuah frame, stasiunt tujuan mengirim balasan negatif (REJ = reject) untuk frame tersebut. Stasiun tujuan kemudian membuang frame itu dan semua frame-frame yang nantinya akan datang sampai frame yang mengalami kesalahan diterima dengan benar. Jadi, stasiun sumber, bila menerima REJ, harus melakukan retransniisi terhadap frame yang mengalami kesalahan tersebut plus semua frame pengganti yang ditransmisikan sementara.
Pertimbangkan bahwa stasiun A mengirim frame ke stasiun B. Setelah setiap transmisi dilakukan, A menyusun pencatat waktu balasan untuk frame yang baru saja ditransmisi. Anggap saja bahwa B sebelumnya berhasil menerima frame (i – 1) dan A baru saja mentransmisikan frame i. Teknik go-back-N mempertimbangkan kemungkinan-kemungkinan berikut ini:
1. Rusaknya frame: Bila frame yang diterima invalid (misalnya, B mendeteksi adanya kesalahan), B membuang frame dan tidak melakukan tindakan apa-apa. Dalam hal ini ada dua subkasus,yakni:
1. Didalam periode waktu yang memungkinkan, A berturut-turut mengirim frame (i+1). B menerima frame (i+1) yang tidak beres dan mengirim REJ i. A harus melakukan retransmisi terhadap frame i dan semua frame urutannya.
2. A tidak segera mengirim frame-frame tambahan. B tidak menerima apa-apa serta tidak mengembalikan RR maupun REJ. Bila pewaktu A habis, A mentransmisikan frame RR yang memuat bit yang disebut dengan bit P, yang disusun berdasarkan 1. B menerjemahkan frame RR dengan bit P dari 1 sebagai perintah yang harus dijawab dengan jalan mengirimkan RR, menunjukkan frame berikutnya yang diharapkan, yang berupa frame i. Bila A menerima. RR, ia kembali mentransmisikan frame i.
2. Rusaknya RR. Terdapat dua subkasus:
1. B menerima frame i dan mengirim RR (i+1), yang hilang saat singgah. Karena balasannya kumulatif (misalnya, RR 6 berarti semua frame sampai 5 dibalas), kemungkinan A akan menerima RR urutannya sampai frame berikutnya dan akan tiba sebelum pewaktu yang dihubungkan dengan frame i berakhir.
2. Bila pencatat waktu A habis, A mentransmisikan perintah RR sebagaimana dalam kasus l.2 diatas. A menyusun pewaktu yang lain, yang disebut pewaktu P-bit. Bila B gagal merespons perintah RR, atau bila responsnya rusak, maka pewaktu P-bit A akan berakhir. Dalam hal ini. A akan kembali berusaha dengan cara membuat perintah R yang baru dan kembali mengulang pewaktu P-bit. Prosedur ini diusahakan untuk sejumlah iterasi. Bila A gagal memperoleh balasan setelah beberapa upaya maksimum dilakukan. A kembali mengulangi prosedur yang sama.
3. Rusaknya REJ. Bila REJ hilang, sama dengan kasus l.2.
(a) Go-Back-N ARQ (b) Selective reject ARQ
GAMBAR: Protokol sliding window ARQ
GAMBAR: Protokol sliding window ARQ
Gambar di posting ini adalah contoh aliran frame untuk go-back N ARQ. Karena adanya penundaan perambatan pada jalur, dari saat itu di mana balasan (baik positif maupun negatif) tiba kembali di stasiun pengiriman, sedikitnya telah dikirim satu frame tambahan di luar frame yang sedang dibalas. Dalam contoh ini, frame 4 mengalami kerusakan. Frame 5 dan 6 diterima tidak sesuai yang diperintahkan dan dibuang oleh B. Saat frame 5 tiba, B segera mengirim REJ 4. Saat REJ untuk frame 4 diterima, tidak hanya frame 4 saja namun juga frame 5 dan 6 yang harus ditransmisikan kembali. Perlu dicatat bahwa transmitter harus menjaga tiruan semua frame yang tidak dibalas.
Pada bagian flow control, telah dibahas bahwa untuk bidang bernomor urut k-bit, yang menyediakan jarak bernomor urut 2k, ukuran window maksimum dibatasi sampai 2k-l. Ini harus dilakukan dengan cara dilakukannya interaksi antara pengontrolan kesalahan dan balasan. Amati, bila data sedang dipindahkan ke dua arah, stasiun B harus mengirimkan piggybacked ACK ke frame yang dari stasiun A di dalam frame data yang sedang ditransmisikan oleh B. Bahkan bila balasannya sudah dikirim. Sebagaimana yang telah kita sebutkan tadi, hal ini karena B harus menempatkan beberapa nomor pada bidang di dalam balasan data framenya. Seperti yang nampak pada contoh, diasumsikan nomor urut 3-bit (jarak urutan nomor = 8). Anggap saja sebuah stasiun mengirim frame 0 dan menerima kembali RR 1 dan kemudian mengirim frame 1, 2, 3, 4, 5, 6, 7, 0 dan menerima RR 1 yang lain. Ini berarti bahwa kedelapan frame sudah diterima dengan benar dan RR 1 merupakan balasan kumulatif. Juga bisa berarti bahwa kedelapan frame rusak atau hilang saat transit, dan stasiun penerima mengulangi RR 1 sebelumnya. Problem seperti ini bisa dihindari bila ukuran jendela maksimum dibatasi sampai 7 (23 – 1).
Baca Artikel Lain: Concentrator/HUB