BAB II TINJAUAN PUSTAKA 2.1 Voice Over Internet Protocol Voice over Internet Protocol (VoIP) dikenal juga dengan sebutan IP Telephony didefinisikan sebagai suatu sistem yang menggunakan jaringan internet untuk mengirimkan data paket suara dari suatu tempat ke tempat yang lain menggunakan perantara protokol IP (Tharom, 2002). Dengan kata lain teknologi ini mampu melewatkan trafik suara yang berbentuk paket melalui jaringan IP. Jaringan IP sendiri adalah merupakan jaringan komunikasi data yang berbasis packet-switch. Gambar 2.1 Diagram VoIP Sumber : Romana,2006 VoIP merupakan teknologi yang membawa sinyal suara digital dalam bentuk paket data dengan protokol IP. Suara yang masuk diubah dalam bentuk format digital. Data dalam format digital akan dikirimkan dalam jaringan internet, akan dibagi dalam paket-paket kecil. Hal ini dapat memudahkan dan mempercepat transportasi. Jadi kalau ada data yang hilang, data tidak perlu dikirim ulang cukup paket-paket yang hilang saja. Panggilan VoIP memiliki dua jenis komunikasi yang menempati jaringan IP antara pemanggil (calling party) dan pihak yang dipanggil (called party), yaitu aliran informasi pembicaraan dan message-message signaling yang mengontrol 5 6 hubungan dan karakteristik aliran media. Untuk membawa informasi digunakan Realtime Transport Protocol (RTP). Sedangkan untuk pensinyalan terdapat dua standar yang dikeluarkan oleh dua badan dunia, yaitu H.323 yang dikembangkan oleh ITU-T dan Session Initiation Protocol (SIP) oleh IETF (Internet Engineering Task Force). 2.1.1 Format paket VoIP Pada gambar 2.2 terlihat paket VoIP terdiri atas dua bagian, yakni header dan payload (beban). Header terdiri atas IP header. Realtime Transport Protocol header, User Datagram Protocol (UDP) header, dan link header (Tharom, 2002) . Format paket VoIP Gambar 2.2 Format Paket VoIP Sumber : Tharom, 2002 IP header bertugas menyimpan informasi routing untuk mengirimkan paket-paket ke tujuan. Pada tiap header IP disertakan tipe layanan atau Type of Service (ToS) yang memungkinkan paket tertentu seperti paket suara yang non real time. UDP header memiliki ciri tertentu yaitu tidak menjamin paket akan mencapai tujuan sehingga UDP cocok digunakan pada aplikasi voice real time yang sangat peka terhadap delay. RTP header adalah header yang dapat dimanfaatkan untuk melakukan framing dan segmentasi data real time. Seperti UDP, RTP juga tidak mendukung reabilitas paket untuk sampai ke tujuan. RTP menggunakan protokol kendali yang disebut RTCP {Real-time Transport Control Protocol) yang mengendalikan QoS 7 dan sinkronisasi media stream yang berbeda. Untuk link header, besarnya sangat bergantung pada media yang digunakan. Tabel 2.1 menunjukkan perbedaan ukuran header untuk media yang berbeda dengan metode kompresi G.729. Tabel 2.1 Link Layer Header Size Media Link Layer Header Size Bit Rate 14 byte 29,6 kbps 6 byte 4 byte 5 byte tiap cell 26,4 kbps 25,6 kbps 42,4 kbps Ethernet PPP Frame Relay ATM Sumber : putra, 2008 2.1.2 Kualitas layanan VoIP Quality of Service (QoS) adalah kemampuan suatu jaringan untuk menyediakan layanan yang lebih baik pada trafik data tertentu pada berbagai jenis platform teknologi. QoS tidak diperoleh langsung dari infrastruktur yang ada, melainkan diperoleh langsung dengan mengimplementasikannya pada jaringan bersangkutan (Onno. 2001). Quality of Service (QoS) pada IP Telephony adalah parameter-parameter yang menunjukkan kualitas paket data jaringan, agar didapatkan hasil suara sama dengan menggunakan telepon tradisional (PSTN). Beberapa parameter yang mempengaruhi QoS antara lain jitter (keterlambatan data), delay, dan packet loss pada jaringan internet. Selain itu QoS juga dipengaruhi oleh pemenuhan kebutuhan bandwidth, jenis kompresi data, interopabilitas peralatan (vendor yang berbeda) dan jenis standar multimedia yang digunakan (H.323/SIP/MGCP) 2.1.2.1 Delay Dalam jaringan VoIP, delay merupakan suatu permasalahan yang harus diperhitungkan karena bagus tidaknya suara tergantung dari waktu delay. Sesuai dengan tabel 2.2 besarnya delay maksimum yang direkomendasikan oleh ITU-T untuk aplikasi suara adalah 150 ms, sedangkan delay maksimum dengan kualitas suara yang masih dapat diterima pengguna adalah 300 ms. Delay end to end adalah jumlah delay konversi suara analog-digital, delay waktu paketisasi atau 8 bisa disebut juga delay panjang paket dan delay jaringan pada saat t (waktu). Ada beberapa penyebab terjadinya delay antara lain : Kongesti (kelebihan beban data) Kekurangan pada metode traffic shaping Penggunaan paket-paket data yang besar pada jaringan berkecepatan rendah Adanya paket-paket data dengan ukuran berbeda-beda Perubahan kecepatan antar jaringan WAN Pemadatan bandwidth secara tiba-tiba Tabel 2.2 Pengelompokan Waktu Tunda berdasarkan ITU-T G.114 Delay Kualitas 0-150 ms Baik 150-300 ms Cukup, masih dapat diterima > 300 ms Buruk Sumber : syafitri, 2009 Trafik suara merupakan trafik real time sehingga jika delay dalam pengiriman paket suara terlalu besar, ucapan yang disampaikan tidak dapat dikenali. Delay maksimum yang ditolerir pada transmisi sinyal suara sesuai dengan standar ITU-T G.114 yang direkomendasikan bahwa delay kumulatif harus < 150 mdetik (1-way delay). Delay kumulatif terdiri atas dua jenis yaitu (Tharom, 2001): a. Fixed delay Fixed delay terbagi atas : Delay propagasi (propagation delay) adalah delay yang ditentukan oleh karakteristik jarak antara sumber dan tujuan, serta media transmisi yang digunakan untuk pengiriman sinyal suara. Delay jaringan untuk standar IEEE 802.3i (l0 Base T) dapat dihitung dengan rumus berikut (Blanchard, 2001) : c a b l e l e n g t hc a b l e l e n g t h p r o p a g a t i o n d e l a y v e l o c i t y o f p r o p a g a t i o n 0 , 5 9 c Kecepatan sinyal yang melalui kabel adalah 0.59c, dimana c merupakan kecepatan cahaya = 3.108 m/s (Blanchard, 2001). 9 Processing delay merupakan delay yang diakibatkan oleh coding, kompresi, dekompresi dan decoding yang ditentukan oleh algoritma standar codec. Packetization delay adalah delay yang terjadi saat proses paketisasi sampel suara digital yang dibawa untuk ditempatkan pada payload sampai paket terisi penuh. Untuk mengurangi terlalu banyak delay paketisasi, biasanya digunakan beberapa skema kompresi seperti pembagian yang dapat dikirim. b. Variabel delay Delay variable dibagi menjadi: Delay antrian (Queuing delay) adalah delay akibat waktu tunggu paket yang dilayani pada sebuah trunk. Delay Jitter buffer adalah delay akibat adanya buffer untuk mengatasi jitter. 2.1.2.2 Jitter Sementara efek delay jaringan merupakan berapa banyak paket suara menghabiskan waktu di jaringan, jitter mengontrol keteraturan di mana paket suara tiba. Sumber suara menghasilkan paket suara dengan laju yang konstan. Algoritma dekompresi pencocokan suara juga mengharapkan paket suara masuk untuk sampai pada tingkat yang konstan. Namun, delay paket demi paket yang disebabkan oleh jaringan dapat berbeda untuk setiap paket. Hasilnya, paket yang dikirim dalam jarak yang sama dari gateway kiri tiba dengan jarak tidak teratur di gateway kanan, seperti ditunjukkan pada gambar 2.3. Gambar 2.3 jitter pada paket Sumber : www.protocols.com 10 Karena algoritma dekompresi penerima memerlukan jarak yang konstan antara paket, maka solusinya adalah untuk menerapkan jitter buffer dalam gateway. Jitter buffer sengaja menunda paket yang datang untuk diteruskan kepada algoritma dekompresi pada jarak yang konstan. Jitter buffer juga akan memperbaiki error out-of-order dengan melihat pada nomor urutan dalam frame RTP. Mesin dekompresi suara langsung menerima paket tepat waktu, paket individual tertunda lebih lanjut dalam transit, meningkatkan delay keseluruhan. 2.1.2.3 Loss packet Loss packet (kehilangan paket data pada proses transmisi) terjadi ketika terdapat penumpukan data pada jalur yang dilewati pada saat beban puncak (peak load) yang menyebabkan kemacetan transmisi paket akibat padatnya trafik yang harus dilayani dalam batas waktu tertentu. Sehingga frame (gabungan data payload dan header yang di transmisikan) akan dibuang sebagaimana perlakuan terhadap frame data lainnya pada jaringan berbasis IP. Paket akan di drop di bawah beban puncak dan selama periode kongesti yang disebabkan oleh beberapa faktor seperti kegagalan link transmisi atau kapasitas yang tidak mencukupi. Salah satu alternatif solusi permasalahan di atas adalah membangun link antar node pada jaringan VoIP dengan spesifikasi dan dimensi dengan QoS yang baik dan dapat mengantisipasi penambahan lonjakan trafik hingga pada suatu batas tertentu. Standar paket hilang dapat dilihat pada tabel 2.3. Tabel 2.3 Standar Tingkat Paket yang Hilang Tingkat paket Hilang 0-1% 1-2% >2% Sumber : syafitri, 2009 Kualitas Baik Cukup Buruk Loss packet pada jaringan untuk IP telephony sangat besar pengaruhnya, dimana bila terjadi loss packet dalam jumlah tertentu, akan menyebabkan terjadi interkoneksi TCP melambat (terlalu banyak pengulangan proses hand shake). Biasanya loss packet sebesar > 2 % tidak bisa ditolerir (Onno, Tharom. 2001). 11 2.1.2.4 Penilaian MOS Untuk penilaian subjektif kualitas layanan VoIP adalah MOS (Mean Opinion Score), dimana nilai-nilai subjektifnya diambil berdasarkan kepuasan pendengar dan pembicara disaat mengadakan hubungan VoIP. Untuk MOS, secara garis besar dapat dilihat pada tabel 2.4. Tabel 2.4 Penilaian MOS terhadap kualitas layanan VoIP Opinion Score untuk tes pembicaraan Keterangan 5 Excellent suara paling jelas dan jernih tidak bergema, seperti melakukan perbincangan tatap muka, tidak ada kata yang tidak terdengar atau terputus-putus 4 Good Suara yang dihasilkan jelas, maksimal 5 (lima) kata yang tidak terdengar atau tidak jelas 3 Fair 2 Poor 1 Bad Nilai MOS Suara yang dihasilkan tidak terlalu keras, maksimal 10 (sepuluh) kata yang tidak terdengar atau tidak jelas Suara yang dihasilkan kecil, maksimal 15 (lima belas) yang tidak terdengar atau tidak jelas suara yang dihasilkan kecil, nyaris tidak terdengar dengan kualitas suara yang buruk Sumber : syafitri, 2009 Data kuantitatif yang bisa didapat untuk menentukan MOS adalah dari sisi metode kompresi, yaitu bandwidth yang dihasilkan serta delay kompresi yang dihasilkan. Penilaian MOS yang didapat dari sisi metode kompresi terdapat dalam tabel 2.5. Tabel 2.5 Hubungan metode kompresi dan penilaian MOS Bandwidth (kbps) Delay kompresi (mdetik) Skor MOS G.711PCM G.726 ADPCM G.728LD-CELP 64 32 16 0,75 1 3-5 4,4 3,85 3,61 G.729CS-ACELP 8 10 3,92 G.729ACS-ACELP 8 10 3,7 G.723.1 MPMLQ 6,3 30 3,9 G.723.1 ACELP 5,3 30 3,65 GSM Sumber : putra, 2008 13,2 Metode kompresi 3,8 12 2.1.2.5 E-Model Di dalam jaringan VoIP, tingkat penurunan kualitas yang diakibatkan oleh transmisi data memegang peranan penting terhadap kualitas suara yang dihasilkan, hal yang menjadi penyebab penurunan kualitas suara ini diantaranya adalah delay , paket loss dan echo. Pendekatan matematis yang digunakan untuk menentukan kualitas suara berdasarkan penyebab menurunnya kualitas suara dalam jaringan VoIP dimodelkan dengan E – Model yang distandardkan kepada ITU–T G.107 (Syafitri, 2007, hal: 35). E-model merupakan ukuran objektif dari jaringan telekomunikasi yang diperkenalkan oleh ETSI pada ETR 250 dan distandarkan ITU-T melalui G.107. Hasil akhir yang diperoleh merupakan R factor, yang dapat memprediksi nilai MOS. R factor didefinisikan sebagaifaktor kualitas transmisi yang dipengaruhi oleh beberapa parameter seperti signal to noise ratio dan echo perangkat, codec dan kompresi, packet loss, dan delay. Persamaan matematis E-model untuk hubungan VoIP dari Pc ke Pc adalah : R = 94,2 – Id – Ie ………………………………………………………… (2.1) Dimana : R = faktor kualitas transmisi Id = faktor penurunan kualitas suara yang disebabkan oleh pengaruh one way delay Ie = faktor penurunan kualitas suara yang disebabkan oleh metode kompresi (codec) dan paket loss yang terjadi. Nilainya tergantung pada metode kompresi (codec) yang digunakan. Id = 0,024d + 0,11(d – 177,3) H(d – 177,3) ………………………………….. (2.2) Untuk codec G.711 A-law persamaan Ie sesuai dengan : Ie = 0 + 40 ln(1 + 10e) ……………………………………………………… (2.3) Untuk codec GSM persamaan Ie sesuai dengan : Ie = 20 + 40 ln(1 + 10e) ……………………………………………………. (2.4) MOS = 1 + 0,035R + 7 x 10-6 R(R – 60)(100 – R) ………………………… (2.5) 13 Dimana : d = one way delay H(x) = fungsi tangga, dengan ketentuan : H(x) = 0, jika x < 0, lainnya H(x) = 1, untuk x ≥ 0 e 2.1.3 = persentasi besarnya paket loss yang terjadi (dalam bentuk desimal) Bandwidth Bandwidth adalah lebar pita yang dilewati oleh data pada proses transmisi antar komputer pada jaringan IP atau internet. Bandwidth menyatakan besaran saluran transmisi data yang digunakan untuk menyalurkan sinyal suara dalam bentuk paket. Dalam perancangan VoIP, bandwidth merupakan suatu yang harus diperhitungkan agar dapat memenuhi kebutuhan pelanggan yang dapat digunakan menjadi parameter untuk menghitung jumlah peralatan yang di butuhkan dalam suatu jaringan. Perhitungan ini juga sangat diperlukan dalam efisiensi jaringan dan biaya serta sebagai acuan pemenuhan kebutuhan untuk pengembangan di masa mendatang. Penggunaan bandwidth yang efisien sangat menentukan keberhasilan implementasi teknologi VoIP. Teknologi yang memegang peranan penting dalam penghematan bandwidth adalah metode kompresi suara yang digunakan. 2.1.4 Bit rate Bit rate merupakan jumlah bit yang dikirimkan pada suatu media transmisi. Semakin kecil bit rate akan semakin bagus, karena bandwidth yang dibutuhkan akan semakin kecil. Oleh karena itu dilakukan beberapa metode kompresi untuk memperkecil bit rate. Jangkauan bit rate yang telah distandarisasi adalah dari 2,4 kbps untuk telepon hingga 64 kbps untuk G.711 PCM dan G.722 wideband (7 KHz) speech coder. Perhitungan kebutuhan bit rate sangat tergantung oleh jumlah frame per paket. Hal ini disebabkan oleh adanya fixed header bits, yaitu bit-bit header IP, UDP dan TCP sebesar 40 byte untuk setiap paket yang ditransmisikan. 14 Penambahan jumlah frame per paket akan mempengaruhi delay yang akan ditransmisikan. Sebagai contoh, bila 4 frame akan dimasukan dalam paket maka akan terjadi delay sebesar 4 kali durasi frame (masa tunggu frame dikodekan) tersebut. 2.2 Arsitektur Jaringan VoIP Pada dasarya arsitektur utama teknologi VoIP terdiri atas elemen-elemen berikut (Tharom, 2002): Infrastuktur IP Jaringan packet-switch IP menyediakan proses pengangkutan dan mungkin juga switching untuk speech dan signaling. Permasalahan utama pada infrastruktur IP adalah bagaimana mengendalikan IP untuk memastikan kualitas kecepatan tinggi Call Processing Server Call Processing Server (CPS) disediakan untuk fungsi sentralisasi secara keseluruhan seperti resolusi alamat (address resolution) ke atau dari IP, yang menjadikan calls dapat di-route-kan secara dinamik pada jaringan tersebut. CPS juga menyediakan user registration, authentication, directory services dan pengendalian call seperti call hold, forwarding, waiting, CDR, accounting process, dan management function. Beberapa fungsi penting yang dilakukan CPS adalah: 1. Address Resolution yaitu menerjemahkan penomoran standar jaringan telepon ataupun penomoran private ke alamat IP 2. User Profile yaitu menyimpan informasi mengenai tiap-tiap user termasuk features dan call priveleges 3. Call Processing yaitu mengolah calls ke client dan gateways melalui jaringan IP, terdiri atas setup, disconnect, release, hold, transfer, retrieve, dan calling number identification (CNI) API (Application Programming Interface) API yang disediakan oleh jaringan berfungsi untuk menambahkan beberapa aplikasi dan layanan pada infrastruktur dasar VoIP. API juga 15 menyediakan sebuah set interface dan aturan yang sudah didefinisikan terlebih dahulu untuk dapat digunakan oleh para pengembang third-party untuk dapat mengembangkan perangkat-perangkat lunak Call Manager Call Manager mempunyai fungsi yang lebih sedikit dari pada gatekeeper. Call manager dibutuhkan pada konfigurasi sistem telepon melalui internet. Call manager dapat menyimpan database konversi dari nomor telepon menjadi nomor IP dan sebaliknya agar data paket suara yang ditransmisikan akan mencapai tujuan yang benar. 2.3 Konfigurasi Jaringan VoIP Umumnya konfigurasi jaringan VoIP dapat dibagi menjadi 3 (tiga) jenis yaitu (Onno, Tharom. 2001) : Hubungan Telepon melalui Internet Hubungan antar perangkat berbasis IP Gabungan perangkat telepon dan perangkat berbasis 2.3.1 Hubungan telepon ke telepon Pada konfigurasi ini menggunakan fasilitas PSTN pada kedua sisi subsistem terminalnya. Konfigurasi ini akan membutuhkan antar muka berupa gateway yang menghubungkan jaringan VoIP dengan jaringan internet. Untuk konfigurasi ini dibutuhkan satu sistem tambahan lainnya yang dapat memetakan pemanggilan nomor telepon menjadi kode-kode IP, lebih dikenal dengan sebutan Call Manager. Ilustrasi konfigurasi ini dapat dilihat pada gambar 2.4. Call Manager VoIP gateway VoIP gateway Internet PSTN PSTN Telephone Telephone Telephone Telephone Gambar 2.4 Konfigurasi Telepon melalui Internet Sumber : Supardi, 2005 16 2.3.2 Hubungan antar perangkat berbasis IP Pada dasarnya konfigurasi jenis ini lebih banyak pada pengembangan bidang perangkat lunak (software) multimedianya saja, belum memperhatikan masalah pengaturan pada media transmisi. Konfigurasi ini membutuhkan sistem signaling yang tidak terlalu rumit sehingga hanya pada kondisi tertentu saja dibutuhkan software manajemen pensinyalannya. Sistem ini juga membutuhkan minimal sebuah gatekeeper. Ilustrasi konfigurasi ini dapat dilihat pada gambar 2.5. Router Internet Router PC + Modul VoIP gatekeeper PC + Modul VoIP Gambar 2.5 Komunikasi antar Perangkat PC Sumber : Supardi, 2005 Hubungan antar perangkat berbasis IP merupakan hubungan PC to PC. Pada konfigurasi ini, proses encoding, kompresi, serta enkapsulasi dilakukan di PC. Tugas router adalah mempelajari IP address tujuan yang terdapat pada datagram dan me-routing-kan sesuai dengan tujuannya. Router akan memperlakukan data suara yang melaluinya seperti datagram yang lain dan tidak membedakan bit-bit yang ada pada datagram. Ilustrasi dilihat pada gambar 2.6. Telco Internet Computer Telco Computer Gambar 2.6 Hubungan PC menggunakan Router Sumber : Supardi, 2005 17 Konfigurasi ini merupakan konfigurasi dengan kualitas trafik suara yang sangat bagus. Tetapi untuk sekarang, ini bukanlah pilihan yang optimal karena secara umum prosesor pada PC tidak didesain untuk fungsi coding (A/D converter) ataupun decoding (D/A converter) sinyal suara seefisien gateway VolP. Alasan lain, konfigurasi akan bergantung pada kemampuan mikrofon PC dalam hal penerimaan sinyal suara yang biasanya akan diikuti oleh background noise sebagai bagian dari suara pembicaraan. Pada gambar 2.7 dapat dilihat konfigurasi yang dapat menghilangkan masalah background noise ini adalah dengan menggunakan telepon sebagai pengganti mikrofon. Disini PC juga berfungsi untuk operasi konversi A/D (Analog to Digital) dan D/A (Digital toAnalog ). Telco Internet Telco Computer Telephone Telephone Computer Gambar 2.7 Hubungan PC menggunakan Telepon Sumber : Supardi, 2005 2.3.3 Gabungan perangkat telepon dengan perangkat berbasis IP Konfigurasi ini merupakan campuran (hybrid) antara subsistem terminal menggunakan PC dan subsistem terminal menggunakan PSTN dan telepon analog di sisi lain. Kelemahan dari konfigurasi ini adalah sistem pemanggilan (signaling) hanya berlaku satu arah dari terminal komputer ke terminal analog, tidak dapat berlaku sebaliknya. Hal ini terjadi karena keterbatasan metode pemanggilan yang ada pada sistem PSTN dan telepon analog dimana kita dapat membuat table routing dari PSTN menuju komputer tertentu. Untuk mengatur QoS, diperlukan tambahan perangkat yang disebut gatekeeper. Ilustrasinya dapat dilihat pada gambar 2.8. 18 Server Internet Internet Telephone PC + Modul VoIP gatekeeper Gambar 2.8 Gabungan Perangkat Telepon dan Perangkat Berbasis IP Sumber : Supardi, 2005 2.4 Protokol Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras (Jagawana, 2009). Protokol perlu diutamakan pada penggunaan standar teknis, untuk menspesifikasi bagaimana membangun komputer atau menghubungkan peralatan perangkat keras. Protokol secara umum digunakan pada komunikasi real-time dimana standar digunakan untuk mengatur struktur dari informasi untuk penyimpanan jangka panjang. Sangat susah untuk menggeneralisir protokol dikarenakan protokol memiliki banyak variasi di dalam tujuan penggunaanya. Kebanyakan protokol memiliki salah satu atau beberapa dari hal berikut: Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer atau mesin lainnya. Melakukan metode "jabat-tangan" (handshaking). Negosiasi berbagai macam karakteristik hubungan. Bagaimana mengawali dan mengakhiri suatu pesan. Bagaimana format pesan yang digunakan. Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak sempurna. 19 Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang dilakukan selanjutnya mengakhiri suatu koneksi. Protokol mendefinisikan apa yang dikomunikasikan bagaimana dan kapan terjadinya komunikasi. Elemen-elemen penting daripada protokol adalah : syntax, semantics dan timing. 1. Syntax mengacu pada struktur atau format data, yang mana dalam urutan tampilannya memiliki makna tersendiri. Sebagai contoh, sebuah protokol sederhana akan memiliki urutan pada delapan bit pertama adalah alamat pengirim, delapan bit kedua adalah alamat penerima dan bit stream sisanya merupakan informasinya sendiri. 2. Semantics mengacu pada maksud setiap section bit. Dengan kata lain adalah bagaimana bit-bit tersebut terpola untuk dapat diterjemahkan. 3. Timing mengacu pada 2 karakteristik yakni kapan data harus dikirim dan seberapa cepat data tersebut dikirim. Sebagai contoh, jika pengirim memproduksi data sebesar 100 Megabits per detik (Mbps) namun penerima hanya mampu mengolah data pada kecepatan 1 Mbps, maka transmisi data akan menjadi overload pada sisi penerima dan akibatnya banyak data yang akan hilang atau musnah. Setiap jenis topologi jaringan memiliki protokol tertentu, misalnya pada topologi Bus dikenal protokol Ethernet, dan pada topologi Cincin dikenal protokol Token-Ring. Protokol standar komunikasi data yang menjadi acuan dalam perancangan hardware maupun software jaringan adalah: Model Referensi OSI (Open System Interconnection) yang ditetapkan oleh organisasi acuan sedunia ISO (International Standard Organization). Menurut OSI komunikasi antara dua komponen dalam jaringan memerlukan 7 lapisan, mulai dari lapisan Aplikasi, dimana pengguna memulai pengiriman datanya, hingga ke lapisan Fisik, dimana data dalam bentuk sinyal listrik ditransmisikan melalui media komunikasi. Lapisan OSI layer dapat dilihat pada tabel 2.6. 20 Tabel 2.6 OSI layer 7 Lapisan ke Nama lapisan Aplication layer 6 Percentation layer 5 Sesion layer 4 Transport layer 3 Network layer 2 Data-link layer 1 Physical layer Sumber : Jagawana, 2009 Keterngan Berfungsi sebagai antarmuka dengan aplikasi dengan fungsionalitas jaringan, mengatur bagaimana aplikasi dapat mengakses jaringan, dan kemudian membuat pesanpesan kesalahan. Protokol yang berada dalam lapisan ini adalah HTTP, FTP, SMTP, dan NFS. Berfungsi untuk mentranslasikan data yang hendak ditransmisikan oleh aplikasi ke dalam format yang dapat ditransmisikan melalui jaringan. Protokol yang berada dalam level ini adalah perangkat lunak redirektor (redirector software), seperti layanan Workstation (dalam Windows NT) dan juga Network shell (semacam Virtual Network Computing (VNC) atau Remote Desktop Protocol (RDP)). Berfungsi untuk mendefinisikan bagaimana koneksi dapat dibuat, dipelihara, atau dihancurkan. Selain itu, di level ini juga dilakukan resolusi nama. Berfungsi untuk memecah data ke dalam paket-paket data serta memberikan nomor urut ke paket-paket tersebut sehingga dapat disusun kembali pada sisi tujuan setelah diterima. Selain itu, pada level ini juga membuat sebuah tanda bahwa paket diterima dengan sukses (acknowledgement), dan mentransmisikan ulang terhadp paket-paket yang hilang di tengah jalan. Berfungsi untuk mendefinisikan alamat-alamat IP, membuat header untuk paket-paket, dan kemudian melakukan routing melalui internetworking dengan menggunakan router dan switch layer-3. Befungsi untuk menentukan bagaimana bit-bit data dikelompokkan menjadi format yang disebut sebagai frame. Selain itu, pada level ini terjadi koreksi kesalahan, flow control, pengalamatan perangkat keras (seperti halnya Media Access Control Address (MAC Address)), dan menetukan bagaimana perangkat-perangkat jaringan seperti hub, bridge, repeater, dan switch layer 2 beroperasi. Spesifikasi IEEE 802, membagi level ini menjadi dua level anak, yaitu lapisan Logical Link Control (LLC) dan lapisan Media Access Control (MAC). Berfungsi untuk mendefinisikan media transmisi jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan (seperti halnya Ethernet atau Token Ring), topologi jaringan dan pengabelan. Selain itu, level ini juga mendefinisikan bagaimana Network Interface Card (NIC) dapat berinteraksi dengan media kabel atau radio. 21 2.5 Protokol SIP SIP (Session Initiation Protokol) merupakan standar protokol multimedia yang dikeluarkan oleh grup yang tergabung dalam Multiparty Multimedia Session Control (MMUSIC) yang berada dalam organisasi Internet Engineering Task Force (IETF) yang direkomendasikan dalam document Request for Command (RFC) 2543. SIP merupakan protokol yang berada pada layer aplikasi yang mendefinisikan proses awal, pengubahan, dan pengakhiran (pemutusan) suatu sesi komunikasi multimedia, sedangkan pengiriman data suara dilakukan menggunakan protokol lain yang bukan bagian dari SIP, (Putra, 2008). SIP dapat dikatakan berkarakteristik client-server. Ini berarti request diberikan oleh client dan request ini dikirim ke server. Kemudian, server mengolah request dan memberikan tanggapan terhadap request tersebut ke client. Request dan tanggapan terhadap request disebut transaksi SIP. SIP juga disebut protokol yang text-based (berbasis teks). SIP tidak digabungkan dengan protokol kontrol konferensi lain. SIP didesain independen sebagai protokol transport lower layer dan dapat dikembangkan dengan beberapa kemampuan tambahan. SIP dapat digunakan untuk inisiasi sesi dan juga mengundang user ke dalam suatu sesi pembicaraan. SIP juga memiliki kemampuan mapping dan redirection service, juga memungkinkan implementasi ISDN dan layanan-layanan IP telephony. 2.5.1 Susunan protokol SIP Pada gambar 2.9 terlihat protokol SIP didukung oleh beberapa protokol, antara lain RTP dan RTCP untuk mentransmisikan media dan mengetahui kualitas layanan, serta SDP (Session Description Protocol) untuk mendeskripsikan sesi media. Secara default, SIP menggunakan protokol UDP tetapi pada beberapa kasus dapat juga menggunakan TCP sebagai protokol transfer. 22 SDP SIP RTP TCP UDP IP IP Link & Physical Layer Gambar 2.9 Arsitektur Protokol SIP Sumber : Putra, 2008 RTP (Real-Time Transport Protocol) Protokol RTP menyediakan transfer media secara real time pada jaringan paket. Protokol RTP menggunakan protokol UDP dan header RTP mengandung informasi kode bit yang spesifik pada tiap paket yang dikirimkan. Hal ini membantu penerima untuk melakukan antisipasi jika terjadi paket yang hilang. RTCP (Real-Time Transport Control Protocol) Protokol RTCP merupakan protokol yang mengendalikan transfer media. Protokol ini bekerja sama dengan protokol RTP. Dalam satu sesi komunikasi, protokol RTP mengirimkan paket RTCP secara periodik untuk memperoleh informasi transfer media dalam memperbaiki kualitas layanan. SDP (Session Description Protocol) Protokol SDP merupakan protokol yang mendeskripsikan media dalam suatu komunikasi. Tujuan protokol SDP adalah untuk memberikan informasi aliran media dalam satu sesi komunikasi agar penerima yang menerima informasi tersebut dapat berkomunikasi. Hal-hal yang dicakup dalam protokol ini, antara lain: 1. Nama sesi komunikasi dan tujuan 2. Waktu sesi (jika) aktif 3. Media dalam sesi komunikasi 23 4. Informasi bagaimana cara menerima media (misalnya port, format, dan sebagainya) 5. Bandwidth yang digunakan dalam komunikasi 6. Orang yang dapat dihubungi (yang bertanggung jawab dalam komunikasi) 2.5.2 Komponen SIP Dalam hubungannya dengan IP telephony, ada dua komponen yang ada dalam sistem SIP, yaitu : User Agent User agent merupakan sistem akhir (end system) yang digunakan untuk berkomunikasi. User agent terdiri atas dua bagian, yaitu : 1. User Agent Client (UAC) UAC merupakan aplikasi pada client yang didesain untuk memulai SIP request. 2. User Agent Server (UAS) UAS merupakan aplikasi server yang memberitahukan user jika menerima request dan memberikan respon terhadap request tersebut. Respon dapat menerima atau menolak request. Network Server Agar user pada jaringan SIP dapat memulai suatu panggilan dan dapat pula dipanggil, maka user terlebih dahulu harus melakukan registrasi agar lokasinya dapat diketahui. Registrasi dapat dilakukan dengan mengirimkan pesan REGISTER ke server SIP. Lokasi user dapat berbeda-beda sehingga untuk mendapatkan lokasi user yang aktual diperlukan location server. Pada jaringan SIP ada dua tipe network server, yaitu : 1. Proxy Server Proxy Server adalah server yang menerima request, mengolahnya, serta meneruskan request yang diterimanya ke next hop server setelah mengubah beberapa header pada pesan request. Next hop server dapat berupa server SIP atau beberapa server lainnya dimana proxy server tidak 24 perlu tau. Proxy server dapat berfungsi sebagai client dan server karena proxy server dapat memberikan request dan respon. 2. Redirect Server Komponen ini merupakan server yang menerima pesan request serta memberikan respon terhadap request tersebut yang berisi alamat dari next hop. 2.5.3 Alamat pada SIP Entitas pada jaringan SIP mempunyai alamat yang diberikan atribut SIP URL (Uniform Resource Locator) agar mudah dikenali. SIP URL yang digunakan pada jaringan SIP berbentuk seperti alamat email yaitu user@host dimana user dapat berupa nama user, nomor telepon, atau nama instansi. Host dapat berupa nama domain atau IP address. Alamat SIP dengan bentuk phone_number@gateway menunjukkan nomor telepon pada jaringan General Switched Telepon Network (GSTN) yang dapat dihubungi dengan nama gateway yang diketahui. 2.5.4 Pesan pada SIP Secara keseluruhan, pesan SIP terdiri atas dua bagian, yaitu request dan respon. Ketika client mengirimkan pesan request, server akan memberikan tanggapan terhadap pesan ini melalui pesan respon. SIP merupakan protokol yang berbasis teks dimana pesan request dan respon menggunakan generic message yang didefinisikan pada standar pesan berbasis teks dalam komunikasi internet yang dapat dijumpai di dalam RFC 822. Pesan request dan respon terdiri atas start line, satu atau lebih header field atau biasanya disebut dengan message header, empty line yang menunjukkan akhir dari header field, serta message body yang mendefinisikan sesi komunikasi. 25 2.5.4.1 Header field Protokol SIP mempunyai 37 header, yaitu pesan-pesan yang terdapat pada SIP menggunakan header field untuk mendefinisikan caller, jalur pesan, tipe dan panjang message body, dan sebagainya. Header SIP dikelompokkan ke dalam empat jenis header, yakni : General Header Field (GHF) GHF merupakan header yang dipakai pada pesan request dan respon. GHF yang umumnya dipakai pada pesan request dan respon, antara lain: a. Call-ID Header Call-ID digunakan untuk mengidentifikasi secara khusus suatu panggilan atau registrasi yang dilakukan oleh client. Call-ID mempunyai fungsi untuk mendeteksi adanya duplikasi dan mendeteksi suatu respon dari request yang dikirimkan. Call-ID yang baru digunakan untuk setiap awal panggilan yang baru misalnya [email protected]. Hal ini menunjukkan bahwa host cisitu.com menggunakan local ID 13297132. b. Cseq Header Cseq (Command Sequence) berisikan sequence number dan method name. Dalam setiap panggilan, sequence number mengalami penambahan untuk setiap request yang baru (kecuali jika terjadi retransmisi dari request yang sebelumnya). Pesan request ACK memiliki Cseq yang sama dalam acknowledge reply. CANCEL memiliki Cseq yang sama terhadap request yang dibatalkan. c. From Header ini terdapat pada semua pesan request dan respon dimana request ini berfungsi untuk menunjukkan tampilan nama dan alamat asal pesan tersebut. d. To Header ini terdapat pada semua pesan request dan respon. Berfungsi menunjukkan tujuan pesan tersebut. 26 e. Via Header ini digunakan untuk mencatat route server dari pesan request agar dapat mengirimkan balasan ke pesan request tersebut melalui server yang sama. Setiap proxy server yang dilalui pesan tersebut akan menambahkan header via yang berisikan alamat proxy server itu sendiri. Entity Header Field (EHF) EHF menunjukkan informasi message body. Jika message body tidak ada, header ini menunjukkan sumber yang diidentifikasi oleh request. Contoh header yang terdapat pada EHF, antara lain: a. Content-Length Header ini menunjukkan panjang message body dalam satuan byte. b. Content-Type Header ini menunjukkan tipe media dalam message body. c. Content-Encoding Header ini dipakai untuk melakukan proses kompresi terhadap message body tanpa harus kehilangan indentitas dari tipe media. Request Header Field (RsHF) RsHF adalah header dalam pesan request yang merupakan tambahan informasi client dan pesan request itu sendiri. Header yang sering dipakai adalah header contact yang menunjukkan informasi lokasi yang tergantung dari pesan tempat header itu berada Response Header Field (ReHF) ReHF merupakan header yang dipakai oleh server untuk menambahkan informasi tentang respon yang tidak dapat ditempatkan pada start line request. 2.5.4.2 SIP request Pesan request dikirimkan dari client ke server. Ada enam tipe pesan request, antara lain (Tharom, 2002): INVITE Pesan ini digunakan untuk memulai suatu komunikasi. Message body pesan INVITE berisikan deskripsi media yang dapat digunakan dalam komunikasi 27 ACK Pesan ini berfungsi memberitahukan bahwa client telah menerima tanggapan terakhir terhadap INVITE. Message body pada pesan ACK dapat membaca deskripsi media yang akan digunakan oleh user yang dipanggil (biasanya disebut callee). Jika message body ini kosong berarti callee setuju dengan message body yang terdapat pada pesan INVITE. BYE Pesan ini disampaikan oleh client untuk mengakhiri komunikasi. CANCEL Pesan CANCEL dikirimkan untuk membatalkan pesan request yang telah dikirim sebelumnya sebelum server mengirimkan pesan final response. OPTIONS Pesan ini dikirimkan oleh client ke server untuk mengetahui kapabilitasnya. REGISTER Client dapat melakukan registrasi lokasinya dengan mengirimkan pesan REGISTER ke server SIP dimana server menerima pesan REGISTER disebut SIP register. 2.5.4.3 SIP response Pesan dikirimkan setelah menerima pesan request yang menunjukkan status keberhasilan server. Sesuai dengan tabel 2.7 pesan respon didefinisikan dengan tiga angka. Angka pertama merupakan kelas respon. Angka kedua dan ketiga menunjukkan arti dari respon tersebut. 28 Tabel 2.7 Kelas Respon SIP Kelas Respon 1xx 2xx Jenis Respon Informational Request diterima dan dilanjutkan dengan memproses request Kategori Respon Provisional Success Pesan telah diterima dan dimengerti Redirection Perlu dilakukan tindakan selanjutnya untuk menyelesaikan request Client Error Request tidak dapat diproses oleh server atau terdapat Syntax error pada request Final 5xx Server Error Request tidak dapat diolah oleh server atau terdapat syntax error pada request Final 6xx Global Error Request invalid pada server Final 3xx 4xx Sumber : Putra, 2008 Final Final Code Command 100 180 181 182 200 Trying Ringing Call in being forwarded Queued OK 300 302 302 380 400 401 402 403 404 405 406 407 408 409 410 411 413 414 415 420 480 481 482 483 484 485 500 501 502 503 504 505 600 603 604 605 Multiple choices Moved Moved temporarily Alternative service Bad request Unauthorized Payment Required Forbidden Not Found Method not allowed Not Acceptable Proxy Auth required Request time out Conflict Gone Length Required Request message too large Request URL too large Unsuport media Bad extension Not available Call leg Loop detected To many hops Address Ambiguous Internel server Not implemented Bad gateway Service Gateway time out SIP version not supported Busy everywhere Decline Doesn't exit anywhere Not acceptable 29 Pesan respon terbagi atas dua kategori, yakni : Provisional Respons Respon ini merupakan respon yang dikirimkan oleh server yang menunjukkan proses sedang berlangsung, tapi tidak mengakhiri transaksi SIP. Final Respons Respon ini merupakan respon yang mengakhiri transaksi SIP. 2.6 Protokol IAX2 IAX2 (Inter Asterisk eXchange) merupakan protokol yang cukup andal. Protokol ini dapat menembus NAT dengan mudah dan hanya menggunakan satu port saja untuk membentuk session dan media transfer. Protokol ini juga dilengkapi dengan feature yang dapat mengatur penggunaan bandwith dan komponen penjernih suara. IAX merupakan media peer-to-peer dan protokol pensinyalan, mirip dengan SIP tetapi tidak menggunakan RTP. Berikut adalah contoh komunikasi yang menggunakan protokol IAX : Gambar 2.10 Proses komunikasi menggunakan protokol IAX Sumber : Spancer, 2004 30 Pada gambar 2.10 terlihat panggilan IAX memiliki tiga langkah umum atau situasi, antara lain sebagai berikut : 1. Call setup Terminal A memulai sambungan dan mengirim pesan “new”. Terminal yang dipanggil mebalas dengan mengirimkan pesan “accept” dan terminal yang memanggil juga membalas dengan pesan “ack”. Selanjutnya terminal yang dipanggil memberikan sinyal “ringing” dan pemanggil mengirim “ack” untuk mengkonfirmasi bahwa pesan telah diterima. Akhirnya terminal B menerima panggilan dengan mengirimkan pesan “answer” dan terminal A mengirimkan “ack” sebagai tanda pesan telah diterima. Proses panggilan telah terbentuk. 2. Media atau pengiriman audio Full frame dan mini frame serta data suara dikirim kedua arah. Setiap aliran sebagian besar terdiri dari frame mini yang berisi header sebesar 4 byte dengan tujuan menghemat bandwidth. Aliran komuniksi ini dilengkapi dengan full frame untuk singkronisasi informasi. 3. Call teardown Terminal A akan mengakhiri Panggilan dengan mengirimkan pesan “hangup” dan terminal membalas dengan mengirimkan “ack” sebagai tanda bahwa pesan telah diterima. 2.6.1 Pesan pada IAX Pesan pada IAX dibagi menjadi dua kategori, yaitu reliable dan non reliable. Pesan yang reliable disebut dengan full frame dan pesan yang non reliable disebut mini frame. a. Full frame Full frame dapat mengirim signaling dan data media. Umumnya, full frame digunakan untuk kontrol inisiasi, setup, dan pemutusan dari panggilan IAX, tapi mereka juga bisa digunakan untuk membawa data steram (meskipun umumnya ini tidak optimal). Full frame dikirimkan secara reliably sehingga semua full frame memerlukan acknowledgment langsung pada saat diterima. 31 Gambar 2.11 Full frame Sumber : Spancer, 2004 Pada gambar 2.11 terlihat bahwa full frame memiliki beberapa field atau header, antara lain sebagai berikut : ‘F’ bit Bit ini menentukan frame merupakan full frame atau tidak. Jika bit ‘F’ bernilai 1 maka frame merupakan full frame, dan jika bernilai 0 maka frame buka merupakan full frame. Source call number Nilai 15 bit ini menentukan call number client yang mengirim digunakan untuk idetifikasi panggilan ini. Source call number untuk panggilan aktif harus tidak digunakan oleh panggilan lain pada client yang sama. Call number mungkin digunakan kembali setelah panggilan tidak lagi aktif, yaitu ketika ada acknowledgment positif bahwa panggilan telah berakhir atau ketika semua kemungkinan timeout telah expired. ‘R’ bit Bit ini menentukan apakah frame merupakan frame yang dikirimkan ulang. Jika bit ‘R’ bernilai 0 berarti frame dikirim untuk pertama kali. Jika bernilai 1, berarti frame merupakan frame yang dikirimkan ulang. IAX tidak menentukan batas watku pengiriman ulang frame, melaikan ditentukan oleh implementor. 32 Destination call number Nilai 15 bit ini menentukan call number, client pengirim menggunakan ini suntuk refrensi panggilan pada remote peer. Destination call number sama dengan identitas panggilan pada remote peer, sedangkan source call number sama dengan identitas panggilan pada local peer. Time-stamp Time-stamp field berisikan 32 bit timestamp dikelola oleh IAX peer untuk panggilan tertentu. Nilai timestamp naik secara bertahap sebagai representasi dari jumlah milidetik (waktu) sejak transmisi panggilan pertama. Oseqno Setelah inisialisasi panggilan, nilai Oseqno adalah 0. Ini akan naik secara bertahap sampai full frame terkirim. Ketika counter overflow, secara diamdiam Oseqno kembali ke nilai 0. Iseqno Iseqno hampir sama dengan Oseqno, Iseqno akan bernilai 0 setelah insialisasi panggilan. Dan nilainya akan terus meningkat sampai full frame diterima. Ketika couter overflow maka nilainya akan kembali 0. Frametype Field frametype akan mengidentifikasi jenis pesan yang dibawa oleh full rame. Frametype dan subclass menetukan fungsi paket yang dikirim atau diterima. b. Mini frame Mini frame digunakan untuk mengirim media dengan overhead minimal. Mini frame tidak membawa kontrol atau pensinyalan data, satu-satunya tujuan mereka adalah untuk membawa media steram pada pnggilan yang sudah ditetapkan. Mini frame dikirim secara tidak reliably. Jika ada satu frame yang hilang, maka frame tersebut tidak dikirimkan kembali. 33 Gambar 2.12 Mini frame Sumber : Spancer, 2004 Pada gambar 2.11 terlihat bahwa mini frame memiliki beberapa field atau header, antara lain sebagai berikut : ‘F’ bit F bit harus bernilai 0 untuk menetukan bahwa meraka bukan full frame. Source call number Source call number adalah number yang digunakan oleh transmitting peer untuk mengidentifikasi panggilan sekarang. Timestamp Mini frame membawa 16 bit timestamp. Timestamp memungkinkan singkronisasi frame yang masuk sehingga mereka mungkin diproses dalam urutan kronologis bukan urutan diterima. Sebuah panggilan harus terus mengirim mini frame dimulai dengan timestamp 0 bahkan jika acknowledgment dari singkronisasi ulang tidak diterima. 2.6.2 Frame type IAX memiliki 10 jenis type full frame, berikut adalah type full frame yang dimiliki oleh protokol IAX : a. DTMF frame Frame membawa satu digit DTMF (Dual Tone Multi Frequency). Frame ini digunakan untuk mengirim DTMF 34 b. Voice frame Frame digunakan membawa data suara. Subclass menentukan format audio dari data. c. Video frame Frame digunakan membawa data video. Subclass menentukan format video dari data. d. Control frame Frame membawa session control data, yaitu mengacu pada kontrol dari sebuah perangkat yang terhubung ke endpoint IAX. Frame ini digunakan untuk inisiasi, setup, dan pemutusan panggilan. Yang termasuk control frame terlihat pada tabel 2.8. e. Null frame Frame dengan nilai null tidak akan dikirimkan. f. IAX frame Frame membawa kontrol data yang menyediakan protokol IAX khusus untuk mengatur endpoint. Frametype ini digunakan untuk mengatur interaksi protokol IAX yang umumnya independen dari endpoint. Yang termasuk IAX frame terlihat pada tabel 2.9. g. Text frame Frame membawa pesan text non control dalam format UTF-8. h. Image frame Frame ini digunakan untuk membawa pesan gambar. i. HTML frame Frame ini membawa data HTML j. Comfort noise frame Frame ini digunakan untuk membawa confort noise 35 Tabel 2.8 Control frame subclass Nama subclass Keterangan Hangup Panggilan diakhiri oleh client yang dipanggili Reserved Dicadangkan untuk digunakan nanti Ringing Client yang dipanggil berdering Answer Client yang dipanggil menjawab panggilan Busy Client yang dihubungi sibuk Congestion Panggilan mengalami kemacetan Call progress Masih dalam proses panggilan Sumber : Spanser, 2004 Table 2.9 IAX frame subclass Nama subclass Keterangan NEW Initiate a new call PING Ping request PONG Ping or poke replay ACK Explicit acknowledgment HANGUP Initiate call tear down REJECT Reject a call ACCEPT Accept a call AUTHREQ Authentication request AUTHREP Authentication replay INVAL Invalid message LAGRQ Lag request LAGRP Lag replay REGREQ Registration request REGAUTH Registration authentication REGACK Registration acknowledgment REGREJ Registration reject REGREL Registration release VNAK Video/voice retransmit request DPREQ Dialplan request DPREP Dialplan replay TXREQ Transfer request TXCNT Transfer connect TXACC Transfer accept TXREADY Transfer ready TXREL Transfer release TXREJ Transfer reject QUELCH Halt audio/video (media) transmition UNQUELCH Resume audio/video (media) transmition POKE Poke request MWI Message waiting indication UNSUPPORT Unsupport message TRANSFER Remote transfer request Sumber : Spancer, 2004 36 2.6.3 Kelebihan Protokol IAX IAX memiliki sejumlah keunggulan dibandingkan SIP dan H.323, beberapa diantaranya, ( http://www.voip-info.org) : Interoperabilitas dengan NAT/PAT firewall Masquerade : IAX mulus inter operasi melalui segala macam NAT dan PAT dan firewall lainnya, termasuk kemampuan untuk tempat dan menerima panggilan, dan mengalihkan panggilan ke stasiun lain. kinerja tinggi, overhead protocol rendah : Ketika berjalan di-bandwidth koneksi rendah, atau ketika menjalankan sejumlah besar panggilan, pemanfaatan bandwidth yang dioptimalkan imperitive. IAX hanya menggunakan 4 byte overhead Internasionalisasi dukungan : IAX mengirimkan informasi bahasa, sehingga jauh PBX konten dapat disampaikan dalam bahasa asli dari penelepon. Remote dialplan polling : Hal ini memungkinkan PBX dialplans akan terpusat. Fleksibel otentikasi : IAX mendukung teks-jelas, md5, dan otentikasi RSA, menyediakan model keamanan yang fleksibel untuk panggilan keluar dan layanan pendaftaran. Multimedia protokol : IAX mendukung transmisi suara, video, gambar, teks, HTML, DTMF, dan URL. Call mengumpulkan statistik : IAX mengumpulkan statistik tentang performa jaringan (termasuk delay dan jitter, serta memberikan end-to-end delay akhir pengukuran). Call parameter komunikasi : Caller * ID, meminta perpanjangan, meminta konteks, dll semua dikomunikasikan melalui panggilan. Single socket desain : desain soket tunggal IAX memungkinkan hingga 32.768 panggilan untuk menjadi multiplexed. 37 2.7 Standar Kompresi Data Suara ITU-T (International Telecommunication Union - Telecommunication Sector) membuat beberapa standar untuk voice coding yang direkomendasikan untuk implementasi VoIP. Sistem pengkodean sinyal suara secara umum terdiri dari tiga proses yaitu analisis suara, kuantisasi parameter, dan pengkodean. Beberapa standar kompresi suara yang sering dikenal antara lain: 2.7.1 G.711 G.711 adalah suatu standar Internasional untuk kompresi audio dengan menggunakan teknik Pulse Code Modulation (PCM) dalam pengiriman suara. PCM mengkonversikan sinyal analog ke bentuk digital dengan melakukan sampling sinyal analog tersebut 8000 kali/detik dan dikodekan dalam kode angka dengan jarak antar sampel adalah 125 µ detik. Standar G.711 merupakan teknik kompresi yang tidak efisien, karena akan memakan bandwidth 64 Kbps untuk kanal pembicaraan. Ada dua variasi dasar codec G.711 yaitu biasanya menggunakan µ-law dan a-law. Metode ini hampir sama yaitu sama-sama menggunakan kompresi logaritmik, tetapi keduanya memiliki perbedaan pada kompresi frame dimana µ-law mengkompresi 14 bit sampel PCM linier menjadi frame dengan 8 bit code PCM logaritma sedangkan a-law mengkompresi 13 bit sampel PCM linier menjadi 8 bit code PCM logaritma. µ-law digunakan di seluruh wilayah Amerika Utara sedang a-law digunakan di Eropa. Saat kita melakukan telepon jarak jauh, jika memerlukan konversi dari µ-law ke a-law maka tanggung jawab berada pada negara yang menggunakan µ-law (Davidson, Peters. 2000). 2.7.2 Codec GSM Codec GSM merupakan standar kompresi suara pada jaringan telepon bergerak GSM. Pada teknologi VoIP, sifat kompleksnya biasanya diasosiasikan dengan jaringan infrastruktur dan manajemen yang dibutuhkan untuk membuat koneksi end-to-end, dan bukan dengan transmisi payloadnya. Akan tetapi, tingkat kompleksitasnya terletak pada skema codec yang digunakan untuk mengencode 38 trafik suara untuk transmisi. Standar GSM mencakup 4 (empat) teknologi kompresi yang berbeda untuk menganalisa dan mengkompres suara, yaitu fullrate (FR), enhanced full-rate (EFR), adaptive multi-rate (AMR), dan half-rate. Pada komunikasi VoIP, codec GSM yang digunakan adalah full-rate codec dengan bit rate 13 kbps. Codec ini menggunakan kompresi long-term prediction linier predictive coder (RPE-LTP) yang beroperasi pada periode sampling 20-ms yang terbentuk dari 160 sampel/frame. Prinsip dasar pengoperasian GSM yaitu, pertama-tama sinyal suara dibagi ke dalam beberapa bagian 20-ms. Setiap bagiannya dianalisa dan periodenya diamati. Komponen setiap periode sedikit demi sedikit dikurangi dengan menganalisa filterya dari sinyal aslinya dan amplitudo dari level sinyal suara tersebut semakin dikurangi. Komponen periodik tegangan tingginya kemudian dipancarkan sebagai parameternya, dan setiap kesalahan pada level terendahnya ataupun sinyal yang berbeda pada akhirnya berbentuk gelombang yang dikodekan. Gelombang ini tidak membutuhkan bit rate yang tinggi karena amplitudo kesalahan sinyalnya rendah. Pada akhirnya, digunakanlah filter sintetik dan dengan bantuan koefisien transmiternya, ditambahkanlah komponen periodik pada sinyal yang salah, yang dibentuk kembali dari sampel coding gelombang suara. Model vocoder terdiri atas generator suara, dan sebuah filter yang mengubah suara yang dihasilkan. Analisa short-term dan filternya menentukan koefisien filter tersebut dan sebagai alat pengukur kesalahan, analisa long-term menentukan keselarasan suara. Seperti pada model matematika untuk suara dalam full-rate codec menunjukkan sumber tenaga yang menurun secara perlahan seiring peningkatan frekuensi, yang sampelnya dimasukkan melalui pre-emphasis filter yang kemudian berkembang menjadi frekuensi yang lebih tinggi lagi, sehingga menghasilkan efisiensi transmisi yang lebih baik. Sebuah ekuivalen dari deemphasis filter yang tersendiri mengembalikan lagi suara yang ada. Analisa short-term menunjukkan korelasi otomatis dan pengulangan Schur pada input sinyal untuk menentukan koefisien filternya. Koefisien filter, yang dipancarkan melalui udara sebagai eight parameters dengan total 36 bit informasi, 39 adalah perubahan menjadi log area ratios (LARs) yang memiliki karakteristik yang lebih baik. Koefisien filter ini kemudian digunakan untuk menjalankan short-term filtering kepada sinyal yang masuk, yang menghasilkan 160 sampel sinyal yang tersisa. Sinyal yang tersisa dari short-term filtering dibagi menjadi 4 sub-frames dari masing-masing 40 sampel. Filter long-term prediction (LTP) menyusun suara yang selaras dengan menggunakan kombinasi dari sub-frames yang sedang digunakan dan yang sebelumnya. Ukuran yang dicapai dan delay dari filter LTP adalah ditentukan dengan cara melakukan korelasi silang terhadap sub-frame yang sedang digunakan dengan sub-frame sebelumnya yang telah berkurang. Klimaks dari korelasi silang tersebut menentukan sinyalnya, dan pencapainnya dihitung dengan menormalkan koefisien korelasi silang tersebut. Parameternya diaplikasikan pada long-term filter, dan menghasilkan prediksi penurunan short-term yang ada. Kesalahan yang terjadi antara estimasi dan riil dari penurunan sinyal short-term dengan penurunan sinyal long-term digunakan untuk analisa RPE, yang menunjukkan sebuah kompresi data. RPE mengurangi sisa 40 long-term sampel menjadi 4 set 13-bit sub sequences dengan kombinasi interleaving dan sub-sampling. Sub-sequence yang optimal adalah ditentukan seperti adanya sebuah kesalahan kecil, dan diberi kode menggunakan APCM. Sinyal yang dihasilkan disalurkan kembali melalui RPE decoder dan menggabungkannya dengan menaksir sisa short-term tersebut agar memudahkan kita untuk menggunakan filter long-term untuk frame berikutnya, dengan cara melengkapi feedback loopnya. Perbandingan beberapa jenis codec dapat dilihat pada tabel 2.10. 40 Tabe1 2.10 Perbandingan jenis-jenis codec G.711 20 Payload size (bytes) 160 G.729 20 20 60 8 24 G.723.1 20 24 64 6,4 17 GSM FR 20 33 73 13 29,2 GSM EFR 20 31 71 12,4 28,4 iLBC 20 ms iLBC 30 ms Sumber : putra,2008 20 30 38 50 78 90 15,2 13,3 31,2 24 sebagai perencanaan, Codec Periode (ms) Packet size (bytes) 200 Payload data rate (kbps) 64 Total data rate (kbps) 80 2.8 Manajemen Jaringan Manajemen jaringan dapat didefinisikan pengorganisasian, monitoring, perhitungan (accounting) dan pengaturan aktivitas dan sumber jaringan. Meskipun demikian secara prinsip manajemen jaringan internet lebih difokuskan pada monitoring, accounting dan pengaturan aktivitas dan sumber daya Pada jaringan VoIP perlu adanya manajemen bandwidth yang efisien sehingga dapat menghemat penggunaan bandwidth. Hal ini dapat dilakukan dengan mengatur penggunaan bandwidth yang digunakan oleh suatu jaringan baik dengan cara membatasi penggunaan bandwidth tiap-tiap client. Metode pengaturan bandwidth yang digunakan adalah HTB (Hierarchical Token Bucket) dan metode untuk memonitoring trafik dan besarnya bandwidth yang terpakai adalah PRTG (Paessler Router Traffic Grapher). 2.8.1 HTB (Hierarchical Token Bucket) Hierarchical Token Bucket (HTB) merupakan suatu metode pendistribusian bandwidth untuk beberapa kelas dengan sangat fleksibel. Di linux, HTB banyak digunakan dalam traffic control dan QoS. HTB menerapkan sistem pembagian bandwidth secara dinamik dan lebih terstruktur. Pembagian bandwidth tidak hanya berdasarkan pada service, tetapi bisa juga berdasarkan IP address, protokol yang digunakan, dan lain-lain. Bandwidth dibagikan secara dinamik, jika 41 terdapat bandwidth dari suatu kelas yang tidak terpakai, maka dapat dipinjamkan untuk kelas yang lain. HTB merupakan teknik penjadwalan paket yang diperkenalkan bagi router berbasis linux, dikembangkan pertama kali oleh Martin Devera pada akhir 2001 untuk diproyeksikan sebagai pilihan atau pengganti mekanisme penjadwalan yang saat ini masih banyak dipakai yakni CBQ (Class-Based Queueing). HTB diklaim menawarkan kemudahan pemakaian dengan teknik peminjaman dan implementasi pembagian trafik yang lebih akurat. Pada HTB terdapat parameter ceil sehingga kelas akan selalu mendapat bandwidth diantara base link dan nilai ceil linknya. Dengan cara ini setiap kelas dapat meminjam bandwidth selama bandwidth total yang diperoleh memiliki nilai dibawah nilai ceil. HTB menggunakan Token Bucket Filter (TBF) sebagai estimator untuk menentukan apakah suatu kelas/prioritas berada dalam keadaan underlimit, atlimit atau overlimit. TBF bekerja dengan dasar algoritma ember token, setiap paket yang akan dikirimkan harus memiliki token yang berada dalam ember token, jika token tak tersedia didalam ember maka paket-paket yang akan dikirimkan harus menunggu sampai tersedia token yang cukup untuk mengirimkan paket yang sedang menunggu. TOKENS FIFO Tokens replenished at rate Bucket size limit number of instantaneously available tokens Tokens available yes Packet transmitted at rate no Wait until token(s) are available Gambar 2.12 Cara kerja Token Bucket Filter (TBF) Sumber : Romana, 2006 42 Implementasi TBF terdiri dari sebuah buffer (bucket), yang secara konstan diisi oleh beberapa informasi virtual yang dinamakan token, pada link yang spesifik (token link). Parameter paling penting dari bucket adalah ukurannya, yaitu banyaknya token yang dapat disimpan. Setiap token yang masuk mengumpulkan satu paket yang datang dari antrian data dan kemudian dihapus dari bucket. Dengan menghubungkan algoritma ini dengan dua aliran token dan data, akan didapati tiga buah kemungkinan skenario (www.ittelkom.ac.id): a. Data yang datang pada TBF memiliki link yang sama dengan masuknya token. Dalam hal ini, setiap paket yang masuk memiliki tokennya masing-masing dan akan melewati antrian tanpa adanya delay. b. Data yang datang pada TBF memiliki link yang lebih kecil daripada link token. Hanya sebagian token yang dihapus pada output pada tiap paket data yang dikirim ke antrian, dan token akan menumpuk, memenuhi ukuran bucket. Token yang tidak digunakan kemudian akan dapat digunakan untuk mengirimkan data pada kecepatan yang melampaui link token standar, ini terjadi jika ada ledakan data yang pendek. c. Data yang datang pada TBF memiliki link yang lebih besar daripada link token. Hal ini berarti bucket akan segera kosong dari token, yang menyebabkan TBF akan menutup alirannya untuk sementara. Hal inilah yang dinamakan situasi overlimit. Jika paket-paket tetap datang, maka paket-paket akan segera dibuang. Skenario terakhir ini sangatlah penting, karena dengan skenario tersebut, dapat diterapkan shaping bandwidth yang tersedia terhadap data yang melewati filter. Akumulasi dari semua token mengijinkan sebuah short burst dari data yang overlimit untuk tetap bisa lewat tanpa ada loss tetapi mengakibatkan delay. Perlu diketahui bahwa token pada kernel dalam sistem operasi Linux hanya sesuai dengan satuan bytes, bukan packet. 43 2.8.2 PRTG (Paessler Router Traffic Grapher) PRTG (Paessler Router Traffic Grapher) merupakan cara memonitor trafik pada jaringan dengan menggunakan Windows sama seperti fungsi dari memory dan CPU yaitu sebagai sistem administrator yang menyediakan visualisasi secara langsung dan periodic dari leased lines, routers, firewalls, server dan perangkat jaringan lainnya. Kegunaan yang paling umum adalah adalah memonitor bandwidth dari leased lines, router dan firewalls melalui SNMP, packet sniffing atau netflow. Akan tetapi juga bisa digunakan untuk memonitor server, pengaturan switch, printer, dan komponen jaringan lainnya dalam keadaan SNMP bekerja PRTG dapat diatur untuk bekerja pada Windows selama 24 jam setiap harinya dan secara konstan mencatat semua parameter jaringan. Data yang tercatat disimpan dalam database internal untuk dilihat kemudian. Data statistic yang telah tercatat dapat dilihat pada Windows GUI dari PRTG. Juga keseluruhan konfigurasi dari setiap sensor dapat dikerjakan dengan meggunakan Windows GUI. Untuk memonitor hasilnya., PRTG menggunakan web server untuk mempermudah menggambar grafik dan tabel dengan meggunakan Web browser. Untuk mengakuisisi data, secara umum ada tiga metode untuk memonitor bandwidth yaitu : 1. Dengan menggunakan SNMP (Simple Network Management Protocol) untuk mengakses counter trafik atau peralatan SNMP lainnya. 2. Membaca masuk atau keluarnya sistem jaringan yang melewati Ethernet card pada komputer yang dikenal dengan packet sniffing. 3. Menganalisa cisco netflow oleh cisco routers. 2.8.3 Wireshark Wireshark adalah software network protocol analysis sehingga program ini dapat digunakan untuk troubleshooting, analisis jaringan, development, serta education (http://en.wikipedia.org/wiki/Wireshark). Yang dapat diperoleh dari paket yang di capture yaitu source address, destination address dari suatu paket. Port yang sedang digunakan oleh paket tersebut, paket tersebut merupakan frame 44 ke berapa, serta isi dari paket tersebut seperti contoh password & user name. Tidak hanya itu, wireshark juga dapat melihat aktivitas suatu paket sedang dalam kondisi apa dan apa yang sedang diperlakukan pada suatu paket, apakah di forward, drop dan lain-lain. Wireshark ini dapat diimplementasikan pada banyak protokol. Mekanisme wireshark dalam meng-capture traffic suatu jaringan yaitu software ini secara simultan meng-capture dan men-decode paket-paket yang melalui suatu interface tanpa harus program tersebut mengirim paket tambahan pada suatu jaringan. 2.8.4 Zoiper Zoiper merupakan perangkat lunak yyang diaplikasikan untuk komunikasi VoIP berbasis protokol SIP dan IAX. Perangkat lunak ini diibaratkan dapat mentransformasikan PC menjadi telepon. Zoiper memberikan manfaat yang sama seperti telepon biasa untuk melakukan dan menerima panggilan pada PC. Dengan menggunakan koneksi broadband internet dan teknik audio kompresi (codec), Quality of Service (QoS) yang dihasilkan hampir sama dengan telepon tradisional. Zoiper dapat diinstall pada sembarang komputer pada suatu jaringan komputer. Perangkat lunak ini dapat berjalan di sistem operasi Windows maupun Linux. Proses registrasi dilakukan dengan memasukkan IP VoIP Server pada sistem setting pada menu Zoiper. Pada saat mengaktifkan Zoiper, sistem setting pada Zoiper secara otomatis akan mencari VoIP server untuk melapor bahwa Soft Phone pada komputer tersebut telah aktif.