Prosedur Instalasi Server Softswitch Berbasis SIP


Prosedur Instalasi Server Softswitch Berbasis SIP
SIP adalah suatu signalling protokol pada layer aplikasi yang berfungsi untuk membangun, memodifikasi, dan mengakhiri suatu sesi multimedia yang melibatkan satu atau beberapa pengguna. Sesi multimedia adalah pertukaran data antar pengguna yang meliputi suara, video, atau text. SIP tidak menyediakan layanan secara langsung, tetapi menyediakan fondasi yang dapat digunakan oleh protokol aplikasi lainnya untuk memberikan layanan yang lebih lengkap bagi pengguna, misalnya dengan RTP ( Real Time Tr ansport Protocol ) untuk transfer data secara real - time , dengan SDP ( Session Description Protocol ) untuk mendeskripsikan sesi multimedia, dengan MEGACO ( Media Gateway Control Protocol ) untuk komunikasi dengan PSTN (Public Switch Telephone Network). Meskipun demikian, fungsi dan operasi dasar SIP tidak tergantung pada protokol tersebut. SIP juga tidak tergantung pada protokol layer transport yang digunakan.

1. Pembangunan suatu komunikasi multimedia dengan SIP dilakukan melalui beberapa tahap :
  • User location : menentukan lokasi pengguna yang akan berkomunikasi.
  • User availability : menentukan tingkat keinginan pihak yang dipanggil untuk terlibat dalam komunikasi.
  • User capability : menentukan media maupun parameter yang berhubungan dengan media yang akan digunakan untuk komunikasi.
  • Session setup : “ringing”, pembentukan hubungan antara pihak pemanggil dan pihak yang dipanggil.
  • Session management : meliputi transfer, modifikasi, dan pemutusan sesi.

2. Komunikasi dengan SIP 

Komunikasi pada SIP dilakukan dengan mengirimkan message yang berbasis HTTP.
Setiap pengguna mempunyai alamat yang dinyatakan dengan SIP-URI (Uniform Resource Identification).

Contoh SIP URI : sip: mona@palembang.com

Selain itu, alamat juga dapat dituliskan dalam tel-URL yang kemudian dikonversikan
menja di SIP -URI dengan parameter‘user’ diisi ‘phone’.

Contoh : tel: +62-21-2567011

ekivalen dengan   sip: +62-21-2567011@palembang.com ; user=phone

 Isi pesan di dalam SIP didefinisikan dalam 2 format (RFC 3261)[14], seperti :
1. Request (dikirim dari client to server), berisi operasi yang diminta oleh client.
2. Response (dikirim dari server ke client), berisi informasi tentang permintaan status dari client.

Ada 6 tipe utama pesan permintaan seperti di bawah ini[14] :
  1. INVITE : mengindikasikan jika user atau layanan sedang diundang untuk bergabung dengan sesi.
  2. ACK : mengkonfirmasi jika client sudah menerima respon terakhir untuk permintaan INVITE, dan hanya digunakan di permintaan REQUEST.
  3. OPTION : digunakan untuk mempertanyakan server tentang kemampuannya
  4. BYE : dikirim oleh client user agent untuk mengindikasikan server jika percakapan akan segera dimatikan.
  5. CANCEL : untuk membatalkan permintaan yang sedang menunggu keputusan
  6. REGISTER : digunakan oleh client untuk mendaftarkan informasi kontak Respon pesan berisi kode status dan informasi tentang kondisi permintaan.
Dan kode ini dibagi menjadi 6 macam:
  1. 1xx : Provisional, permintaan sudah diterima dan sedang diproses
  2. 2xx : Success, permintaan sudah diterima, dimengerti dan disetujui.
  3. 3xx : Redirection, butuh tindakan lebih lanjut untuk memproses permintaan
  4. 4xx : Client Error, permintaan salah syntax dan tidak bisa diidentifikasi jadi server tidak bisa memprosesnya.
  5. 5xx : Server Error, server gagal untuk memproses permintaan.
  6. 6xx : Global Failure, permintaan sama sekali tidak bisa diproses di server manapun
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 request, dan user agent server (UAS) yang merespon request. SIP server adalah kesatuan fungsi logic, dimana tidak perlu memisahkan alat secara fisik. Fungsi dari empat server tersebut yaitu:

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 respons pada user agent client . 

Proxy server juga berfungsi untuk melakukan routing, memastikan request disampaikan pada yang berhak menerima, dan juga membuat kebijakan seperti menyakinkan bahwa pemakai tertentu diijinkan untuk melakukan panggilan.Redirect Server: merupakan kesatuan logika yang mengarahkan satu klien pada perangkat pengganti dari Uniform Resorce indicators (URIs) untuk menyelesaikan tugas request.Registrar Server : menerima dan memproses pesan pendaftaran yang mengijinkan lokasi dari suatu endpoint dapat diketahui keberadaannya. Registrar Server ini kerjanya berhubungan dengan Location Server.Location Server : menyediakan service untuk database abstrak yang berfungsi mentranslasikan alamat dengan kata / keterangan yang ada pada domain jaringan.

Protokol SIP didukung oleh beberapa protokol, diantara lain:

IETF Session Description 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.IETF Session Annoucement Protocol (SAP), merupakan suatu protocol yang setiap periode waktu tertentu mengumumkan parameter dari suatu sesi konferensi.IETF Real-Time transport protocol (RTP), menyediakan transfer media secara real time.Real-Time Control Protokol (RTCP), mengatur sesi secara periodik mentrasmit paket yang berisi feedback atas kualitas dari distribusi data.ITU_T Codec merupakan algoritma pengkodean yang direkomendasikan, seperti G.723.1, G711, G.728, dan G.729 untuk audio, atau H.261 untuk video.


3. Aplikasi dan Kelebihan SIP
Aplikasi
  • Voice over Internet Protocol (VoIP)
  • Konferensi multimedia
  • Text - messaging
  • Event - notification  -> voicemail notification, callback notification
  • Unified Messaging - > voicemail2email
Kelebihan
1) General - purpose

SIP dapat diintegrasikan dengan protokol stadar IETF lainnya untuk membuat suatu aplikasi yang berbasis SIP.

2) Arsitektur yang terdistribusi danscalable
  • Proxy - server
  • Redirect - server
  • Registrar - server
  • Location - server
3) Sederhana

Pengiriman message berbasis HTTP (text-based), bukan binary - based. Hal ini menyebabkan SIP mudah diimplementasikan.

4) Mobility
  • Seorang pengguna dapat menerimamessage/call yang ditujukan kepadanya. meskipun berpindah dari satu lokasike lokasi lainnya. Proxy - server akan meneruskan call ke lokasi pengguna pada saat ini.
  • Device yang digunakan dapat berupa PC, baik di rumah maupun di kantor, wireless phone, IP - phone, ataupun telepon biasa.
5) Layanan dapat dibuat dengan Call Processing Language (CPL) dan Common Gateway 
    Interface (CGI), antara lain :
  • call waiting, call forwarding, call blocking (basic feature)
  • call - forking (melakukan call kepada beberapa endpoint)
  • Instant - messaging
  •   Find - me / follow-me
Pada umumnya ada 3 tahapan implementasi SIP yang dapat dijelaskan sebagai berikut :
  • Menghubungkan SIP Proxy ke existing PBX
  • Migrasi User dan terminal ke SIP Proxy
  • Migrasi koneksi ke PSTN dari existing PBX ke SIP

Step 1: Tahap pertama adalah menghubungkan SIP proxy denganPBX system existing sebagai gateway ke PSTN. Untuk menghubungkan dari IP Network ke PSTN, SIP proxy akan me-routing-kan seluruh panggilan dari panggilan VoIP ke PSTN. Link koneksi bisa menggunakan PRI ISDN maupun T1. Pertama yang harus dilakukanadalah setup SIP proxy (SIP call manager), setelah set-up berjalan dengan baik, selanjutnya tinggal menghubungkan ke PBX existingdengan link ISDN, E1 atau T1.

Step 2 : Tahap selanjutnya adalah migrasi existing user dan services ke SIP. Migrasi semua handset ke SIP baik menggunakan gateway maupun mengganti dengan handset yang nativeSIP. Pendekatan dengan menggabungkan keduanya biasanya menjadi pilihan yang baik. Selanjutnyaadalah set-up SIP application serveruntuk mengakomodasi fitur-fitur yang dibutuhkan user seperti voice mail,multi-party conferencing, IVR, fine me follow me dan masih banyak lagi fitur yang disupport SIP.

Step 3 : Tahap 3 adalah melakukan routing panggilan ke luar melalui koneksi internet.Banyak  operator memulai menjual SIP based dengan menawarkan layanan long distancedengan harga yang lebih murah. Yang perlu diantisipasi adalah nature network  internet yang unpredictable(seperti jitter dan error rate) dan tentu saja security. Sebagai tahap awal SIP dapat digunakan sebagai alternatif untuk melakukan panggilan ketika diluar kantor atau teleworkers.


Aplikasi yang Mengimplementasi SIP

KakaoTalk

Mengingat popularitasnya yang semakin mendunia, anda mungkin pernah mendengar tentang Kakao Talk ini sebelumnya. Ini aplikasi VoIP memungkinkan anda untuk membuat panggilan dan mengirim pesan teks melalui jaringan mereka secara gratis. Sesuai aturannya, anda akan perlu mendaftar untuk dapat menggunakan layanan, yang berarti teman-teman anda pun harus melakukan hal yang sama unutk bisa menikmati layanan mereka.

Membuat panggilan dan mengirim pesan teks atau SMS bukanlah satu-satunya hal bisa Kakao Talk dapat lakukan. Anda dapat mengubah tema, bermain game, melihat pemberitahuan dari teman, dan bahkan memeriksa barang-barang yang dijual disana. Untuk dapat menikmati beberapa fitur tertentu mereka,  anda harus mengeluarkan biaya, dan tentu ini tidak menjadi masalah. Bagaimana pun juga, aplikasi ini harus mendukung dirinya sendiri agar tetap eksis dalam beberapa cara.

Selain itu, antarmuka yang disajikannya pun sangat user friendly, dan saya yakin tidak akan ada yang kesulitan untuk mencoba berbagai aplikasi dari layanan mereka.



Tango

Anda mungkin akan terkejut oleh aplikasi Tango ini karena fokus utama aplikasi ini adalah tidak benar-benar sebagai VoIP atau SIP, karena aplikasi tersebut dibuat dengan tujuan utama sebagai jaringan sosial. Meskipun demikian, anda masih dapat nelpon gratis dan kirim sms gratis ke sesama pengguna. Aplikasi ini juga memiliki dukungan untuk pesan gambar dan video, yang membuatnya menonjol dari aplikasi ini. Anda dapat mengharapkan Tango untuk memiliki kualitas yang terbaik juga. Aplikasi ini memenangkan sejumlah penghargaan, dan aplikasi itu sendiri dibanggakan karena memiliki "kualitas yang hebat" melalui koneksi  3G, 4G, dan Wi-Fi.

Seperti sebagian besar aplikasikami sajikan ini, Tango sangat mudah digunakan. Pembuatan accountnya pun sederhana dan navigasi di sekitar aplikasi terasa sangat alami. Sayangnya anda hanya dapat berkomunikasi dengan orang-orang yang memiliki account di Tango, mungkin  meyakinkan teman-teman anda untuk mencoba aplikasi ini yang agak sulit.



Viber

Viber adalah satu lagi VoIP yang memungkinkan untuk menelepon gratis melalui jaringan mereka. Tidak hanya menelepon gratis yang akan anda dapatkan, anda juga dapat mengirim pesan, stiker, emoticon, dan fitur aplikasi lainnya. Seperti aplikasi sebelumnya, teman anda akan memerlukan akun Viber untuk dapan menelepon dan kirim pesan pesan..


Aplikasi ini juga sangat mudah untuk dinavigasidan hanya umumnya memang mudah digunakan. Satu-satunya yang mungkin kekurangan untuk aplikasi ini seperti halnya aplikasi lainnya adalah bahwa anda perlu untuk membuat account anda di Viber menggunakan SMS sebelum memakai aplikasi ini . Ini akan menjadi agak menjengkelkan jika anda tidak memiliki mengatur pesan teks pada perangkat ponsel anda, karena harus menemukan cara lain untuk mengaktifkan Viber.


Selain itu, Viber adalah aplikasi yang sangat luar biasa yang telah didownload di Play Store. Setidaknya, aplikasi ini layak untuk dicoba.

DLL....

Instalasi server Softswitch berbasis sip

Onno W. Purbo

Bagi mereka yang ingin membuat sendiri sentral telepon Internet berbasis Session Initiation Protocol (SIP) seperti yang di kembangkan oleh VoIP Rakyat di http://www.voiprakyat.or.id, maka berikut ini adalah beberapa tip singkat untuk membangunnya. Teknologi SIP ini yang akan di adopsi oleh para operator telekomunikasi di Indonesia. Tampaknya yang mulai siap salah satunya adalah XL, yang mungkin akan di ikuti oleh Indosat.

Sebetulnya tidak banyak yang harus di instalasi untuk menjalankan Asterisk secara minimal sekali, yang hanya mempunyai fungsi untuk


l  Authentikasi user dengan nomor telepon & password.
l  Dial plan, untuk mengatur apa yang harus dilakukan untuk call ke sebuah nomor tertentu.
l  ENUM, agar Asterisk nantinya mengenali nomor +62XXX

Peralatan yang dibutuhkan adalah
l  Sebuah PC Linux, saya sendiri menggunakan Fedora Core 6.
l  Sambungan LAN
l  Sambungan Internet

INSTALASI ASTERISK
Teknik Instalasi yang perlu dikerjakan adalah

l  Ambil software asterisk & asterisk sound dari http://www.asterisk.org. Pada saat tulisan ini ditulis ada dua (2) jenis / versi asterisk, yaitu,


                        asterisk-1.4.0.tar.gz

                        asterisk-1.2.15.tar.gz

Anda harus memilih versi asterisk mana yang ingin di install. Mungkin yang agak aman pada hari ini adalah versi 1.2, kecuali nanti pada saat 1.4 sudah mulaistabil. Semetara suara operator wanita yang dibutuhkan adalah

                        asterisk-sounds-1.2.1.tar.gz


l  Saya biasanya akan mengcopykan semua file yang saya butuhkan tersebut ke folder /usr/local/src, melalui perintah

                        # cp asterisk-1.4.0.tar.gz /usr/local/src/

                        # cp asterisk-1.2.15.tar.gz /usr/local/src/

                        # cp asterisk-sounds-1.2.1.tar.gz /usr/local/src/


l  Menginstalasi asterisk tidak sukar, cara yang perlu dilakukan untuk asterisk-1.4 agak berbeda dengan asterisk-1.2 sebelumnya dengan menambahkan ./configure, yaitu

                        # cd /usr/local/src

                        # tar zxvf asterisk-1.4.0.tar.gz

                        # cd asterisk-1.4.0

                        # ./configure

                        # make

                        # make install

                        # make samples

l  Asterisk-1.2.15 merupakan versi terakhir dari asterisk-1.2 pada saat naskah ini ditulis, perintah yang perlu dijalankan untuk menginstalasi adalah

                        # cd /usr/local/src

                        # tar zxvf asterisk-1.2.15.tar.gz

                        # cd asterisk-1.2.15

                        # make

                        # make install

                        # make samples


l  Selanjutnya install suara operator asterisk, melalui perintah

                        # cd /usr/local/src

                        # tar zxvf asterisk-sounds-1.2.1.tar.gz

                        # cd asterisk-sounds-1.2.1

                        # make install

Seleai sudah proses instalasi asterisk. Langsung selanjutnya yang perlu dilakukan adalah mengkonfigurasi agar sesuai dengan apa yang kita inginkan.
Konfigurasi Asterisk Minimal Sekali

Konfigurasi Asterisk yang aman sangat minimal dengan misi untuk meng-authentikasi user, mengkonfigurasi dial-plan dan mengenalkan ENUM tidak banyak yang harus dilakukan. Seluruh proses konfigurasi merupakan proses editing file-file yang ada di folder

            /etc/asterisk

File yang perlu diperhatikan tidak banyak, hanya,

            sip.conf                       - untuk authentikasi user dengan nomor telepon dan password.

            extensions.conf           - untuk mengatur dialplan.

            enum.conf                   - untuk memperkenalkan nomor +62XX.

Masih banyak file-file konfigurasi lainnya, sangat di sarankan bagi anda yang ingin secara serius mempelajari asterisk untuk membaca-baca file-file konfigurasi yang ada di /etc/asterisk/

KONFIGURASI ENUM.CONF

Tidak banyak yang harus di ubah di /etc/asterisk/enum.conf, hanya pastikan bahwa ada entry

            search => e164.arpa

            search => e164.org

            search => e164.id

Dengan cara itu, kita dapat pastikan bahwa informasi ENUM yang ada di e164.arpa, e164.org dan e164.id akan dapat di ketahui dengan baik oleh asterisk kita.

KONFIGURASI SIP.CONF

Pada file /etc/asterisk/sip.conf, untuk sebuah account dengan nomor telepon 2099, password 123456, IP address dinamis menggunakan DHCP maka entry yang digunakan adalah,

            [2099]

            context=default

            type=friend

            username=2099

            secret=123456

            host=dynamic

            dtmfmode=rfc2833

            mailbox=2099@default

Untuk asterisk-1.4, agar dial tone dapat di handel dengan baik maka perlu ditambahkan di tambahan entry berikut

            rfc2833compensate=yes

Masukan entry di atas untuk masing-masing user.

Sampai titik ini maka masing-masing user dapat meregistrasikan diri ke asterisk dan dapat menelepon satu sama lain dengan mereka yang terdaftar di asterisk server yang kita operasikan.

Agar asterisk server kita dapat berbicara dengan user lain di XL. Indosat, VoIP Rakyat, di Pulver atau di SIP Proxy yang banyak bertebaran di Internet, kita perlu meregistrasikan diri ke SIP Proxy server tersebut. Perintah yang digunakan adalah

            register => 2345:password@sip_proxy/1234

yang artinya, user 1234 di asterisk server yang kita operasikan merupakan user 2345 di sip_proxy yang login ke sana menggunakan password "password". Misalnya seseorang user 2000 mempunyai account 20345 di server voiprakyat.or,id dengan password "rahasia" maka format yang digunakan adalah

            register => 20345:rahasia@voiprakyat.or,id/2000

Dengan cara ini, maka ada panggilan di VoIP Rakyat ke nomor 20345 akan langsung di forward ke nomor 2000 di SIP server yang kita gunakan.

KONFIGURASI EXTENSIONS.CONF

Pada file /etc/asterisk/extensions.conf kita dapat mengatur apa yang harus dilakukan oleh asterisk jika menerima sebuah panggilan ke nomor extension tertentu, yang sering digunakan adalah

            exten => _20XX,1,Dial(SIP/${EXTEN},20,rt)

            exten => _20XX,2,HangUp

Cara membaca perintah di atas adalah sebagai berikut,

Jika ada orang yang menelepon ke extension 20XX maka langkah 1 yang harus di kerjakan adalah DIAL EXTENsiontersebut mengunakan teknologi SIP, tunggu 20 detik, jika tidak di angkat maka time out (rt). Langkah ke 2 yang harus dilakukan adalah HangUp. Tentunya anda perlu mengatur sedikit-sedikit perintah ini agar sesuai dengan kondisi yang anda gunakan di SIP Server anda.

Beberapa perintah berbahaya yang sering dicari orang adalah sebagai berikut

            exten => _0711X.,1,Dial(SIP/${EXTEN:4}@2031,20.rt)

Cara membaca-nya adalah,

Jika ada orang yang menelepon ke 0711X. Perhatikan titik sesudah X, berarti berapapun dibelakang X tidak di perdulikan. DIAL menggunakan teknologi SIP ke nomor 2031. Perhatikan baik-baik kode {EXTEN:4} ini harus di baca - buang empat (4) digit di depan nomor EXTENsion sebelum dimasukan ke 2031 - jadi 07115551234 menjadi 5551234.

Jika kita menggunakan PABX antara ATA dengan Telkom, maka perintah yang digunakan menjadi

            exten => _021X.,1,Dial(SIP/9${EXTEN:3}@2031,20.rt)

Cara membaca-nya adalah,

Jika ada orang yang menelepon ke 021X. Perhatikan titik sesudah X, berarti berapapun dibelakang X tidak di perdulikan. DIAL menggunakan teknologi SIP ke nomor 2031. Perhatikan baik-baik kode 9{EXTEN:3} ini harus di baca buang tiga (3) digit di depan nomor EXTENsion yang di dial kemudian tambahkan 9 - jadi 0215551234 menjadi 95551234.

Artinya jika nomor 2031 merupakan sebuah Analog Telepon Adapter (ATA) seperti SPA3000 yang berada di jakarta dan sambungkan ke PABX di Jakarta. Maka siapapun yang berada di jaringan VoIP Tersebut akan dapat menelepon Jakarta tanpa perlu membayar SLJII maupun SLI. Orang yang mempunyai ATA tetap harus membayar pulsa lokal untuk menelelpon ke nomor ang di tuju.

Cara yang sama dapat di kembangkan untuk menelepon selular dengan cara menyambungkan ATA yang kita gunakan ke telkom. Perintah yang digunakan adalah sebagai berikut

            exten => _08X.,1,Dial(SIP/${EXTEN}@2031,20.rt)

Tentunya untuk sebuah kantor yang tersambung ke jaringan VoIP Publik tidak akan mau membuka akses agar semua orang dapat menelepon semua nomor selular atau Telkom, oleh karenanya biasanya kita tidak menggunakan kode-kode 021X., atau 08X. Tapi kita akan memasukan satu per satu nomor-nomor yang di ijinkan di telepon melalui VoIP, misalnya,

            exten => _0811567854,1,Dial(SIP/${EXTEN}@2031,20.rt)

            exten => _0216575675,1,Dial(SIP/${EXTEN}@2031,20.rt)

            exten => _0216755675,1,Dial(SIP/${EXTEN}@2031,20.rt)

Artinya hanya nomor  0811567854, 0216575675 dan 0216755675 yang dapat dihubungi melalui VoIP nomor selain nomor-nomor ini tidak dapat dihubungi.

Untuk mengadopsi nomor telepon +62XXX maupun nomor telepon lainnya kita dapat memasukan ENUMLOOKUP menggunakan perintah

            exten => _62X.,1,ENUMLOOKUP(${EXTEN},sip,,1,e164.id)

            exten => _62X.,2,Dial(${ENUM})

            exten => _62X.,102,Playback(im-sorry)

atau

            exten => _+X.,1,ENUMLOOKUP(${EXTEN},sip,,1,e164.id)

            exten => _+X.,2,Dial(${ENUM})

            exten => _+X.,102,Playback(im-sorry)

Sumber : Kementerian Pendidikan & Kebudayaan

0 Response to "Prosedur Instalasi Server Softswitch Berbasis SIP"

Post a Comment