MGCP tai Media Gateway Control Protocol kirjaimellisesti - mediayhdyskäytävän ohjausprotokolla . Se on tiedonsiirtoprotokolla hajautettuihin VoIP - äänen yli IP-järjestelmiin.
MGCP on kuvattu RFC 3435 :ssä , joka korvasi nyt vanhentuneen RFC 2705 :n , joka puolestaan korvasi Simple Gateway Control Protocol ( SGCP ) -protokollan.
Samanlainen protokolla samaan tarkoitukseen on Megaco , IETF:n ( RFC 3525 ) ja ITU:n yhteistuote (suositukset H.248-1). Molempia protokollia kuvaa yksi laitteisto-ohjelmistoliittymä ( API ) MGCP-arkkitehtuuri ja vaatimukset RFC 2805 : ssä .
Hajautetut järjestelmät koostuvat puheluagentista (tai mediayhdyskäytäväohjaimesta), vähintään yhdestä mediayhdyskäytävästä (MG) ja vähintään yhdestä signaaliyhdyskäytävästä (SG), joka on kytketty yleiseen puhelinverkkoon ( PSTN ). SS-7- verkon näkökulmasta tällaista laitteiden symbioosia pidetään yhtenä solmuna, jolla on yksi yhteinen pistekoodi .
RFC 2705 :ssä kuvattu MGCP-standardi ehdottaa seuraavaa puhelinlaitteiden luokittelua käyttötarkoituksen mukaan:
Teknisestä näkökulmasta jokainen edellä mainittujen yhdyskäytävien tyyppi voi olla loogisten elementtien yhdistelmä - mediayhdyskäytävä ja signalointiyhdyskäytävä tai vain mediayhdyskäytävä, jossa puheluiden ohjaussignalointitiedot lähetetään muuntyyppisten laitteiden ja laitteiden kautta. muita protokollia.
Signaling Gateway (SG)Signalointiyhdyskäytävä - varmistaa PSTN:stä tulevan signalointitiedon toimituksen yhdyskäytävän ohjaimelle ja signalointitiedon siirron vastakkaiseen suuntaan.
Käytännössä signalointiyhdyskäytävä (SG) ja mediayhdyskäytävä (MG) voidaan yhdistää samaan fyysiseen kytkimeen, mutta tämä ei ole ollenkaan välttämätöntä. Call Agent ei käytä MGCP:tä signalointiyhdyskäytävän (SG) ohjaamiseen, näitä tarkoituksia varten - signalointiyhdyskäytävän (SG) ja agentin välinen palaute käyttää SIGTRAN -protokollia .
Media Gateway (MG)Mediayhdyskäytävä suorittaa toimintoja, jotka muuntavat PSTN:stä tulevan puheinformaation äänikanavissa , joiden siirtonopeus on vakio, muotoon, joka soveltuu lähetettäväksi verkkojen kautta IP-pakettireitityksellä (äänitietojen koodaus ja pakkaaminen RTP -paketteihin ja sitten UDP :ksi ja IP :ksi). ) ja myös käänteinen muunnos).
Mediayhdyskäytävä käyttää MGCP-protokollaa signaloimaan tapahtumia, kuten on-hook/off-hook-tietoja tai soitetun numeron soitettuja numeroita (uudelleenvalinta).
Call Agent on yhdyskäytäväohjain, joka suorittaa yhdyskäytävien hallintatoiminnot ja joka käyttää MGCP-protokollaa tiedottamaan mediayhdyskäytävälle:
MGCP sallii myös kutsuagentin valvoa Media Gatewayn (MG) päätepisteiden tilaa.
Mediayhdyskäytävälle on yleensä määritetty luettelo puheluagenteista, joilta se voi vastaanottaa pyyntöohjeita.
Periaatteessa ilmoituksia voidaan lähettää eri agenteille kustakin päätelaitteesta (kuten Call Agents tarjoaa tähän käytetään NotifiedEntity-parametria). Käytännössä on kuitenkin toivottavaa, että kaikkia päätteitä ohjataan samalla yhdyskäytäväohjaimella tiettynä ajankohtana; muut Call Agentit ovat käytettävissä varatuilla resursseilla redundanssin tarjoamiseksi, jos ensisijainen edustaja epäonnistuu tai menettää yhteyden mediayhdyskäytävään. Tällaisen vian sattuessa yhdyskäytävän hallinta siirtyy automaattisesti varayhdyskäytävän ohjaimelle. Ainoa asia, josta on huolehdittava tällaisessa skenaariossa, on tilatietojen vaihto kahden agentin välillä, mutta tämä ei kuitenkaan takaa, että molemmat eivät yritä hallita samaa yhdyskäytävää. Ristiriitojen ratkaisemiseksi yhdyskäytävän kyselyä käytetään määrittämään, kumpi agenteista on tällä hetkellä hallinnassa.
MGCP-paketit eroavat monista muista protokollista. Se varaa yleensä UDP-portin 2427, MGCP-datagrammit voivat sisältää myös tyhjiä arvoja, mikä ei ole ollenkaan tapaa, jolla paketteja yleensä rakennetaan TCP-protokolliin. MGCP-paketti on joko komento (pyyntö) tai vastaus. Komennot (pyynnöt) alkavat nelikirjaimalla koodilla, vastaukset alkavat kolminumeroisella numerokoodilla.
MGCP:ssä jokainen komento kuljettaa tapahtumatunnuksen ja vastaanottaa vastauksen jokaiseen.
Kyselyluettelo sisältää vain kahdeksan komentoa: AUEP, AUCX, CRCX, DLCX, MDCX, NTFY, RQNT, RSIP.
Agentti käyttää kahta komentoa pyynnön tekemiseen mediayhdyskäytävälle:
Call Agent käyttää kolmea komentoa RTP-yhteyden hallintaan Media Gatewayssa:
Media Gateway käyttää RQNT (Request for Notification) -komentoa ilmoitusten pyytämiseen ja CallAgent pyytää ilmoituksia Media Gatewayn tapahtumista. Erityisesti sitä voidaan käyttää näppäinpainallusviestin lähettämiseen osana äänivalintaa (vaihtoehtona RFC 2833 :lle tai G.711-inbandille).
Media Gateway käyttää NTFY (Notify) -komentoa ilmoittamaan agentille, että on havaittu tapahtuma, josta agentti on aiemmin pyytänyt ilmoitusta (RQNT-komennolla). Käyttöesimerkki: vaihtaminen toiseen lähetettyyn dataan (äänestä faksiin tai päinvastoin).
Mediayhdyskäytävä käyttää EPCF - Endpoint Configuration -komentoa ilmoittamaan CallAgentille tarpeesta muuttaa odotettuja koodausparametreja päätepisteen rivin puolelta.
Media Gateway käyttää RSIP - Restart In Progress -komentoa osoittamaan agentille, että uudelleenkäynnistys on käynnissä.
Ensimmäinen esimerkki ( RFC 3435 ) näyttää CRCX (CreateConnection) -komennon, joka luo yhteyden määritettyyn päätepisteeseen (aaln/[email protected], jossa rgw-2567.whatever.net on toimialueen nimi ja aaln/ 1 päätepisteen nimi). Komento lähetettiin tapahtuman 1204 yhteydessä. Yhteydellä on tietty CallID (A3C47F21456789F0). LocalConnectionOptions määrittää, että mu-law G.711 ( PCM ) -koodekkia käytetään ja paketointijakso on 10 ms. Yhteyden toimintatila on "vain vastaanotto" (vain vastaanotto):
CRCX 1204 aaln/[email protected] MGCP 1.0 C:A3C47F21456789F0 L: p:10, a:PCMU M: recvonly200 OK- vastauskoodi ilmaisee, että toiminto oli onnistunut, ja äskettäin luodun yhteyden tapahtumatunnus (1204) näytetään tunnistamaan, kuuluuko vastaus komentoon. Viesti sisältää myös kuvauksen uuden yhteyden istuntomuodosta ( SDP ), jota edeltää tyhjä rivi:
200 1204 OK I: FDE234C8 v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t = 0 0 m = ääni 3456 RTP/AVP 0Toinen esimerkki ( RFC 3435 : stä) on ModifyConnection-komento, joka yksinkertaisesti asettaa yhteystilaksi "lähetä/vastaanota" ja ilmoittaa myös, että "Ilmoitettu entiteetti" on asetettu.
MDCX 1209 aaln/[email protected] MGCP 1.0 C:A3C47F21456789F0 I: FDE234C8 N: [email protected] M: lähetysrecvVastaus tarkoittaa, että kauppa onnistui.
200 1209 OKNyt esimerkki ModifyConnection-komennosta, jossa vastaanotettu puheluistunnon kuvaus ( SDP ) ja ilmoituspyyntö lähetetään. Päätelaite (päätepiste) alkaa ohjata tilaajalle puhelun lähettämistä (pitkät piippaukset, soitetun vastauksen odottaminen).
MDCX 1210 aaln/[email protected] MGCP 1.0 C:A3C47F21456789F0 I: FDE234C8 M: recvonly X: 0123456789AE R:L/hu S: G/rt v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t = 0 0 m = ääni 3456 RTP/AVP 0Vastaus tarkoittaa, että tapahtuma (1210) onnistui.
200 1210 OK