Inleiding
Dit document beschrijft hoe u het Media Gateway Control Protocol (MGCP) kunt configureren en problemen kunt oplossen. MGCP is een Call Agent/Endpoint protocol.
Voorwaarden
Vereisten
Er zijn geen specifieke vereisten van toepassing op dit document.
Gebruikte componenten
- Cisco Unified Communications Manager 11.5
- VG320
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Achtergrondinformatie
Opmerking: dit document maakt gebruik van configuratievoorbeelden en debug en toon opdrachtoutput als referentiepunten. De vele functies in dit document zijn duidelijk gemarkeerd met de versie waarin de functie is geïntroduceerd in Cisco IOS® en Cisco IOS® XE.
Gemeenschappelijke definities
Kenmerk |
Definitie |
Call Agent |
De Call Control elementen die de primaire rol spelen en gecentraliseerde call intelligence leveren. |
Endpoints |
De endpoints zijn de apparaten die door de Call Agents worden bestuurd. Zoals: FXO, FXS of een DS0-kanaal. |
PSTN |
Openbare telefoonnetwerk met switched services. |
MGCP Grondbeginselen
Het Media Gateway Control Protocol (MGCP) wordt gedefinieerd door RFC 2705. MGCP is een Call Agent/Endpoint protocol, waarbij het Endpoint wordt bestuurd door een Call Agent van een bepaald type. De gehele controle intelligentie wordt gecontroleerd door een Call Agent die het eindpunt instrueert welke actie te ondernemen zodra een gebeurtenis wordt gedetecteerd. MGCP gebruikt TCP-poort 2428 en UDP-poort 2427.
TCP-poort 2428 in MGCP wordt gebruikt om een nieuwe socket met de Call Agent te openen om te bepalen of de verbinding tot stand kan worden gebracht. Zonder deze nieuwe socket kunnen latere MGCP-berichten niet worden uitgewisseld. Het wordt ook gebruikt om backhaul-berichten te verzenden/ontvangen tussen PRI-endpoints en de Call Agent waaraan het is geregistreerd. Tot slot wordt TCP-poort 2428 gebruikt voor failover naar back-up van Call Agents in het geval een Primary Call Agent niet reageert.
UDP-poort 2427 in MGCP wordt gebruikt voor MGCP-berichten die tussen de endpoints en de Call Agents worden uitgewisseld.
Basic Flow
Dit is een voorbeeld van een basis MGCP Flow. U kunt in het voorbeeld zien dat de gateway een nieuwe vraag van PSTN op deze Gateway van Stem (Endpoint) ontvangt. De gateway brengt vervolgens de Call Agent (CUCM) op de hoogte van deze nieuwe oproep die wordt ontvangen, de Call Agent instrueert vervolgens de Gateway om een verbinding voor deze nieuwe oproep te maken. Tot slot stuurt de Gateway een OK terug naar de Call Agent om de oproep te starten.
Endpoint Identifiers
Een identifier is nodig per eindpunt zodat de Call Agent kan bepalen wie er een gebeurtenis moet verzenden, of waar een gebeurtenis vandaan komt. Endpoints Identifiers hebben twee hoofdcomponenten:
- Lokale naam binnen die gateway (hoofdlettergevoeligheid).
- Domeinnaam van de betreffende gateway die het eindpunt beheert (hoofdlettergevoeligheid).
Voorbeelden:
- AALN/S1/SU0/0@AV-VG200-2.cisco.com
- S0/SU0/DS1-0@AV-VG200-1
Basisconfiguratie van MGCP
Dit document heeft elk van de configuratie componenten in individuele stappen uitgebroken.
CLI-configuratie van gateway
Op de Analog Gateway die u van plan bent te registreren bij CUCM, is dit de minimale configuratie die eigenlijk vereist is. U hoeft deze configuratie alleen toe te voegen om het registratieproces te starten, aangezien de rest van de configuratie vervolgens wordt gedownload van 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
CUCM-configuratie
Om de MGCP-gateway in CUCM te kunnen configureren, moet u inloggen bij Cisco Unified CM-beheer. Na inloggen navigeer je naar Apparaat > Gateway:
De vorige selectie start u op de pagina Find and List Gateway. Hierop wilt u de knop Nieuwe toevoegen selecteren met een plusteken:
Nadat u Add New hebt geselecteerd, wordt u gevraagd een Gateway-type te kiezen. Gebruik deze uitrollijst om de hardware te kiezen die u wilt registreren en selecteer Volgende om het gewenste protocol voor dit apparaat te kiezen (u moet MGCP selecteren):
Nu u de gebruikte hardware en het gebruikte protocol hebt geselecteerd, moet u de domeinnaam, Cisco Unified Communications Manager Group en de moduleinformatie configureren. Dit zijn de belangrijkste velden die vereist zijn om een eindpunt via MGCP te registreren.
De domeinnaam bestaat uit 1 tot 2 delen. Op zijn minst in het veld Domain Name moet u de hostnaam van de router invoeren. In mijn scenario is de hostnaam:
VG320
Als u echter een domeinnaam hebt geconfigureerd op de gateway, moet u de volledig gekwalificeerde domeinnaam van dit apparaat configureren:
Kies nu Opslaan. Hiermee kunt u de pagina bijwerken en een subeenheid selecteren. Zodra u een subeenheid hebt geselecteerd, kiest u nogmaals Opslaan. U kunt nu uw configureerbare poorten zien:
Als u nu een eindpunt wilt configureren, klikt u op de poort waarin uw analoge apparaat is aangesloten (in ons geval is het 0/0/0). Zodra u een poort selecteert, wordt u gevraagd het poorttype te configureren:
In dit geval, selecteert u POTS. Zodra dit is geselecteerd, kunt u alle benodigde waarden voor de apparaatinformatie invoeren zoals u dat zou doen voor elk ander Call Manager Endpoint. Het enige vereiste veld is Apparaatpool, maar u kunt extra waarden invoeren, zoals een Calling Search Space. Zodra u dit hebt gedaan, kunt u op Opslaan klikken. Op dit punt ziet u nu dat het linker deelvenster het veld Add a new DN voor u heeft ingevuld. U kunt nu een DN aan deze poort koppelen, opslaan en de configuratie toepassen. Zodra dit gedaan is, terug op de pagina van de poortconfiguratie kunt u de poort nu als geregistreerd zien:
Endpoint registratie en gespreksinstelling
In deze sectie vindt u informatie over de basisfuncties van MGCP Endpoint Registration en Call Setup. Dit omvat de Commands Berichten die worden gezien als de Gateway communiceert met de Call Agent. In dit scenario is CUCM onze Call Agent.
Registratie van MGCP-endpoints
Om een MGCP-endpoint te kunnen registreren bij CUCM, opent de gateway TCP-socket 2428 voor CUCM. Vanaf hier gebruikt het UDP-poort 2427 om opdrachtberichten te verzenden. Zodra de socket is geopend, verstuurt de gateway een RSIP-opdracht naar de CUCM om het te informeren dat het eindpunt buiten dienst moet worden gesteld terwijl de herstart plaatsvindt, en CUCM verstuurt een eenvoudige bevestiging hiervan. Nadat de herstart is voltooid, stuurt CUCM een RQNT met de parameter R: L/hd. Dit betekent dat de gateway CUCM op de hoogte moet brengen van een Off-hook gebeurtenis.
Op dit punt stuurt de CUCM een Audit Endpoint (AUEP) naar de Gateway om de status van het gegeven Endpoint te bepalen. De reactie van de gateway is een ACK met de endpointmogelijkheden. Wanneer dit is voltooid, wordt het eindpunt geregistreerd bij de CUCM. Dit is een voorbeeld van debug-uitvoer:
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
<---
MGCP gespreksinstelling
De vorige afbeelding is een voorbeeld van een uitgaande oproep.
U kunt zien dat uw Call Agent, in dit geval CUCM, begint met een CRCX die alleen is hersteld naar de Gateway om verbinding te maken voor de oproep. De gateway reageert terug met een 200 OK die SDP bevat voor wat het ondersteunt. Zodra deze uitwisseling is gedaan, verstuurt de CUCM een RQNT-bericht naar de Gateway met de parameter S: G/rt. Dit vertelt de Gateway om terugbellen naar het apparaat af te spelen. Nadat het verre eind de vraag ontvangt, en opneemt, verzendt CUCM dan een MDCX met SDP naar de Gateway om het van de media informatie voor het verre eindapparaat op de hoogte te brengen. De Gateway stuurt een simpele 200 OK terug om dit te erkennen, en op dit punt heb je tweeweg media.
Nu de oproep is beantwoord, stuurt CUCM nog een RQNT met de parameter R: D/[0-9ABCD*#]. Dit vertelt de Gateway om CUCM op de hoogte te brengen van een DTMF dat wordt ingedrukt terwijl de oproep actief is, zodat het kan worden doorgegeven aan het volgende apparaat.
Nadat de oproep is voltooid, stuurt CUCM een MDCX naar de Gateway met M: recvonly om de media te beëindigen, gevolgd door een DLCX om de oproep los te koppelen. Dit is een voorbeeld van debug-uitvoer:
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
<---
MGCP voor probleemoplossing
Wanneer u problemen met MGCP oplost, zijn er enkele nuttige showopdrachten en debugs die u kunt bekijken om te bepalen waarom registratie of een oproep is mislukt. Een geweldige plek om te beginnen, is om te controleren of uw MGCP-gateway is geregistreerd in de Call Agent. U kunt dit controleren via de show commando show ccm-manager of toon mgcp:
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
Deze opdrachten zijn ingekort en bevatten alleen de relevante uitvoer. Voor extra informatie, kunt u deze showoutput bekijken:
mgcp tonen
mgcp-eindpunt tonen
mgcp-verbinding tonen
ccm-manager tonen
spraakpoortsamenvatting tonen
ISDN-status weergeven
toon controller [t1/e1] x/x/x
toon vraag actieve stemsamenvatting
spraakoproepsamenvatting tonen
status spraakoproep tonen
Als de vorige show commando's te controleren, kunt u deze debugs op het apparaat om verder te bepalen waarom uw vraag is mislukt:
debug mgcp [endpoint | fout | gebeurtenissen | pakketten]
debug mgcp all (voor geavanceerde debugging)
debug ccm-manager [backhaul | configuratie-download | fout | gebeurtenissen]
debug voip capi inout
debug vpm-signaal
debug voip vtsp-sessie
debug ISDN q931
De vorige debugs zijn een geweldige plek om te beginnen voor wat u nodig hebt om problemen met registratie op te lossen en setup problemen te bellen.
Gerelateerde informatie
RFC 2705:
Data Tracker - verzoek tot melding