SIP
İnternet iletişim kuralları dizisi | ||
Katman | İletişim kuralları | |
7. | Uygulama katmanı | HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ... |
6. | Sunum katmanı | ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ... |
5. | Oturum katmanı | NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ... |
4. | Ulaşım katmanı | TCP, UDP, SCTP, DCCP, ... |
3. | Ağ katmanı | IP, IPv4, IPv6, ICMP, ARP, IGMP, IPX,... |
2. | Veri bağlantısı katmanı | Ethernet, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP... |
1. | Donanım katmanı | ISDN, RS-232, EIA-422, RS-449, EIA-485, ... |
Session Initiation Protocol (SIP)(Oturum Başlatma Protokolü) iki veya daha fazla katılımcı arasinda baglantı kuran bir Ağ protokolüdür. Bu protokol RFC 3261 (daha önce RFC 2543) dokümanlarında acıklanmıstır. Ayrica SIP internet Telefonu için kullanılan en yaygın protokoldür.
SIP, uygulama katmanında çalışır ve HTTP protokolüne çok benzer düz metin bir protokoldür. Oturum açar, oturum parametrelerini değiştirir, oturumu sonlandırır. Oturumlar IP telefon çağrıları, multimedya sunumlar veya konferans şeklinde olabilir.Aynı zamanda mevcut bir oturuma kullanıcı çağırabilir. Mevcut oturuma medya ekleyebilir, çıkarabilir.
SIP'in bir oturum kurmak için ve sonlandırmak için gerçekleştirdiği 5 fonksiyon vardır:
- Kullanıcı konumunu belirlemek.
- Bağlantıya katılacak kullanıcıları tespit etmek.
- Uçların kapasitelerini tespit edip o şekilde medya parametrelerini ayarlamak.
- Çağrı yapma ve iki uçtaki çağrı parametrelerini ayarlamak.
- Oturum yönetmek.
SIP'in kendisi bir veri taşıma protokolu değildir. SIP veriyi RTP gibi bir protokolle gerçek zamanlı taşıyabilir.
HTTP'ye çok benzer. Aşağıdaki gibi bir mesaj yapısı vardır:
SIP/2.0 200 OK To: "1379" From: "13579" ;tag=4448294d Via: SIP/2.0/UDP 10.0.0.11:9186;branch=z9hG4bK-c87542-804015279-1--c87542-;rport Call-ID: c63d1e7d5f3e1c29 CSeq: 1 REGISTER Contact: Expires: 3600 Max-Forwards: 69 User-agent: eyeBeam release 3002s stamp 15131 Content-Length: 0
SIP'te özel görevleri olan metotlar vardır. "Register" bunların en önemlisidir. "Register" komutunu kabul eden ve kullanıcı kayıtlarını tutan sunuculara registrar denir. Konuşmak isteyen uçlar bir registrar'a kayıt olur. "Register" iki uç arasında bağlantı kurar. "Invite" metodu, diyalog başlatmak için tek yoldur.