Questo documento descrive come configurare e risolvere i problemi relativi al protocollo MGCP (Media Gateway Control Protocol); MGCP è un protocollo Call Agent/Endpoint.
Nessun requisito specifico previsto per questo documento.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
| Attributo |
Definizione |
| Call Agent |
Elementi di controllo delle chiamate che svolgono il ruolo primario e forniscono funzionalità di intelligence delle chiamate centralizzate. |
| Endpoint |
Gli endpoint sono i dispositivi controllati dagli agenti di chiamata, ad esempio: FXO, FXS o un canale DS0. |
| PSTN |
Rete telefonica pubblica commutata. |
Il protocollo MGCP (Media Gateway Control Protocol) è definito dalla RFC 2705. MGCP è un protocollo Call Agent/Endpoint in cui l'endpoint è controllato da un tipo di agente di chiamata. L'intera funzionalità di intelligence di controllo è gestita da un agente di chiamata che indica all'endpoint l'azione da eseguire una volta rilevato un evento. MGCP utilizza la porta TCP 2428 e la porta UDP 2427.
La porta TCP 2428 in MGCP viene utilizzata per aprire un nuovo socket con l'agente di chiamata per determinare se è possibile stabilire la connessione. Senza questo nuovo socket, i successivi messaggi MGCP non possono essere scambiati. Viene inoltre utilizzato per inviare/ricevere messaggi backhaul tra gli endpoint PRI e l'agente di chiamata a cui è registrato. Infine, la porta TCP 2428 viene utilizzata per eseguire il failover agli agenti di chiamata di backup nel caso in cui un agente di chiamata primario non risponda.
La porta UDP 2427 in MGCP viene utilizzata per i messaggi MGCP scambiati tra gli endpoint e gli agenti chiamate.
Questo è un esempio di flusso MGCP di base. In questo esempio, il gateway riceve una nuova chiamata dalla PSTN su questo Voice Gateway (endpoint). Il gateway notifica all'agente di chiamata (CUCM) la nuova chiamata che viene ricevuta. L'agente di chiamata indica al gateway di creare una connessione per la nuova chiamata. Infine, il gateway invia un OK all'agente di chiamata per stabilire la chiamata.

È necessario un identificatore per ogni endpoint per consentire all'agente di chiamata di determinare l'utente a cui inviare un evento o la provenienza di un evento. Gli identificatori di endpoint hanno due componenti principali:
Esempi:
In questo documento i componenti della configurazione sono stati suddivisi in singoli passaggi.
Sul gateway analogico che si intende registrare su CUCM, questa è la configurazione minima richiesta. È sufficiente aggiungere questa configurazione per avviare il processo di registrazione, poiché la configurazione rimanente viene scaricata da CUCM:
VG320(config)# mgcp call-agent 10.50.217.100 2427 service-type mgcp version 0.1 VG320(config)# ccm-manager config server 10.50.217.100 VG320(config)# ccm-manager config VG320(config)# ccm-manager mgcp VG320(config)# mgcp **Note on the ISR4000s if you fail to down load your configuration file, you must add the command: VG320(config)# ip tftp source-interface GigabitEthernet x/x/x
Passaggio 1. Per configurare il gateway MGCP in CUCM, è necessario accedere a Cisco Unified CM Administration. Una volta eseguito l'accesso, selezionare Device > Gateway:

Passaggio 2. La selezione precedente consente di accedere alla pagina Trova ed elenca gateway. In questa pagina, selezionare il pulsante Aggiungi nuovo con il segno "+" (più):

Passaggio 3. Dopo aver selezionato Aggiungi nuovo, viene richiesto di scegliere un tipo di gateway. Utilizzare l'elenco a discesa per scegliere l'hardware che si desidera registrare e selezionare Avanti per scegliere il protocollo desiderato per il dispositivo (è necessario selezionare MGCP):

Passaggio 4. Dopo aver selezionato l'hardware e il protocollo utilizzati, è necessario configurare il nome di dominio, il gruppo Cisco Unified Communications Manager e le informazioni sul modulo. Questi sono i campi principali necessari per registrare un endpoint tramite MGCP.
Passaggio 5. Il nome di dominio è composto da 1 a 2 parti. Almeno nel campo Domain Name (Nome dominio), è necessario immettere il nome host del router. In questo scenario, il nome host è:
VG320. Tuttavia, se sul gateway è configurato un nome di dominio, è necessario configurare il nome di dominio completo del dispositivo:

Passaggio 6. Scegliere Salva. In questo modo si aggiorna la pagina e si può selezionare una sottounità. Dopo aver selezionato una sottounità, selezionare nuovamente Salva. È ora possibile visualizzare le porte configurabili:

Passaggio 7. Per configurare un endpoint, fare clic sulla porta a cui è collegato il dispositivo analogico (in questo scenario, 0/0/0). Dopo aver selezionato una porta, viene richiesto di configurare il tipo di porta:

Passaggio 8. In questo caso, selezionare POTS. Una volta selezionato, è possibile immettere tutti i valori necessari per le informazioni sul dispositivo come per qualsiasi altro endpoint di Call Manager. L'unico campo obbligatorio è Pool di dispositivi, tuttavia è possibile immettere valori aggiuntivi, ad esempio Spazio di ricerca chiamate. Al termine, fare clic su Salva.
Passaggio 9. A questo punto, il riquadro di sinistra ha compilato il campo Add a New DN (Aggiungi nuovo DN). È ora possibile associare un DN a questa porta, salvare e applicare la configurazione. Al termine, nella pagina di configurazione delle porte è possibile visualizzare la porta registrata:

In questa sezione vengono descritte le nozioni di base di MGCP Endpoint Registration e Call Setup. Sono inclusi i messaggi di comando visualizzati quando il gateway interagisce con l'agente di chiamata. In questo scenario, CUCM è il nostro Call Agent.

Affinché un endpoint MGCP si registri su CUCM, il gateway apre il socket TCP 2428 su CUCM. Da qui, utilizza la porta UDP 2427 per inviare messaggi di comando. Una volta aperto il socket, il gateway invia un comando RSIP al CUCM per informare che l'endpoint deve essere disattivato durante il riavvio. Il CUCM invia un semplice riconoscimento al riguardo. Al termine del riavvio, CUCM invia un messaggio RQNT con il parametro R: L/hd In questo modo, il gateway deve notificare a CUCM l'esistenza di un evento scollegato.
A questo punto, CUCM invia un Audit Endpoint (AUEP) al gateway per determinare lo stato dell'endpoint specificato. La risposta dal gateway è un ACK con le funzionalità degli endpoint. Al termine, l'endpoint viene registrato con CUCM. Di seguito viene riportato un esempio di output del comando debug:
000138: *Apr 23 19:41:49.010: MGCP Packet sent to <CUCM IP>:2427---> RSIP 39380951 aaln/S0/SU0/0@VG320.dillbrowLab.local MGCP 0.1 RM: restart <--- 000139: *Apr 23 19:41:49.030: MGCP Packet received from <CUCM IP>:2427---> 200 39380951 <--- 000140: *Apr 23 19:41:49.030: MGCP Packet received from <CUCM IP>:2427---> RQNT 3 AALN/S0/SU0/0@VG320.dillbrowLab.local MGCP 0.1 X: 2 R: L/hd Q: process,loop <--- 000141: *Apr 23 19:41:49.030: MGCP Packet sent to <CUCM IP>:2427---> 200 3 OK <--- 000142: *Apr 23 19:41:49.050: MGCP Packet received from <CUCM IP>:2427---> AUEP 4 AALN/S0/SU0/0@VG320.dillbrowLab.local MGCP 0.1 F: X, A, I <--- 000143: *Apr 23 19:41:49.050: MGCP Packet sent to <CUCM IP>:2427---> 200 4 I: X: 2 L: p:10-20, a:PCMU;PCMA;G.nX64, b:64, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:10-220, a:G.729;G.729a;G.729b, b:8, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:10-110, a:G.726-16;G.728, b:16, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:10-70, a:G.726-24, b:24, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:10-50, a:G.726-32, b:32, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:30-270, a:G.723.1-H;G.723;G.723.1a-H, b:6, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE L: p:30-330, a:G.723.1-L;G.723.1a-L, b:5, e:on, gc:1, s:on, t:10, r:g, nt:IN, v:T;G;D;L;H;R;ATM;SST;PRE M: sendonly, recvonly, sendrecv, inactive, loopback, conttest, data, netwloop, netwtest <---

L'immagine precedente è un esempio di chiamata in uscita.
È possibile vedere il proprio Call Agent, in questo caso CUCM, che inizia con un CRCX che ha ricevuto solo al gateway per stabilire la connessione per la chiamata. Il gateway risponde con un OK 200 che contiene SDP per ciò che supporta. Al termine dello scambio, CUCM invia un messaggio RQNT al gateway con il parametro S: G/rt In questo modo il gateway riprodurrà la riproduzione sul dispositivo. Dopo che l'estremità remota ha ricevuto la chiamata e l'ha ripresa, CUCM invia un MDCX con SDP al gateway per comunicargli le informazioni multimediali per il dispositivo più lontano. Il gateway restituisce un semplice 200 OK per confermare questa condizione, e a questo punto, è stato stabilito il supporto bidirezionale.
Dopo aver risposto alla chiamata, CUCM invia un altro RQNT con il parametro R: D/[0-9ABCD*#]. In questo modo il gateway comunica a CUCM che il DTMF è premuto mentre la chiamata è attiva, in modo che possa essere inoltrato al dispositivo successivo.
Al termine della chiamata, CUCM invia un MDCX al gateway con il comando M: recvonly per terminare il supporto, seguito da un DLCX per scollegare la chiamata. Di seguito viene riportato un esempio di output del comando debug:
001005: *May 13 14:28:15.633: MGCP Packet received from <CUCM IP>:2427---> CRCX 174 AALN/S0/SU1/0@VG320.dillbrowLab.local MGCP 0.1 C: A000000001b79063000000F5 X: 21 L: p:20, a:PCMU, s:off, t:b8 M: recvonly R: L/hu Q: process,loop <--- 001006: *May 13 14:28:15.637: MGCP Packet sent to <CUCM IP>:2427---> 200 174 OK I: 6 v=0 c=IN IP4 <Gateway IP> m=audio 16410 RTP/AVP 0 101 100 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-15 a=rtpmap:100 X-NSE/8000 a=fmtp:100 192-194 <--- 001007: *May 13 14:28:15.789: MGCP Packet received from <CUCM IP>:2427---> RQNT 175 AALN/S0/SU1/0@VG320.dillbrowLab.local MGCP 0.1 X: 22 R: L/hu S: G/rt Q: process,loop <--- 001008: *May 13 14:28:15.789: MGCP Packet sent to <CUCM IP>:2427---> 200 175 OK <--- 001009: *May 13 14:28:17.793: MGCP Packet received from <CUCM IP>:2427---> MDCX 176 AALN/S0/SU1/0@VG320.dillbrowLab.local MGCP 0.1 C: A000000001b79063000000F5 I: 6 X: 23 L: p:20, a:PCMU, s:off, t:b8 M: sendrecv R: L/hu, L/hf, D/[0-9ABCD*#] S: Q: process,loop v=0 o=- 6 0 IN EPN AALN/S0/SU1/0@VG320.dillbrowLab.local s=Cisco SDP 0 t=0 0 m=audio 18946 RTP/AVP 0 101 c=IN IP4 <Phone IP> a=rtpmap:101 telephone-event a=fmtp:101 0-15 <--- 001010: *May 13 14:28:17.797: MGCP Packet sent to <CUCM IP>:2427---> 200 176 OK <--- 001011: *May 13 14:28:17.797: MGCP Packet received from <CUCM IP>:2427---> RQNT 177 AALN/S0/SU1/0@VG320.dillbrowLab.local MGCP 0.1 X: 24 R: L/hu, D/[0-9ABCD*#], L/hf S: Q: process,loop <--- 001012: *May 13 14:28:17.797: MGCP Packet sent to <CUCM IP>:2427---> 200 177 OK <--- 001015: *May 13 14:28:20.813: MGCP Packet received from <CUCM IP>:2427---> DLCX 178 AALN/S0/SU1/0@VG320.dillbrowLab.local MGCP 0.1 C: A000000001b79063000000F5 I: 6 X: 25 R: L/hd S: Q: process,loop <--- 001016: *May 13 14:28:20.845: MGCP Packet sent to <CUCM IP>:2427---> 250 178 OK P: PS=151, OS=24160, PR=146, OR=23360, PL=0, JI=0, LA=0 <---
Quando si risolvono i problemi relativi a MGCP, è possibile visualizzare alcuni utili comandi show e debug per determinare il motivo per cui la registrazione o una chiamata non è riuscita. È consigliabile verificare se il gateway MGCP è registrato per l'agente di chiamata. È possibile eseguire il comando show show ccm-manager o show mgcp per verificare:
VG320# show ccm-manager MGCP Domain Name: VG320.dillbrowLab.local Priority Status Host ============================================================ Primary Registered <CUCM IP> First Backup None Second Backup None Current active Call Manager: <CUCM IP> Backhaul/Redundant link port: 2428 Failover Interval: 30 seconds Keepalive Interval: 15 seconds Last keepalive sent: 17:42:40 UTC Jul 12 2019 (elapsed time: 00:00:15) Last MGCP traffic time: 17:42:55 UTC Jul 12 2019 (elapsed time: 00:00:00) VG320# show mgcp MGCP Admin State ACTIVE, Oper State ACTIVE - Cause Code NONE MGCP call-agent: <CUCM IP> 2427 Initial protocol service is MGCP 0.1 MGCP validate call-agent source-ipaddr DISABLED MGCP validate domain name DISABLED MGCP block-newcalls DISABLED
Questi comandi sono stati abbreviati in modo da contenere solo l'output pertinente. Per ulteriori informazioni, fare riferimento ai seguenti output del comando show:
Se i comandi show precedenti sono estratti, è possibile eseguire questi debug sul dispositivo per determinare ulteriormente il motivo per cui la chiamata non è riuscita:
I debug precedenti rappresentano un ottimo punto di partenza per la risoluzione dei problemi di registrazione e configurazione delle chiamate.
| Revisione | Data di pubblicazione | Commenti |
|---|---|---|
5.0 |
02-Jul-2026
|
Controllo ortografia, spaziatura e testo alternativo aggiornati. |
4.0 |
29-Aug-2023
|
PII, SEO, Requisiti di personalizzazione e formattazione aggiornati. |
3.0 |
15-Jul-2022
|
Certificazione |
1.0 |
14-Aug-2019
|
Versione iniziale |