250 likes | 379 Views
SIP Session Initiation Protocol. Ji ří Ledvina Projektování distribuovaných systémů. Úvod. Protokol aplikační úrovně Řídicí protokol (signalizační) pro Vytváření Modifikaci Ukončování spojení mezi dvěma účastníky Protokol pro všechno (vize) Internet telefon Distribuce multimédií
E N D
SIPSession Initiation Protocol Jiří Ledvina Projektování distribuovaných systémů
Úvod • Protokol aplikační úrovně • Řídicí protokol (signalizační) pro • Vytváření • Modifikaci • Ukončování spojení mezi dvěma účastníky • Protokol pro všechno (vize) • Internet telefon • Distribuce multimédií • Multimediální konference • RFC3261 • Henning Schulzrine, Columbia University
IMSIP Multimedia Subsystem • Architektura pro přenos IP multimediálních služeb koncovým uživatelům • Využití mobilních sítí (GPRS) • Později podpora pro GPRS, WirelessLAN, CDMA2000, pevné linky • Součástí je i SIP
Historie VoIP • 1977 – první publikace o VoIP (přenos zvuku paketovými sítěmi) • 1995 – první proprietární řešení na trhu, počátek standardizace SIP • Konec 90. let – střet H.323 a SIP, SIP pro IMS • 2001 – první SIP telefony pod $100 • 2002 – RFC3261, bitva SIP kontra H.323 končí, SIP router • 2004 – zákaznické adaptéry – freenet, 1x1, sipphone • 2005 – ústup velkých poskytovatelů (T-mobile, T-online) • Nyní – vývoj, výroba, dolaďování
SIP 2007 • Technologie pro telefonování • Další RT aplikace • Přenos zpráv • Hry • hardphone, softphone, dual phones, … • Gateway • Servery • All-IP technologie
Komponenty SIP • SIP zařízení • UA – User Agents (SIP TELEFONY) • SIP Server – registrar, proxy, redirect (vše v jednom) • SIP PSTN brány – napojení na telefonní sítě • Aplikační servery (média servery) • Komunikace klient – server port 5060
Komponenty SIP • SIP registrar • Příjem požadavků na registraci od uživatelů • Udržuje tabulky uživatelů na Location Server • SIP proxy server • Přepíná signalizaci navazování spojení • Bezestavový nebo stavový • Transparentní vzhledem ke koncovým stanicím • Podporuje další služby (přepínání hovorů, větvení) • SIP redirect server • Redirekce volání na ostatní servery • Měl by být využit pro dobře škálovatelnou distribuci zatížení • Typicky realizováno v jednom serveru
SIP proxy • Základní prvek SIP sítí • Svazují SIP komponenty (telefony, brány) • Implementují směrování
SIP proxy - funkce • Bezpečnost • Kontrola vstupu – kdo může volat koho, záznamy volání • Služby • Pomocné služby – zmeškané hovory, přesměrování, filtrování hovorů, utajení volajícího, … • Směrování • Nalezení správného příjemce pro volání • Brána, voicemail, SIP-telefon, …
SIP - proxy • Syntaktická kontrola požadavku • Převod na formát E.164 (pokud to jde) • Vyhodnocení zvláštních služeb (112) • Ověření volajícího • Provedení služeb volajícího (anonym) • Kontrola oprávněnosti požadavku vzhledem k právům volajícího • Vyhledání příjemce • Provedení služeb (forwardování, přepnutí hovoru, …) • Případné forwardování do PSTN
Proxy - služba ENUM • Převod číselného kódu na IP adresu příjemce, e-mail, … • Převod E.164 čísel na URI • +420377632445 → jmeno@firma.cz • Používá DNS • 420377632445 → 5.4.4.2.3.6.7.7.3.0.2.4.e164.arpa
Proxy - služba větvení • Větvení požadavku pro více cílů • Paralelně, sériově
Proxy –služba přesměrování • Server konfigurován pro redirekci příchozích volání jinam • Příklad je migrující příjemce • Redirekce může být povolena případ od případu
Metody SIP (RFC3261) • INVITE – inicializace relace • SIP adresa sip:voicemail@firma.com • ACK– potvrzení spojení • CANCEL – rušení probíhajícího INVITE • BYE – ukončení relace • REGISTER – spojení permanentní adresy s umístěním • OPTIONS – nastavení vlastností • Další, rozšiřující metody • INFO, UPDATE, NOTIFY, MESSAGE
Příklad záhlaví SIP zprávy • Proxy (záznam cesty) • Odesílatel • Kontakt • Typ zprávy
SIP – kódy odpovědi • 2yz success • 200 OK • 3yz Redirection • 300 Multiple choices • 301 moved permanently • 302 moved temporarily • 4yz Client error • 400 bad request • 401 Unauthorized • 482 Loop Detected • 486 Busy here • 5yz Server failure • 500 server internal error • 6yz global error • 600 Busy Everywhere
SIP - příklad Př. vytvoření spojení
SIP Instant messaging • RFC3428, RFC3682 • Využití mechanizmu SIP pro doručování krátkých zpráv • Metoda MESSAGE – zpracování jako INVITE