SDP ( English Session Description Protocol ) este un protocol de rețea la nivel de aplicație conceput pentru a descrie o sesiune de transfer de date în flux , inclusiv telefonie ( PSTN și VoIP ), radio prin Internet , aplicații multimedia .
O sesiune SDP poate implementa mai multe fluxuri de date . SDP definește în prezent audio, video, date, control și aplicații (streaming) similare cu tipurile de e-mail MIME în adresele de internet.
Un mesaj SDP trimis de la un nod la altul poate indica:
Deși SDP oferă capacitatea de a descrie date multimedia, îi lipsesc mecanismele de negociere a parametrilor de sesiune pe care colegii intenționează să le folosească. RFC 3264 oferă un model de negociere ofertă/răspuns în care nodurile schimbă mesaje SDP pentru a ajunge la un acord asupra formatului de date care urmează să fie schimbat.
Câmpurile de mesaje SDP sunt adesea incluse în mesajele de protocol de semnalizare telefonică, cum ar fi SIP și MGCP . Astfel, SDP completează procesul de control al apelurilor prin îndeplinirea funcțiilor de descriere a parametrilor unei sesiuni media.
Să luăm în considerare ce câmpuri pot fi utilizate în mesajele SDP. Elementele opționale sunt marcate cu un „*” în listă.
Notă: Pentru o descriere detaliată a tuturor câmpurilor posibile și a cerințelor de valoare, consultați RFC 4566 .
Linia m= conține numele exact al suportului (valorile posibile sunt audio , video sau mesaj ), adresa exactă de transport ( port ) și o enumerare a tipurilor de date acceptate după numere (tipul de încărcare utilă).
i=* (titlu media) c=* (informații de conectare - opțional dacă este specificat în parametrii sesiunii) b=* (informații despre lățimea de bandă ocupată a canalului de comunicație) k=* (cheie de criptare) a=* (zero sau mai multe șiruri care descriu atributele media, vezi mai jos)Linia a= poate conține următorii parametri:
Exemplul de mesaj SDP de mai sus conține următoarele informații. Un utilizator fără un identificator de literă solicită o sesiune SDP cu identificatorul 1815849 și versiunea 0. Parametrul IN indică protocolul de rețea al creatorului sesiunii, în acest exemplu „IN” este Internetul, IP4 este tipul de adresă IP a creatorului sesiunii, în acest exemplu IPv4 . Adresa inițiatorului sesiunii 194.167.15.181. Numele dispozitivului care inițiază sesiunea este Cisco. Traficul media va fi așteptat pe dispozitivul cu adresa IP 194.167.15.181, pe portul 20062.
Orele de început și de încheiere a sesiunii nu sunt strict limitate (t=0 0).
Acest dispozitiv acceptă un set de parametri de flux media RTP și metode de codare (profiluri RTP) descrise de tipurile de încărcare utilă 99, 18, 100 și 101. Acest lucru este indicat în linia m=audio. Mai jos, în liniile a=rtpmap, există o specificare a parametrilor tipului de date - atribute codec, întrucât unele tipuri sunt dinamice și nu pot fi determinate în mod unic, pur și simplu prin linia m=audio.
Deci, prin tipul de date 99, acest dispozitiv înseamnă codecul de voce G.729b și o rată de eșantionare de 8000Hz (G.729 Anexa B, cu suport pentru suprimarea zgomotului ). Tipul de date dinamice 101 în acest caz este capacitatea de a primi tonuri DTMF (eveniment telefonic) conform standardului descris în RFC 2833 . Conform liniei a=fmtp pentru tipul 101, dispozitivul poate funcționa cu evenimente DTMF de la 0 la 15. Toate dispozitivele SIP trebuie să accepte evenimente DTMF de la 0 la 15, care sunt numerele 0-9 (numere), 10 este un asterisc » (*) , 11 este un semn hash (#) și 12-15 sunt caractere AD.
X-NSE Type 100 este un codec specific NSE utilizat de Cisco ca versiune internă a evenimentelor de telefonie cu nume standard (NTE) IETF, care sunt pachete de date etichetate special utilizate pentru transmisia digitală a tonurilor și a evenimentelor de telefonie.
Nu există nicio specificație pentru tipul de sarcină utilă 18, iar acest lucru poate însemna că dispozitivul acceptă codecul vocal G.729, împreună cu o variantă mai simplă a aceluiași codec descris în anexa A (sau codecul G.729a), deoarece tipul de date 18 este fixat în mod unic pentru aceste codecuri.
Ordinea dată de enumerare a codecurilor indică, de asemenea, prioritățile pentru alegerea unuia sau a altuia codec din punctul de vedere al acestui dispozitiv.
TCP /IP pe straturi ale modelului OSI | Protocoale de bază|
---|---|
Fizic | |
canalizat | |
reţea | |
Transport | |
sesiune | |
Reprezentare | |
Aplicat | |
Altele aplicate | |
Lista de porturi TCP și UDP |
Software de telefonie IP | |
---|---|
Protocoale | |
Software client | |
Software de server | |
Servicii web | |
comparaţie |