EXPLORE YOUR INTERESTS

Rabu, 17 Desember 2014

Cara Konfigurasi Video Streaming menggunakan TCP dan UDP di Windows

Video Streaming


Video adalah teknologi pemrosesain sinyal elektronik yang mewakilkan gambar bergerak (Iwan binanto : 179)  sedangkan streaming dalam dunia internet mengacu kepada sebuah teknologi yang mampu mengkompresi ukuran file video agar mudah ditransfer melalui jaringan internet yang dilakukan secara stream atau terus menerus. Dari segi prosesnya, streaming berarti proses mengirimkan file dari server ke klien melalui jaringan packet-based seperti internet. Dari segi pengguna, streaming adalah teknologi yang memungkinkan suatu file dapat segera dijalankan secara real time dan terus enerus  tanpa harus menunggu selesai didownload .

Video streaming adalah sebuah teknologi pengiriman video dari server  agar bisa diterima secara terus menerus dan ditampilkan secara real time oleh klien. 

Protokol Video Streaming

Aplikasi streaming menggunakan protokol TCP (Transmission Control Protocol) dan UDP (User Datagram Protocol) di layer transport pada internet  model (TCP/IP model) yang ditunjukkan oleh gambar di bawah ini.


Transport protokol menyediakan konektivitas secara end to end di jaringan aplikasi streaming. Protokol tersebut memindahkan data antara aplikasi-aplikasi pada end-device yang terhubung ke jaringan seperti mengatur komunikasi individual antara web server dan web client  Untuk mengatur bagaimana cara web server dan client dapat berinteraksi dikelola oleh  protokol-protokol pada layer aplication. 
Selain protokol-protokol aplikasi di atas ada berbagai macam protokol aplikasi untuk streaming yaitu:

a. RealTime Transport Protocol (RTP) 
RTP Sebuah paket dengan format UDP dan seperangkat konvensi yang menyediakan fungsi jaringan transportasi end-to-end, cocok untuk aplikasi transmisi data real-time seperti audio, video atau data simulasi, melalui layanan jaringan multicast atau unicast.

b. Real-time Control Protocol (RTCP) 
RTCP adalah protokol kontrol yang bekerja sama dengan RTP. Paket kontrol RTCP secara berkala dikirimkan oleh masing-masing paket dalam sesi RTP untuk semua paket lainnya. RTCP digunakan untuk mengontrol kinerja dan untuk tujuan diagnostik.

c. Session Description Protocol (SDP) 
Gambaran format media yang digunakan untuk menggambarkan session multimedia untuk tujuan pengumuman session, session undangan, dan bentuk-bentuk inisiasi session multimedia.

d. Hypertext Transfer Protocol (HTTP)
Sebuah protokol level aplikasi yang terdistribusi, kolaboratif, dengan system informasi hypermedia. Ini adalah protokol berorientasi objek yang dapat digunakan untuk banyak tugas, seperti server nama dan sistem manajemen objek terdistribusi, melalui perpanjangan metode permintaannya.

e. RTSP (Real Time Streaming Protocol )
RTSP adalah sebuah protokol di tingkat aplikasi untuk mengontrol pengiriman data-data dan properti yang bersifat real time. RTSP menyediakan kerangka extensible untuk mengaktifkan kendali pada pengiriman data real-time, seperti audio dan video, dengan menggunakan Transmission Control Protocol (TCP) atau User Data Protocol (UDP).  Protokol ini mengendalikan beberapa  sesi pengiriman data, menyediakan sarana untuk memilih channel seperti UDP, multicast UDP dan TCP, dan menyediakan sarana untuk memilih pengiriman Mekanisme berdasarkan RTP (RFC 1889).

Cara Kerja
Langkah kerja dari video streaming adalah sebagai berikut
1. Klien mengirimkan permintaan streaming video atau audio ke web server,
2. Web server meneruskan permintaan klien ke streaming server,
3. Streaming server memproses permintaan klien,
4. Streaming server mentransmisikan file video atau audio yang diminta kepada klien secara langsung tanpa melalui web server,
5. Klien dapat menjalankan file video atau audio yang diminta.

Software yang digunakan

Beberapa software yang digunakan untuk melakukan streaming antara lain:
1. Darwin Streaming Server
2. Adobe Flash Streaming Server
3. VideoLAN Client (VLC)
4. Icecast
5. PlayOn
6. SHOUTcast
7. dan lain lain. 


Langkah-langkah mengonfigurasi video streaming 

a. Menggunakan Protokol TCP 

Untuk protokol TCP di sini menggunakan http ( Hypertext Transfer Protocol)

Konfigurasi Server menggunakan protokol HTTP

1. Pastikan VLC sudah terinstal di PC Anda. kalau belum bisa download di 
2. Buka aplikasi VLC. Klik Media >  Stream

3. Ambil Video dari PC Anda. Klik Add


4. Klik Next
5. Untuk TCP kita menggunakan protokol HTTP > Add.
6.  Selanjutnya, pilih port yang digunakan. Di sini saya menggunakan port default, yaitu 8080. Untuk path beri nama /tes
7. Di bagian ini, anda bisa memilih format video yang diinginkan misalnya  video saja tanpa suara, audio saja atau video beserta suara. Format berikut menghasilkan keluaran berupa video beserta suara


8. Pada tahap ini, stream bisa langsung dipilih ataupun menunggu konfigurasi client terlebih dahulu baru di-stream.

Konfigurasi Client

9. Pastikan di PC client sudah terinstal VLC. Pilih  Media > Open Network Stream


10. Masukkan URL  http://ip address PC server:port/nama path  > play . Jika di server belum di-stream-kan maka stream terlebih dahulu baru klik play di bagian ini.
Untuk mengtahui ip address pc server, buka command prompt pada pc server lalu ketik ipconfig seperti di bawah ini

Taraaang...ini dia hasilnya 



b. Menggunakan Protokol UDP

Untuk protokol UDP menggunakan RTSP dan RTP .

Konfigurasi Server menggunakan protokol RTSP unicast
1. Ulangi langkah  1-4 sama seperti di atas
2. Pada langkah 5 beri tanda centang pada display locally,  pilih RTSP > add


3. Pada path beri nama /tes.sdp > Next


4. Selanjutnya ikuti saja  langkah 7-8

Konfigurasi client

5. Seperti langkah 9 di atas, buka VLC > Media > Open Network Stream
6. Masukkan URL dengan rtsp://ip address server :port/nama path  . Lalu play

Konfigurasi server menggunakan protokol RTP multicast

1. langkah 1-4 sama seperti di atas
2. Pada bagian ini pilih RTP seperti di bawah ini. Lalu add



3. Pada  multicast ini berarti satu port dipakai untuk beberapa client, jadi streamingnya dibedakan berdasarkan address.  Pada contoh ini diisi menggunakan ip address multicast kelas D
4. Selanjutnya ikuti saja langkah 7-8

Konfigurasi Client

5. Sama seperti langkah sebelumnya, buka VLC > Media > Open Network Stream
6. Masukkan URL dengan rtp://ip address server :port  . Lalu play

Hasil video streaming menggunakan TCP dan UDP 

TCP dan UDP memiliki performa yang berbeda dalam menjalankan video streaming. Perbedaan keduanya adalah terletak pada fungsi masing-masing implementasi protokol. TCP memprioritaskan kehandalan serta tata cara dalam pengiriman data seperti koreksi kesalahan, mengirim ulang paket data yang hilang serta adanya pengurutan data sesuai dengan urutan data yang dikirim sehingga menyebabkan delay karena menunggu paket-paket data tersusun secara berutrutan. Hal ini menyebabkan video streaming menggunakan TCP lebih lambat dibanding UDP sehingga TCP lebih cocok untuk menjalankan komunikasi data seperti email, transfer file, web browsers.
Sedangkan UDP merupakan kebalikan dari TCP yang lebih mementingkan kecepatan daripada kehandalan karena disamping header yang lebih simpel, pesan-pesan dikirimkan tanpa negosiasi koneksi antara dua host yang akan bertukar informasi (connectionless), serta tidak adanya pengurutan data. UDP cocok digunakan untuk komunikasi yang lebih membutuhkan kecepatan seperti video streaming, Domain Name System (DNS), dan Voice over IP (VoIP). 


Referensi

1. http://tools.ietf.org/pdf/rfc2326.pdf
2. http://staff.unud.ac.id/~linawati/wp-content/uploads/2011/07/proses-video-streaming-dengan-protocol-rtsp.pdf
3. http://lecturer.eepis-its.edu/~zenhadi/kuliah/Jarkom2/Prakt8%20Streaming%20Server.pdf


1 komentar: