protokol sip
TRANSCRIPT
1
Rosmida Syarif Edvian
2
3
SIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation ProtocolSIP, Session Initiation Protocol
SIP adalah :protokol call setup yang beroperasi pada layer aplikasi OSI
Digunakan untuk memulai, mempertahankan, dan mengakhiri sesikomukasi antar user
Komunikasi dapat berupa voice, video, chat, interactive games, dll.
Tipikal nomor port : 5060
RFC 2543 (http://www.faqs.org/rfcs/rfc2543.html
4
Komponen SIP
User Agent
Proxy Server
Redirect Server
Registrar Server
5
KomponenKomponenKomponenKomponenKomponenKomponenKomponenKomponen SIP: User AgentSIP: User AgentSIP: User AgentSIP: User AgentSIP: User AgentSIP: User AgentSIP: User AgentSIP: User Agent
Komponen SIP yang memulai, menerima dan menutup sesikomunikasi
User Agent terdiri dari 2 komponen utama yaitu:• User Agent Client (UAC)
• Komponen yang memulai sesi komunikasi• User Agent Server (UAS)
• Komponen yang menerima atau menanggapi sesi komunikasi
Baik UAC ataupun UAS dapat menutup sesi komunikasi
User agent dapat berupa software (softphone) ataupunhardware (hardphone)
6
User AgentUser AgentUser AgentUser Agent
Softphone SIPSJphoneX-Lite Softphone IAX
IdefiskIaxLite
Softphone H.323Netmeeting
7
User AgentUser AgentUser AgentUser AgentIP PhoneBerbentuk seperti telepon biasa, terhubunglangsung ke jaringan IP (tidak melaluiperangkat lain)
USB PhoneBerbentuk seperti telepon genggam, menggunakan kabel dan terhubung ke PC melalui port USB
Analog Telephone Adaptor (ATA)
8
KomponenKomponenKomponenKomponenKomponenKomponenKomponenKomponen SIP: ProxySIP: ProxySIP: ProxySIP: ProxySIP: ProxySIP: ProxySIP: ProxySIP: Proxy
Komponen penengah antar user agent, bertindak sebagaiserver dan client yang menerima request message dari user agent dan menyampaikan pada user agent lainnya
Request dapat dilayani sendiri atau disampaikan (forward) pada proxy lain atau server lain
Menerjemahkan dan/atau menulis ulang request message sebelum menyampaikan pada user agent tujuan atau proxy lain
Proxy server menyimpan state sesi komunikasi antara UAC dan UAS
9
proxy server
Proses Koneksi dengan SIP Proxy
Prosedur pemutusan :1. Pesan request BYE dikirimkan ke proxy server 2. Pesan request diteruskan proxy server ke called 3. Pesan respon 200 K dikirimkan dari called ke proxy server 4. Pesan respon diteruskan proxy server ke caller dan komunikasi berakhir
10
ProxyProxyProxyProxy
Softswitch
Open Source>Asterisk (http://www.asterisk.org)>OpenSER (http://www.openser.org)>SER (http://www.iptel.org/ser/)>Yate (http://yate.null.ro)
Non Open Source>Axon (http://www.nch.com.au/pbx/)>OnDO SIP Server (http://www.brekeke.com)
11
KomponenKomponenKomponenKomponenKomponenKomponenKomponenKomponen SIP: Redirect ServerSIP: Redirect ServerSIP: Redirect ServerSIP: Redirect ServerSIP: Redirect ServerSIP: Redirect ServerSIP: Redirect ServerSIP: Redirect Server
Komponen yang menerima request message dari user agent, memetakan alamat SIP user agent atau proxy tujuan kemudianmenyampaikan hasil pemetaan kembali pada user agent pengirim (UAC)
Redirect Server tidak menyimpan state sesi komunikasi antaraUAC dan UAS setelah pemetaan disampaikan pada UAC
Tidak seperti proxy server, redirect server tidak dapat memulaiinisiasi request message
Tidak seperti UAS, redirect server tidak dapat menerima danmenutup sesi komunikasi
12
Prosedur pemutusan hubungan pada redirect server 1. Pesan request BYE dikirmkan ke called 2. Pesan respon 200 OK dikirimkan ke caller maka komunikasi berakhir
Proses Koneksi dengan Redirect Server
13
KomponenKomponenKomponenKomponenKomponenKomponenKomponenKomponen SIP: Registrar ServerSIP: Registrar ServerSIP: Registrar ServerSIP: Registrar ServerSIP: Registrar ServerSIP: Registrar ServerSIP: Registrar ServerSIP: Registrar Server
Komponen yang menerima request message REGISTER
Registrar dapat menambahkan fungsi otentikasi user untuk validasi
Registrar menyimpan database user untuk otentikasidan lokasi sebenarnya (berupa IP dan port) agar user agar yang terdaftar dapat dihubungi oleh komponenSIP lainnya (berfungsi sebagai Location Server juga)
Komponen ini biasa disandingkan dengan Proxy Server
14
SIP ServerSIP ServerSIP ServerSIP ServerSIP ServerSIP ServerSIP ServerSIP Server
Contoh aplikasi SIP yang dapat berfungsi sebagaiserver baik proxy, redirect maupun registrar server
• Asterisk (http://www.asterisk.org)• OnDo Brekeke (http://www.brekeke.com)• partysip (http://www.partysip.org)• SER, SIP Express Router (http://iptel.org/ser)• siproxd (http://siproxd.sourceforge.net)
15
PengalamatanPengalamatanPengalamatanPengalamatanPengalamatanPengalamatanPengalamatanPengalamatan SIPSIPSIPSIPSIPSIPSIPSIP
Setiap komponen SIP mempunyai alamat SIP (SIP address)
Format alamat SIP:• [sip:]<username@host>
Contoh:• sip:[email protected]• sip:[email protected]• [email protected]
16
SIP RequestSIP RequestSIP RequestSIP RequestSIP RequestSIP RequestSIP RequestSIP Request
INVITE• Mengundang user agent lain untuk bergabung dalam sesi komunikasi
ACK• Konfirmasi bahwa user agent telah menerima pesan terakhir dari serangkaian
pesan INVITE
BYE• Mengakhiri sesi
CANCEL• Membatalkan INVITE
REGISTER• Registrasi di Registrar Server
OPTIONS• Meminta informasi tentang kemampuan server
INFO• Digunakan untuk membawa pesan informasi lainnya, seperti informasi inline
DTMF
17
SIP ResponseSIP ResponseSIP ResponseSIP ResponseSIP ResponseSIP ResponseSIP ResponseSIP Response
Informational = "100" ; Trying| "180" ; Ringing| "181" ; Call Is Being Forwarded| "182" ; Queued (temporarily unavailable,
server has decided to queue the call)| “183” ; Session Progress
Success = "200" ; OKRedirection = "300" ; Multiple Choices
| "301" ; Moved Permanently| "302" ; Moved Temporarily | "303" ; See Other| "305" ; Use Proxy| "380" ; Alternative Service
Kode untuk SIP RESPON :
18
SIP Response CodeSIP Response CodeSIP Response CodeSIP Response CodeSIP Response CodeSIP Response CodeSIP Response CodeSIP Response Code
Client-Error = "400" ; Bad Request| "401" ; Unauthorized| "402" ; Payment Required| "403" ; Forbidden| "404" ; Not Found| "405" ; Method Not Allowed| "406" ; Not Acceptable| "407" ; Proxy Authentication Required| "408" ; Request Timeout| "409" ; Conflict| "410" ; Gone| "413" ; Request Entity Too Large| "414" ; Request-URI Too Large| "415" ; Unsupported Media Type| "416" ; Unsupported URI Scheme| "420" ; Bad Extension
19
Response CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse Code
| "421" ; Extension Required| "423" ; Interval Too Brief| "480" ; Temporarily not available| "481" ; Call Leg/Transaction Does Not Exist| "482" ; Loop Detected| "483" ; Too Many Hops| "484" ; Address Incomplete| "485" ; Ambiguous| "486" ; Busy Here| "487" ; Request Terminated| "488" ; Not Acceptable Here| "491" ; Request Pending| "493" ; Undecipherable
20
Response CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse CodeResponse Code
Server-Error = "500" ; Internal Server Error| "501" ; Not Implemented| "502" ; Bad Gateway| "503" ; Service Unavailable| "504" ; Server Time-out| "505" ; Version not supported| "513" ; Message To Large
Global-Failure = "600" ; Busy Everywhere| "603" ; Decline | "604" ; Does not exist anywhere | "606" ; Not Acceptable
21
SIP HeaderSIP HeaderSIP HeaderSIP HeaderSIP HeaderSIP HeaderSIP HeaderSIP Header
Header SIP sangat mirip dengan HTTP dan SMTP
Contoh:
INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP 202.137.12.237:5060From: sip:[email protected]: <sip:[email protected]>Call-ID: [email protected] 37CSeq: 100 INVITEExpires: 180User-Agent: Cisco IP Phone/ Rev. 1/ SIP enabledAccept: application/sdpContact: sip:[email protected]:5060Content-Type: application/sdp……
22
Contoh Sesi Komunikasi
23
SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)SDP (Session Description Protocol)
SDP didefinisikan pada IETF RFC2327.
Fungsi SDP :memberikan deskripsi tentang sesi multimedia yang dikehendaki, meliputi antara lain informasi kontak serta jenisenkode audio dan video
SDP Mencakup :• Protokol Transport (RTP/UDP/IP)• Tipe media (text, audio, video)• Format Media atau codec (H.261 video, g.711 audio, etc.)
24
ImplementatorImplementatorImplementatorImplementatorImplementatorImplementatorImplementatorImplementator SIPSIPSIPSIPSIPSIPSIPSIP
ITSP, Internet Telephony Service Provider
Contoh di negara lain:• FWD, Free World Dialup (http://www.freeworldialup.com/)• IPTel (http://iptel.org/)• SIP Phone (http://www.sipphone.com/)• Lainnya dapat anda lihat di situs berikut:• http://www.voip-info.org/wiki-VOIP+Service+Providers
Contoh di dalam negeri:• VoIP Rakyat (http://www.voiprakyat.or.id)• CUG (Closed User Group)
25
MengapaMengapaMengapaMengapaMengapaMengapaMengapaMengapa SIPSIPSIPSIPSIPSIPSIPSIP
Implementasi mudah• Membangun jaringan VoIP berbasiskan komponen-
komponen SIP relatif lebih mudah• Software mudah diperoleh dan status produksinya
setara dengan komersil• Terbukti bekerja cukup baik untuk beberapa ITSP• Software berlisensi opensource
• Mudah menambahkan fitur-fitur baru dan/atau integrasidengan dengan layanan lainnya seperti Free eMail
NAT Traversal• Mampu bekerja untuk user agent yang berada dibelakang
NATatau common firewall dengan relatif mudah
26
TerimaTerimaTerimaTerimaTerimaTerimaTerimaTerima KasihKasihKasihKasihKasihKasihKasihKasih