3G UMTS, IMS, SIP Kanizsai Zoltán kanizsai@hit.bme.hu
Tartalom 3G UMTS hálózatok IP Multimedia Subsystem (IMS) Session Initiation Protocol (SIP) Szoftver megoldások: OpenSIPS és elődei OpenIMS 2010.04.27. 3G UMTS, IMS, SIP 2
3G UMTS és IMS áttekintés I. A 3G mobil hálózatok legnagyobb innovációi: Levegő interfész: Wideband Code Division Multiple Access (WCDMA) all-ip paradigma a maghálózatban Hatások: Szignifikánsan nagyobb sávszélesség mint GSM, GPRS, EDGE esetén Központosított szolgáltatási lehetőség A 3rd Generation Partnership Project (3GPP) 3G UMTS architektura három fő domaint definiál: Circuit switched (CS), Packet switched (PS) és Registration domain PS domain fő elemei: RNC: radiós erőforrások menedzsmentje az optimális teljesítményhez SGSN: útválasztásért és mobilitás menedzsmentért felelős, valamint a felhasználó azonosításban is szerepet játszik GGSN: gateway szerepét tölti be külső IPv4/IPv6 hálózatok felé 2010.04.27. 3G UMTS, IMS, SIP 3
3G UMTS és IMS áttekintés II. IP Multimedia Subsystem (IMS): Mindenre kiterjedő, szolgáltatás nyújtó keretrendszer, amely IP multimédiás szolgáltatásokat nyújt a mobil felhasználóknak (rugalmas multimédia viszony menedzsment, média feldolgozás és vezérlés) Elemi és integrált része a 3G UMTS maghálózatnak Tovább is fejlődött: Új Generációs Hálózatok fix és mobil eszközök konvergeciáját megvalósító új szabványának fontos eleme: Evolved Packet System (EPS) Az IMS elemei: Home Subscriber Server (HSS) Három Call Service Control Function: Serving-CSCF: UE viszonyvezérlő az otthoni hálózatban (mint a GGSN) Proxy-CSCF: UE helyi csatlakozási pontja az éppen meglátogatott hálózatban (mint an SGSN) Interrogating-CSCF: kiépült viszonyok útválasztását végzi több S- CSCF esetén 2010.04.27. 3G UMTS, IMS, SIP 4
3G UMTS és IMS áttekintés III. 2010.04.27. 3G UMTS, IMS, SIP 5
SIP 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 2010.04.27. 3G UMTS, IMS, SIP 6
SIP 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 üzenet formá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 2010.04.27. 3G UMTS, IMS, SIP 7
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ú! 2010.04.27. 3G UMTS, IMS, SIP 8
A SIP, A SIPnem 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 2010.04.27. 3G UMTS, IMS, SIP 9
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 2010.04.27. 3G UMTS, IMS, SIP 10
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ési architektú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 2010.04.27. 3G UMTS, IMS, SIP 11
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 2010.04.27. 3G UMTS, IMS, SIP 12
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 2010.04.27. 3G UMTS, IMS, SIP 13
A SIP hálózat elemei 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 2010.04.27. 3G UMTS, IMS, SIP 14
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 2010.04.27. 3G UMTS, IMS, SIP 15
User Agent-ek A UA-k működése egy hívásfelépítés során: 2010.04.27. 3G UMTS, IMS, SIP 16
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 2010.04.27. 3G UMTS, IMS, SIP 17
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 2010.04.27. 3G UMTS, IMS, SIP 18
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. 2010.04.27. 3G UMTS, IMS, SIP 19
Proxy szerverek A proxy-k a gyakorlatban: 2010.04.27. 3G UMTS, IMS, SIP 20
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 2010.04.27. 3G UMTS, IMS, SIP 21
REGISTRAR A REGISTRAR működése: 2010.04.27. 3G UMTS, IMS, SIP 22
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) 2010.04.27. 3G UMTS, IMS, SIP 23
Redirect szerver A Redirect szerver működése: 2010.04.27. 3G UMTS, IMS, SIP 24
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 2010.04.27. 3G UMTS, IMS, SIP 25
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 2010.04.27. 3G UMTS, IMS, SIP 26
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 2010.04.27. 3G UMTS, IMS, SIP 27
Ü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. 2010.04.27. 3G UMTS, IMS, SIP 28
Ü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. 2010.04.27. 3G UMTS, IMS, SIP 29
Ü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. 2010.04.27. 3G UMTS, IMS, SIP 30
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 2010.04.27. 3G UMTS, IMS, SIP 31
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 2010.04.27. 3G UMTS, IMS, SIP 32
2010.04.27. 3G UMTS, IMS, SIP 33
Tipikus szcenáriók Kapcsolat felépítés Hívásfelépítés menete Végeredmény: P2P adatfolyam a két fél között (hang, videó, stb.) 2010.04.27. 3G UMTS, IMS, SIP 34
2010.04.27. 3G UMTS, IMS, SIP 35
Tipikus szcenáriók Kapcsolat bontása Hívás befejezése közvetlen módon A proxy nem vesz részt benne 2010.04.27. 3G UMTS, IMS, SIP 36
2010.04.27. 3G UMTS, IMS, SIP 37
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 2010.04.27. 3G UMTS, IMS, SIP 38
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 2010.04.27. 3G UMTS, IMS, SIP 39
Tipikus szcenáriók Csevegés, szöveges üzenetek A SIP-el lehetőség van szöveges üzenetek küldésére is 2010.04.27. 3G UMTS, IMS, SIP 40
OpenSIPS és elődei SIP Express Router (SER): Fraunhofer 2001, iptel.org OpenSER: 2004, két fejlődési útvonal! Iptel.org-ot megvásárolja a TEKELEC cég (2005) 2008-ban az OpenSER-t átnevezik Kamailio-ra (Hawaiiul beszélgetést jelent) A fejlesztők összekülönbözése miatt a projekt két ágra szakad: OpenSER és OpenSIPS http://www.opensips.org Telepítése: http://www.opensips.org/resources/install Nyílt forráskódú, szabványos SERWeb (régen) 2010.04.27. 3G UMTS, IMS, SIP 41
OpenIMS IP Multimedia Subsystem szoftveres megvalósítása A Fraunhofer fejleszti Nyílt forráskódú, szabadon fejleszthető 3GPP szabványos működést biztosít Alap kiépítésben a HSS és a CSCF-eket tartalmazza, de bővíthető multimédia kiszolgálókkal, média gatewayekkel Honlap: http://openimscore.org Telepítés: http://openimscore.org/installation_guide Saját IMS klienst is kidobtak: Monster IMS Client http://www.monster-the-client.org 2010.04.27. 3G UMTS, IMS, SIP 42
Köszönöm a figyelmet! Kérdések? 2010.04.27. 3G UMTS, IMS, SIP 43