1 5. přednáška H.323 – deštník pro celou škálu protokolů Obsah 2 1. Základní informace 2. Protokol RAS 3. Protokol H.225 4. Protokol H.245 5. Evoluce H.323 6. Příklad konfigurace na Cisco 3 1. Základní informace K popisu H.323 je použita ASN.1 4 Notace ASN.1 zavádí jednoznačnou klasifikaci jednotlivých objektů a metody pro definice jejich vlastností v textové i číselné formě. Tento jazyk je definován v doporučení ITU X.208 a návazných X.680 a X.683. Je určen pro zápisy dobře čitelné pro člověka. Jazyk ASN.1 definuje typy, což jsou pojmenované množiny hodnot. Jako příklad lze uvést typ BOOLEAN s množinou hodnot TRUE a FALSE. Identifikátor typu má syntax podobnou Fortranu či jazyku C a pořadí zápisu jako COBOL či PL/I. Jako příklad lze uvést deklaraci proměnné INTEGER. Příklad popisu objektu v ASN.1 5 OSOBA ::= SEQUENCE { prijmeni Prijmeni, jmeno Jmeno, pohlavi Pohlavi } Prijmeni ::= IAString, Jmeno ::= IAString, Pohlavi ::= BOOLEAN } Příklad zápisu ASN.1 pro prvky H.323 6 Pro zakódování je použita specifikace PER (Packed Encoding Rules), daná doporučením ITU-T Recommendation X.691. Jméno specifikace bylo vybráno pro rozlišení od jednodušší specifikace BER (Basic Encoding Rules). Struktura sítě podle H.323 7 Žargon H.323 (základní komponenty sítě) 8  terminál je základní a jedinou povinnou komponentou H.323 sítě. Používá se pro obousměrnou komunikaci v reálné čase. Terminál představuje např. PC , VoIP /videotelefon, hlasový odpovídač, voicemail;  brána (gateway) zabezpečuje spojení s jinou sítí (např. ISDN). Slouží jako případný překladač protokolů mezi různými sítěmi;  gatekeeper (volitelný, ale užitečný prvek) umožňující ve specifikované zóně směrování a centrální management koncových bodů sítě, čímž mohou chránit svoji zónu před zahlcením, lze je použít i pro autentizaci, autorizaci, převod jmen a telefonních čísel na IP adresy. V analogii s PSTN se jedná o inteligentní ústřednu;  MCU (Multipoint Control Unit) je zařízení, které zajišťuje komunikaci mezi třemi a více terminály. Směšuje datové toky a rozesílá je všem účastníkům ve skupině; umožňuje tedy pořádání konferenčních hovorů. Doména působení protokolu H.323 může obsahovat libovolné množství terminálů, bran nebo MCU jednotek, vždy však pouze jednoho gatekeepera. Mluvíme pak o tzv. H.323 zóně. Signalizace může probíhat přímo mezi koncovými uzly (terminály, bránami) nebo pomocí gatekeeperu. Terminál podle normy 9 Signalizace terminálu 10 H.225 Umístění terminálu 11 Brána 12 SCN (Switched Circuit Network) zahrnuje přepínané telefonní sítě včetně PSTN (Public Switched Telephone Network) Gatekeeper 13 Funkce GK:  Překlad adres  Regulace toku  Řízení pásma  Call Signalling (Q.931)  Call Control (H.245) OpenH323 Gatekeeper 14 Protokolový zásobník 15 Protokolové roury 16 H.225 RTP/RTCP RAS Q.931Q.931 RAS RTP/ RTCP H.245 T.120 Návaznosti jednotlivých protokolů 17 K tomuto se vrátíme později 18 19 2. Protokol RAS Zprávy RAS jsou zabaleny do UDP a používá port 1719 20 RAS 21 Protokol RAS (Registration, Admission, Status) je protokol, jehož zprávy jsou umístěny do zpráv protokolu H.225 a slouží pouze při registraci a rušení hovoru. Používá se pro komunikaci gatekeeper – endpoint a naopak. Registration Request (RRQ) Registration Confirmation (RCF) Admission Request (ARQ) Admission Confirmation (ACF) Disengage Request (DRQ) Disengage Confirmation (DCF) Pro unicast je určen UDP port 1719 a pro multicast UDP port 1718 Pole CryptoToken ve zprávě RRQ 22 cryptoTokens: 2 items Item 0 Item: cryptoEPPwdHash (0) cryptoEPPwdHash alias: h323-ID (1) h323-ID: 950012315 timeStamp: Feb 26, 2006 15:36:41.000000000 token algorithmOID: 1.2.840.113549.2.5 (md5) paramS hash: 8BB5DFAE1F23EA0AA5C7E73C23B18639 Druhá možnost použití pole je zpráva H.225.0 Q.931 Některé zprávy gatekeeperu 23 Doba čekání Počet na odpověď [s] pokusů Gatekeeper Request – GRQ (port 1718) Hledání gatekeeperu Gatekeeper Registration – RRQ Registrace na dobu TTL Unregister Request – URQ Zrušení registrace Admission Request – ARQ Indikace požadavku na pásmo Bandwidth Request – BRQ Vyžádání si změny šířky pásma Information Request – IRQ Vyžádání detailních informací o voláních Disengage Request – DRQ Vyžádání informací potřebných pro účtování Location Request – LRQ Např. pošli IP adresu tohoto čísla. Resource Availability – RAI Jsme blízko limitu zdrojů? Service Control Indication – SCI Vyžádání si některého typu služby Side step: telefonní síť MU 24  K hlavní ústředně je připojeno 17 satelitních ústředen s přes 5000 telefony.  Přes GTS Novera do sítě Vodafone 90 linek. O2 a T-Mobile 60 linek. Mezinárodní hovory přes Cesnet. Místo 549 49 jako volání v rámci vlastní sítě 72749xxxx (pro Telefónica O2) či 73609xxxx (pro T-Mobile). Prefixy 906 nebo 909 je blokované.  Univerzitního kampus MU v Brně-Bohunicích, ÚVT MU a FF pronajaté prostory) na ulici Veveří v Centru Šumavská satelitní ústředna Avaya G650 Media Gateway s více než tisícem poboček.  Malé lokality pomocí malých ústředen Avaya G700 nebo IP telefonů.  Analogový fax – VoIP převodníky firmy MultiTech.  Osobní klapka – svázána se zaměstnancem až do ukončení pracovního poměru. Co se děje při odchodu zaměstnankyně na mateřskou?  Nejvzdálenější lokalitou připojenou do hlasové sítě MU je? Registrace probíhá na obou terminálech 25 G700 RAS GRQ ID objektu, IP adresa, a port 26 Pole konfigurace KZ 27 RAS token pole žádosti 28 šifrování DES Pole vlastností RAS žádosti 29 Potvrzení registrace 30 Nalezení GK a registrace telefonu 31 Reakce na zprávy GRQ a RRQ 32 Reakce na zprávy ARQ, BRQ a LRQ 33 Výpis výkonnostních statistik 34 35 3. Protokol H.225 http://www.itu.int/rec/T-REC-H.225.0-200912-I/en 36 Protokol H.225 37  Slouží pro sestavení spojení mezi dvěma koncovými body. Sestavení hovoru probíhá buď přímo mezi koncovými zařízeními nebo mezi koncovým zařízením a gatekeeperem.  Je odvozen od Q.931 (ISDN Call Signaling), ale byl upraven pro použití na paketově orientovaných sítích.  Pro přenos na 4. vrstvě OSI se používá transportní protokol TCP. Formát záhlaví protokolu H.225 38 Ne všechny zprávy H.225 jsou povinné 39 Část Q.931 sahá od 08 po 95 40 Základní signalizace protokolu H.225 41 volitelné Chrání před vypršením časovačů (hovor není ISDN a další informace je in-band) (přenos čísla volaného) port 1720 (informace, že volání je zpracováváno) (informace o tom, že to na druhé straně zvoní) Analyzujte výpis 42 Zpráva SETUP 43 Call Proceeding, Connect, … 44 Facility – doplňkové služby 45 Zpráva H.225 SETUP 46 Byly snahy o H.323/RSVP synchronizaci 47 Call Forwarding 48 Výměna zpráv mezi terminály 49 Měření doby Setupu 50 http://www.itu.int/rec/T-REC-H.245-200912-I/en 51 4. Protokol H.245 52 Protokol H.245 53 Terminal Capability Set (TCS) Open Logical Channel (OLC) Slouží pro řízení multimediálního přenosu, nastavení parametrů přenosu, otevření a zavření logických kanálů pro přenos, volby zvukového kodeku atd. Vyjednávání parametrů přenosu začíná po sestavení hovoru. Pro přenos paketů se používá protokol TCP. Tři kola komunikace H.245 54 Zprávy H.245 55 Otevření více kanálů 56 TCS Zpráva protokolu H.245 TCS (Terminal Capacity Set) 57 ! Určení typů koncových bodů (terminálů) 58 Potvrzení této zprávy (a Master se stává koncový bod s adresou 10.210.200.112) 59 A následuje otevření logického kanálu 60 Fast Connect u H.245 61 V rámci standardního vyjednávání H.245 koncové body potřebují tři kola komunikace, než se dohodnou na parametrech audio či video kanálů 1. dohoda, kdo je Master a kdo Slave, 2. výměna informací o kapacitách terminálů 3. otevření logických kanálů V určitých situacích a to zejména na linkách s vysokým zpožděním to může trvat příliš dlouho. Fast Connect 62  Zpoždění lze eliminovat metodou Fast Connect (Fast Start). Koncový bod jednoduše připraví několik variant žádosti o otevření logického kanálu v závislosti na tom, kolik kodeků podporuje. Poté je zakóduje do binární formy a výsledek vloží do H.225.0/Q.931 zprávy (obvykle zpráva Setup).  Volaný účastník vybere jednu z variant a potvrdí ji v příští H.225.0/Q.931 zprávě a přiloží vlastní seznam variant logických kanálů. Zbylá část komunikace proběhne standardním způsobem.  Pomocí Fast Connect jsou parametry logických kanálů (kodeky, IP adresy a porty) sesouhlaseny v rané fázi výměny zpráv, tj. předtím, než volaný uživatel přijme hovor a tudíž se doba této výměny nepočítá do ceny spojení.  Fast Connect a H.245 tunelování mohou být použity současně. Signalizace volby Fast Connect 63 Terminal Capability Set (TCS) Master/Slave Determination (MSD) Open Logical Channel (OLC) Sestavení hovoru přes gatekeeper 64 1. Volající pošle zprávu ARQ (Admissions Request) na gatekeeper (předloží svoji identifikaci a číslo volaného), tato zpráva je součástí RAS protokolu. 2. Gatekeeper odpoví potvrzením ACF (Admissions Confirm) nebo odmítnutém ARJ (Admissions Reject). V případě potvrzení volajícímu tak gatekeeper odpoví, že požadované session je v pořádku (opět protokolem RAS). 3. Volající odešle volanému zprávu H.225 Setup. 4, Volaný odešle volajícímu provizorní zprávu Call Proceeding. Provizorní je proto, protože volaný musí nejprve ověřit autenticitu volajícího předtím, než vytvoří trvalé spojení. 5. Volaný odešle na gatekeeper zprávu ARQ s dotazem, zda je volání legitimní. V tento moment by měl mít gatekeeper uložen záznam o původním ARQ od volajícího k porovnání s ARQ od volaného. 6. Pokud má gatekeeper odpovídající ARQ záznam, pošle volanému potvrzující zprávu ACF. 7. Jakmile je zpráva ACF přijata volaným, pošle H.225 volajícímu zprávu Alerting. Volaný pak pošle H.225 zprávu Connect volající straně. Ta uvolní cestu pro H.245. Popis příkazu ARQ v ASN.1 65 Dva modely volání 66  rychlejší setup  vlastnosti poskytují EP  nahrazuje trunk  gatekeeper může fungovat jako „server vlastností“  např. pro audiokonference Signalizace modelu Direct EP 67 ARQ (EP1, EP2, BW) ACF (CSAddr, BW) (open socket) Setup (EP1, EP2, confID) ARQ (EP1, EP2, BW, answer) ACF Call Proceeding Alerting Connect (h245addr) (open socket) capabilities exchange master-slave determination OpenLogicalChannel (type) OpenLogicalChannelAck (RTP addrs) audio OpenLogicalChannel (type) OpenLogicalChannelAck (RTP addrs) audio EP1 Gatekeeper EP2 CSAdr – Call Signal Address BW - bandwith Signalizace modelu Gatekeeper Routed 68 ARQ (EP1, EP2, BW) ACF (CSAddr, BW) (open socket) Setup (EP1, EP2, confID) (open socket) Setup (EP1, EP2, confID) ARQ (EP1, EP2, BW, answer) ACF Call Proceeding Call Proceeding Alerting Alerting Connect (h245addr) Connect (GKh245addr) (open socket) (open socket) capabilities capabilities master-slave master-slave OpenLogicalChannel (type) OpenLogicalChannel (type) OpenLogicalChannelAck (RTP addrs) OpenLogicalChannelAck (RTP addrs) audio OpenLogicalChannel (type) OpenLogicalChannel (type) OpenLogicalChannelAck (RTP addrs) OpenLogicalChannelAck (RTP addrs) audio EP1 Gatekeeper EP2 CSAdr – Call Signal Address BW - bandwith Fast Start 69 ARQ (EP1, EP2, BW) ACF (CSAddr, BW) Setup (EP1, EP2, confID, fastStart ) ARQ (EP1, EP2, BW, answer) ACF Alerting Connect (fastStart ) audio audio EP1 Gatekeeper EP2 Pole fastStart obsahuje seznam struktur OpenLogicalChannel Zpráva H.225 Faststart 70 Kde je u Faststart H.245? 71 Položky paketu Faststart 72 IP adresa a č. portu Co jsou zde ty „empty“ pakety? 73 Jsou to INFORMATION pakety 74 Fast Start s vlastností Early Audio 75 ARQ (EP1, EP2, BW) ACF (CSAddr, BW) Setup (EP1, EP2, confID, fastStart) ARQ (EP1, EP2, BW, answer) ACF Alerting ( fastStart) audio Connect audio EP1 Gatekeeper EP2 Příklad nároků na porty pro koncové body videa Polycomu 76 Port Required/Opt Port Type Usage direction 389 For ILS Static TCP ILS Registration (LDAP) (Bidirectional) 1718 Required Static UDP Gatekeeper Discovery (Bidirectional) 1719 Required Static UDP Gatekeeper RAS (Bidirectional) 1720 Required Static TCP H.323 Call Setup (Bidirectional) 1731 Required Static TCP Audio Call Control (Bidirectional) 3230-5 Required TCP/UDP Signaling and control audio, volání, video, data (Bidirectional) 3603 Optional Static TCP Web Interface (Bidirectional) Konfigurace FXO pro GnuGK 77 Vícebodové kontrolní jednotky (Multipoint Control Unit - MCU) 78  Zodpovídají za řízení vícebodové konference.  Skládají se ze dvou logických entit a sice vícebodového řadiče (MC) a vícebodového procesoru (MP).  Z praktického hlediska je MCU konferenční most odlišný od těch běžně používaných ve veřejných komutovaných telefonních sítí. Hlavním rozdílem je to, že H.323 MCU je schopný směšovat a přepínat nejen audio, ale i video na rozdíl od běžného směšování audia běžnými konferenčními mosty.  Některé MCU umožňují spolupráci dat z více bodů. Což pro koncového uživatele znamená to, že díky přenosu videa prostřednictvím H.323 MCU je uživatel schopen vidět všechny ostatní účastníky konference a ne jen pouze slyšet jejich hlasy. Zóna a administrativní doména 79 Zóna je řízena jedním či více gatekeeperů Administrativní doména je řízena ISP či správcem sítě Gatekeeper mezi branami 80 Intra-Zone Call Setup http://www.cisco.com/warp/public/788/voip/2zone_gw_gk.pdf 81 IRR - Information_Request_Response Inter-Zone Call Setup 82 Škálování sítí s gatekeeperem 83 Inter-Zone Call Setup a Directory Gatekeeper 84 (RIP – Request In Progress, informuje GW o zpracovávaném volání) Proxy-Assisted Call Setup 85 Call Disconnect 86 87 5. Evoluce H.323 Detailnější struktura protokolů H.323 88 Základní protokoly H.225 pro signalizaci volání  RAS pro registraci  H.235, který definuje zabezpečení v H.323 systému  H.245 pro řízení signalizace a řízení toku dat Aktuální stav standardu 89 H.323 Forum 90 Počáteční evoluce protokolu H.323 91 H.323 je binární protokol využívající syntaxe ASN.1 (PER). Jedná se o otevřený standard, který má blízkou návaznost na technologie používané v ISDN. Doporučené zvukové kodeky G.711, G.723, G.729, videokodeky H.261, H.263.  H.323v1 (1996) byl původně určen jen pro sítě LAN, firmy ho ale hned s dobrým výsledkem vyzkoušely pro sítě WAN a Internet.  H.323v2 (1998) přináší: bezpečnost, Fast Connect (též FastStart), doplňkové(supplementary) služby, lepší zajištění DTMF, škálovatelnost, TTL (Time to Live), předběžná potvrzeni (Pre-granted ARQ) , URL, integrace s T.120 (videokonference).  H.323v3 (1999) přináší lepší integraci s PSTN, UDP (Annex E), jednoduché koncové body (Annex F), komunikace mezi administrativními doménami – řeší Annex G (Border Element) či RAS zprávou „Location Request“ (LRQ).  H.323v4 (2000) – dekomponované brány, alternativní gatekeepery, hlášení kapacity koncových bodů, nové služby, „must have“ vlastnosti , Generic Extensibility Framework (GEF) – blíže viz další slajdy. Dekomponované brány 92 Gateway MGC MG Media Gateway Controller (MGC) – zajišťuje řízení Odděluje funkce MGC od funkcí MG – s více MG lze lépe škálovat kapacitu toku Media Gateway (MG) – převádí mediální tok Komunikaci mezi MGC a MG zajišťuje protokol H.248. MGC MG MG MG MG MG MG MG MG MG MG MG MG MG MG MG Alternativní gatekeepery 93 T GK GK GK GK GK X Hlášení kapacity koncových bodů 94 GK GK GK GK GK GW 23% GW 77% GW 48% GW 64% GW 14% GW 36% Nové služby 95 Annex K – Services via HTTP Annex L – Stimulus Control H.450.8 – Name identification H.450.9 – Call Completion H.450.10 – Call Offer H.450.11 – Call Intrusion „Must have“ vlastnosti 96  Hlášení použití  Identifikace volajícího  Mapování aliasů  lepší management pásma pro multicast  použití pro fax  tunelování jiných protokolů (Annex M.x)  H.323 specifická URL  Výpočet kreditů  Přenos DTMF přes RTP (RFC 2833) Generic Extensibility Framework 97  Stanovení způsobu, jak lze doplňovat volitelné vlastnosti beze změny platné syntaxe ASN.1  Odolnost proti výpadkům (Annex E pro UDP transport)  Jsou zde procedury zajišťující robustnost adres (Annex R)  Přenosnost lokálních čísel (Annex H) H.323v5 (2003) 98  Annex M.3 – tunelování DSS1 (Digital Subscriber Signalling System No. 1, (Euro-ISDN či E-DSS1) signalizace uvnitř H.323 systémů  Annex O – definuje, jak použít H.323 URL a další DNS služby  Annex P – přenos přes modemy (jak použít protokol V.150.1)  Annex Q – řízení vzdálených kamer pro videokonference  Annex R – řeší fault tolerant systémy – volání není přerušeno v případě výpadku mezilehlé signalizační entity jako je softswitch (GEF)  H.460.1 – úvod do GEF a „author's guide“  H.460.2 – portabilita čísel (GEF)  H.460.3 – mapa stavu obvodů (GEF), využití je pro přenos do PSTN  H.460.4 – řešení priorit volání (GEF)  H.460.5 – přenos duplicitních částí IE zpráv protokolu Q.931 (GEF)  H.460.6 – rozšíření Fast Connectu z verze 2 (GEF)  H.460.7 – digitální mapování v koncových bodech spojení (GEF)  H.460.8 – fronty a alternativní směry (GEF)  H.460.9 – monitorování a hlášení QoS (GEF) Verze 5 99 Bezpečnostní profily v dodatcích protokolu H.235 100  Annex D – Shared secrets and keyed hashes  Annex E – Digital signatures on every message  Annex F – Digital signatures and shared secret establishment on first handshake, afterwards keyed hash usage  Annex G – SRTP & MIKEY usage První verze protokolu H.235 vydalo ITU v roce 1998, po ní následovala v roce 2000 významná verze 2, která standardizovala podporu šifrovacímu standardu AES (Advanced Encryption Standard) a kryptografii eliptických křivek. Pro interoperabilitu definovala některé bezpečnostní profily v dodatcích: Co je to za mód? 101 Verze protokolu H.235 a jeho dodatky 102  Annex D – Shared secrets and keyed hashes, v němž byl pro výměnu klíčů v rámci protokolů H.225 a H.245 standardizován algoritmus Diffieho-Hellmana a pro šifrování a kontrolu integrity algoritmus HMAC-SHA1-96, pro šifrování v rámci RTP DES, Triple-DES a AES;  Annex E – Digital signatures on every message, v němž byly pro autentizaci a kontrolu integrity standardizovány algoritmy SHA1 a MD5;  Annex F – Digital signatures and shared secret establishment on first handshake, afterwards keyed hash usage, v němž bylo doplněno šifrování pro H.225 a H.245 na bázi RSA. H.235 ve verzi 3 z roku 2003 doplňuje verzi 2 o procedury pro šifrování signálů DTMF (toutch tone), identifikaci objektů pro šifrování zátěže algoritmem AES a speciální mód EOFB (Enhanced Outer FeedBack) pro šifrování proudů hlasových paketů. Během dalších dvou let vyšly další dodatky verze 2 protokolu H.235, z nichž je zvláště významný dodatek G: • Annex G – SRTP & MIKEY usage, který byl zpracován pro podporu protokolu SRTP. Jak dlouhý klíč dnes volíme pro D-H algoritmus? 103 Annex D 104 Shared secrets and keyed hashes, v němž byl pro výměnu klíčů v rámci protokolů H.225 a H.245 standardizován algoritmus Diffieho-Hellmana a pro šifrování a kontrolu integrity algoritmus HMAC-SHA1-96, pro šifrování v rámci RTP: DES, Triple-DES a AES Řešení klíčového managementu MIKEY (Multimedia Internet Keying) 105 Protokol SRTP sám o sobě nedefinuje klíčový management, nýbrž pracuje se sadami parametrů, z nichž odvozuje klíče relací pro šifrování, autentizaci a kontrolu integrity. Preferovaným řešením klíčového managementu je MIKEY, které bylo navrženo v rámci pracovní skupiny MSEC IETF a které bylo publikované v RFC 3830. Řešení MIKEY má široké použití – jak pro RTSP tak pro SIP, tok řídicích i multimediálních paketů, pro unicast i multicast přenosy atd.). Klíčový management pomocí MIKEY 106 Definovány jsou tři volby pro autentizaci a vyjednávání tzv. master key, všechny jsou přitom založeny na dvoucestném handshakingu. Tyto volby jsou:  distribuce symetrických klíčů – předsdílené klíče, kontrola integrity pomocí MAC (message authentication code);  distribuce asymetrických klíčů;  dohoda o klíči na bázi algoritmu Diffieho-Hellmana chráněná digitálními podpisy před útokem MitM (Man-in-the-Middle). V H.235v3 je uvažována ještě čtvrtá možnost, ta však není součástí specifikací MIKEY; předpokládá se zde výměna Diffieho-Hellmanových klíčů pomocí předsdílených symetrických šifrovacích algoritmů. Pro přenos klíčů je povinně určen algoritmus AES v módu CTR resp. Counter. MIKEY používá 160bitový autentizační tag generovaný pomocí HMAC s SHA-1, tak jak je to popsáno v RFC 2104. Při použití asymetrických mechanismů je další povinnou záležitostí použití certifikátů podle standardu X.509v3 pro šifrování veřejným klíčem a digitální podpisy. Firewally jako problém pro H.323 107 Jde o zvlášť nepříjemný problém. S výjimkou „Q.931.like“ protokolu H.225 je všechen H.323 provoz je směrován přes dynamické porty. Pro Fast Start protokolu H.323 je obvykle využit port 1720. Pokud přidáme komunikaci RAS protokolu H.225 přes gatekeeper (UDP), je použit port 1719. Každý další kanál znamená přiřazení dalšího portu. Bylo by třeba mít dlouhodobě otevřeny desetitisíce UDP portů. Zprávy H.323 je schopen zpracovávat pouze stavový firewall. Ani pro tyto firewally není provoz protokolu H.323 triviální záležitost. Zprávy protokolu H.323 jsou kódovány v binárním formátu založeném na ASN.1. ASN.1 nepracuje s pevným umístěním adresní informace (offset) v paketu a takový provoz je obtížné dekódovat, neporadí si s ním nejen paketové filtry, ale i jednodušší stavové firewally. Prohledávání obsahu paketů zakódovaných pomocí ASN.1 zanáší další zpoždění do citlivých zařízení zajišťujících přenos hlasu. NAT jako problém pro H.323 108 NAT je dalším problémem pro systémy na bázi VoIP používající pro navázání spojení protokol H.323. Pro tyto potřeby musí být speciálně uzpůsoben, aby mezi konci spojení správně protékaly dvojice IP adresa/port. Co je to za algoritmus? 109 H[(k  opad)||H[k  ipad)||m]] Šifrování a HMAC jako problém pro H.323 110 Šifrování není pro hlasové služby výkonnostní problém, protože u proudové šifry jde jen o jednobitové zpoždění. Naopak operace algoritmu HMAC potřebují pro své zpracování celý blok dat, a to na straně vysílání i příjmu. To může vést ke zpožděním, která způsobují velké zkreslení hlasu. Někteří návrháři se domnívají, že autentizace při navazování spojení stačí a použití HMAC v průběhu vlastní konverzace omezují. Shrnutí problémů H.323 111 • firewally – desetitisíce UDP portů • NAT – speciálně uzpůsoben • šifrování – malé zpoždění • HMAC – velké zpoždění Security Framework a.k.a. H.235v4 112 Od roku 2005 lze na webu nalézt návrhy nového bezpečnostního rámce (Security Framework – a.k.a. H.235v4) pro protokol H.323 zpracované ITU-T Study Group 16. Otázkou je další dostupnost norem, které nejsou u ITU tradičně bezplatně dostupné. Mód je rovněž znám pod názvy Integer Counter Mode (ICM) a Segmented Integer Counter (SIC). Od roku 2005 nebyl protokol H.235 dále rozvíjen, pouze v roce 2008 byl bezpečnostní rámec doplněn o Amendment 1 (ITU-T Rec. H.235.6 Amendment 1 „H.323 security: Voice encryption profile with native H.235/H.245 key management: Support for 192 and 256 bits AES“), který je odezvou na potřebu použití AES s delším klíčem. Jednotlivé složky rámce Security Framework a.k.a. H.235v4 113 H.323v6 (2006) 114  Primární změnou je koncept „Assigned Gatekeeper“ (k nim jsou koncové body registrované, např. z důvodu geografické vzdálenosti). Rozdíl oproti alternativním gatekeeperů je v tom, že si po přepnutí na alternativní gatekeeper stav přidělených gatekeeperů neustále monitoruje a po eliminaci důvodu přepnutí se vše vrací do původního stavu. Takovýto postup umožňuje efektivní hospodaření se zdroji.  Pro podporu doporučení ITU-T V.151 byly k Annex G zpracovány dodatky pro podporu ToIP prolínaného s audiem.  Dále byly doplněny nové kodeky GSM, iLBC, a H.264.  V oblasti bezpečnosti byl dokument H.235 rozčleněn na H.235.0 až H.235.9 atd. a byla přidána podpora pro SRTP.  Řada nových funkcí byla doplněna inkrementálně, byly vytvořeny i další nové dokumenty. Nové dokumenty H.323v6 115  H.239 – management rolí (živé video, prezentace atd.)  H.241 – rozšíření procedur videa (např. o podporu H.264 – AVC)  H.249 – rozšíření User Input Indications o událostí typu klik či pohyb kurzoru  H.361 – End-to-End QoS a signalizace priorit služeb  H.460.10 – transport pole ISUP „Call Party Category“  H.460.11 – nastavení zpožděného volání např. při průchodu firewallem  H.460.12 – mechanismus řešení kolize při výběru stejného obvodu GK  H.460.13 – dohled nad speciálními voláními (pohotovost atd.)  H.460.14 – Podpora MLPP (Multi-Level Precedence and Pre-emption)  H.460.15 – možnost shodit a přesměrovat volání  H.460.16 – zajištění handshakingu pro doručení zprávy Release Complete (obrana před vyhazováním zpráv TCP po uzavření soketu)  H.460.17 – tunelování RAS přes H.225.0 (část NAT/FW řešení)  H.460.18 – přenosy signalizace přes NAT a firewally  H.460.19 – přenosy média přes NAT a firewally jako proxy  H.460.20 – transport „location number“ (obdobně ISUP – ISDN User Part)  H.460.21 – rozhlašování zpráv H.323v7 (2009) 116 Změny základních specifikací (H.225.0, a H.245) byly omezeny na minimum. Nicméně byla doplněna řada nových důležitých vlastností, což se opět řešilo pomocí GEF:  “single transmitter multicast”, což je užitečné např. pro MoH (Music on Hold) šířené ze známé IP adresy a známého portu.  Vlastnost umožňující H.323 síťovému prvku (např. MCU) kontaktovat H.323 terminály (např. videokonferenční či teleprezentační systém) a doručit jim kontaktní informace a na terminálu pak stačí pro připojení do konference jen stlačit tlačítko.  Schopnost přenášet v rámci H.225.0 informaci o volání ve více jazycích. Je to užitečné např. u mezinárodních poboček, kdy si může volaný zobrazit identifikaci volajícího v preferovaném jazyku.  Přenos varovných a poplašných zpráv protokolu CAP (Common Alerting Protocol, viz doporučení ITU-T Recommendation X.1303) systémem H.323. Nové specifikace H.323v7 117  H.460.22 – zajišťuje před vlastním voláním sesouhlasení bezpečnostních procedur mezi koncovými body. To například umožňuje před zahájením volání zjistit, zda volaný podporuje daný bezpečnostní signalizační mechanismu (např. IPSec či TLS).  H.460.23 – umožňuje pro H.323 zařízení za NAT/FW v koordinaci s gatekeeperem a STUN serverem zjistit typ NAT/FW, což se využívá v rámci H.460.24.  H.460.24 – definuje, jak zajistit komunikaci mezi koncovými body oddělenými NAT/FW zařízeními. Pokud dané zařízení nemá podporu protokolu pro přímé toky, je použito proxy v souladu s H.460.19. Strategie použití H.460.23 a H.460.24 vychází z použití těchto protokolů před zahájením volání, neboli většinou nezatěžují ALG (Application Layer Gateway), media proxy či jiné zařízení. Protokol H.235 118  Stanovuje bezpečností profily. To je nezbytné, protože H.323 nemá implementovány žádné bezpečnostní mechanismy.  Definované profily zavádějí různé stupně ochrany a zahrnují množinu bezpečnostních mechanismů. Výhody H.323 119  Výborná integrace s PSTN  Použití pro hlas, obraz i data  Vhodný jak pro audiokonference, tak pro videokonference  Standard přijatý výrobci i organizacemi jako je ETSI  Rychlé přidávání nových služeb Kritika H.323 120  Přílišná komplexnost – není ale nezbytné realizovat každou komponentu  Kodeky podle ITU – není problém doplnit libovolný kodek  Gatekeepery jako prvek zesložiťující řešení - mohou zabezpečovat rozklad adres - komunikace mezi jednoduchými telefony a složitými zařízeními - platforma pro doplňování nových služeb - a nakonec – nejde o povinný prvek 121 6. Příklady konfigurace na Cisco 1. konfigurace konfigurace brány H.323 122 Router(config)#voice service voip Router(conf-voi-serv)#h323 Router(conf-voi-serv)#no shutdown Router(config)#interface loopback 0 Router(config-if)#ip address 10.10.1.1 255.255.255.0 Router(config-if)#h323-gateway voip interface Router(config-if)#h323-gateway voip h323-id gw1 Router(config-if)#h323-gateway voip bind srcaddr 10.10.1.1 Router(config)#voice class codec 100 Router(config-class)#codec preference 1 g711alaw Router(config-class)#codec preference 2 g729br8 Router(config)#dial-peer voice 500 voip Router(config-dial-peer)#codec g711alaw Router(config)#voice class h323 600 Router(config-class)#h225 timeout tcp establish 10 (impl. 15) Router(config-class)#h225 timeout setup 10 Router(config)#dial-peer voice 500 voip Router(config-dial-peer)#voice-class h323 600 Router(config)#voice service voip Router(conf-voi-serv)#h323 Router(conf-serv-h323)#h225 timeout tcp call-idle never 2. Konfigurace (konfigurace gatekeeperu mezi dvěmi branami) 123 Konfigurace směrovače R2 (gatekeeper) 124 gatekeeper zone local ZoneA acme.com 10.7.7.1 zone local ZoneB acme.com zone prefix ZoneA 1... zone prefix ZoneB 2... gw-type-prefix 1#* default-technology arq reject-unknown-prefix bandwidth interzone default 64 bandwidth session default 16 no shutdown Konfigurace směrovače R1 (brána) 125 interface Serial0 bandwidth 128 ip address 10.1.1.2 255.255.255.0 encapsulation ppp h323-gateway voip interface h323-gateway voip id ZoneA ipaddr 10.7.7.1 1719 h323-gateway voip h323-id R1 h323-gateway voip tech-prefix 1# ! gateway ! dial-peer voice 2222 voip destination-pattern 2222 session target ras Konfigurace směrovače R3 (brána) 126 interface Serial0 bandwidth 2000 ip address 10.7.7.2 255.255.255.0 encapsulation ppp clock rate 2000000 h323-gateway voip interface h323-gateway voip id ZoneB ipaddr 10.7.7.1 1719 h323-gateway voip h323-id R3 interface Serial0 h323-gateway voip tech-prefix 1# ! gateway ! dial-peer voice 1111 voip destination-pattern 1111 session target ras Kontrola na R1 127 R1#show gateway H.323 ITU-T Version: 4.0 H323 Stack Version: 0.1 H.323 service is up Gateway R1 is registered to Gatekeeper ZoneA Alias list (CLI configured) E164-ID 1111 H323-ID R1 Alias list (last RCF) E164-ID 1111 H323-ID R1 H323 resource thresholding is Disabled Kontrola na R3 128 R3#show gateway H.323 ITU-T Version: 4.0 H323 Stack Version: 0.1 H.323 service is up Gateway R3 is registered to Gatekeeper ZoneB Alias list (CLI configured) E164-ID 2222 H323-ID R3 Alias list (last RCF) E164-ID 2222 H323-ID R3 H323 resource thresholding is Disabled Kontrola na R2 129 R2#show gatekeeper endpoints GATEKEEPER ENDPOINT REGISTRATION ================================ CallSignalAddr Port RASSignalAddr Port Zone Name Type Flags --------------- ----- -------------- ----- --------- ---- ----- 10.1.1.2 1720 10.1.1.2 52605 ZoneA VOIP-GW E164-ID: 1111 H323-ID: R1 Voice Capacity Max.= Avail.= Current.= 1 10.7.7.2 1720 10.7.7.2 52354 ZoneB VOIP-GW E164-ID: 2222 H323-ID: R3 Voice Capacity Max.= Avail.= Current.= 1 Total number of active registrations = 2 Aktivita RAS na směrovači R1 (konec příkladu) 130 R1#show h323 gateway ras RAS STATISTICS AT 00:25:56 RAS MESSAGE REQUESTS SENT CONFIRMS RCVD REJECTS RCVD GK Discovery grq 5 gcf 1 grj 0 Registration rrq 34 rcf 34 rrj 0 Admission arq 1 acf 1 arj 0 Bandwidth brq 0 bcf 0 brj 0 Disengage drq 0 dcf 0 drj 0 Unregister urq 0 ucf 0 urj 0 Resource Avail rai 0 rac 0 Req In Progress rip 0 3. konfigurace 131 GW_1 − ECV−2600−17 – část 1 132 hostname ECV−2610−17 ! interface Ethernet0/0 ip address 10.52.218.49 255.255.255.0 h323−gateway voip interface !−−−− This command enables VoIP GW functions on the interface. h323−gateway voip id gk−zone1.test.com ipaddr 10.52.218.47 1718 !−−−− This command defines the GK this GW works with. h323−gateway voip h323−id gw_1 !−−−− This command defines the GW alias for the GK. h323−gateway voip tech−prefix 1# !−−−− It is desirable to have tech prefix on the GW for !−−−− reliable registration and call routing. h323−gateway voip bind srcaddr 10.52.218.49 !−−−− This command is not necessary in this simple topology, !−−−− but for complex networks, it is recommended to use it. GW_1 − ECV−2600−17 – část 2 133 voice−port 1/1/1 ! dial−peer voice 1 voip destination−pattern 16.. session target ras !−−−− All IP addresses for the destination pattern 16.. should !−−−− be resolved through the requests to the GK. ! dial−peer voice 2 pots destination−pattern 1711 port 1/1/1 no register e164 !−−−− This command prevents registration of this number with !−−−− the GK. The GW is registered with the GK with this alias only. ! gateway ! end GW_2 − ECV−2600−16 134 hostname ECV−2610−16 ! interface Ethernet0/0 ip address 10.52.218.48 255.255.255.0 h323−gateway voip interface h323−gateway voip id gk−zone2.test.com ipaddr 10.52.218.46 1718 h323−gateway voip h323−id gw_2 h323−gateway voip tech−prefix 1# h323−gateway voip bind srcaddr 10.52.218.48 voice−port 1/1/1 ! dial−peer voice 1 voip destination−pattern 17.. session target ras ! dial−peer voice 2 pots destination−pattern 1611 port 1/1/1 no register e164 GK_1 ECV−2600−15 135 hostname ECV−2610−15 ! interface Ethernet0/0 ip address 10.52.218.47 255.255.255.0 ! gatekeeper zone local gk−zone1.test.com test.com 10.52.218.47 !−−−− This command defines the local zone. The GK name and !−−−− zone name have the same meaning. zone remote gk−zone2.test.com test.com 10.52.218.46 1719 !−−−− This command defines the name of the remote GK (zone). zone prefix gk−zone2.test.com 16.. !−−−− This command explicitly defines the number length with !−−−− the number of dots. zone prefix gk−zone1.test.com 17.. gw−priority 10 gw_1 !−−−− This command explicitly defines which GW handles !−−−− calls for 17.. numbers that could be done for the !−−−− local zones only. gw−type−prefix 1#* default−technology !−−−− This command defines the default technology prefix !−−−− that is necessary for routing decisions. GK_2 ECV−2600−14 136 hostname ECV−2610−14 ! interface Ethernet0/0 ip address 10.52.218.46 255.255.255.0 ! gatekeeper zone local gk−zone2.test.com test.com 10.52.218.46 zone remote gk−zone1.test.com test.com 10.52.218.47 1719 zone prefix gk−zone2.test.com 16.. gw−priority 10 gw_2 zone prefix gk−zone1.test.com 17.. gw−type−prefix 1#* default−technology no shutdown ! end Informační zdroje 137  Packetizer http://www.packetizer.com/  H.323 Forum http://www.h323forum.org/  H.323 Plus http://www.h323plus.org/