1 / 22

SIP Session Initiation Protocol

SIP Session Initiation Protocol. SIP: Session Initiation Protocol.

norina
Download Presentation

SIP Session Initiation Protocol

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SIPSession Initiation Protocol

  2. SIP: Session Initiation Protocol “[…] an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences.” (RFC 3261)

  3. SIP – Modello architetturale • SIP è simile ad HTTP: • Architettura client/server • Modello request/response • Codifica testuale BNF (Backus-Naur Form) • Codici associati ai messaggi di risposta: • 1xx: Informational • 2xx: success • 3xx: Redirection • 4xx: Client error • 5xx: server Failure • 6xx: Global Failure Provisional Response Final Response

  4. Entità SIP • User Agent Client (UAC) • User Agent server (UAS) • Registrar • Location Service • Redirect server • Proxy (Proxy server) Sono entità logiche: una particolare implementazione può combinarne alcune in un’unica applicazione

  5. User Agent (Client e Server) • User Agent Client: genera una nuova richiesta (es: INVITE) • User Agent Server: genera una risposta ad una richiesta. La richiesta può essere accettata, rifiutata o affidata ad un’altra entità

  6. Registrar e Location Service • Un Registrar • Accetta richieste di tipo REGISTER provenienti da UAC • Aggiorna di conseguenza i dati del Location Service • Un Location Service • Contiene i record relativi ai contatti di ogni utente • Viene interpellato dai proxy o dai redirect server per sapere dove contattare un utente

  7. Redirect e Proxy Server • Un Redirect Server • è un UAS che genera risposte al fine di indirizzare un UAC verso l’utente desiderato • Un Proxy agisce in qualità di intermediario • Ricopre entrambi i ruoli di server e di client allo scopo di effettuare richieste per conto di altri client • Può essere di tipo stateless o di tipo stateful

  8. Indirizzi SIP • Simili ad indirizzi e-mail: sip:utente@dominio sip:Giuseppe.Podesta@laser.dist.unige.it • Seguono le regole specificate per gli URI (Uniform Resource Identifier) nella RFC 2396

  9. Transaction • Lo scambio di messaggi può avvenire all’interno di un contesto transazionale • SIP definisce delle transaction come l’insieme di una Request e di una o più Response relative alla Request • Nel caso di più Response, l’ultima è final, mentre le altre sono dette provisional • Alle transaction il protocollo associa macchineastati finiti, che descrivono e regolano l’avanzamento dello stato

  10. Client Transaction, Server Transaction • Client e Server sono ruoli logici • Client Transaction • Invio di Request, ricezione di Response • Server Transaction • Ricezione di Request, invio di Response • Un’unica applicazione può essere caratterizzata da entrambi i ruoli • Es. un softphone si comporta da client quando effettua chiamate e da server quando le riceve

  11. Un’altra entità SIP che ha entrambi i ruoli Request Request Response Response

  12. INVITE CLIENT TRANSACTION INVITE SERVER TRANSACTION

  13. Messaggi SIP – una Request INVITE 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 <body non mostrato>

  14. Messaggi SIP – una Response 200 OK 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 <body non mostrato>

  15. Registrazione (REGISTER)

  16. Chiamata (Redirect Mode)

  17. Chiamata (Proxy Mode)

  18. SIP+SDP: Richiesta

  19. SIP+SDP: Risposta

  20. V=2 P X CC M PT Sequence Number Timestamp Synchronization source (SSRC) identifier Contributing source (SSRC) identifiers RTP Header • Marker Bit (M): indica l’inizio di un talkspurt. • Payload Type (PT): specifica il formato del payload; è pari a 4 per il G.723. • Sequence Number: viene usato per riordinare i pacchetti e rilevare pacchetti persi. • Timestamp: rappresenta l’istante di campionamento del primo byte del payload. E’ importante ai fini della sincronizzazione e per il calcolo del jitter. • SSRC: identifica la sorgente del flusso di pacchetti RTP.

  21. V=2 P RC PT Length header SSRC of sender NTP Timestamp, most significant word NTP Timestamp, least significant word sender info RTP Timestamp Sender’s packet count Sender’s octet count SSRC_1 (SSRC of first source) Fraction lost Cumulative number of packets lost Extended highest sequence number received report block Interarrival jitter Last SR (LSR) Delay since last SR (DLSR) RTCP Sender e Receiver Reports RTP / RTCP: RTCP Sender Report e Receiver Report

  22. http://www.networksorcery.com/enp/protocol/sip.htm http://www.networksorcery.com/enp/protocol/rtp.htm http://www.networksorcery.com/enp/protocol/rtcp.htm

More Related