Protokol SIP

26
1 Rosmida Syarif Edvian

Transcript of Protokol SIP

Page 1: Protokol SIP

1

Rosmida Syarif Edvian

Page 2: Protokol SIP

2

Page 3: Protokol SIP

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

Page 4: Protokol SIP

4

Komponen SIP

User Agent

Proxy Server

Redirect Server

Registrar Server

Page 5: Protokol SIP

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)

Page 6: Protokol SIP

6

User AgentUser AgentUser AgentUser Agent

Softphone SIPSJphoneX-Lite Softphone IAX

IdefiskIaxLite

Softphone H.323Netmeeting

Page 7: Protokol SIP

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)

Page 8: Protokol SIP

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

Page 9: Protokol SIP

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

Page 10: Protokol SIP

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)

Page 11: Protokol SIP

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

Page 12: Protokol SIP

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

Page 13: Protokol SIP

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

Page 14: Protokol SIP

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)

Page 15: Protokol SIP

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]

Page 16: Protokol SIP

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

Page 17: Protokol SIP

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 :

Page 18: Protokol SIP

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

Page 19: Protokol SIP

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

Page 20: Protokol SIP

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

Page 21: Protokol SIP

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……

Page 22: Protokol SIP

22

Contoh Sesi Komunikasi

Page 23: Protokol SIP

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.)

Page 24: Protokol SIP

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)

Page 25: Protokol SIP

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

Page 26: Protokol SIP

26

TerimaTerimaTerimaTerimaTerimaTerimaTerimaTerima KasihKasihKasihKasihKasihKasihKasihKasih