BAB II
LANDASAN TEORI
2.1 Aplikasi Live Broadcasting
Broadcasting berasal dari kata kerja to broadcast yang diartikan sebagai alat berbicara atau menampakkan diri di radio atau televisi (to speak or appear on radio or television) [2].
Live Streaming merupakan suatu sistem yang terdiri dari komponen-komponen yang saling mendukung dan merupakan sebuah teknologi yang memungkinkan distribusi data audio, video, dan multimedia secara real-time melalui internet [3].
Trafik yang dikaji pada Tugas Akhir ini merepresentasikan aplikasi live streaming atau live broadcasting yang membutuhkan delay yang kecil.
2.2 Transmisi Control Protokol
TCP adalah protokolyang paling umum digunakan pada dunia internet. TCP berada di lapisan transport. TCP merupakan protokol yang memungkinkan kumpulan komputer untuk berkomunikasi dan bertukar data didalam suatu
network (jaringan) secara reliable, yakni untuk aplikasi-aplikasi yang membutuhkan keandalan data. Handal berarti memiliki koneksi yang terpercaya, dimana terdapat call setup dan call termination, serta penggunaan
acknowledgement dimana setiap data harus dipastikan sampai ke tujuan.
TCP menyediakan service yang dikenal dengan connection oriented,
reliable, byte stream service. Connection oriented berarti sebelum melakukan pertukaran data, dua aplikasi pengguna TCP harus melakukan pembentukan
handshake / jabat tangan terlebih dahulu. Reliable berarti TCP menerapkan proses deteksi kesalahan paket dan retransmisi. Byte Stream Service berarti paket dikirimkan dan sampai ke tujuan secara berurutan.
TCP mentransmisikan data dalam bentuk segmen. Satu segment terdiri dari beberapa paket internet protocol (IP). Setiap segment memerlukan pemberitahuan jika data telah diterima oleh terminal yang dituju. Pemberitahuan ini disebut
acknowledgment (ACK), jika acknowledgment tidak diterima maka terminal
pengirim akan mengirim ulang data. Jika acknowledgment memberikan informasi bahwa sebagian paket IP hilang, maka terminal pengirim akan mengirim ulang.
TCP umumnya digunakan ketika protocol lapisan aplikasi membutuhkan layanan transfer data yang bersifat handal, yang layanan tersebut tidak dimiliki oleh protocol lapisan aplikasi tersebut. Contoh dari protocol yang menggunakan TCP adalah HTTP dan FTP [4].
2.3 TCP Dengan Acknowledgement Terpisah
Transmission Control Protocol (TCP) menyediakan pengiriman end-to-end
yang bersifat reliable. TCP menggunakan paket acknowlegement (ACK) untuk menjamin bahwa data yang dikirim dari satu ujung diterima oleh ujung yang lain. Jika pengirim tidak menerima ACK dalam jangka waktu tertentu, maka data akan dianggap telah hilang dan akan ditransmisikan kembali.
Efek buruk dari penggunaan ACK adalah, jika ACK terlambat diterima, maka terjadi delay tambahan akibat proses retransmisi, maupun penundaan pengiriman paket selanjutnya. Percepatan pengiriman paket ACK dapat mengurangi delay yang dialami TCP [1]. Metode yang digunakan adalah dengan menyingkat jalur paket ACK menggunakan jalur alternatif yang menghubungkan kedua titik komunikasi secara langsung. Jalur atau rute alternatif ini didesain dengan bandwidth yang rendah sehingga tidak membebani biaya komunikasi end-to-end. Hasilnya adalah protokol TCP baik yang standar maupun TCP Vegas mengalami penurunan delay transmisi [1]. Gambar 2.1 menunjukkan ilustrasi penambahan jalur alternatif dari titik 9 ke titik 8.
a.Jaringan tanpa ACK jalur alternatif b. Jaringan dengan Penambahan Jalur Gambar 2.1 TCP dengan jalur ACK alternatif
Namun demikian, penelitian sebelumnya hanya menggunakan rute alternatif dengan rasio bandwidth terhadap trafik 40% [1]. Tugas akhir ini meneliti pengaruh rasio bandwidth terhadap kinerja TCP dengan rute ACK alternatif dengan bandwidth 0.1 MBps sampai 1,5 MBps.
2.4 Network Simulator NS-2
NS-2 merupakan sebuah program simulasi berbasis event (kejadian) yang banyak digunakan untuk mempelajari sifat dinamis dari jaringan dan protokol komunikasi. NS-2 mampu mensimulasikan jaringan kabel dan jaringan nirkabel serta protokolnya mencakup algoritma routing, protokol komunikasi, algoritma akses dan lain-lain.
Gambar 2.2 menunjukan arsitektur dasar NS-2. NS-2 menggunakan dua jenis bahasa pemrograman, C++ dan TCL. Bahasa C++ digunakan sebagai inti proses simulasi, sementara bahasa TCL untuk konfigurasi jaringan [5].
Gambar 2.2 Arsitektur dasar NS-2
TclCL dan OTcl adalah komponen TCL yang berfungsi untuk menjembatani konfigurasi dengan proses simulasi. Program NS-2 menggunakan
command line interface, yang menghasilkan trace atau catatan yang dapat dipergunakan oleh modul network animator (NAM) maupun piranti plot grafik Xgraph [5].
2.5 Diagram blok NS-2
Gambar 2.3 menunjukkan blok penyederhanaan komponen NS-2. NS-2 ditulis dalam 2 bahasa: TCL dan C++. TCL berisi script konfigurasi jaringan, sementara C++ berisi script mesin simulasi. Input simulasi diperoleh dari script TCL, baik konfigurasi jaringan, jenis trafik serta media yang digunakan. Berdasarkan input inilah dipilih file C++ yang berkaitan dengan jaringan yang digunakan, trafik yang mengalir, protokol transport yang digunakan, model propagasi, routing dan lainnya. File-file ini didaftarkan ke scheduler NS-2 untuk dieksekusi sesuai skenario simulasi. Output simulator adalah trace, yakni rekaman data di file teks yang digunakan untuk menganalisis hasil simulasi.
C++ TCL
Input konfigurasi
jaringan Input Traffic Mode propagasi ...
802.11 kabel 802.16 ...
Evalvid
Model propagasi
FTP video
ruting
Scheduler
Simpan file trace Analisis Menjadwalkan
kejadian
CBR ...
eksekusi UDP
TCP RTP
Gambar 2.3 Diagram blok proses NS-2.