BAB I
PENDAHULUAN
1.1 Latar Belakang
Dalam komunikasi data, pengontrolan kesalahan berkaitan dengan mekanisme untuk mendeteksi dan memperbaiki kesalahan yang terjadi pada pentransmisian frame. Data dikirim sebagai deretan frame, frame tiba sesuai dengan perintah yang sama saat dikirim, dan masing – masing frame yang ditransmisikan mengalami perubahan dan sejumlah variabel penundaan sebelum mencapai receiver (penerima). Kesalahan yang mungkin terjadi adalah hilangnya frame (sehingga frame gagal diterima receiver) dan rusaknya frame (frame diakui telah tiba, namun beberapa bit mengalami kesalahan, sehingga dibuang oleh receiver).
Secara umum, teknik yang paling umum untuk mengontrol kesalahan adalah pendeteksian kesalahan, balasan positif (mengembalikan balasan positif untuk frame bebas-kesalahan yang diterima dengan baik), retransmisi setelah waktunya habis (sumber melakukan retransmisi frame yang belum dibalas setelah beberapa saat tertentu) dan balasan negatif dan retransmisi (mengembalikan balasan negatif kepada frame yang dideteksi mengalami kesalahan. Sumber melakukan retransmisi terhadap frame yang rusak). Mekanisme pengontrolan kesalahan ini disebut sebagai Automatic Repeat Request (ARQ). Efek ARQ ini adalah mengubah jalur data yang tidak andal menjadi andal. Tiga metode ARQ yang sudah distandarisasikan adalah Stop-and-Wait ARQ, Go-Back-N ARQ dan Selective-Reject ARQ.
Berdasarkan uraian di atas, penulis tertarik untuk merancang suatu perangkat lunak yang mampu mensimulasikan proses kerja metode ARQ. Oleh karena itu, penulis mengambil tugas akhir (skripsi) dengan judul ‘Perangkat Lunak Simulasi Pengontrolan Kesalahan dengan Metode ARQ’.
1.2 Perumusan Masalah
Berdasarkan latar belakang pemilihan judul, maka yang menjadi permasalahan adalah bagaimana membuat simulasi pengontrolan kesalahan dengan metode ARQ dengan menggunakan bahasa pemograman Visual Basic 6.0.
1.3 Tujuan dan Manfaat
Tujuan penyusunan tugas akhir ini adalah untuk mengembangkan suatu perangkat lunak yang mampu mensimulasikan metode ARQ dalam mengontrol kesalahan pada proses pengiriman data.
Manfaat dari penyusunan tugas akhir ini adalah untuk mempelajari dan membantu pemahaman tentang metode ARQ dalam mengontrol kesalahan pada proses pengiriman data.
1.4 Pembatasan Masalah
Karena keterbatasan waktu dan pengetahuan penulis, maka ruang lingkup permasalahan dalam merancang perangkat lunak ini antara lain :
1. Metode ARQ yang disimulasikan dibatasi 3 buah, yaitu Stop-and-Wait ARQ, Go-Back-N ARQ dan Selective-Reject ARQ.
2. Satuan yang digunakan di dalam perangkat lunak adalah tick, yang merupakan satuan waktu terkecil di dalam komputer.
3. Input perangkat lunak berupa,
a. Waktu transmisi satu frame (dalam tick).
b. Waktu transmisi / balasan (dalam tick).
c. Kecepatan perambatan (lambat, sedang atau cepat).
d. Interval waktu ‘timeout’ pada pencatat waktu sumber (dalam tick).
e. Jumlah frame yang akan ditransmisikan.
f. Gangguan yang muncul pada proses pentransmisian frame atau balasan (berupa opsi yang dapat dipilih).
4. Skala waktu perangkat lunak dapat diatur (1 tick dalam perangkat lunak mewakili x milisekon dalam kenyataan).
5. Perangkat lunak mencatat setiap proses yang terjadi ke dalam sebuah log / history. Log dapat dicetak ke printer atau disimpan dalam bentuk file.
6. Pada Go-Back-N ARQ dan Selective-Reject ARQ, perangkat lunak juga mensimulasikan flow control jendela penggeseran baik dari perspektif pengirim maupun dari perspektif penerima.
7. Sistem pengiriman frame akan dimatikan apabila terjadi ‘time-out‘ sebanyak 10 kali berturut-turut.
1.5 Metodologi Penyelesaian
Langkah – langkah pembuatan perangkat lunak ini antara lain :
a. Membaca dan mempelajari buku – buku yang berhubungan dengan metode ARQ.
b. Mempelajari prosedur pengontrolan kesalahan pada Stop-and-Wait ARQ, Go-Back-N ARQ dan Selective-Reject ARQ.
c. Mempelajari teknik – teknik dasar pemrograman dengan menggunakan Visual Basic 6.0.
d. Merancang interface untuk perangkat lunak simulasi.
e. Merancang perangkat lunak simulasi pengontrolan kesalahan dengan metode ARQ dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0.
f. Melakukan pengujian dan pengetesan terhadap perangkat lunak hasil rancangan.