Žilinská univerzita > Fakulta riadenia a informatiky > Katedra informačných sietí

IP Multimedia Subsystem test

Inštalácia IMS

Požiadavky

Prístup k sieti:

  • verejná IP – chceme sa vyhnúť problémov s NAT-om
  • prístup ku konfigurácií DNS servera

Softvérové požiadavky:

  • akákoľvek súčasná distribúcia Linuxu
  • cca 100 MB diskového priestoru
  • GCC 3/4, make, JDK 5
  • Programy: bison, flex, ant
  • Knižnice: libxml2 (> 2,6), libmysql
  • MySQL nainštalované a spustené (alebo iné DBMS)
  • Linuxové jadro 2.6 a IPSec-tools – ak chceme používať IPSec zabezpečenia
  • Openssl (voliteľné, ak chcete povoliť TLS zabezpečenia)
  • DNS server

Vyššie uvedené požiadavky musia byť splnené pred začatím samotnej inštalácie OpenIMS.

Získanie zdrojovéch kódov

Zdrojové kódy je možné získať na http://svn.berlios.de/svnroot/repos/openimscore.
Z adresára CSCFs je potrebný ser_ims/trunk, z HSS zasa FHoSS/trunk.
Zdrojové kódy sú predkonfigurované na prácu z prednastaveného adresára /opt/OpenIMSCore, preto je potrebné najprv vytvoriť a ďalej pracovať len v tejto zložke:

mkdir /opt/OpenIMSCore
cd /opt/OpenIMSCore

V nej sa vytví adresár ser_ims a spustí sa snv checkout pre ser_ims príkazmi:

mkdir mkdir ser_ims
svn checkout http://svn.berlios.de/svnroot/repos/openimscore/ser_ims/trunk ser_ims
cd ..

Následne sa vytvorí adresár FHoSS a urobí sa opäť svn checkout pre HSS nasledovne:

mkdir FHoSS
svn checkout http://svn.berlios.de/svnroot/repos/openimscore/FHoSS/trunk FhoSS
cd ..

V prípade nutnosti uloženia súborov do iných adresárov je potrebné upravovať príslušné konfiguračné súbory.

Kompilácia

ser_ims

Kompilácia ser_ims sa vykoná spustením príkazov:

cd ser_ims
make install-libs all
cd .. 

V prípade zlyhania kompilácie zrejme chýbajú niektoré z vyššie spomenutých prerekvizít, ktoré treba doinštalovať a pokúsiť sa spustiť kompiláciu znovu.

FHoSS

Je potrebná verzia JDK 5 a vyššie.
Overenie verzie JDK je možné spustením príkazu:

java -version

Príkaz by mal vypísať pre JDK 5 napríklad:

java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-b03)
Java HotSpot(TM) Client VM (build 1.5.0_07-b03, mixed mode)

V prípade použita OpenJDK 1.6 napríklad:

java version "1.6.0_0"
OpenJDK Runtime Environment (IcedTea6 1.5pre-r059f6ba0c7dd) (ArchLinux-1.5_hg20090429-1-i686)
OpenJDK Server VM (build 14.0-b10, mixed mode)

Samotná kompilácia inštalácia sa zaháji:

cd FHoSS
ant compile
ant deploy
cd ..

Konfigurácia ostatných programov na serveri

Prednastavené sú nasledujúce parametre:

  • Doména - "open-ims.test"
  • MySQL - prístupové práva dovoľujú len lokálny prístup

Je odporúčané, aby ste sa vyskúšalo fungovanie najprv s defaultnými nastaveniami a až potom realizovali ďalšie zmeny akými sú:

  • Nahradenie 127.0.0.1 vašou IP adresou
  • Nahradenie doménu (open-ims.test) vlastnou doménou
  • Zmenenie heslo do databázy

(Na tieto operácie slúži konfiguračný súbor ser_ims/cfg/configurator.sh)

DNS

Prednastavené nastavenia DNS zóny je možné nájsť v sser_ims/cfg/open-ims.dnszone
Podľa tohto nastavenia je nutné upraviť named.conf. (Je takisto vhodné pridať aj reverzné DNS záznamy.)
Reštartovať DNS server.
Otestovať, či záznamy fungujú. (Nezabudnúť, aby /etc/resolv.conf ukazoval na váš nový DNS server!)

MySQL

Import SQL skriptov sa vykoná príkazmi:

mysql -h localhost -u root -p < ser_ims/cfg/icscf.sql
mysql -h localhost -u root -p < FHoSS/scripts/hss_db.sql
mysql -h localhost -u root -p < FHoSS/scripts/userdata.sql

Je potrebné overenie si funkčnosť databázy.

Konfigurácia IMS Core

Podmienkou je funkčnosť MySQL databázy a DNS zóny.

CSCFs

Skopírovať nasledovné súbory do adresára /opt/OpenIMSCore alebo na iné miesto:
pcscf.cfg, pcscf.sh, icscf.cfg, icscf.xml, icscf.sh, scscf.cfg, scscf.xml, scscf.sh
Napríklad príkazmi:

cp ser_ims/cfg/*.cfg .
cp ser_ims/cfg/*.xml .
cp ser_ims/cfg/*.sh .

FHoSS
Skontrolovať konfiguračné súbory v adresári FhoSS.
Upraviť konfiguračné súbory podľa vlastných nastavení. (Nezabudnúť na aktualizáciu DNS zóny a reštart servera.)

Spustenie komponentov

CSCFs
Realizované spustením skriptov: pcscf.sh, icscf.sh a scscf.sh
Všetky skripty by mali bežať paralelne.
V predvolenom nastavení sa zobrazí log s obsahom servera Registrar a jeho pripojenie na DIAMETER.

FHoSS
Spustiť FHoSS startup.sh
nespúšťať FHoSS/deploy/startup.sh, ale:

cd FHoSS/deploy/; ./startup.sh

alebo rovno skript fhoss.sh.
Ak predchádzajúci krok zlyhá, skontrolovať, či je cesta k Jave knižniciam v premennej prostredia JAVA_HOME správne nastavená (V Debiane treba premennú JAVA_HOME nastaviť na /usr.)
Overtiť funkčnosť webového rozhrania na adrese http://localhost:8080/.
Skontrolovať, či sú všetci účastníci navzájom poprepájaní, čo je možné vidieť v konzole FHoSS alebo v I/S-CSCF.

Konfigurácia účastníkov

FHoSS
V predvolenom nastavení FHoSS poskytuje vzorku dvoch užívateľov (používateľských kont):
alice@open-ims.test
bob@open-ims.test

Vytvorenie nového konta.

  • Vytvorenie účtu
  • Vytvorenie súkromnej identity
  • Vytvorenie verejnej identity
  • Prepojenie identít a konta

SIP-to-IMS Gateway

SIP-to-IMS Gateway je už zastarané a bolo vyradené z projektu. Teba preštudovať iné materiály o tom, ako sa dá použiť Open IMS Core so SIP klientom podporujúcim iba MD5 autentifikáciu.

Test

  • Pred týmto krokom by už všetko malo byť nainštalované a nakonfigurované.
  • Registrácia využíva všetky komponenty a preto, ak prebehne v poriadku, tak by malo všetko fungovať.
  • Pri teste je možné sledovať dátové toky jednotlivých komponentov. Napríklad použitím sniffera wireshark je možné sledovať:
  • Porty 4060, 5060 a 6060 pre SIP prevádzku
  • Porty 3868, 3869 a 3870 pre DIAMETER prevádzku

Prostredie inštalácie

Keďže sme nepotrebovali merať výkonnosť softvéru ani hardvéru, nekládli sme žiadne požiadavky na výkon počítačov. Vďaka tomu sme mohli využiť výhody virtualizácie a nainštalovať softvér OpenIMSCore na virtuálne stroje v rámci jedného fyzického počítača. Logické zapojenie vyzeralo nasledovne:

Softvérový most br0 bol v skutočnosti súčasťou fyzického počítača foxy, na ktorom boli všetky virtuálne stroje nainštalované a prepojené.

Počítač foxy je fyzický počítač s operačným systémom Ubuntu 8.04, virtuálne stroje mayor.localdomain, open-ims.test a open-ims2.test majú nainštalovaný operačný systém Debian 4.0. Keďže ich inštalácia bola vykonaná za účelom inštalácie OpenIMSCore, ide o čistú inštaláciu bez zbytočného softvéru.

Všetky prvky sa nachádzajú v jednej IP sieti, čím sme eliminovali možné problémy vzniknuté v dôsledku neúplnej konektivity jednotlivých uzlov (preklad adries, firewally).

Všetky počítače v zapojení používali na resolvovanie DNS dotazov DNS server na stroji mayor.localdomain. Osobitný DNS server bol použitý kvôli tomu, aby obe inštancie OpenIMSCore mali rovnocenný prístup k DNS záznamom druhej strany. Vzorová DNS zóna pre štandardnú inštaláciu je priložená k zdrojovým kódom OpenIMSCore, no pre používanie je potrebné ju upraviť podľa reálneho prostredia. Použité DNS zóny sú v prílohe.

Na počítači open-ims.test bola inštalácia OpenIMSCore vykonaná vo východzích nastaveniach, na druhom počítači open-ims2.test bola zmenená doména služby. V oboch prípadoch bolo nutné zmeniť IP adresu (ktorá je štandardne nastavená na adresu localhostu) na IP adresu konkrétneho počítača.

Na konfiguráciu konfiguračných skriptov je pri zdrojových kódoch priložený skript configurator.sh, ktorý nahradí východziu doménu a IP adresu v pôvodných konfiguračných súboroch novými hodnotami. Problémom môže byť, že upravuje len súbory v aktuálnom adresári (prípadne súbory zadané užívateľom), a to nie je vždy dostatočné (neupraví napríklad sql skripty so vzorovými dátami). Ďalšou nevýhodou skriptu je, že ide len on nahradzovanie textových reťazcov, a teda na už zmenené súbory nefunguje. V takom prípade je nutné buď upraviť tento skript, aby nahradzoval nové hodnoty, alebo vždy pracovať na východzích verziách konfiguračných súborov.

Pre samotnú kompiláciu zdrojových kódov OpenIMSCore je potrebných niekoľko balíčkov, ktoré nie sú vo východzej inštalácii Debianu. Ide hlavne o vývojárske balíčky niektorých knižníc a nástroje na kompiláciu softvéru. Zoznam balíčkov, ktoré boli nainštalované pri kompilácii a inštalácii sú v prílohe.

Problémy pri inštalácii

  • Pri konfigurácii OpenIMSCore nie je žiadúce použiť adresu 0.0.0.0 pri špecifikovaní adresy, na ktorej niektorá služba počúva. Táto adresa sa bežne používa, pokiaľ chceme, aby služba reagovala na všetky požiadavky bez ohľadu na cieľovú adresu a sieťové rozhranie, z ktorého požiadavka prišla (toto je užitočné napríklad pri pripojení na viacero sietí). Problém v tomto prípade spôsobuje fakt, že táto adresa sa vkladá do hlavičiek SIP správ, ktoré daný server odosiela alebo preposiela. Následne tieto hlavičky nemusia byť správne spracované (server, ktorý chce poslať odpoveď na SIP požiadavku, snaží sa poslať odpoveď na adresu v hlavičke, no na adresu 0.0.0.0 sa to nedá). Túto adresu je teda nutné určiť ako konkrétnu IP adresu pridelenú na konkrétne sieťové rozhranie.
  • Celý IMS je silne závislý na korektnej konfigurácii DNS záznamov: pred nadviazaním spojenia a počas neho sa vykonáva viacero DNS dotazov, konkrétne napríklad:
    • dotaz na SRV (_sip aj _sip._udp) pre doménu volaného účastníka
    • dotaz na A záznam získanej odpovede
    • dotaz na reverzný PTR záznam získanej IP adresy
  • Pokiaľ niektorý záznam nie je prítomný alebo správny, vznikajú pri nadväzovaní spojení prestoje pri čakaní na vypršanie požiadavky alebo na správnu odpoveď. Pre dobré fungovanie je nutné vytvoriť okrem záznamov poskytnutých so zdrojovými kódmi minimálne reverzné záznamy pre použité IP adresy.

Spustenie

Všetky súčasti IMS je nutné spustiť paralelne. Slúžia na to poskytnuté skripty pcscf.sh, icscf.sh, scscf.sh a fhoss.sh, ktoré spustia konkrétnu službu (skripty fungujú len keď je OpenIMSCore nainštalované vo východzom adresári /opt/OpenIMSCore). Užívateľ, ktorý spúšťa službu FHoSS, musí mať správne nastavenú premennú prostredia JAVA_HOME, ako je nižšie uvedené. V tomto prípade je nutné nastaviť jej hodnotu na /usr. Aby to nebolo nutné nastavovať vždy manuálne, odporúčame do ~/.bashrc skriptu daného užívateľa pridať na koniec riadok:

export JAVA_HOME=/usr

Po spustení všetkých služieb je IMS funkčné a pripravené na testovanie.

Testovanie

Pri testovaní boli vykonané tri scenáre:

  1. Registrácia používateľa na svoj IMS.
  2. Volanie dvoch účastníkov v rámci jedného IMS.
  3. Volanie dvoch účastníkov v rámci dvoch inštancií IMS.

Registrácia Alice

Po registrácii na server sa začína neprehľadné preposielanie správ SUBSCRIBE a PUBLISH medzi servermi *-CSCF a po zaregistrovaní sa ďalšieho užívateľa aj jemu. Veľmi zaujímavé bolo, že server (napriek tomu, že bežal) sa snažil posielať tie presence správy aj na server, ktorý neexistoval/nebol spustený, čím sa generovala správa ICMP - Destination Unrechable (Port unreachable).

  1. Alica posiela REGISTER správu na Proxy CSCF server domény open-ims.test
  2. P-CSCF preposiela REGISTER správu na Interogation CSCF a pridá do hlavičky Via svoju adresu
  3. I-CSCF začne overovanie užívateľa na autentifikačnom serveri Diameter so správou AuthroizationRequest
  4. Diameter pripraví select (prípadne viac) do databázy a spustí ho/ich, na základe nich potom zisťuje, či boli zadané údaje správne
  5. Diameter po zbehnutí všetkých potrebných dotazov pošle serveru I-CSCF správu AuthorizationAnswer
  6. I-SCSF prepošle REGISTER na Serving CSCF, ktorý znovu požiada Diameter o overenie údajov, tento krát so správou Multimedia-AuthenticationRequest
  7. Diameter odpovie správou Multimedia-AuthenticationAnswer
  8. S-CSCF posiela správu 401 Unauthorized cez I-CSCF a P-CSCF až na Alicinho UA s výzvou WWW-Authenticate a ďalšími informáciami potrebnými na prihlásenie
  9. Alica znovu posiela REGISTER na svoj Proxy už aj s potrebnými údajmi
  10. Znovu prebieha rovnaká procedúra ako pri prvom pokuse o registráciu a správa sa prepošle na I-CSCF, ktorý znovu požiada Diameter o overenie užívateľa pomocou správ User-AuthenticationRequest a User-AuthenticationAnswer
  11. Po overení týchto údajov je preposlaný REGISTER na S-CSCF, ktorý požiada Diameter o pridelenie služieb (HSS) pomocou správ Server-AssignementRequest a Server-AssignementAnswer
  12. Po úspešnom pridelení sa vygeneruje správa 200 OK, ktorá je posielaná v opačnom poradí než správa REGISTER vďaka Via hlavičke v správe. Takto prejde správa z S-CSCF na I-CSCF a P-CSCF, ktorý následne prepošle správu Alici
  13. Po tejto procedúre je Alica úspešne registrovaná v doméne a môže uskutočňovať a prijímať hovory.

Hovor medzi Alicou a Bobom v jednej IMS doméne

  1. Alica posiela správu INVITE na svoj P-CSCF s popisom možných kodekov, ktoré je schopný jej klient spracovať
  2. Proxy odošle Alici správu 100 Trying a prepošle túto správu na S-CSCF server
  3. S-SCSF odošle INVITE na proxy server Boba, ktorý odpovie Serving serveru správou 100 Trying
  4. Bobov proxy server prepošle INVITE na Bobove koncové zariadenie, ktoré odpovie správami 100 Trying, 101 Dialog Establishmet a 183 Session Progress na svoj proxy server
  5. Bobov proxy server po prijatí tých troch informačných správ ich prepošle na Serving server, ktorý ich ďalej prepošle na proxy server Alice
  6. Po prijatí správ Aliciným proxy serverom ich, ten pošle na Alicino koncové zariadenie
  7. Alica ďalej vygeneruje PRACK správu, ktorá postupne prejde cez Alicin proxy na serving server a ďalej na bobov proxy server, ktorý túto spravu doručí Bobovi.
  8. Ten odpovie na danú správu správou 200 OK, ktorá prejde danou postupnosťou serverov v opačnom poradí až k Alicinmu UA
  9. Alicin AU odpovie Bobovi správou ACK
  10. Po týchto správach sa nadviaže spojenie pre RTP pakety a začne prebiehať hovor.
  11. Po zložení hovoru Alicou sa na jej UA vygeneruje správa BYE, ktorá prejde cez všetky dané servery a po doručení Bobovi jej prijatie Bob potvrdí správou 200 OK a hovor sa ukončí.

Popis hovoru Alici a Boba v rozličných IMS doménach

(ako súbor alice2bob.html v prílohe)

  1. alice@open-ims2.test chce nadviazať rozhovor s bob@open-ims.test zaslaním SIP požiadavky na P-CSCF svojej domény open-ims2.test.
  2. Alicin P-CSCF zasiela Alici SIP odpoveď 100 Trying a preposiela INVITE správu rovno Alicinmu S-CSCF.
  3. Alicine S-CSCF zasiela Alici SIP odpoveď 100 Trying a preposiela INVITE správu rovno Bobovmu I-CSCF.
  4. Bobov I-CSCF, nakoľko sa jedná o hraničný/koncový (edge) server, zašle DIAMETER serveru (HSS) správu typu Location-Info-Request (LIR) na zistenie adresy SIP servera obsluhujúceho prijímateľa správy. Po obdržaní jeho adresy z DIAMETER odpovede Location-Info-Answer (LIA) je na ňu preposlanú daný INVITE. LIR správy používajú koncové SIP servery všade tam, kde treba zistiť obsluhujúce servery nielen pre INVITE požiadavky, ale celkovo pre všetky neREGISTER požiadavky t. j. aj pre SUBSCRIBE, OPTIONS, atď. HSS následne odpovie DIAMETER správou typu Location-Info-Answer (LIA) obsahujúcou adresu obslužného S-CSCF servera Bobovej domény, na ktorého adresu je preposlaná INVITE požiadavka. Okrem toho je zasa Alicinmu S-CSCF zasielaná SIP odpoveď 100 Trying.
  5. Bobove S-CSCF zašle I-CSCF SIP odpoveď 100 Trying a INVITE správu prepošle rovno Bobovmu P-CSCF.
  6. Bobove P-CSCF zašle S-CSCF SIP odpoveď 100 Trying a INVITE správu prepošle rovno Bobovi.
  7. Bob zašle P-CSCF SIP odpoveď 100 Trying a naspať Alici SIP správy 101 Dialog Establishement a 183 Session Progress, ktorá prechádza v opačnom poradí cez všetky SIP servery, cez ktoré prišla INVITE požiadavka (Bob -> Bobove P-CSCF -> Bobove S-CSCF -> Bobove I-CSCF -> Alicine S-CSCF -> Alicine P-CSCF -> Alica).
  8. Alica po obdržaní 183 Session Progress odpovedá Bobovi zaslaním SIP požiadavky PRACK, ktorá už obsahuje vyplnené Route hlavičky zo SIP odpovede 183 a prechádza tak od Alice cez Alicino P-CSCF, Alicino S-CSCF, Bobove S-CSCF, Bobov P-CSCF až k Bobovi.
  9. Bob na PRACK odpovedá potvrdzujúcou SIP odpoveďou 200 OK, ktorá ide naspať k Alici po tej iste ceste ako išla PRACK požiadavka.
  10. Alica po obdržaní potvrdenia na PRACK následne zasiela SIP požiadavku UPDATE, ktorá ide po tej istej ceste, ako predošlá PRACK požiadavka.
  11. Bob potvrdzuje prijatie UPDATE správy zaslaním odpovede 200 OK, správa putuje opäť po tej istej ceste spať k Alici. Podobne zasiela Alici i SIP odpoveď 180 Ringing.
  12. Alica ešte zašle Bobovi PRACK požiadavku a po jej úspešnom potvrdení Bobovou 200 OK mu zasiala finálnu odpoveď 200 OK.
  13. Hovor ukončuje Bob zaslaním SIP požiadavky BYE Alici, ktorá odpovedá 200 OK. Správy idú tou istou cesto ako i PRACK/UPDATE/ACK.

IMS Aplikácie

IMS poskytuje štandardizovane prostredie pre operátorov na manažovanie multimediálnych spojení postavených na IP protokole. Táto platforma je vhodným prostredím aj pre rôzne doplnkové aplikácie, ktoré bežia na aplikačných serveroch. Tieto aplikácie môžeme rozdeliť do dvoch prelínajúcich sa skupín:

  • aplikácie pre komerčné použitie,
  • aplikácie pre domáce použitie.

V nasledujúcej časti uvádzame krátky popis jednotlivých aplikácii.

Aplikácie pre komerčné použitie

Virtual PBX - Poskytuje funkcie PBX ústredne cez rôzne siete medzi rôznymi zariadeniami.

Group Hunt - Prichádzajúci hovor smeruje postupne rôznym užívateľom podľa prednastaveného zoznamu (najprv šéf, potom manager, následne sekretárka...).

Personal Assistant - správa zobrazovania presence na základe pravidiel a udalostí v kalendári (počas meetingu som pre všetkých bussy, pre šéfa však on-line).

Inbound Call Screening - Zaznamenáva informácie o volajúcom účastníkovi (volajúceho číslo, presence,..) pre ďalšie použitie.

Multi Channel Tele Voting - Interaktívna služba, ktorá umožňuje v reálnom čase odpovedať pomocou akéhokoľvek zariadenia.

Field Force Efficiency - Okamžité informácie o pozícií integrované do managementu predajnej siete na optimalizáciu doby prepravy medzi uzlami a prepravnými vzdialenosťami.

Single Virtual Directory - Prístup ku kontaktom (osobným/pracovným) z ktoréhokoľvek zariadenia. Umožňuje prístup aj k verejným účastníckym zoznamom.

Find-me-follow-me - Umožňuje smerovať prichádzajúce volania ku spolupracovníkom v blízkom okolí (kancelária, oddelenie).

Click To Conference - Spustenie konferencie s prednastaveným zoznamom jedným kliknutím. Umožňuje mať vytvorených viacej zoznamov účastníkov konferencií (účastníci nemusia byť v jednej sieti / nemusia používať rovnaké zariadenia).

Intelligent Call Centre Routing - Umožňuje komplexný management smerovania hovorov založený na čase, zaťažení siete, zoznamoch smerovaní, kritických konfiguráciách (smerovania v prípade katastrofy).

Aplikácie pre domáce použitie

Multiplayer Gaming - Možnosť hrať on-line hry medzi viacerými účastníkmi (aj na rôzných zariadeniach).

Video Sharing - Integrácia video záznamov do hlasového hovoru, umožňuje obom stranám pozerať a komentovať spoločné video.

Location Based Profile Match - Užívateľ si vyplní profil a zároveň aj požiadavky na profil ďalšieho účastníka. Spojenia sú vytvárané systémom na základe zhody profilov a požiadaviek a daný užívatelia sa môžu vzájomne pridať.

Friends And Family Tracking - Umožňuje preddefinovanému zoznamu užívateľov (rodina, priatelia) vidieť aktuálnu pozíciu (práca, doma, ..).

Aplikácie pre domáce aj komerčné použitie

Net Meeting - On-line aplikácia umožňujúca textovú komunikáciu, zdieľanie súborov, posielanie hlasových správ.

Security Monitoring - Prístup ku kamere (webkamere) z akéhokoľvek zariadenia za účalom monitorovania priestoru (vhodné aj ako detský monitor).

Single Number Dual Ringing - Umožňuje pomocou jedného čísla volať viaceré zariadenia (pevná linka, mobil). Volaný účastník sa môže rozhodnúť, ktoré zariadenie použije, prípadne si presmerovať hovor z jedného zariadenia na druhé.

One Device Two Number - Umožňuje používať dve rôzne čísla na jednom koncovom zariadení. Účastník tak môže mať osobitné číslo pre firemné a súkromné účely.

Unified Communication - Viacero čísel (pevné mobilné, VoIP, ID rôznych instant messengerov) zjednotených pod jednu logickú adresu za účelom poskytovania on-line komunikačných služieb.

Unified Messaging - Jedna schránka pre maily, hlasové odkazy a asynchrónne správy dostupná z rôznych zariadení.

Call Completion - Ak volajúci účastník nemôže zastihnúť volaného, aktivuje si túto službu. Tá v prípade dostupnosti oboch účastníkov znovu vytvorí spojenie medzi nimi.

Click to dial - Umožňuje na set-top-boxe zvoliť vytvorenie spojenia, ktoré následné prebehne edzi nami a druhým účastníkom (kliknutím na linku volaného účastníka sa automaticky začne vytvárať spojenie, v prípade prijatia hovoru druhou stranou začne vyzváňať aj naša strana).

Pay-per-view approval - Umožňuje vykonávať platby cez mobilný telefón za objednané video (platba nemusí prebehnúť okamžite, môže slúžiť ako súhlas, poplatok za služby bude prirátaný k mesačnej faktúre).

Príloha A: Použité DNS zóny

open-ims.test

$ORIGIN open-ims.test.
$TTL 1W
@ 1D IN SOA mayor.localdomain. thefox.neonus.sk. (
2006101001 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
NS mayor.localdomain.

pcscf 1D IN A  192.168.0.250

open-ims.test. 1D IN A  192.168.0.250
icscf 1D IN A  192.168.0.250

_sip 1D SRV 0 0 5060 icscf
_sip._udp 1D SRV 0 0 5060 icscf
_sip._tcp 1D SRV 0 0 5060 icscf

open-ims.test. 1D IN NAPTR 10 50 "s" "SIP+D2U" ""↩ _sip._udp
open-ims.test. 1D IN NAPTR 20 50 "s" "SIP+D2T" ""↩ _sip._tcp

scscf 1D IN A  192.168.0.250
hss 1D IN A  192.168.0.250
ue 1D IN A  192.168.0.250
presence 1D IN A  192.168.0.250

open-ims2.test

$ORIGIN open-ims2.test.
$TTL 1W
@ 1D IN SOA mayor.localdomain. thefox.neonus.sk. (
2006101001 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
NS mayor.localdomain.

pcscf 1D IN A  192.168.0.251

open-ims2.test. 1D IN A  192.168.0.251
icscf 1D IN A  192.168.0.251

_sip 1D SRV 0 0 5060 icscf
_sip._udp 1D SRV 0 0 5060 icscf
_sip._tcp 1D SRV 0 0 5060 icscf

open-ims2.test. 1D IN NAPTR 10 50 "s" "SIP+D2U" ""↩ _sip._udp
open-ims2.test. 1D IN NAPTR 20 50 "s" "SIP+D2T" ""↩ _sip._tcp

scscf 1D IN A  192.168.0.251
hss 1D IN A  192.168.0.251
ue 1D IN A  192.168.0.251
presence 1D IN A  192.168.0.251

in-addr.arpa

$ORIGIN in-addr.arpa.
$TTL 300
in-addr.arpa. IN SOA mayor.localdomain thefox.neonus.sk (
2009031601 ; serial
300 ; refresh
200 ; retry
1209600 ; expire
300 ; minimum
)
NS mayor.localdomain.
10.0.168.192 IN PTR reverz.192.168.0.10.
20.0.168.192 IN PTR reverz.192.168.0.20.
42.0.168.192 IN PTR reverz.192.168.0.42.
250.0.168.192 IN PTR reverz.192.168.0.250.
251.0.168.192 IN PTR reverz.192.168.0.251.

Pozor, táto zóna nie je použitá v súlade s internetovými štandardmi a jej použitie je možné len v izolovanom prostredí. Takéto použitie znemožňuje vyhľadávanie reverzných záznamov pre reálne IP adresy v internete, a v skutočnosti by bolo nutné použiť špecifickejšiu zónu, napríklad 0.168.192.in-addr.arpa.

Príloha B: Nainštalované balíčky pri inštalácii OpenIMSCore

Všetky potrebné balíčky pre kompiláciu OpenIMSCore sa nainštalujú spustením nasledovného príkazu (pre Debian GNU/Linux 4.0):

apt-get install acpid adduser ant apt apt-utils aptitude base-files base-passwd bash bind9 binutils bison bsdmainutils bsdutils build-essential busybox bzip2 console-common console-data console-tools coreutils cpio cpp cpp-4.1 cron debconf debconf-i18n debian-archive-keyring debianutils dhcp3-client dhcp3-common diff dmidecode dnsutils dpkg dpkg-dev dselect e2fslibs e2fsprogs ed eject file findutils flex g++ g++-4.1 gcc gcc-4.1 gcc-4.1-base gnupg gpgv grep groff-base grub gzip host hostname ifupdown info initramfs-tools initscripts installation-report iproute iptables iputils-ping java-common klibc-utils klogd laptop-detect less libacl1 libapr1 libaprutil1 libatm1 libattr1 libbind9-0 libblkid1 libbz2-1.0 libc6 libc6-dev libc6-i686 libcap1 libcomerr2 libconsole libdb4.2 libdb4.3 libdb4.4 libdbd-mysql-perl libdbi-perl libdevmapper1.02 libdns22 libedit2 libexpat1 libgcc1 libgcrypt11 libgdbm3 libglib2.0-0 libgnutls13 libgpg-error0 libgpmg1 libisc11 libisccc0 libisccfg1 libjaxp1.3-java libklibc libkrb53 libldap2 liblocale-gettext-perl libltdl3 liblwres9 liblzo1 libmagic1 libmysql++-dev libmysql++2c2a libmysqlclient15-dev libmysqlclient15off libncurses5 libncursesw5 libneon26 libnet-daemon-perl libnewt0.52 libopencdk8 libpam-modules libpam-runtime libpam0g libpcap0.8 libplrpc-perl libpopt0 libpq4 libreadline5 libsasl2 libsasl2-2 libselinux1 libsepol1 libsigc++-2.0-0c2a libslang2 libsqlite3-0 libss2 libssl0.9.8 libssp0 libstdc++6 libstdc++6-4.1-dev libsvn1 libtasn1-3 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libusb-0.1-4 libuuid1 libvolume-id0 libwrap0 libx11-6 libx11-data libxau6 libxdmcp6 libxerces2-java libxml2 libxml2-dev linux-image-2.6-686 linux-image-2.6.18-6-686 linux-kernel-headers locales login logrotate lsb-base m4 make makedev man-db manpages mawk mc mktemp module-init-tools mount mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 nano ncurses-base ncurses-bin net-tools netbase netcat ntp ntpdate odbcinst1debian1 openbsd-inetd openssh-blacklist openssh-client openssh-server passwd patch perl perl-base perl-modules procps psmisc readline-common screen sed ssh subversion sun-java5-bin sun-java5-demo sun-java5-jdk sun-java5-jre sysklogd sysv-rc sysvinit sysvinit-utils tar tasksel tasksel-data tcpd tcpdump traceroute tzdata udev unixodbc update-inetd usbutils util-linux vim vim-common vim-runtime vim-tiny wget whiptail x11-common zlib1g zlib1g-dev

Chýbajúce balíčky sa doinštalujú, už nainštalované sa buď aktualizujú alebo ignorujú.

AttachmentSize
File ims8 (3).pdf419.74 KB
File alice2_bob.html232.67 KB
Groups: