Comprendre les Gatekeepers H.323
Sommaire • Gatekeeper - Signalisation d'appel routée contre • Introduction • Définition du Gatekeeper • Zones Gatekeeper et sous-réseaux • Fonctionnalité Gatekeeper - Fonctions Gatekeeper obligatoires - Fonctions Gatekeeper optionnelles • Suite de protocoles H.323 - Signalisation RAS H.225 - Signalisation de contrôle d'appel (Setup) H.225 - Contrôle de média et transport H.245 - Présentation générale de la suite de protocoles H.323 • H.225 - Signalisation RAS - Gatekeepers et Passerelles - RAS - Découverte du Gatekeeper - RAS - Enregistrement et désenregistrement - RAS - Admission - RAS - Localisation des extrémités - RAS - Information d'état - RAS - Contrôle de bande passante • Gatekeeper - Signalisation d'appel routée contre signalisation directe d'extrémité à extrémité • Appels de Gatekeeper à Passerelles - Etablissement d'appel intra-zone - Etablissement d'appel inter-zone - Etablissement d'appel inter-zone avec Gatekeeper annuaire - Etablissement d'appel assisté par Proxy - Déconnexion • Evolutivité de réseau H.323 avec Gatekeeper • Tables des éléments de protocole H.225 RAS
Introduction Le standard UIT-T H.323 spécifie quatre composants: ● Passerelle ● Gatekeeper ● Terminal ● MCU (Multipoint Control Unit) Le but de ce document est de fournir une introduction à la fonctionnalité et au fonc- tionnement du Gatekeeper dans des réseaux VoIP (Voice over IP) H.323. Définition du Gatekeeper Un Gatekeeper est une entité H.323 sur le réseau qui fournit des services tels que la traduction d'adresse et le contrôle d'accès réseau pour des terminaux H.323, des pas- serelles et MCUs. Ils peuvent également fournir d'autres services tels que la gestion de bande passante, accounting et plans de numérotation pouvant être centralisés pour fournir de l'évolutivité. Les Gatekeepers sont logiquement séparés des extrémités H.323 telles les terminaux et les passerelles. Ils sont optionnels dans un réseau H.323 mais s'ils sont présents les extrémités doivent utiliser leurs services. Zones Gatekeeper et sous-réseaux Une zone est un ensemble de nœuds H.323 tels que des passerelles, des terminaux et MCUs enregistrés sur le Gatekeeper. Il peut y avoir qu'un seul Gatekeeper par zone. Ces zones peuvent recouvrir des sous-réseaux et un Gatekeeper peut gérer des passe- relles dans un ou plusieurs de ces sous-réseaux. GK GK V V V V Zone 1 Zone 2
Fonctionnalité Gatekeeper Le standard H.323 définit les fonctions obligatoires et optionnelles du Gatekeeper comme cela est décrit ci-dessous: Fonctions Gatekeeper obligatoires ● Traduction d'adresse - Traduit les IDs H.323 (tel gwy1@domain.com) et les numé- ros E.164 (numéros téléphoniques standards) vers des adresses de points d'ex- trémité. ● Contrôle d'admission - Contrôle l'admission des points d'extrémité dans le réseau H.323. Pour réaliser cela le Gatekeeper utilise: - Des messages d'enregistrement, d'admission et d'état (RAS) H.225. - Admission Request (ARQ) - Admission Confirm (ACF) - Admission Reject (ARJ) ● Contrôle de bande passante - Consiste à gérer les demandes en bande passante des points d'extrémité. Pour réaliser cela, le Gatekeeper utilise les messages RAS suivants: - Bandwidth Request (BRQ) - Bandwidth Confirm (BCF) - Bandwidth Reject (BRJ) ● Gestion de zone - Le Gatekeeper fournit la gestion de la zone pour tous les points d'extrémité enregistrés dans la zone. Par exemple contrôle du processus d'enre- gistrement des points d'extrémité. Fonctions Gatekeeper optionnelles ● Autorisation d'appel - Avec cette option le Gatekeeper peut restreindre l'accès pour certains terminaux ou passerelles et/ou ont des politiques d'accès restreint selon l'heure et le jour. ● Gestion des communications - Avec cette option, le Gatekeeper maintient des in- formations sur les communications actives et les utilise pour indiquer les extré- mités occupées et les redirections. ● Signalisation de contrôle d'appel - Avec cette option le Gatekeeper peut router les messages de signalisation d'appel entre extrémités H.323 en utilisant le modèle GKRCS( Gatekeeper-Routed Call Signaling). Alternativement le Gatekeeper peut autoriser les points d'extrémité à transmettre des messages de signalisation d'ap- pel H.225 directement entre extrémités. Note: Les Gatekeepers Cisco sont basés sur Direct Endpoint Signaling. Ils ne suppor- tent pas GKRS.
Suite de protocoles H.323 La suite de protocole H.323 est divisée en trois zones de contrôle principales: ● Signalisation RAS (H.225) ● Contrôle d'appel/Etablissement d'appel (H.225) ● Signalisation de contrôle de média et transport (H.245) Traduction d'adresse: Chaque passerelle a besoin de connaître uniquement le Gatekeeper et pas les autres passerelles Gatekeeper GK H.225 RAS (UDP) H.225 RAS (UDP) H.225 (Q.931) Call Setup (TCP) V Passerelle A V H.225 Call Control (TCP) Passerelle B RTP (UDP) Signalisation RAS H.225 RAS est le protocole de signalisation utilisé entre les passerelles et les gatekeepers. Le canal RAS est ouvert avant tout autre canal et il est indépendant des canaux d'établissement d'appel et média de transport. ● RAS utilise UDP (User Datagram Protocol) port 1719 (messages RAS H.225) et le 1718 ( découverte Gatekeeper unicast). Signalisation de contrôle d'appel (Setup) H.225 La signalisation de contrôle d'appel H.225 est utilisée pour établir des communica- tions entre les extrémités H.323. La recommandation UIT-T H.225 spécifie l'utilisa- tion et le support des messages de signalisation Q.931. Un canal de contrôle fiable (TCP) est crée à travers le réseau IP sur le port TCP 1720. Ce port initie les messages de contrôle d'appel Q.931 pour l'établissement, le maintien et la libération des communications. Quand un Gatekeeper est présent dans un réseau de zone, les messages d'établisse- ment d'appel H.225 sont échangés via Direct Call Signaling ou Gatekeeper Routed- Call Signaling (GKRCS). la méthode est choisie par le Gatekeeper durant l'échange de
Contrôle de média et transport H.245 messages d'admission RAS. Si aucun Gatekeeper n'est présent, les messages H.323 sont échangés directement entre les extrémités. Contrôle de média et transport H.245 H.245 gère les messages de contrôle de bout en bout entre entités H.323. Les procé- dures H.245 établissent des canaux logiques pour la transmission des informations audio, vidéo, données et canal de contrôle. Il est utilisé pour négocier l'usage du ca- nal et les capacités telles que: ● Contrôle de flux ● Capacités d'échanges de messages. Une explication détaillée de H.245 est hors de la portée de ce document. Présentation générale de la pile de protocoles H.323 Equipement Vidéo E/S Codecs Vidéo H.261, H.263 Réception delay (sync) Couche H.225 UDP RTP RTCP IP Codecs Audio G.711, G.722 G.723, G.728, G.729 Equipement Audio E/S Données Applications utilisateur T.120, etc.. TCP Contrôle système Interface utilisateur contrôle système Contrôle H.245 Contrôle d'appel H.225 Contrôle RAS H.225 UDP
H.225 - Signalisation RAS - Gatekeepers et Passerelles RAS - Découverte du Gatekeeper Il y a deux processus par lesquels les terminaux/passerelles découvrent leur Gate- keeper de zone: ● Découverte unicast (méthode manuelle) - Cette méthode utilise le port UDP 1718. Dans ce processus les extrémités sont configurées avec l'adresse IP du Gatekeeper et peuvent ainsi tenter de s'enregistrer immédiatement. Le Gatekeeper répondra avec un message Gatekeeper Confirm (GCF) ou Gatekeeper Rejection (GRJ). ● Découverte multicast (découverte automatique) - Utilise UDP avec l'adresse multi- cast 224.0.1.41. L'auto-découverte permet à une extrémité de découvrir son Gate- keeper au travers d'un message multicast. Comme les points d'extrémité n'ont pas besoin d'être configurés statiquement avec l'adresse du Gatekeeper, cette méthode demande moins de charge d'administration. Un Gatekeeper répond au message GCF ou reste silencieux. Un Gatekeeper peut être configuré pour répondre uni- quement à certains sous-réseaux. Si un Gatekeeper n'est pas disponible, la passerelle tentera périodiquement de redé- couvrir un Gatekeeper. Si une passerelle découvre que le Gatekeeper n'est plus dis- ponible, elle arrête d'accepter les nouveaux appels et tente de redécouvrir un autre Gatekeeper. les communications actives ne sont pas affectées. Gatekeeper GK GRQ (Unicast) GRQ (Multicast) GCF GCF V Passerelle A V Passerelle B
Découverte du Gatekeeper Le tableau suivant définit les messages de découverte de Gatekeeper RAS: Découverte du Gatekeeper GRQ( Gatekeeper Request) Message transmis au Gatekeeper par une extrémité. GCF (Gatekeeper Confirm) Réponse du Gatekeeper à une extrémité indiquant l'adresse de transport du canal RAS du Gatekeeper. GRJ(Gatekeeper Reject) Réponse du Gatekeeper à une extrémité rejetant la requête d'enregistrement de l'extrémité. Usuellement du à une erreur de configuration de la passerelle ou du Gatekeeper. RAS - Enregistrement et désenregistrement L'enregistrement est un processus par lequel les passerelles, les terminaux et/ou les MCUs joignent une zone et informent le Gatekeeper de leur adresse IP et de leur alias. L'enregistrement se produit après le processus de découverte. Chaque passe- relle peut s'enregistrer sur un seul Gatekeeper. Il n'y a qu'un seul Gatekeeper par zone. La passerelle H.323 s'enregistre avec un ID H.323 (ID email) ou une adresse E.164. Par exemple: ● Email ID (H.323 ID): gwy-01@domain.com ● Adresse E.164 : 0155442211 Gatekeeper GK RCF RCF RRQ RRQ V Passerelle B Passerelle A V
Enregistrement/Désenregistrement Le tableau suivant définit les messages d'enregistrement et de désenregistrement RAS Gatekeeper. Enregistrement/Désenregistrement RRQ (Registration_Request) Transmis d'une extrémité vers l'adresse du canal RAS Gatekeeper. RCF (Registration_Confirm) Réponse du Gatekeeper confirmant l'enregistrement de l'extrémité. RRJ (Registration_Reject) Réponse du Gatekeeper rejetant l'enregistrement de l'extrémité. URQ (Unregister_Request) Transmis par une extrémité ou un Gatekeeper pour annuler l'enregistrement. UCF (Unregister_Confirm) confirmer l'annulation de l'enregistrement. URJ (Unregister_Reject) Indique qu'une extrémité n'avait pas été enregistrée par le Gatekeeper. RAS - Admission Les messages d'admission entre les extrémités et le Gatekeeper fournissent la base pour les admissions d'appel et le contrôle de bande passante. Les Gatekeepers auto- risent l'accès à des réseaux H.323 par confirmation ou rejet d'une requête d'admis- sion. Le tableau suivant définit les messages d'admission RAS. Messages d'admission ARQ (Admission_Request) Une extrémité tente d'initier un appel. ACF (Admission_Confirm) Réponse du Gatekeeper qui admet l'appel. Ce message contient l'adresse IP de la passerelle de terminaison ou d'un autre Gatekeeper et permet à la passerelle origine d'initier les procédures de signalisation de contrôle d'appel. ARJ (Admission_Reject) Refuse la requête de l'extrémité pour accéder au réseau pour cet appel particulier.
Requêtes de Localisation RAS - Localisation des extrémités Les messages de requêtes de localisation sont communément utilisés entre Gatekee- pers inter-zone pour obtenir les adresses IP des extrémités des différentes zones. Le tableau suivant définit les messages de requêtes de localisation RAS. Requêtes de Localisation LRQ (Admission_Request) Transmise pour demander l'information de contact Gatekeeper pour une ou plusieurs adresses E.164. LCF (Admission_Confirm) Réponse transmise par le Gatekeeper qui contient le canal de signalisation d'appel ou l'adresse du canal RAS lui-même ou l'extrémité demandée. Il utilise sa propre adresse quand GKRCS est utilisé. Il utilise l'adresse de l'extrémité demandée quand Directed Endpoint Call Signaling est utilisé. LRJ (Admission_Reject) Transmise par les Gatekeepers qui reçoivent un LRQ pour lequel l'extrémité n'est pas enregistrée ou ne dispose pas des ressources nécessaires. RAS - Information d'état Le Gatekeeper peut utiliser le canal RAS pour obtenir des informations d'état sur les extrémités. Ceci peut être utilisé pour superviser si l'extrémité est en ligne ou hors ligne. Le tableau suivant définit les messages d'information d'état RAS. Information d'état IRQ (Information_Request) Transmis par le Gatekeeper vers une extrémité pour demander une information d'état. IRR (Information_Request_Response) Transmis par l'extrémité vers le Gatekeeper en réponse à IRQ. Ce message est également transmis de l'extrémité vers le Gatekeeper si celui-ci demande des mises à jour d'état périodiques. Le message IRR est utilisé par les passerelles pour informer le Gatekeeper des communications actives. IACK (Information_Request_Acknowledge) Utilisé par le Gatekeeper pour répondre aux messages IRR. INACK (Information_Request_Neg_Acknowledge)
Gatekeeper - Signalisation d'appel routée contre RAS - Contrôle de bande passante Le contrôle de bande passante est initialement géré au travers de la séquence des messages d'admission (ARQ/ACF/ARJ). cependant la bande passante peut changer pendant la communication. Le tableau suivant définit les messages de contrôle de bande passante RAS. Contrôle de bande passante BRQ (Bandwidth_Request) Transmis par une extrémité le vers Gatekeeper pour demander une augmentation/diminution de bande passante pour cette communication. BCF (Bandwidth_Confirm) Transmis par le Gatekeeper pour confirmer l'accepta- tion de bande passante. BRJ (Bandwidth_Reject) Transmis par le Gatekeeper pour rejeter le changement de bande passante. RAI (Resource_Availability_Indicator) Utilisé par les passerelles pour informer le Gatekeeper si les ressources sont disponibles dans la passerelle pour prendre une nouvelle communication. RAC (Resource_Availability_Confirm) Acquittement par le Gatekeeper de la réception du message RAI. Gatekeeper - Signalisation d'appel routée contre signalisation directe d'extrémité à extrémité Il y a deux types de signalisation d'appel pour le Gatekeeper: ● Direct Endpoint Signaling - Avec cette méthode, les messages d'établissement d'ap- pel sont dirigés vers la passerelle de terminaison ou vers l'autre extrémité. ● Gatekeeper-Routed Call Signaling (GKRCS) - Avec cette méthode les messages d'établissement d'appel sont dirigés vers le Gatekeeper. Note: Les Gatekeepers IOS Cisco sont basés sur "Direct Endpoint Signaling" et ne supportent pas GKRCS. Les schémas suivants expliquent les différences entre les deux méthodes. Direct Endpoint Signaling Gatekeeper-Routed Call Signaling GK GK H.225 RAS H.225 RAS H.225 RAS H.225 RAS H.225/H.245 Signalisation d'appel H.225/H.245 Signalisation d'appel V V V V Trafic RTP Voix Trafic RTP Voix
Appels de Gatekeeper à Passerelles Dans les sections suivantes, seuls les scénarios Direct Call Signaling sont présentés. Il est supposé également que les passerelles ont découvert leurs Gatekeepers et se sont enregistrées sur ceux-ci. Etablissement d'appel intra-zone GK-1 V GWB GWA 1 2 3 4 5 6 7 8 Terminal A 415-557-1111 Terminal B 408-667-1111 1) Le Terminal A numérote 408667111 pour appeler le terminal B. 2) GWA transmet un ARQ à GK-1 pour demander la permission d'appeler le terminal B. 3) GK-1 fait une recherche et trouve que le Terminal B est enregistré. Il retourne un ACF avec l'adresse IP de la passerelle GWB 4) GWA transmet un Call Setup Q.931 vers GWB avec le numéro de téléphone du terminal B. 5) GWB transmet un ARQ à GK-1 pour demander la permission de répondre à l'appel de GWA. 6) GK1 retourne un ACF avec l'adresse IP de GWA 7) GWB établit une communication POTS (RTC) vers le terminal 4086671111 8) Quand le terminal B répond, GWB transmet un message Q.931 Connect vers GWA. 9) GWA et GWB transmettent des IRR à GK-1 après l'établissement d'appel.
Etablissement d'appel inter-zone GK-1 GK-2 3 4 2 7 3 8 5 6 1 V V 9 Terminal A 415-557-1111 GWA 10 GWB Terminal B 408-667-1111 1) Le Terminal A numérote 408667111 pour appeler le terminal B. 2) GWA transmet un ARQ à GK-1 pour demander la permission d'appeler le terminal B. 3) GK-1 fait une recherche et ne trouve pas Terminal B enregistré. GK-1 fait une recherche de préfixe et trouve une correspondance avec GK-2. GK-1 transmet un LRQ à GK-2 et un RIP (Request In Progress) à GWA. 4) GK-2 fait une recherche et trouve le terminal B enregistré. Il retourne un LCF vers GK-1 avec l'adresse IP de GWB . 5) GK-1 transmet un ACF à GWA avec l'adresse IP de GWB. 6) GWA transmet un Call Setup Q.931 vers GWB avec le numéro de téléphone du terminal B. 7) GWB transmet un ARQ à GK-2 demandant la permission de répondre à l'appel de GWA. 8) GK-2 retourne un ACF avec l'adresse IP de GWA. 9) GWB établit un appel POTS (RTC) vers le Terminal B à 4086671111. 10) Quand le terminal B répond GWB transmet un message Call connect Q.931 vers GWA. Etablissement d'appel inter-zone avec Gatekeeper annuaire Une fonctionnalité majeure des Gatekeepers est de garder trace des autres zones H.323 et d'acheminer les appels de manière appropriée. Quand plusieurs zones H.323 sont présentes, la configuration des Gatekeepers peut devenir intensive. Dans de grandes installations VoIP il est possible de configurer un Gatekeeper annuaire cen- tralisé qui contient les enregistrements de toutes les différentes zones et coordonne le processus d'acheminement des LRQ. Avec des Gatekeepers annuaires, un maillage total n'est plus nécessaire entre les Gatekeepers des différentes zones. Note: Un Gatekeeper annuaire n'est pas un standard mais une implémentation pro- priétaire Cisco.
Etablissement d'appel assisté par Proxy GK-1 V GWB GWA 1 2 3 4 5 8 7 10 Terminal A 415-557-1111 Terminal B 408-667-1111 9 GK-2 11 Dir-GK 6 1) Le Terminal A numérote 408667111 pour appeler le terminal B. 2) GWA transmet un ARQ à GK-1 pour demander la permission d'appeler le terminal B. 3) GK-1 fait une recherche et ne trouve pas Terminal B enregistré. GK-1 fait une recherche de préfixe et trouve une correspondance générique avec Dir-GK. GK-1 transmet un LRQ à Dir-GK et un RIP (Request In Progress) à GWA. 4) Dir-GK fait une recherche de préfixe et trouve GK-2; il achemine le LRQ vers GK-2. 5-11) Etapes identiques aux étapes 4 à 10 de l'exemple précédent Etablissement d'appel assisté par Proxy GK-1 V GWB GWA 1 2 4 5 8 7 10 Terminal A 415-557-1111 Terminal B 408-667-1111 9 3 GK-2 6 Proxy-A Proxy-B
1) Le Terminal A numérote 408667111 pour appeler le terminal B 1) Le Terminal A numérote 408667111 pour appeler le terminal B. 2) GWA transmet un ARQ à GK-1 pour demander la permission d'appeler le terminal B. 3) GK-1 transmet un LRQ à GK2. 4) GK-2 retourne l'adresse de Proxy-B cachant l'identité de GWB. 5) GK1 sait comment atteindre Proxy-B au travers de Proxy-A aussi il transmet l'adresse de Proxy-A à GWA. 6) GWA appelle Proxy-A. 7) Proxy-A consulte GK-1 pour trouver la vraie destination. GK-1 lui indique d'appeler Proxy-B. 8) Proxy-A appelle Proxy-B. 9) Proxy-B consulte GK-2 pour la vraie destination qui est GWB. GK-2 donne l'adresse de GWB à Proxy-B. 10) Proxy-B achemine l'appel vers GW-B. A partir de ce point l'établissement s'effectuent comme dans les exemples précédents. Déconnexion GK-1 GK-2 2 4 5 V 3 V 1 GWB Terminal A 415-557-1111 GWA Terminal B 408-667-1111 Les terminaux A et B sont en conversation 1) Le Terminal B raccroche. 2) GWB transmet un DRQ à GK-2 libérant la communication entre les terminaux A et B. Un message DCF est reçu peu de temps après. 3) GWB transmet un message Q.931 Release Complete vers GWA. 4) GWA transmet un DRQ vers GK-1 libérant la communication entre les terminaux A et B. Un message DCF est reçu peu de temps après. 5) GWA signale une libération de communication au réseau voix (le mécanisme est différent selon le circuit utilisé sur GWA. Si c'est un téléphone (FXS) il n'y a pas de mécanisme pour signaler la déconnexion.
Evolutivité de réseau H.323 avec Gatekeeper Les schémas suivants illustrent clairement le concept d'évolutivité des réseaux VoIP avec des Gatekeepers et des Gatekeepers annuaires. Petit Réseau - Passerelles uniquement Petit Réseau - Simplifié avec Gatekeeper Réseau Moyen - Plusieurs Gatekeepers Grand Réseau - Plusieurs Gatekeepers et Gatekeeper Annuaire
Tables des éléments de protocole H.225 RAS Découverte du Gatekeeper ● Gatekeeper Request (GRQ) ● Gatekeeper Confirm (GCF) ● Gatekeeper Reject (GRJ) Enregistrement Passerelle/Terminal ● Registration Request (RRQ) ● Registration Confirm (RCF) ● Registration Reject (RRJ) Désenregistrement Passerelle/Terminal ● Unregistration Request (URQ) ● Unregistration Confirm (UCF) ● Unregistration Reject (URJ) Demande de Localisation ● Location Request (LRQ) ● Location Confirm (LCF) ● Location Reject (LRJ) Admission d'appel ● Admission Request (ARQ) ● Admission Confirm (ACF) ● Admission Reject (ARJ) Libération ● Disengage Request (DRQ) ● Disengage Confirm (DCF) ● Disengage Reject (DRJ) Disponibilité de Ressource ● Resource Availability Indicator (RAI) ● Resource Availability Confirm (RAC) Modification de Bande passante ● Bandwidth Change Request (RRQ) ● Bandwidth Change Confirm (RCF) ● Bandwidth Change Reject (BRJ) Requête en cours ● Request in Progress (RIP) Demande d'état ● Info Request (IRQ) ● Info Request Response (IRQ) ● Info Request Ack (IACK) ● Info Request Nak (INAK)