Rabu, 17 Desember 2014

Video Streaming Server Menggunakan VLC berbasis Protokol HTTP, RTSP, dan RTP

Video Streaming           

          Video Streaming adalah istilah yang sering kita gunakan saat melihat video di internet melalui browser dimana kita tidak perlu mendownload file video tersebut untuk dapat memutarnya. Istilah ini tersebut terdiri dari dua suku kata yaitu video dan streaming, secara istilah video berarti teknologi untuk menangkap, merekam, memproses, mentransmisikan dan menata ulang gambar bergerak, sedangkan streaming berarti proses penghantaran data dalam aliran berkelanjutan dan tetap yang memungkinkan pengguna mengakses dan menggunakan file sebelum data dihantar sepenuhnya. Jadi video streaming dapat diartikan transmisi file video secara berkelanjutan yang memungkinkan video tersebut diputar tanpa menunggu file video tersebut disampaikan secara keseluruhan.

Protokol transport TCP dan UDP

         TCP (Transmission Control Protocol) adalah protokol yang paling umum digunakan pada dunia internet, karena kelebihan TCP yaitu adanya koreksi kesalahan. Dengan menggunakan protokol TCP, maka proses pengiriman akan terjamin. Hal ini disebabkan adanya bagian untuk sebuah metode yang disebut flow control. Flow control menentukan kapan data harus dikirim kembali, dan kapan menghentikan aliran data paket sebelumnya, sampai data tersebut berhasil ditransfer. Hal ini karena jika paket data berhasil dikirim, dapat terjadi sebuah ‘tabrakan’. Ketika ini terjadi, maka klien akan meminta kembali paket dari server sampai seluruh paket berhasil ditransfer dan identik dengan aslinya.
         UDP (User Datagram Protocol) adalah protokol umum lainnya yang digunakan pada dunia internet dan merupakan connectionless. UDP dapat lebih cepat daripada TCP karena pada protokol UDP tidak ada bentuk kontrol aliran dan koreksi kesalahan. Artinya UDP tidak mementingkan bagaimana keadaan koneksi, jadi jika terjadi pengiriman data maka tidak dijamin berhasil sampai atau tidaknya data tersebut. Pada UDP juga tidak ada pemecahan data, oleh karena itu tidak dapat melakukan pengiriman data dengan ukuran yang besar. UDP mempunyai kelebihan dibandingkan TCP dengan tidak menggunakan field sequence dan acknowledgement. Keuntungan UDP yang paling jelas dari TCP adalah byte tambahan yang lebih sedikit. Di samping itu, UDP tidak perlu menunggu penerimaan atau menyimpan data dalam memory sampai data tersebut diterima. Ini berarti, aplikasi UDP tidak diperlambat oleh proses penerimaan dan memory dapat dibebaskan lebih cepat.

Tutorial Membuat Server Video Streaming 

1. Install aplikasi VLC pada Windows
          Pastikan komputer anda telah terinstall VLC sebagai aplikasi untuk streaming Video. VLC dapat di download pada link berikut ini http://www.videolan.org/vlc/ .

2. Buat Server Video Streaming dengan memilih Stream pada submenu Media. Add video yang akan di streaming, lalu klik Stream. Seperti yang terlihat seperti gambar di bawah ini :


 akan muncul tampilan Source seperti gambar di bawah, Klik Next.






akan muncul tampilan Destination Setup. Pilih destination sesuai yang kita inginkan seperti HTPP, RTP, atau mungkin RTSP, dan juga crosscheck Display locally jika kita ingin melihat video yang kita stream. Pada kali ini saya akan menstream video dengan destination HTTP, RTSP, dan RTP Seperti yang terlihat pada gambar di bwah ini :





Selanjutnya klik Add, dan akan muncul untuk HTTP dan RTSP kolom port dan path, untuk port kita gunakan port default yang di set VLC, dan untuk path kita dapat membuat nama path sesuai yang diinginkan, seperti pada contoh ini saya tuliskan " test". Untuk RTP akan muncul kolom Address, base port dan stream name, isikan address multicast yaitu ip tipe D yang pada contoh ini " 239.192.1.5" baseport 5004 dan stream name di kosongkan saja.




Klik Next, akan muncul tampilan Stream Output. Disini kita dapat memilih bentuk output dari file yang kita stream seperti video saja, audio saja, audio dan video, dan banyak pilihan lainnya. pada kali ini kita akan outputkan Video - MPEG-2 + MPGA (TS)



klik Next. dan plih Stream untuk menstreaming video yang telah dipilih.


Untuk membuka video yang di streaming dari VLC dapat dilakukan dengan cara masuk ke menu Media pilih Open Network Stream. 


Pada tab Network masukkan alamat sesuai dengan tipe protokol yang kita gunakan untuk streaming tadi seperti yang terlihat pada gambar di bawah ini :




Sehingga akan muncul video streaming seperti yang terlihat pada gambar di bawah ini :




Enjoy It Guys!!

Senin, 15 Desember 2014

Membangun IP PBX Server Dengan Windows 7 dan 3CX Phone System



3CX Phone System adalah sebuah software IP PBX yang dapat menggantikan perangkat fisik PBX / PABX. IP PBX dari 3CX ini telah didevelop khusus untuk sistem operasi Windows dan berprotokol standar SIP, sehingga akan lebih mudah dimanage dan tentunya akan cocok dengan segala jenis SIP Phone, softphone maupun IP Phone.
3CX Phone System, selain berbasis Windows, 3CX juga memberikan paket teknologi komunikasi yang lengkap dengan menyertakan voice mail, fax, email dan status kehadiran/online user dan juga Video Call.
Masing-masing user juga dapat mengkonfigurasi pengaturan extensinya masing-masing melalui web-based user portal, yang tentunya dapat diakses dari mana saja tanpa bantuan IT Staff. di antaranya fitur-fitur seperti Call Forwarding dan Caller ID.
Dengan konsol web-based, administrator pun dapat dengan mudah membuat extensi-extensi baru dan mengubah pengaturan IP PBX. Dan karena 3CX Phone System adalah aplikasi Windows, tentunya akan sangat mudah dimonitor dan dikontrol. Anda dapat meingstall 3CX pada sebuah server yang sudah ada, atau bisa divirtualisasikan dan tidak memerlukan perangkat , tenaga dan biaya manajemen tambahan.

Pada kali ini kita akan membangun sebuah Ip PBX Server dengan windows 7 dan 3CX phone System menggunakan sebuah PC sebagai server dan beberapa smartphone Android yang digunakan sebagai client nantinya.

Langkah awal yang dilakukan yaitu menginstall "Software Based PBX for Windows". Setelah selesai menginstall, kita mulai konfigurasi 3CX Phone System ( IP PBX Server ). Di awali dengan pilihan bahasa, pilih bahasa yang akan digunakan, lalu klik Next.


Selanjutnya tentukan IP Local / LAN IP PBX server kita. Pada Contoh ini digunakan IP 192.168.43.51 " yaitu IP yang didapat dari tethering Smartphone yang digunakan" lalu klik Next.


Selanjutnya tampilan permintaan untuk menentukan IP Public. Pada kali ini kita hanya tidak mengguanakan Ip public karena hanya akan membuat jaringan Local. Klik Next.


Jika IP PBX server baru pertama kita buat, maka pilih Create New PBX. Atau kita juga dapat menggunakan fitur restore dari hasil backup jika kita sudah memiliki file backup dari IP PBX server sebelumnya. Lalu klik Next


Selanjutnya menentukan jumlah digit extention. Pada contoh ini kita pilih 3 digit. Lalu klik Next.


Selanjutnya kita menentukan SMTP Server untuk penggunaan voice mail. Lalu klik Next.


Selanjutnya Administrator Login and Password dengan memasukkan username admin dan password admin. klik Next.


Selanjutnya membuat extension untuk operator dan client, dengan nomor extension 100, 101, 102 dan id serta password yang di set sesuai keinginan. Klik Add.


Selanjutnya menentukan negara dan dialing kode. pilih indonesia, lalu klik Next.


Selanjutnya menetukan nomor extension Operator, pada kali ini kita gunakan extension 100. lalu klik Next.


lanjut dengan tahap berikutnya, Next kan aja sampai online registration pilih Skip, lalu Next.


Sehingga muncul tampilan seperti gambar di bawah ini berarti seluruh proses inisialisai konfigurasi telah berhasil dilakukan. Lalu klik Finish.


Selanjutnya lakukan pengaturan 3CX Phone System 10 Ip PBX Server melalui aplikasi Start, lalu double click pada icon 3CX. dan masukan username dan password "admin" seperti gambar dibawah ini.


Sehingga muncul tampilan seperti gambar di bawah. terlihat telah terdaftar 3 buah extension yaitu nomor 100, 101, 102 yang dengan warna hijau berarti telah terhubung atau On Hook.


Adapun Konfigurasi yang dilakukan pada masing2 client pada PC ataupun smartphone yang telah terinstall 3CX nya seperti yang terlihat pada gambar berikut ini.







Apabila konfigurasi benar dan berhasil, maka status pada Extension status akan berubah menjadi Hijau yang menandakan sudah bisa melakukan panggilan. seperti yang terlihat pada gambar berikut ini :



Kita juga bisa melakukan Call Conference, yaitu melakukan panggilan dengan beberapa participants seperti yang terlihat pada gambar di bawah ini :



Enjoy It Guys!! 

Selasa, 09 Desember 2014

Instalasi Dan Konfigurasi Nagios 3 Pada Ubuntu 12.04

        Nagios merupakan suatu host dan service yang di design untuk memonitoring keadaan suatu jaringan atau bisa memonitoring masalah-masalah pada suatu host tertentu yang ingin kita monitoring. Nagios mengawasi host-host dan servis yang telah ditetapkan, memberi peringatan jika keadaan memburuk, dan memberi tahu kapan keadaan tersebut membaik.

Nagios sudah memiliki sejumlah fitur, yang membuat aplikasi monitoring ini bersifat cukup powerfull. Beberapa fitur yang dimiliki Nagios, antara lain :

  • Dapat digunakan untuk memonitoring service jaringan ( SMTP, POP3, HTTP, NNTP, PING).
  • Dapat digunakan untuk memonitoring penggunaan host resource ( Processor load, penggunaan memory dan harddisk, proses yang sedang berjalan, file log, dan sebagainya).
  • Memiliki desain plugin yang simpel, yang mengizinkan user dengan mudah men-develop metode pemeriksaan host dan service milik mereka.
  • Memiliki kemampuan untuk mendefenisikan hirarki host jaringan, yang mengizinkan pendeteksian dan pembagian antara komputer host yang down, dan yang tidak down.
  • Memiliki kemampuan untuk mendefenisikan penagangan kejadian yang akan dijalankan, sebelum terjadi permasalahan pada komputer host.
  • Memiliki kemampuan untuk mengenali problem melalui tampilan berbasis web. 

Tutorial Instalasi dan Konfigurasi Nagios 3

Langkah awal yang dilakukan yaitu masuk ke super user pada terminal dengan perintah "sudo su", dan selanjutnya mngecek apakah pada komputer yang digunakan telah terinstall nagios dengan cara mengetikkan :

#dpkg -l |grep nagios3

Perintah dpkg merupakan salah satu package manager yang dapat kita gunakan untuk melakukan management ( Install/Uninstall). Perintah dpkg -l yang merupakan perintah untuk melihat daftar package yang telah terinstall beserta versi package yang telah terinstall dan deskripsinya. Sedangkan |grep digunakan untuk mencari file-file yang mengandung teks dengan kriteria yang telah anda tentukan.
Jika telah terinstall, kita dapat menghapus instalasi dengan menggunakan coding " apt-get remove" yang dituliskan pada terminal seperti :

#apt-get remove nagios3

Jika belum terinstall, dapat dilakukan Instalasi program dengan mengetikkan:

#apt-get install nagios3

Pada saat instalasi akan diminta memasukkan password untuk login pada saat membuka aplikasi nagios dari web browser nantinya. 

Selanjutnya lakukan konfigurasi untuk menambahkan host tetangga dengan perintah :

#nano /etc/nagios3/conf.d/localhost_nagios3.cfg

Tambahkan difine host tetangga dibawah define host local atau bisa juga dilakukan dengan cara mengcopy file dari localhost_nagios2.cfg dengan nama lain asalkan nama pada localhost tetap ada agar fungsi tidak hilang. Edit hostname atau address sesuai dengan nama dan ip tetangga. Tambahkan define service host tetangga untuk masing-masing service description.
Contohnya :

# A simple configuration file for monitoring the local host
# This can serve as an example for configuring other servers;
# Custom services specific to this host are added here, but services
# defined in nagios2-common_services.cfg may also apply.

define host{
use                 generic-host;
host_name  Jartel1
alias              riyan
address         172.16.30.16
}

define host{
use                 generic-host;
host_name Jartel2
alias             nia
address         172.16.30.34
}

define host{
use                 generic-host;
host_name  Jartel3
alias              fajri
address         172.16.30.32
}

define host{
use                 generic-host;
host_name  Jartel4
alias              febby
address         172.16.30.23
}

# Define a service to check the disk space of the root partition
# on the local machine.  Warning if < 20% free, critical if
# < 10% free space on partition.

define service{
use                                 generic-service;
host_name                  riyan
service_description    Disk Space
check_command       check_all_disks!20%!10%
}

define service{
use                                 generic-service;
host_name                  nia
service_description    Disk Space
check_command       check_all_disks!20%!10%
}

define service{
use                                 generic-service;
host-name                   fajri
service_description    Disk Space
check_command       check_all_disks!20%!10%
}

define service{
use                                 generic-service;
host-name                   febby
service_description    Disk Space
check_command       check_all_disks!20%!10%
}

# Define a service to check the number of currently logged in
# users on the local machine.  Warning if > 20 users, critical
# if > 50 users.

define service{
use                                 generic-service;
host_name                  riyan
service_description    Current Users
check_command       check_users!20!50
}

define service{
use                                 generic-service
host_name                  nia
service_description    Current Users
check_command       check_users!20!50
}

define service{
use                                 generic-service
host_name                  fajri
service_description    Current Users
check_command       check_users!20!50
}

define service{
use                                 generic-service
host_name                  febby
service_description    Current Users
check_command       check_users!20!50
}

# Define a service to check the number of currently running procs
# on the local machine. Warning if > 250 processes, critical if
# > 400 processes.

define service{
use                                 generic-service;
host_name                  riyan
service_description    Total Processes
check_command       check_procs!250!400
}

define service{
use                                 generic-service;
host_name                  nia
service_description    Total Processes
check_command       check_procs!250!400
}

define service{
use                                 generic-service;
host_name                  fajri
service_description    Total Processes
check_command       check_procs!250!400
}

define service{
use                                 generic-service;
host_name                  febby
service_description    Total Processes
check_command       check_procs!250!400
}

# Define a service to check the load on the local machine.

Define service{
use                                 generic_service;
host_name                  riyan
service_description    Current Load
check_command       check_load!5.0!4.0!3.0!10.0!6.0!4.0
}

Define service{
use                                 generic_service;
host_name                  nia
service_description    Current Load
check_command       check_load!5.0!4.0!3.0!10.0!6.0!4.0
}

Define service{
use                                 generic_service;
host_name                  fajri
service_description    Current Load
check_command       check_load!5.0!4.0!3.0!10.0!6.0!4.0
}

Define service{
use                                 generic_service;
host_name                  febby
service_description    Current Load
check_command       check_load!5.0!4.0!3.0!10.0!6.0!4.0
}

Langkah selanjutnya yaitu mengkonfigurasi hostgroup unutk PING, ubah members sesuai dengan host tetangga yang ingin di monitoring. dengan mengetikkan :

#nano /etc/nagios3/conf.d/hostgroups_nagios2.cfg

edit seperti gambar di bawah ini :


save dengan menekan ctrl+x dan plih yes.
Dilanjutkan dengan konfigurasi service nya, dengan coding :

#nano /etc/nagios3/conf.d/services_nagios2.cfg

tambahkan define services untuk PING, pada hostgroup_name isi menjadi ping-servers, service_description isi menjadi PING dan check_command isi dengan chech_ping. Sehingga terlihat seperti gambar di bawah ini :


simpan konfigurasi, lalu restart Nagios dengan :

/etc/init.d/nagios3 restart

Setelah berhasil di restart. buka nagios melalui web browser dengan memasukkan pada web search nya:

http:/localhost/nagios3

akan muncul tampilan sebagai berikut:


masukkan username "nagiosadmin" dan password sesuai dengan password kita inputkan pada awal instalasi. Apabila berhasil masuk, akan muncul tampilan home nagios seperti gambar dibawah ini :


Untuk melihat tampilan host tetangga, klik MAP di sebelah kiri layar browser. Disini dapat kita lihat status tetangga kita apakah up atau down. seperti gambar di bawah ini :




Kita juga dapat melihat info lain seperti hosts, services, host groups dan info detail lainnya dengan memilih subsub menu pada bagian kiri layar web browser nagios tersebut.







Enjoy It Guys!!