590 likes | 761 Views
Mobil Internet 16. előadás A Session Initiation Protocol (SIP) Kanizsai Zoltán kzoltan@mcl.hu. BME Híradástechnikai Tanszék 2008/2009 II. félév. Tartalom. Bevezetés A SIP architektúra A SIP címzése SIP szintaxis Tipikus szcenáriók SIP a gyakorlatban SIP alapú mobilitás kezelés
E N D
Mobil Internet16. előadás A Session Initiation Protocol (SIP)Kanizsai Zoltánkzoltan@mcl.hu BME Híradástechnikai Tanszék 2008/2009 II. félév
Tartalom • Bevezetés • A SIP architektúra • A SIP címzése • SIP szintaxis • Tipikus szcenáriók • SIP a gyakorlatban • SIP alapú mobilitás kezelés • Referenciák Mobil Internet előadás BME-HIT
Bevezetés • Szabvány kifejlesztése: az IETF által (MMUSIC (Multiparty Multimedia Session Control) munkacsoport) - RFC 2543 • SIP: Jelzési protokoll multimédia alkalmazásokhoz • Alkalmazási rétegbeli protokoll • Független az alatta lévő rétegektől (TCP, UDP, X.25, ATM, stb.) • Támogatja a Multicastot Mobil Internet előadás BME-HIT
Bevezetés • A SIP a hívás különböző fázisaiban működik: • A kommunikációs partner helyének meghatározása • A vevő profiljának és erőforrásinak analizálása • A médiatípus és paramétereinek két fél közötti összehangolása (codec-ek) • A kommunikációs fél elérhetőségének vizsgálata • Hívás felépítés és menet közbeni karbantartás • A SIP számos létező protokollt használ: • Az üzenetformátuma: HTTP 1.1 • A média egyeztetése: SDP - Session Description Protocol • Maga a média: RTP • Névfeloldás és mobilitás: DNS és DHCP • Alkalmazások kódolása: MIME Mobil Internet előadás BME-HIT
Cél, filozófia • Internet Standard legyen - IETF - http://www.ietf.org • Az Internet elemeinek újrafelhasználása (URL, DNS, proxy) - Igénybevenni az Internet által nyújtott sok szolgáltatást • A HTTP kód újrahasznosítása - Text alapú! Mobil Internet előadás BME-HIT
A SIP …, A SIP nem… • SIP = mag protokoll amely viszonykialakítást tesz lehetővé az Interneten (peer-to-peer alapon) • Az adatátviteli viszony leíróit viszi át a hívótól a hivottig • Lehetővé teszi a paraméterek változtatását adatátvitel közben is • A viszony lezárását is kezeli • NEM támogatja multimédiás adatok elosztását • NEM alkalmas média gateway-ek kezelésére Mobil Internet előadás BME-HIT
A SIP alapvető funkciói • Helymeghatározás: meghatározza, hogy hol van a végpont amellyel kommunikálni kívánunk • Végpont képességei: meghatározza, hogy milyen médiát milyen paraméterekkel lehet használni • Végpont elérhetősége: meghatározza, hogy a távoli végpont hajlandó-e a kommunikációra • Hívás indítás: „csörgetés", a hívási paraméterek beállítása mindkét félnél • Hívás kezelés: ide tartozik a hívás menet közbeni konfigurálása és a hívás befejezése Mobil Internet előadás BME-HIT
A SIP előnyei • Kiváló alternatívája a H.323-nak • Sokkal flexibilisebb, egyszerűbb • Könnyű implementálni • Alkalmas az intelligens végpontok kihasználására • Része az IETF multimédiás-,adatés vezérlésiarchitektúrájának • Együttműködik már meglévő protokollokkal: SDP, RTSP (Real-Time Streaming Protocol), SAP (Session Announcement Protocol) • A lehetőségekhez mérten mindig a legegyszerűbb jelzést használja • Sokféle típusú információt képes hordozni az üzeneteiben • Beleértve nem szabványos információ típusokat is Mobil Internet előadás BME-HIT
A SIP Architektúra • Jelzési protokoll • Multimédia viszonyok kezdeményezése, menet közbeni változtatása és befejezése • SIP + SDP • Viszonyleírók használata (pl. codec egyeztetés) • Különválasztva a jelzés és a média folyam Mobil Internet előadás BME-HIT
SIP, SDP és RTP • SIP: jelzések a híváshoz • SDP:jól struktúrált nyelv médiafolyamok viszonyleíróhoz • RTP: médiafolyam átviteléért felelős Mobil Internet előadás BME-HIT
A SIP hálózatelemei • Kliensek • User Agent (UA)kliensek • Alkalmazások melyek SIP kéréseket küldenek • Szerverek • A kliensek kéréseire válaszol • A kliensek és szerverek lehetnek azonos de különböző platformokon is • Proxy • Kliensként és szerverként is üzemelhet Mobil Internet előadás BME-HIT
User Agent-ek • Intelligens végpontok • SIP üzenetek fogadása és generálása • Két részből áll: • UAC: User Agent Client: kéréseket küld, válaszokat fogad • UAS: User Agent Server: kéréseket fogad, válaszokat küld Mobil Internet előadás BME-HIT
User Agent-ek • A UA-k működése egy hívásfelépítés során: Mobil Internet előadás BME-HIT
Végpont jellemzők • Napjaink végpontjai • Feldolgozási képességek • Grafikus megjelenítés (komolyabb fajta) • Adattárolási képesség (háttértár) • A SIP elősegíti a végpontok jobb kihasználását: • Két SIP UA közvetlenül is képes kommunikálni • A szolgáltatási információk explicit módon megtalálhatóak a SÍP fejlécben • A SIP egyszerűsége elősegít, hogy a végpontok is nyújthassanak szolgáltatásokat Mobil Internet előadás BME-HIT
Proxy szerverek • Két típusuk van: • Állapotmentes (stateless) szerver: ezek a szerverek csak egyszerűen továbbítják a SIP üzeneteket, de azok tartalmával nem törődnek. Az ilyen szerverek egyszerűek és ezért gyorsak is. Használhatóak szimplán hálózati terhelés elosztóknak, üzenet átfordítóknak és kisebb útválasztási (routing) feladatokat is elláthatnak Mobil Internet előadás BME-HIT
Proxy szerverek • Állapotot rögzítő (stateful) szerver: manapság ezek az elterjedtebbek. Működésük komplexebb, mint az állapot nélküli szervereké. A lényegük, hogy ha egy kérést kapnak, akkor azt ugyan továbbítják, de létrehoznak magukban egy „állapot”-ot, amit addig nem dobnak el, amíg válasz nem érkezett a felhívásra. Ezek hosszabb ideig is eltarthatnak (pl.: a „vonal” túlsó végén kicsöng a telefon, stb.) Segítségükkel megakadályozható, hogy egyes üzenetek kétszer legyenek elküldve valakinek, hiszen a szerver ellenőrizni tudja, hogy egy adott üzenetet megkapott-e a címzett. Meg tud olyant is oldani, hogyha egy kapcsolt személy nem veszi fel az otthoni számát, akkor a mobilját is megpróbálja, illetve felajánlja a hangpostán való üzenethagyás lehetőségét. Mobil Internet előadás BME-HIT
Proxy szerverek • A proxy-k a gyakorlatban: Mobil Internet előadás BME-HIT
REGISTRAR • Fontos, hogy tudjuk merre vannak a végpontok (személyek) • Kell egy olyan entitás amely kezeli a helyeket • Cím összerendelés: • maria@irodanet.hu: Maria felhasználó az irodanet.hu domainben (mindenki által ismert cím) • Bejelentkezés: maria@irodanet.hu maria@1.2.3.4:5060 • Lehet jelszóval védett is Mobil Internet előadás BME-HIT
REGISTRAR • A REGISTRAR működése: Mobil Internet előadás BME-HIT
Redirect szerver • A SIP képes átirányításra • Több hely egy névhez megadva: pl. telefon, mobiltelefon, otthoni telefon, hangposta • Mozgáskövetés • Az átirányítást egy szerver végzi • A hívó számára akár átlátszóan is működhet (beállítás kérdése) Mobil Internet előadás BME-HIT
Redirect szerver • A Redirect szerver működése: Mobil Internet előadás BME-HIT
A SIP címzése • SIP URL (Uniform Resource Locator) • Más néven: URI (UR Identifier) • felhasználó@hoszt • Példák: • sip:collins@home.net • sip:3344556789@telco.net • Nem véletlenül e-mailcím szerű! • Az URL kiegészítései: • sip:3344556789@telco.net;user=phone • sip:user:password@host:port;uri-parameters?headers Mobil Internet előadás BME-HIT
A SIP szintaxis áttekintése • Text-alapú • Nagyon hasonló a HTTP-hez • SIP üzenetek: • üzenet = kezdősor *üzenet-fejléc [üzenet-test] • kezdősor = kérés- | státusz- | válaszsor • A kéréssor mondja meg a kérés fajtáját • A válaszsor a nyugtát vagy a hibát adja meg a küldött kérésre Mobil Internet előadás BME-HIT
A SIP szintaxis áttekintése • Üzenet fejlécek: • Kiegészítő információk a kéréshez vagy válaszhoz • Pl.: • A küldő és a címzett címe • Újraküldés konfigurációjának fejléce • Tárgy fejléc • Üzenet test • Viszonyleírókat tartalmazhat: • A média formátuma • SDP, Session Description Protocol • Csak a két végpont használja Mobil Internet előadás BME-HIT
Üzenet fajták 1. Kérések (requests): • INVITE: Az egyik UA ilyen üzenetet küld egy másiknak a szerveren keresztül, ha fel kívánja venni vele a kapcsolatot, hívást kezdeményez, stb. • REGISTER: Amennyiben egy UA be kíván regisztrálni egy felhasználót egy szerveren, akkor ilyen üzenetet küld a szervernek az authentikáló adatokkal együtt, amennyiben azok szükségesek. • MESSAGE: Szöveges üzenet küldése egy másik UA-nek. Amennyiben a UA támogatja, akkor lehetséges írott szöveges csevegés is ilyen üzenetekkel. Mobil Internet előadás BME-HIT
Üzenet fajták • SUBSCRIBE: A szerveren bekövetkező egyes eseményekről lehet értesítést kérni a segítségével. Ha bekövetkezik az esemény, akkor a szerver egy NOTIFY üzenetet küld a kérőnek. • ACK: Nyugtázó üzenet, az INVITE üzenet kiváltotta 3 lépéses handshake befejező üzenete. • BYE: Tetszőleges média átvitelének befejezését jelző üzenet. • CANCEL: „Mégse” üzenet, olyankor használatos, ha a hívott még nem reagált a hívásra, de a hívó meg akarja szakítani a kapcsolatot. Mobil Internet előadás BME-HIT
Üzenet fajták 2. Válaszok: • 1xx kódok: Informáló válasz: a kérést vették, de még várni kell a következő lépésre, pl. kicsöng a telefon, de még nem vették fel (180) • 2xx kódok: Siker kódok: az akciót vették, megértették és végrehajtották • 3xx kódok: „átirányítás”: további akciók szükségesek a kérés végrehajtásához • 4xx kódok: Kliensoldali hiba • 5xx kódok: Szerveroldali hiba • 6xx kódok: Globális hiba: egyetlen szerver sem tudja végrehajtani a kérést. Mobil Internet előadás BME-HIT
Példák válaszokra • 180 Ringing • 181 Call Is Being Forwarded • 182 Queued • 183 Session Progress • 200 OK • 300 Multiple Choices • 301 Moved Permanently • 302 Moved Temporarily • 305 Use Proxy • 380 Alternative Service Mobil Internet előadás BME-HIT
Tipikus szcenáriók - Regisztráció • Bejelentkezés a REGISTRAR-on • Két eset: • Nyílt szerver: nem kell azonosítás • Biztonságos szerver: azonosítás szükséges • Idővel elévülnek az információk, ezért periodikusan frissíteni kell őket Mobil Internet előadás BME-HIT
Mobil Internet előadás BME-HIT
Hívásfelépítés menete Végeredmény: P2P adatfolyam a két fél között (hang, videó, stb.) Tipikus szcenáriók –Kapcsolat felépítés Mobil Internet előadás BME-HIT
Mobil Internet előadás BME-HIT
Tipikus szcenáriók –Kapcsolat bontása • Hívás befejezése közvetlen módon • A proxy nem vesz részt benne Mobil Internet előadás BME-HIT
Mobil Internet előadás BME-HIT
Tipikus szcenáriók –Kapcsolat bontása Record Route-al • RR mechanizmus pl. számlázáshoz vagy statisztikák gyűjtéséhez jó • A hívás befejezését is a proxy át kell küldeni Mobil Internet előadás BME-HIT
Tipikus szcenáriók –Feliratkozás értesítésre • Lehetőség van feliratkozni bizonyos eseményekre • A esemény bekövetkeztekor a rendszer értesítést küld • Pl. valaki online állapotba lép • Mint a REGISTRAR bejegyzései, ezen feliratokzások is idővel elévülnek, így frissíteni kell őket Mobil Internet előadás BME-HIT
Tipikus szcenáriók –Csevegés, szöveges üzenetek • A SIP-el lehetőség van szöveges üzenetek küldésére is Mobil Internet előadás BME-HIT
SIP a gyakorlatban • VoIP • PSTN használata • Jelenléti információk (presence) • Átirányítás • Csevegés • Konferencia hívások (audio, video, white board) • Média folyamok szabályzása Mobil Internet előadás BME-HIT
Hívásfelépítés • E-mailcím szerű azonosító: <sip:alice@home.com> • Alice telefonja beregisztrál a home.com domainbe REGISTER home.com SIP/2.0 To: sip:alice@home.com Contact: sip:alice@m2.home.com … office.com Registrar alice m2.home.com bob home.com alice@home.com => alice@m2.home.com Mobil Internet előadás BME-HIT
Hívásfelépítés • E-mailcím szerű azonosító : <sip:alice@home.com> • Alice telefonja beregisztrál a home.com domainbe • Bob tárcsázzaaz alice@home.com címet; a telefon DNShez fordul office.com alice DNS lookup for sip.udp.home.com Resolve to pc4.home.com pc4.home.com m2.home.com bob home.com Mobil Internet előadás BME-HIT
Hívásfelépítés • E-mailcím szerű azonosító : <sip:alice@home.com> • Alice telefonja beregisztrál a home.com domainbe • Bob tárcsázzaaz alice@home.com címet; a telefon DNShez fordul • A telefon INVITE-t küld (UAC) INVITE sip:alice@home.com … To: sip:alice@home.com From: “Bob” <sip:bob@office.com> … c=IN IP4 128.59.19.60 m=audio 8000 RTP/AVP 0 5 8 office.com alice pc4.home.com m2.home.com bob home.com User agent client Mobil Internet előadás BME-HIT
Hívásfelépítés • A telefon INVITE-t küld (UAC) • A proxy továbbítja kérést INVITE sip:alice@m2.home.com … To: sip:alice@home.com From: “Bob” <sip:bob@office.com> … office.com alice pc4.home.com m2.home.com bob home.com Proxy Mobil Internet előadás BME-HIT
Hívásfelépítés • A telefon INVITE-t küld (UAC) • A proxy továbbítja kérést • Alice telefonja kicsöng (UAS) SIP/2.0 180 Ringing office.com alice pc4.home.com m2.home.com bob home.com Proxy User agent server Mobil Internet előadás BME-HIT
Hívásfelépítés • A telefon INVITE-t küld (UAC) • A proxy továbbítja kérést • Alice telefonja kicsöng (UAS) • Amikor Alice felveszi, a hívás létrejön ésBob telefonja küld egy ACK üzenetet, ezzel elindítva az adatforgalmat SIP/2.0 200 OK … c=IN IP4 135.180.144.32 m=audio 9000 RTP/AVP 0 8 office.com alice pc4.home.com m2.home.com bob home.com Mobil Internet előadás BME-HIT
Hívásfelépítés • Kódolt audio csomagok haladnak át a hálózaton RTP-t használva office.com alice bob home.com Mobil Internet előadás BME-HIT
Hívásfelépítés • Kódolt audio csomagok haladnak át a hálózaton RTP-t használva • Amikor valamelyik fél leteszi a telefont a csomagforgalom abbamarad és egy BYE üzenet jelzni a viszony zárását office.com alice BYE sip:bob@office.com bob home.com Mobil Internet előadás BME-HIT
Alice (9) (8) (10) (13) (7) (6) (6) (5) (4) (3) (12) (6) (11) (2) Bob Komplex példa (1) Mobil Internet előadás BME-HIT
PSTN együttműködés sip:bob@home.com +1 212 9397063 • Audio átkódolása (PCMU/PCMA) • Jelzések átkódolása (PRI/T1,ISUP) • Jelzések átfedése • A SIP fejlett szolgáltatásai elvesznek PSTN használatakor • Azonosítók átfordítása (URI, Telefonszám) Telephone network Telephone subscriber SIP/PSTN gateway SIP server IP endpoint Mobil Internet előadás BME-HIT
PSTN-ről IP-re • A gateway ismeri a SIP szervert • <sip:7063@conductor.cs.columbia.edu;user=phone> • Folyamat: • DNS • +1 212 9397042 => 2.4.0.7.9.3.9.2.1.2.1.e164.arpa => sip:hgs@cs.columbia.edu • Csak nagyjából statikus címek esetén működik jól Mobil Internet előadás BME-HIT
IP-ről PSTN-re • Statikus megfeleltetés • 1-212-939xxxx => xxxx@itgw1.cs.columbia.edu • GW információk dinamikusak: • Egymást átfedő hálózatok • Multiple providers • Terhelés elosztás • Konfiguráció: +1 @service.mci.com at 4¢/min +1212 @nyc.gw.com at 1¢/min +1212939 @itgw1.columbia.edu free Mobil Internet előadás BME-HIT