Protokol pada Jaringan VoIP

berfungsi untuk mentranslasikan protokol antar kedua jaringan IP dan telepon. Hubungan ini diperlihatkan dalam Gambar 2.5 Syafitri, 2007. Gambar 2.5 Hubungan antar telepon menggunakan jaringan internet Sumber: Syafitri, 2007, hal: 22

2.2 Protokol pada Jaringan VoIP

Saat ini terdapat banyak protokol yang bekerja pada jaringan VoIP, akan tetapi yang akan dibahas disini hanya dua jenis protokol utama yang menjadi standard untuk jaringan ini, yaitu H.323 dan SIP session initiation protocol. H.323 memiliki umur yang lebih tua dibandingkan dengan SIP. H.323 merupakan standard yang dikeluarkan oleh ITU-T International Telecommunication Union — Telecommunications Standards Sector, sedangkan SIP dikeluarkan oleh IETF Internet Engineering Task Force Muhlis, 2007, hal: 7.

2.2.1 H.323

Standar H.323 menspesifikasikan empat macam komponen yang bila digunakan dalam suatu jaringan secara bersama akan memberikan layanan komunikasi multimedia point-to-point atau point-to-multipoint. Komponen-komponen tersebut adalah: 1. Terminal Digunakan untuk komunikasi multimedia nyata waktu dan dua arah, suatu terminal H.323 dapat berupa PC atau stand alone device, yang menjalankan Universitas Sumatera Utara aplikasi multimedia dan H.323. Terminal juga mendukung komunikasi suara dan komunikasi video atau data opsional. Suatu terminal H.323 harus mendukung protokol-protokol berikut, diantaranya H.245, H.223, RAS, RTPRTCP, dan G.711; sedangkan komponen opsional pada terminal adalah kompresi video, T.120, dan Multipoint Conferencing Unit MCU. 2. Gateway Digunakan untuk menghubungkan dua jaringan yang berbeda. Gateway ini memberikan konektivitas antara jaringan H.323 dengan jaringan non-H.323. konektivitas antara jaringan ini diperoleh dengan translasi protokol untuk call setup dan call release, konversi format media, dan transfer informasi antara jaringan-jaringan yang dihubungkan oleh gateway. 3. Gatekeeper Merupakan titik utama untuk semua panggilan pada jaringan H.323. Gatekeeper memberikan empat layanan penting, yaitu address translation, admission control, bandwidth control, dan zone management. Beberapa fungsi opsional yang juga didukung adalah call authorization, bandwidth management, call control signaling, dan call management. Keberadaan gatekeeper sendiri adalah opsional. 4. Multipoint Control Unit MCU Menyediakan kemampuan untuk konferensi conference antara tiga atau lebih terminal H.323. Semua terminal yang terlibat dalam konferensi membangun hubungan dengan MCU. Biasanya MCU terdiri dari Multipoint Controller dan Multipoint Processor. MCU mengatur sumber source dari konferensi, negosiasi antar terminal dengan tujuan menentukan coderdecoder dari audio atau video yang digunakan, dan menangani aliran media Syafitri, 2007, hal 23.

2.2.2 Session Initiation Protocol SIP

SIP adalah peer-to-peer signaling protokol, dikembangkan oleh Internet Engineering Task Force IETF, yang mengijinkan endpoint-nya untuk memulai dan mengakhiri sessions komunikasi. Protokol ini didefinisikan pada RFC 2543 dan menyertakan elemen protokol lain yang dikembangkan IETF, mencakup Hypertext Transfer Protokol HTTP yang diuraikan pada RFC 2068, Simple Mail Transfer Protokol Universitas Sumatera Utara SMTP yang diuraikan pada RFC 2821, dan Session Description Protokol SDP yang diuraikan pada RFC 2327 Syafitri, 2007, hal 26. SIP bisa dikatakan berkarakteristik client-server. Ini berarti request diberikan oleh client dan dikirimkan ke server. Kemudian server mengolah request dan memberikan tanggapan terhadap request tersebut ke client. Request dan respon terhadap request tersebut disebut transaksi SIP Muhlis, 2007, hal: 10. Protokol SIP didukung oleh beberapa protokol, antara lain RSVP Resource Reservation Protocol untuk melakukan pemesanan resource pada jaringan, RTP Real-time Transport Protocol dan RTCP Real-Time Transport Control Protocol untuk mentransmisikan media dan mengetahui kualitas layanan, serta SDP Session Description Protocol untuk mendeskripsikan sesi media. Secara default, SIP menggunakan protokol UDP User Datagram Protocol, tetapi pada beberapa kasus dapat juga menggunakan TCP Transport Control Protocol sebagai protokol transport Syafitri, 2007, hal 26. Arsitektur dari SIP terdiri dari dua komponen yaitu user agent dan servers. User agent merupakan end point dari sistem dan memuat dua sub sistem yaitu user agent client UAC yang membangkitkan requests, dan user agent server UAS yang merespon requests. Dua elemen ini dapat dilihat pada Gambar 2.6. SIP server adalah kesatuan fungsi logic, dimana tidak perlu memisahkan alat secara fisik.Sedangkan komponen servers terbagi atas 4 bagian yaitu: 1. Proxy Server : merupakan host jaringan yang berperan sebagai perantara yang bertujuan untuk meminta request atas nama client yang lain. Proxy harus bertindak sebagai server dan client, dia harus mengarahkan SIP request pada user agent server, dan mengarahkan SIP response pada user agent client. Proxy Server juga berfungsi untuk melakukan routing, memastikan requests dapat disampaikan pada yang berhak menerima, dan juga membuat kebijakan seperti meyakinkan bahwa pemakai tertentu diijinkan untuk melakukan panggilan. 2. Redirect Server : merupakan kesatuan logika yang mengarahkan suatu klien pada perngkat pengganti dari Uniform Resource Indicators URIs untuk menyelesaikan tugas request. Universitas Sumatera Utara 3. Registrar Server: menerima dan memproses pesan pendaftaran yang mengijinkan lokasi dari suatu endpoint dapat diketahui keberadaannya. Registrar Server ini kerjanya berhubungan dengan Location Server. 4. Location Server : menyediakan service untuk database abstrak yang berfungsi mentranslasikan alamat dengan data keterangan yang ada pada domain jaringan Syafitri, 2007, hal 26-27. Gambar dari aristektur SIP dapat kita lihat dari Gambar 2.6. Gambar 2.6 SIP Agent and Servers Sumber: http:www.ittelkom.ac.id SIP message dibedakan menjadi dua format, yaitu requests yang dikirim dari client menuju server, dan response yang dikirim dari server menuju client. Message request menunjukkan operasi yang direquest oleh client, sedangkan response menyediakan informasi dalam menanggapi status dari requests Muhlis, 2007, hal: 12- 14. Universitas Sumatera Utara

2.2.2.1 Message Headers

Header ini digunakan untuk proses calling party, route, dan jenis pesan suatu panggilan. Terdapat empat group di dalamnya, yaitu : general header, entity headers, request headers, dan response headers.

2.2.2.2 Message Request

Ada enam tipe request message: 1. INVITE, menunjukkan bahwa user atau service sedang diundang untuk bergabung dalam suatu sesi komunikasi. 2. ACK, mengkonfirmasi bahwa client telah menerima sebuah final response untuk sebuah INVITE request, dan hanya digunakan dengan INVITE requests. 3. OPTIONS, digunakan untuk meminta informasi tentang kemampuan server. 4. BYE, dikirim oleh user agent client untuk memberitahukan server untuk memutuskan sebuah sesi komunikasi. 5. CANCEL, digunakan untuk membatalkan INVITE, atau membatalkan request yang tertunda. 6. REGISTER, digunakan oleh client untuk meregister contact informasi, atau meregistrasi di sebuah server registrar. 7. INFO, digunakan untuk membawa pesan informasi lainnya, seperti informasi inline DTMF.

2.2.2.3 Message Response

Response message berisi status code dan reason phrase yang mengindikasikan kondisi dari request. Isi dari status code mirip dengan yang digunakan dengan HTTP dan terdiri dari enam kategori: 1. 1xx Provisional atau Information– request telah diterima dan proses tetap berlangsung. 2. 2xx Successful Response – telah berhasil diterima, dimengerti dan di-accept. 3. 3xx Redirection Response – action berikutnya dibutuhkan untuk memproses request ini. Universitas Sumatera Utara 4. 4xx Client Error – request mengandung syntax yang buruk, dan tidak dapat dilaksanakan pada server ini. 5. 5xx Server Error – server mengalami error dalam melaksanakan valid request. 6. 6xx Global Error – request tidak dapat dilaksanakan pada server manapun. Respon SIP dapat ditunjukkan seperti pada gambar 2.7 di bawah ini Gambar 2.7 Respon SIP Sumber: Lazuardi, 2008, hal: 48

2.2.2.4 Proses Call Flow pada Jaringan VoIP

Dalam melakukan pemanggilan telepon baik circuit switch atau packet switch, akan melalui 3 tahap proses yaitu, call setup signaling, media path voice exchange, dan call tear down hang up call. Pada gambar 2.8 terlihat alur pemanggilan dari salah satu client lokal yang telah di-NAT yaitu dari IP address 10.15.11.24 ke 114.123.255.3 ke client VoIP Rakyat dengan IP address 202.153.128.34.

A. SIP Signalling

Pada tahap SIP Signalling ini ada beberapa proses yang terjadi: 1. Register Sebelum melakukan pemanggilan, softphone terlebih dahulu akan melakukan register pada server Asterisk. Disini server Asterisk berfungsi sebagai registrar yang berfungsi untuk melakukan otentikasi user yang mendaftar. Universitas Sumatera Utara Gambar 2.8 Proses Call Flow Pada Jaringan VoIP 2. Invite Setelah proses register selesai dilakukan, SIP akan melakukan proses invite ke server VoIP lokal dengan tujuan untuk meminta server VoIP melakukan panggilan ke tujuan yang telah teregister. Untuk melakukan proses ini protokol SIP menggunakan protokol UDP sebagai medianya. Request invite ini terdiri dari beberapa header seperti yang terlihat berikut ini. INVITE sip:100210.15.11.5 SIP2.0 Via:SIP2.0UDP10.15.11.24;rport;branch=z9hG4bK0a0f0b180000004b4bd 1148100004f34000000f7 Content-Length: 217 Contact: sip:100110.15.11.24:5060 Call-ID: 692E91CD-552E-4D24-AB2E-91A00F7A549B10.15.11.24 Content-Type: applicationsdp CSeq: 2 INVITE From: unknownsip:100110.15.11.5;tag=863665618549 Max-Forwards: 70 To: sip:100210.15.11.5 User-Agent: SJphone1.60.289a SJ Labs Dari message header di atas dapat terlihat extension 1001 melakukan proses invite ke server lokal untuk melakukan panggilan ke extension 1002. Adapun port yang digunakan adalah port 5060 dan softphone User Agent yang digunakan adalah Universitas Sumatera Utara SJPhone. Selain itu, header ini berisi tag yang ditambahkan softphone untuk tujuan identifikasi identitas phone client yang digunakan. Call ID tersebut adalah identifier yang unik yang dihasilkan oleh kombinasi dari string secara random dan IP Address. CSeq Call Sequence berisi nilai integer dan method SIP. Max- Forwards berfungsi untuk membatasi jumlah dari hops dan request yang dapat dilewatkan ke tujuan yang dalam kasus ini bernilai 70. Ini dimaksudkan untuk menjamin sebuah request tidak gagal pada jaringan SIP. 3. Trying Request dari softphone 100110.15.11.24 akan direspon oleh server Asterisk local dengan mengirimkan sinyal respons 100 Trying yang mengindikasikan bahwa request dari softphone telah diterima oleh server dan sebagai respon checking kembali pada softphone tersebut. Berikut ini message header untuk proses ini. IP2.0 100 Trying Via: SIP2.0UDP10.15.11.24;branch=z9hG4bK0a0f0b180000004b4bd1148100004 f34000000f7;received=10.15.11.24;rport=5060 From: unknownsip:100110.15.11.24;tag=863665618549 To: sip:100210.15.11.5 Call-ID: 692E91CD-552E-4D24-AB2E-91A00F7A549B10.15.11.24 CSeq: 2 INVITE Server: Asterisk PBX 1.6.2.0~rc2-0ubuntu1.2 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces, timer Contact: sip:100110.15.11.24 Content-Length: 0 4. Ringing Sinyal ini bertujuan memberitahukan pemanggil bahwa sinyal request Invite telah diterima. Sinyal ini dikodekan dengan angka 180. Berikut ini message header untuk proses ini. SIP2.0 180 Ringing Via: SIP2.0UDP 10.15.11.24;branch=z9hG4bK0a0f0b180000004b4bd1148100004f34000000f Universitas Sumatera Utara ;received=10.15.11.24;rport=5060 From: unknownsip:100110.15.11.24;tag=863665618549 To: sip:100210.15.11.5;tag=as4024aaa2 Call-ID: 692E91CD-552E-4D24-AB2E-91A00F7A549B10.15.11.24 CSeq: 2 INVITE Server: Asterisk PBX 1.6.2.0~rc2-0ubuntu1.2 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY,INFO Supported: replaces, timer Contact: sip:100110.15.11.24 Content-Length: 0 5. OK Sinyal ini bertujuan untuk memberitahukan kepada pemanggil bahwa penerima panggilan telah menerima request. Pemanggil akan memberikan respon ACK sebagai konfirmasi respon dengan kode 200 OK dan sesi percakapan dimulai. Berikut ini message header untuk proses ini. SIP2.0 200 OK Via: SIP2.0UDP 10.15.11.24;branch=z9hG4bK0a0f0b180000004b4bd1148100004f34000000f; received=10.15.11.24;rport=5060 From: unknownsip:100110.15.11.5;tag=863665618549 To: sip:90310.15.11.5;tag=as4024aaa2 Call-ID: 692E91CD-552E-4D24-AB2E-91A00F7A549B10.15.11.24 CSeq: 2 INVITE Server: Asterisk PBX 1.6.2.0~rc2-0ubuntu1.2 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE,NOTIFY,INFO Supported: replaces, timer Contact: sip:90310.15.11.5 Content-Type: applicationsdp Content-Length: 272 Universitas Sumatera Utara Gambar 2.9 Hasil capturing message header dengan Wireshark

B. Media Path

Setelah tahap call setup berhasil dilakukan, komunikasi telah dibentuk maka protokol SIP menggunakan protokol RTP sebagai media untuk fungsi transportasi data voice yang bersifat real-time. RTP menggunakan protokol kontrol yaitu Real-Time Control Protocol RTCP untuk mengirimkan paket kontrol setiap terminal yang berpartisipasi pada percakapan untuk informasi kualitas transmisi pada jaringan Grandistyana et al, hal:130.

C. Call Tear Down

Setelah sesi komunikasi selesai, client yang melakukan terminasi akan mengirimkan sinyal bye untuk menyatakan bahwa sesi komunikasi telah diakhiri. Sinyal ini akan dibalas oleh client lainnya dengan mengirimkan respon 200 OK sebagai respon untuk mengakhiri sesi komunikasi Grandistyana et al, hal:130. Universitas Sumatera Utara

2.2.3 Protokol-Protokol Penunjang Jaringan VoIP

Protokol-protokol lain yang ikut berperan dalam proses transfer data suara pada jaringan VoIP diantaranya adalah protokol TCPIP Transfer Control ProtocolInternet Protocol, karena protokol ini merupakan protokol yang digunakan pada jaringan Internet. Protokol ini terdiri dari dua bagian besar, yaitu TCP dan IP. Selain itu terdapat juga protokol UDP User Datagram Protocol. Masing-masing protokol akan dijelaskan sebagai berikut Syafitri, 2007, hal 29.

2.2.3.1 Transmission Control Protocol TCP

Dalam mentransmisikan data pada layer Transport, ada dua protokol yang berperan yaitu TCP Transmission Control Protocol dan UDP User Datagram Protocol. TCP merupakan protokol yang connection-oriented yang artinya menjaga reliabilitas hubungan komunikasi end-to-end. Konsep dasar cara kerja TCP adalah mengirim dan menerima segment – segment informasi dengan panjang data bervariasi pada suatu datagram internet. TCP menjamin realibilitas hubungan komunikasi karena melakukan perbaikan terhadap data yang rusak, hilang atau kesalahan kirim. Hal ini dilakukan dengan memberikan nomor urut pada setiap oktet yang dikirimkan dan membutuhkan sinyal jawaban positif dari penerima berupa sinyal ACK acknowledgment. Jika sinyal ACK ini tidak diterima pada interval pada waktu tertentu, maka data akan dikirimkan kembali. Pada sisi penerima, nomor urut tadi berguna untuk mencegah kesalahan urutan data dan duplikasi data. TCP juga memiliki mekanisme fllow control dengan cara mencantumkan informasi dalam sinyal ACK mengenai batas jumlah oktet data yang masih boleh ditransmisikan pada setiap segment yang diterima dengan sukses. Dalam hubungannya dengan VoIP, TCP digunakan pada saat signaling, TCP digunakan untuk menjamin setup suatu panggilan pada tahap signaling. TCP tidak digunakan dalam pengiriman data suara pada VoIP karena pada suatu komunikasi data VoIP penanganan data yang mengalami keterlambatan lebih penting daripada penanganan paket yang hilang Syafitri, 2007, hal 27. Universitas Sumatera Utara

2.2.3.2 User Datagram Protocol UDP

User Datagram Protocol UDP yang merupakan salah satu protokol utama diatas IP merupakan transport protokol yang lebih sederhana dibandingkan dengan TCP. UDP digunakan untuk situasi yang tidak mementingkan mekanisme reliabilitas. Header UDP hanya berisi empat field yaitu source port, destination port, length dan UDP checksum dimana fungsinya hampir sama dengan TCP, namun fasilitas checksum pada UDP bersifat opsional.UDP digunakan pada VoIP karena pada pengiriman audio streaming yang berlangsung terus menerus lebih mementingkan kecepatan pengiriman data agar tiba di tujuan tanpa memperhatikan adanya paket yang hilang walaupun mencapai 50 dari jumlah paket yang dikirimkan. Karena UDP mampu mengirimkan data streaming dengan cepat, maka dalam teknologi VoIP, UDP merupakan salah satu protokol penting yang digunakan sebagai header pada pengiriman data selain RTP dan IP. Untuk mengurangi jumlah paket yang hilang saat pengiriman data karena tidak terdapat mekanisme pengiriman ulang maka pada teknolgi VoIP pengiriman data banyak dilakukan pada private network Syafitri, 2007, hal 31.

2.2.3.3 Internet Protocol IP

Internet Protocol IP didesain untuk interkoneksi sistem komunikasi komputer pada jaringan paket switched. Pada jaringan TCPIP, sebuah komputer diidentifikasi dengan alamat IP. Tiap-tiap komputer memiliki alamat IP yang unik, masing-masing berbeda satu sama lainnya. Hal ini dilakukan untuk mencegah kesalahan pada transfer data. Selanjutnya protokol data akses berhubungan langsung dengan media fisik. Secara umum protokol ini bertugas untuk menangani pendeteksian kesalahan pada saat transfer data. Untuk komunikasi datanya, Internet Protocol mengimplementasikan dua fungsi dasar yaitu pengalamatan dan fragmentasi. Salah satu hal penting dalam pengiriman informasi adalah metode pengalamatan pengirim dan penerima. Saat ini terdapat standard pengalamatan yang sudah digunakan yaitu IPv4 dengan alamat yang terdiri dari 32 bit. Jumlah alamat yang dapat dibuat dengan IPv4 diperkirakan tidak dapat mencukupi kebutuhan pengalamatan IP sehingga dalam beberapa tahun mendatang akan diimplementasikan sistem pengalamatan yang baru yaitu IPv6 yang menggunakan system pengalamatan terdiri dari 128 bit Syafitri, 2007, hal 31-32. Universitas Sumatera Utara

2.3 Parameter yang Mempengaruhi Kualitas Percakapan VoIP