CATEGORII DOCUMENTE |
Protocoalele VoIP
Implementarea unui apel folosind tehnologiei VoIP intr-o retea de date implica stabilirea conexiunii (semnalizare) - ca si in telefonia clasica exista mai multe faze ale unui apel: primirea unui ton de apel, formarea numarului de telefon, primirea unui semnal de apel sau de ocupat de la Chemat, ridicarea receptorului pentru a raspunde la apel - si apoi conversatia insasi (flux de voce).
Protocoalele VoIP pot fi impartite in doua categorii:
Ø protocoale de semnalizare
Ø protocoale pentru transportul fluxului de voce
1 Protocoale de semnalizare
Din categoria protocoalelor de semnalizare fac parte : SIP, MGCP si H.323.Acestea vor fi prezentate in detaliu in cele ce
1.1 H.323
H.323 a fost initial conceput ca un protocol pentru transportul aplicatiilor multimedia
in retea . Este considerat un "protocol umbrela " deoarece defineste toate aspectele legate de transmiterea apelului , de la faza de initiere a apelului pana la schimbul de capacitati si disponibilitatea resurselor de retea. H.323 defineste protocolul RAS pentru rutarea apelurilor , H.225 pentru call set-up si protocolul H.245 pentru schimbul de capacitati.
Deoarece are la baza protocolul Q.931 , H.323 interopereaza foarte usor cu reteaua de telefonie publica si , pentru ca foloseste o arhitectura distribuita acesta permite construirea unor retele scalabile si redundante.
Mesajele RAS se utilizeaza intre nod si managerul de apeluri (Gatekeeper-GK) in scopurile: descoperirea entitatilor GK; inregistrarea la GK; localizarea nodului ; controlul admisiei; autorizatii de acces. Canalul RAS este bazat pe UDP (nefiabil- deci exista expirari de timp si re-incercari).
Descoperirea managerului de apeluri: - Nodul poate sti adresa unui manager de apeluri fie static (management) sau o poate afla dinamic prin transmisia unei interogari de tip GRQ (Cerere GK) .Identificarea nodului se face prin adresa RAS de transport si tipul de nod. Unul sau mai multi GK raspund cu confirmarea GCF.
Inregistrarea unui nod GK: - este un proces prin care un nod informeaza managerul de apeluri in legatura cu adresa sa de transport ( IP, port) .
Localizarea unui nod: - este un proces prin care se determina adresa de transport a unui nod .
Alte controale RAS: controlul admisiei (restrictia intrarii unui nod intr-o zona); controlul benzii; anularea unei inregistrari anterioare.
Q.931
Protocol de semnalizare intre doua noduri sau intre nod-manager de apeluri, pe un canal de semnalizare fiabil (TCP), pentru stabilirea unei conexiuni telefonice.
H.245
Este un protocol de semnalizarec care schimba mesaje intre noduri pentru controlul caracteristicilor componentelor pentru transferul media. Mesajele H.245 includ:
schimbul de informatii privind posibilitatile fiecarui nod (tip codec, etc.)
cererea de transmisie intr-un anumit mod a unui tip particular de flux audio/video
deschiderea/inchiderea de canale logice RTP pentru transferul media
control de debit binar pe canalele logice individuale
masurarea timpului de transfer dus-intors
comenzi generale si indicatii.
H.235
Acest protocol incorporeaza servicii de securitate ca authentificare si criptarea datelor.H.235 trebuie sa lucreze cu ale protocoale din seria H care folosesc H.245 ca protocol de control.
H.225
H.225 este un standard care acopera serviciile de telefonie vizuala de band scurta.Se ocupa in mod special de acele situatii in care caile de transmisie includ una sau mai multe retele bazate pe pachete, fiecare fiind configurata si administrata astfel incat sa nu gazanteze calitatea serviciilor (QoS). H.225.0 prezinta cum controlul audio, video, de date si de informatii intr-o retea bazata pe pachete poate fi administrat pt a furniza servicii conversationale intr-un echipament H.323.
Structura unui mesaj H.225 urmeaza standardul Q.931 asa cum apare in figura urmatoare:
|
Octet |
|||||||
Identificator de protocol | ||||||||
Lungimea referintei de apel | ||||||||
Valoarea refeintei de apel | ||||||||
Tipul mesajului | ||||||||
Elementele informatiilor | ||||||||
Figura 5. Structura H.225 |
Identificator de protocol
Diferentiaza mesajele utilizatorilor call controlului de retea de alte mesaje.
Lungimea referintei de apel
Lungimea valorii de referinta a apelului.
Valoarea refeintei de apel
Identifica apelul sau cererea de anulare/inregistrarea de facilitate la interfata locala utilizator-retea careia mesajul respectiv i se adreseaza. Poate avea pana la 2 octeti in lungime.
Tipul mesajului
Identifica functia mesajului trimis
Elementele informatiilor
Doua categorii de elemente ale informatiilor sunt definite: cu un singur octet si cu lungime variabila .
Are in componenta doua protocoale : primul poarta numele stivei (SIP) si al doilea este SDP.
Protocolul de initiere a sesiunii (Session Initiation Protocol -SIP )
Este un protocol simplu de semnalizare pentru implementarea VoIP ce functioneaza pe nivelul aplicatie. SIP furnizeaza mecanismele necesare pentru ca sistemele utilizatorilor finali si serverele proxy sa poata oferi diferite servicii :
Transferarea apelului in cateva scenarii : nu raspunde, ocupat, neconditionat, manipulari de adrese
Identificarea numarului apelantului si apelatului
Autentificarea apelantului si apelatului
Invitatii la conferinte
Distribuirea automata a apelurilor
SIP poate sa fie folosit in conjunctie cu alte protocoale de semnalizare si de call set up. In acest mod, un sistem final foloseste schimburile SIP pentru a determina adresa si protocolul celuilalt sistem final pornind de la o adresa care este independenta de protocol.
De exemplu, SIP poate fi folosit pentru a determina daca partea poate fi apelata folosind H.323 pentru a gasi poarta H.245 si adresa utilizatorului iar apoi sa foloseasca H.225.0 pentru a stabili apelul.
Structura antetului de protocol
Protocolul e compus dintr-o linie de inceput, antet de mesaj, o linie goala si un corp de mesaj optional.
Mesaje de Cerere
Formatul pachetului de cerere este prezentat in figura urmatoare:
Metoda |
Cerere URI |
Versiune SIP |
Structura pachetului de cerere |
Metoda
Metodele posibile sunt Invitatie (Invite), Confirmare (Ack) , Optiuni (Options), Terminare (Bye), Anulare (Cancel) , Inregistrare (Register)
Comanda Functie
INVITATIE Initierea apelului
CONFIRMARE Confirmarea raspunsului final
TERMINARE Terminarea si tranferarea apelului
ANULARE Anularea cautarilor si al "soneriei"
OPTIUNI Trasaturi suportate de cealalta parte
INREGISTRARE Inregistrarea cu serviciul de locatie
Versiunea SIP
Versiunea SIP care este folosita; aceasta ar trebui sa fie 2.0 .
Mesajul de raspuns
Structura mesajului de raspuns este prezentat in ilustrarea urmatoare:
Versiune SIP |
Codul de status |
Faza-motiv |
Structura mesajului de raspuns |
Coduri de Raspuns
Coduri de raspuns de prefix Functie
1xx Cautare, sonerie
2xx Succes
3xx Trimitere
4xx Greselile clientilor
5xx Defectarea serverului
6xx Ocupat, refuz, nedisponibil nicaieri
Codul de status
Un cod de rezultat al incercarii de intelegere si satisfacere a cererii.
Fraza-motiv
O descriere textuala a codului de status.
SDP descrie sesiunile multimedia cu scopul de anuntare, invitatiei si alte forme de initiere a sesiunii multimedia. Comunica existenta unei sesiuni si furnizeaza suficiente informatii pentru a permite participarea la sesiune. Multe dintre mesajele SDP sunt trimise folosind un pachet de anunt, care este transmis la o adresa si un port bine-cunoscut folosind SAP (protocol de anuntare a sesiunii). Aceste mesaje sunt pachete UDP cu un antet SAP si o incarcatura text care este ,de fapt, descrierea sesiunii SDP. Mesajele pot fi, de asemenea, trimise folosind posta electronica .
Mesajele text SDP includ:
1.3 Protocolul de control al portilor de telefonie ( Media Gateway Control Protocol- MGCP)
Este folosit pentru a controla portile de telefonie (Media Gateway-MG) de la elementele externe denumite controleri de porti de telefonie (Media Gateway Controller-MGC). Poarta de telefonie este un element de retea care furnizeaza conversatia intre semnalele audio purtate de circuitele de telefon si pachetele de date purtate prin Internet sau prin alte retele de pachet.
MGCP implementeaza interfata de control a portii ca un set de tranzactii. Tranzactiile sunt compuse dintr-o comanda si un raspuns obligatoriu. Exista opt tipuri de comenzi :
Comenzi MGCP
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC->MG Crearea unei conexiuni: Creaza o conexiune intre doua noduri;
foloseste SDP pentru a defini capacitatile de primire ale nodurilor
participante
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC->MG Modificarea unei conexiuni: Modifica proprietatile unei conexiuni ; are
aproape aceiasi parametrii ca si comanda de creare a unei conexiuni
-------- ----- ------ -------- ----- ------ ----- ----- ----------MGC<->MG Terminarea unei conexiuni: Termina o conexiune si colecteaza
statisticile referitoare la executarea conexiunii
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC->MG Cerere de notificare: Solicita portii media sa trimita notificari despre
aparitita unor evenimente specifice intr-un nod.
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC<-MG Notificare: Informeaza controlerul portii media cand evenimentele
monitorizate apar
-------- ----- ------ -------- ----- ------ ----- ----- ----------
MGC-->MG Audit nod: Determina statusul unui nod
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC--> MG Conexiune de audit: Recupereaza parametrii unei conexiuni
-------- ----- ------ -------- ----- ------ ----- ----- -----------
MGC<--MG Restartare in progres: Semnalizeaza ca un nod sau grup de puncte
terminale sunt scoase din sau puse in functiune.
Toate comenzile sunt compuse dintr-un antet de comanda , optional urmat de o descriere a sesiunii. Toate raspunsurile sunt compuse dintr-un antet de raspuns, optional urmat de o descriere a sesiunii. Antetele si descrierile sesiunii sunt codate ca un set de linii text si sunt separate de o linie goala.
MGCP foloseste un identificator de tranzactie pentru a corela coomenzile si rsapunsurile. Identificatorii de tranzactie au valori cuprinse intre 1 si 999999999. O entitate MGCP nu poate refolosi un identificator de tranzactie mai devreme de trei minute dupa indeplinirea comenzii anterioare in care a fost folosit identificatorul respectiv.
2 Protocoale pentru transportul fluxului de voce
RTP este in mare masura folosit pentru fluxurile audio si video;este destinat aplicatiilor ce trimit informatii intr-o singura directie fara nici un fel de confirmare.Antetul fiecarui pachet RTP contine o stampila de timp (timestamp) astfel aplicatia care primeste pachetele poate reconstrui intreaga informatie avand informatia despre timp. De asemenea mai contine si numarul de secventa, astfel incat la receptie se poate trata fiecare pachet in parte verficandu-se daca exista pachete lipsa, duplicate sau cu erori.
Cele doua fluxuri RTP bidirectionale, adica conversatia insasi , sunt elementele importante in determinarea calitatii unui apel telefonic.
Continutul unui pachet RTP, care transporta informatia vocala este prezentat in figura:
Figura . Continutul unui pachet RTP
Toate campurile asociate cu RTP sunt continute in informatia utila din UDP. Ca si UDP, RTP este un protocol fara conexiune.
Cele mai importante campuri din antet sunt:
Tipul de Informatie Utila
Indica ce codec este folosit. Codecul transforma tipul informatiei (cum ar fi voce,audio sau video) si modul in care aceasta este codificata.
Numarul Secventei
Cand pachetele ajung la destinatie acest octet ajuta la reasamblarea informatiei si detecteaza pierderea de pachete, duplicarile si pachetele receptionate eronat.
Stampila de Timp
Ajuta la reconstructia informatiei audio sau video transmise. De asemenea, ajuta la determinarea consecventei sau variatiei timpilor de sosire (jitter). Acest octet este continut de fiecare pachet RTP care este transmis.La receptie aplicatiile se uita la timpul de sosire al pachetelor si compara cu stampila de timp a acestora.
Identificator de Sursa
Acumularea de antete poate adauga o supraincarcare mult mai mare, depinzand de marimea informatiei utile. De exemplu, cantitatea tipica de informatie utila atunci cand se foloseste codecul G.729 este de 20 de octeti ceea ce inseamna ca debitul acestui codec este de 20 de octeti de informatie vocala la o rata predeterminata specifica acestui codec. Folosind RTP, doua treimi dintr-un pachet este antetul deoarece supraincarcarea totala a antetelor este: RTP(12 octeti)+UDP (8 octeti)+IP(20 octeti)=40 octeti.
Largimea de banda reala consumata in timpul apelurilor VoIP este mai mare decat pare la inceput. Codecul G.729, de exemplu, are o viteza a informatiei utile de 8 kbps. Totusi, largimea de banda utilizata este mai mare. Cand se trimite la intervale de 20ms, marimea informatiei utile este de 20 de octeti pentru fiecare pachet. La aceasta se adauga cei 40 de octeti ai antetului RTP (acesta are o marime mai mare decat informatia utila) plus orice antet aditionalal nivelului legatura de date. De asemenea, sunt doua fluxuri RTP simultane (unul in fiecare directie), deci se dubleaza consumul de banda calculat pana acum. Coloana "banda combinata" din tabelul de mai jos prezinta o imagine a adevaratei largimi de banda folosita de cele mai cunoscute codecuri.
De exemplu, la viteza de transmisie de 64 kbps, un pachet ce contine informatie vocala cu durata de 20 ms implica faptul ca la sursa sunt create pachete de 160 de octeti cu informatie utila la fiecare 20 ms.
In acest exemplu:
Pentru o viteza data, cresterea intarzierii face ca pachetele sa devina tot mai mari, intrucat pachetele sunt trimise la intervale de timp inegale si nu mai trasporta aceeasi cantitate de informatie.O intarziere de 30ms la o viteza de 64 kbps ar insemna trimiterea unor pachete de 240 octeti.
Figura
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1107
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved