SIP

Материал из Xgu.ru

Перейти к: навигация, поиск


SIP (Session Initiation Protocol) — протокол прикладного уровня, использующийся для установления мультимедийных соединений (например, для передачи звука и изображения) поверх IP. Протокол может использоваться для создания, изменения и завершения двусторонних (unicast) или многосторонних (multicast) сеансов, включающих один или несколько медиапотоков.

SIP был создан в 1996 году Хеннингом Шульцрине[1] (Henning Schulzrinne). Сейчас он описывается стандартом IETF RFC 3261.

Протокол широко используется в среде мультимедийных коммуникаций: IP-телефонии, видеоконференциях, компьютерных играх и многих других сферах.

В некоторых случаях протокол не работает при трансляции сетевых адресов NAT[2][3]. Проблемы с трансляцией обходятся различными способами, например, при помощи протокола STUN или совсем радикально — заменой на IAX, который проблем с трансляцией не испытывает.

SIP является текстовым протоколом (например, таким как SMTP или HTTP, а не двоичным, таким например, как SMB). Пример сеанса взаимодействия[4].

SIP-Request:

INVITE sip:8495302002@192.168.2.25 SIP/2.0
Header  Via: SIP/2.0/UDP 192.168.3.250:5060; branch=1
From: sip:8495305005@192.168.2.25;tag=29ae1249
Max-Forwards: 70
To: sip:8495302002@192.168.2.25
Call-ID: 48c7df2a9b4@myvoip1
Cseq: 1 INVITE
Contact: sip:8495305005@192.168.3.250
Content-Length: 202
Supported: 100rel
Content-Type: application/sdp

v=0
o=Anonymous 1234567890 1234567890 IN IP4 192.168.3.250
s=SIGMA is the best
c=IN IP4 192.168.3.250
t=0 0
m=audio 6006 RTP/AVP 8 3 0
a=rtpmap:8 PCMA/8000
a=rtpmap:3 GSM/8000
a=rtpmap:0 PCMU/8000

SIP-Response:

SIP/2.0 200 OK
Header  Via: SIP/2.0/UDP 192.168.2.25:5060;branch=z5K8DSbCGCL8593033654
From: sip:8495305005@192.168.2.25;tag=6248550609-457625817474016
To: <sip:8495302002@192.168.3.251;user=phone>;tag=2e679cbc
Call-ID: 6248550609-781762546450147
Cseq: 15 INVITE
Contact: sip:8495302002@192.168.3.251
Content-Length: 191
Content-Type: application/sdp

v=0
o=Anonymous 1234567890 7894561230 IN IP4 192.168.3.251
s=SIGMA is the best
c=IN IP4 192.168.3.251
t=0 0
m=audio 6006 RTP/AVP 8 0
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000

[править] Дополнительная информация

  • SIP IETF RFCs (англ.) — список RFC, имеющих отношение к SIP

[править] Программы

  • sngrep (англ.) — SIP Message Flow Viewer

[править] Примечания

  1. http://www.cs.columbia.edu/~hgs/ (англ.) — домашняя страница Хеннинга Шульцирне
  2. http://www.voip-info.org/wiki/view/Asterisk+SIP+NAT+solutions
  3. http://www.voip-info.org/wiki/view/Asterisk+sip+nat
  4. http://de.wikipedia.org/wiki/Session_Initiation_Protocol
Источник — «http://xgu.ru/wiki/SIP»