Asterisk a SS7 Michal Kohut dne 5.11.2009 Co je Asterisk * Jedná se o jedno z ,,nejsilnějších", flexibilních a nejrozšířenější řešení v oblasti integrovaného telekomunikačního softwaru. * Open source softwarová PBX, běžící na platformách Linux a Unix * Systém je navržen tak, aby vytvořil rozhraní telefonnímu hardwaru, softwaru a libovolné telefonní aplikaci. Využití * Různorodá VoIP gateway (MGCP, SIP, IAX, H.323) * Pobočková ústředna (PBX) * Voicemail služby s adresářem * Interaktivní hlasový průvodce (IVR) server * Softwarová ústředna (Softswitch) * Konferenční server * Packet voice server * Šifrování telefonních nebo faxových volání * Překlad čísel * Aplikace Calling card * Prediktivní volič (Predictive dialer) * Řazení volání do front se vzdáleným zprostředkovatelem * Vzdálené ,,kanceláře" pro existující PBX Podporované protokoly * IAX (Inter Asterisk eXchange) * H.323 * SIP (Session Initiation Protocol) * MGCP (Media Gateway Control Protocol) * SCCP (Skinny Client Control Protocol) * VoFR (Voice over Frame Relay) * PSTN * POTS * T1 * E1 * PRI Podporované kodeky * ADPCM * G.711 law * G.711 alaw * G.723.1 * G.726 * G.729 * GSM * iLBC (internet Low Bitrate Codec) * LPC10 * Speex Asterisk podporuje pouze paketizaci 20 ms! Jádro Asterisku (1) * PBX přepojování (PBX Switching): Přepojovací jádro transparentně spojuje příchozí volání na různých hardwarových a softwarových rozhraních. * Spouštěč aplikací (Application Launcher): Spouští aplikace zajišťující služby jako jsou například hlasová pošta, přehrání souboru a výpis adresáře. Jádro Asterisku (2) * Překladač kodeků (Codec Translator): používá moduly kodeků pro kódování a dekódování různých zvukových kompresních formátů používaných v telefonním prostředí. * Plánovač a I/O manažer (Scheduler and I/O manager): ovládání rozvrhování nízkoúrovňových úloh a systémového řízení pro optimální výkon podle stavu zatížení. API Moduly * Docílí kompletního oddělení mezi jádrem, pracujícím jako PBX server systém a různorodými existujícími technologie (nebo vyvíjenými). Druhy API modulů * Kanálové API * Aplikační API * API překladače kodeků * API souborových formátů AsteriskNOW * AsteriskNOW is the fastest way to get started building custom telephony solutions with Asterisk. * Simply download the .iso file, burn it to a CD, drop it into the CD or DVD drive on the target computer and in less than 30 minutes you will have a full functional Asterisk system ready for your custom telephony application. Features * VoIP Gateway * Skype Gateway * IP PBX * Call Center ACD * Conference Bridge * IVR Server * Voicemail System * Call Recorder * Fax Server * Speech Server References * http://www.asterisk.org/ * http://www.asterisk.org/asterisknow * http://www.asteriskwin32.com Signalizace SS7 SS7 * SS7 je soubor protokolů umožňujících řízení v telefonní síti, který je využíván jako síťová signalizace v pevných i mobilních sítích po celém světě. * Užívá se ke směrování hovorů v rámci sítě, sestavování a rušení spojení mezi ústřednami, dohledu nad spojením, dotazům do databází, ale také k vlastnímu řízení síťových prostředků. Standarty * American National Standards Institute (ANSI) * International Telecommunication Union (ITU) * Telecommunications Industry Association (TIA) * Internet Engineering Task Force (IETF) Signalizační síť * Na signalizační síť SS7 lze nahlížet jako na paketovou síť přenášející signalizační zprávy. * Umožňuje přenos jak s přepínáním okruhů tak s přepínáním paketů. * Přenos signalizačních zpráv s přepínáním okruhů je určen hlavně pro sestavování řízení a ukončování hovorových spojení. * Přenos signalizačních zpráv s přepínáním paketů je využit pro komunikaci například s uživatelskými databázemi v mobilních sítích. Signalizační síť * Přenosové sítě pro signalizaci a hovorový signál jsou na sobě nezávislé. Komunikace * TDM links (E1/T1/T3/J1) * IP (SIGTRAN) Prvky v síti * Signaling Transfer Point (STP):lze vnímat jako jakýsi směrovač signalizačních zpráv. * Signaling Point (SP):přestavuje buď zdroj nebo cíl signalizačních zpráv. SS7 network SPC (Signaling PointCode) * Každý signalizační uzel má svojí adresu, která se nazývá SPC a má délku 14 bitů. Zóna (3b) Identifikace sítě/oblasti (8b) Identifikace SP (3b) Protokoly * MTP (Message Transfer Part) je zodpovědný za správný a spolehlivý ukončený přenos dat (zpráv SS7) mezi komunikačními partnery. * 1. vrstva (MTP1) představuje fyzickou vrstvu, která je zodpovědná za konverzi bitového toku do formy vhodné pro přenos po médiu. * 2. vrstva (MTP2) zabezpečuje spolehlivá přenos mezi dvěma sousedními signalizačními body SP/STP. * 3. vrstva (MTP3) slouží pro směrování a distribuci. * Protokol ISUP (ISDN User Part) slouží k sestavování, řízení a ukončení hovorových spojení a dále k poskytování doplňkových služeb. SS7 protocol Testování chan_ss7 * od společnosti SIFIRA * implementováno ve formě modulu * Modul podporuje SS7 protokoly síťové vrstvy MTP2 a MTP3 a protokol aplikační vrstvy ISUP. * Pro fyzickou komunikaci využívá zařízení s E1 rozhraním knihovna libss7 * Od tvůrců pobočkové ústředny Asterisk * Podporuje protokoly MTP a ISUP Testovaní modulu chan_ss7 a knihovny libss * Na dvou pobočkových ústřednách Asterisk. * Asterisk byl připojen k veřejné telefonní ústředně Ericsson AXE umístěné ve výzkumném a vývojovém centru RDC na FEL ČVUT. Zátěžové testy * K testování jsme využili protokolový tester STT MultiService Analyzer. * Pracuje jako protokolový analyzátor a také jako simulátor signalizačních zpráv. * Dokáže vygenerovat až dva milióny hovorů za hodinu. Zátěžový test chan_ss7 (1) * Doba měření: 12 minut * Počet požadovaných spojení: cca 10 000 * Počet úspěšných spojení: 100% Zátěžový test chan_ss7 (2) Zátěžový test libss7 (1) * Doba měření: 12 minut * Počet požadovaných spojení: cca 10 000 * Počet úspěšných spojení: prvních 30% Zátěžový test libss7 (2) Zhodnocení chan_ss7 a libss7 * V případě zátěžových testů se chan_ss7 chová stabilně. * Naproti tomu u Asterisk PBX využívající knihovnu libss7 dojde po určité době k ukončení funkčnosti a je nutno aplikaci restartovat.