User Tools

Site Tools


wiki:voip:obecne:sip

SIP

Aspekty sestavování spojení:

  • User location - určení koncového zař. pro komunikaci
  • User availability - rozpoznání “ochoty” zař. komunikovat
  • User capabilities - určení parametrů přenášeného media
  • Session setup - “ringigng”, nastavení parametrů session na obou koncích
  • Session management - transfer,termination, invoking services, modify session params

Sip neposkytuje služby, poskytuje pouze základ pro implementaci služeb (jinými protokoly).

 
                     atlanta.com  . . . biloxi.com
                 .      proxy              proxy     .
               .                                       .
       Alice's  . . . . . . . . . . . . . . . . . . . .  Bob's
      softphone                                        SIP Phone
         |                |                |                |
         |    INVITE F1   |                |                |
         |--------------->|    INVITE F2   |                |
         |  100 Trying F3 |--------------->|    INVITE F4   |
         |<---------------|  100 Trying F5 |--------------->|
         |                |<-------------- | 180 Ringing F6 |
         |                | 180 Ringing F7 |<---------------|
         | 180 Ringing F8 |<---------------|     200 OK F9  |
         |<---------------|    200 OK F10  |<---------------|
         |    200 OK F11  |<---------------|                |
         |<---------------|                |                |
         |                       ACK F12                    |
         |------------------------------------------------->|
         |                   Media Session                  |
         |<================================================>|
         |                       BYE F13                    |
         |<-------------------------------------------------|
         |                     200 OK F14                   |
         |------------------------------------------------->|
         |                                                  |
      INVITE sip:bob@biloxi.com SIP/2.0
      Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds
      Max-Forwards: 70
      To: Bob <sip:bob@biloxi.com>
      From: Alice <sip:alice@atlanta.com>;tag=1928301774
      Call-ID: a84b4c76e66710@pc33.atlanta.com
      CSeq: 314159 INVITE
      Contact: <sip:alice@pc33.atlanta.com>
      Content-Type: application/sdp
      Content-Length: 142

      (Alice's SDP not shown)
      SIP/2.0 200 OK
      Via: SIP/2.0/UDP server10.biloxi.com
         ;branch=z9hG4bKnashds8;received=192.0.2.3
      Via: SIP/2.0/UDP bigbox3.site3.atlanta.com
         ;branch=z9hG4bK77ef4c2312983.1;received=192.0.2.2
      Via: SIP/2.0/UDP pc33.atlanta.com
         ;branch=z9hG4bK776asdhds ;received=192.0.2.1
      To: Bob <sip:bob@biloxi.com>;tag=a6c85cf
      From: Alice <sip:alice@atlanta.com>;tag=1928301774
      Call-ID: a84b4c76e66710@pc33.atlanta.com
      CSeq: 314159 INVITE
      Contact: <sip:bob@192.0.2.4>
      Content-Type: application/sdp
      Content-Length: 131

      (Bob's SDP not shown)

Hlavička sip: Via - každý proxy server, přes který sig.projde se přidá do Via Record-Route - sip proxy na sebe může stáhnout veškerou signalizaci (bye, některé ack - totiž defaultně jdou napřímo mezi telefony)

Registrace

  • UA(client) v pravidelných intervalech dává vědět serveru (reistrar) o svém umístění pomocí zpráv REGISTER.
  • Registrar si informace ukládá do db zvané “Location Service”.
  • Registrace slouží pro potřeby routingu NEslouží k autorizaci hovorů

Location Service

  • Klient není v registraci omezen na jedno zařízení, může se registrovat z více míst(zařízení najednou)
  • Údaje o všech umístěních URI klenta se ukládají v Location Service na proxy serveru

Struktura SIP protokolu:

  • kódování BNF
  • transportní vrstva (stateless proxies)
  • transakční vrstva (stateful proxies)
  • TU transaction user

SIP elements:

  • UAC
  • UAS
  • stateless Proxy
  • stateful Proxy
  • Registrar

Dialog = peer-to-peer přímá komunikace mezi UA

  • Address-of-Record (AOR) = SIP URI, které odkazuje na doménu s loc.serv., která mapuje URI na jiné URI (obdoba NAT) za kterým je user dostupný, AOR=také zvané “veřejná adresa uživatele”
  • Back-to-Back User Agent (B2BUA) = logická entita, která zpracovává poždvky jako UAS a posílá dál jako UAC. Narozdíl od proxy, udržuje stav dialogu a musí se účastnit všech jeho requestů.
  • Call Leg = Dialog.
  • Final response: vše 2xx,3xx,4xx,5xx,6xx
  • Provisional response: vše 1xx
  • Proxy: Zajišťuje routing, policing. Interpretuje, případně přepisuje části requestů před tím než je pošle dál.
  • Redirect Server: pomocí zpráv 3xx odkazuje klienty na alternativní URI
  • Registrar Server: akceptuje REGISTER požadavky a ukládá je do loc.service
  • Regular Trancaction: všechny transakce kromě INVITE,ACK,CANCEL
  • Ringback: informace že protistrana vyzvánění (vyzv.tón ve sluchátku)
  • Stateful Proxy - udržuje transakce UAC a UAS
  • Stateless Proxy - pouze forwarduje požadavky

7. SIP Zprávy:

  • SIP je textově orientovaný protokol, používá kódování UTF-8

Struktura zprávy:

generic-message  =  start-line
                    *message-header
                    CRLF
                    [ message-body ]
start-line       =  Request-Line / Status-Line

CLRF = carriage-return line-feed sequence

wiki/voip/obecne/sip.txt · Last modified: 2014/12/26 18:31 (external edit)