Sessionsbeskrivelsesprotokol

SDP ( English  Session Description Protocol ) er en applikationslagsnetværksprotokol designet til at beskrive en streaming dataoverførselssession , inklusive telefoni ( PSTN og VoIP ), internetradio , multimedieapplikationer .

En SDP-session kan implementere flere datastrømme . SDP definerer i øjeblikket lyd, video, data, kontrol og applikationer (streaming), der ligner MIME -e-mail-typer i internetadresser.

En SDP-meddelelse sendt fra en node til en anden kan indikere:

Selvom SDP giver mulighed for at beskrive multimediedata, mangler den mekanismerne til at forhandle sessionsparametre, som peers har til hensigt at bruge. RFC 3264 giver en tilbud/svar-forhandlingsmodel, hvor noder udveksler SDP-meddelelser for at nå til enighed om det dataformat, der skal udveksles.

SDP- meddelelsesfelter er ofte inkluderet i telefonisignaleringsprotokolmeddelelser såsom SIP og MGCP . Således supplerer SDP opkaldskontrolprocessen ved at udføre funktionerne til at beskrive parametrene for en mediesession.

Felter brugt i protokollen

Lad os overveje, hvilke felter der kan bruges i SDP-meddelelser. Valgfrie elementer er markeret med et "*" i listen.

Bemærk: For en detaljeret beskrivelse af alle mulige felter og værdikrav, se RFC 4566 .

Sessionsbeskrivelse

v= (protokolversion, aktuel version er altid 0) o= (opretter/ejer og sessions-id'er). s= (sessionsnavn, må ikke være tomt) i=* (session information) u=* (URI - adresse brugt af WWW-klienter, med yderligere oplysninger om sessionen) e=* (E-mailadresse på den ansvarlige for konferencen) p=* (telefonnummer på den person, der er ansvarlig for konferencen) c=* (oplysninger om forbindelsen - ikke påkrævet, hvis det er i beskrivelsen af ​​alle mediedata) b=* (oplysninger om den optagede båndbredde på kommunikationskanalen) En eller flere linjer, der beskriver tidsparametre (se nedenfor) z=* (tidszoneindstilling) k=* (krypteringsnøgle) a=* (en eller flere linjer, der beskriver sessionsattributter, se nedenfor)

Beskrivelse af tidsparametre

t= (sessionsaktivitetstid) r=* (antal genforsøg, nul eller mere)

Beskrivelse af multimedietransmissionsdata

m= (medietype og enhedstransportadresse)

Linjen m= indeholder det nøjagtige navn på mediet (mulige værdier er lyd , video eller besked ), den nøjagtige transportadresse ( port ) og en opregning af understøttede datatyper efter tal (nyttelasttype).

i=* (medietitel) c=* (forbindelsesoplysninger - valgfrit, hvis det er angivet i sessionsparametre) b=* (oplysninger om den optagede båndbredde på kommunikationskanalen) k=* (krypteringsnøgle) a=* (nul eller flere strenge, der beskriver medieattributter, se nedenfor)

Mediesessionsattributter

Linjen a= kan indeholde følgende parametre:

Eksempel på SDP-meddelelse

v=0 o=- 1815849 0 IN IP4 194.167.15.181 s=Cisco SDP 0 c=IN IP4 194.167.15.181 t=0 0 m=lyd 20062 RTP/AVP 99 18 101 100 a=rtpmap:99 G.729b/8000 a=rtpmap:101 telefon-event/8000 a=fmtp:101 0-15 a=rtpmap:100 X-NSE/8000 a=fmtp:100 200-202

SDP-eksemplet ovenfor indeholder følgende oplysninger. En bruger uden bogstav-id anmoder om en SDP-session med identifikator 1815849 og version 0. IN-parameteren angiver netværksprotokollen for sessionsopretteren, i dette eksempel er "IN" internettet, IP4 er IP-adressetypen for sessionsskaberen, i dette eksempel IPv4 . Sessionsinitiator adresse 194.167.15.181. Navnet på den enhed, der starter sessionen, er Cisco. Medietrafik forventes på enheden med IP-adressen 194.167.15.181 på port 20062.

Sessionens start- og sluttidspunkter er ikke strengt begrænset (t=0 0).

Denne enhed understøtter et sæt RTP-mediestrømsparametre og kodningsmetoder (RTP-profiler) beskrevet af nyttelasttyperne 99, 18, 100 og 101. Dette er angivet i linjen m=lyd. Nedenfor, i linjerne a=rtpmap, er der en specifikation af datatypeparametre - codec-attributter, da nogle typer er dynamiske og ikke kan bestemmes entydigt, blot ved hjælp af m=lydlinjen.

Så ved datatype 99 betyder denne enhed G.729b stemme-codec og en samplinghastighed på 8000Hz (G.729 Annex B, med understøttelse af støjundertrykkelse ). Dynamisk datatype 101 er i dette tilfælde evnen til at modtage DTMF-toner (telefonhændelse) i henhold til standarden beskrevet i RFC 2833 . Ifølge linjen a=fmtp for type 101 kan enheden arbejde med DTMF-hændelser fra 0 til 15. Alle SIP-enheder skal understøtte DTMF-hændelser fra 0 til 15, som er tallene 0-9 (tal), 10 er en stjerne » (*) , 11 er et hash-mærke (#) og 12-15 er AD-tegn.

X-NSE Type 100 er et NSE-specifikt codec, der bruges af Cisco som en intern version af IETF Standard Named Telephony Events (NTEs), som er specielt mærkede datapakker, der bruges til digital transmission af toner og telefonihændelser.

Der er ingen specifikation for nyttelast type 18, og det kan betyde, at enheden understøtter G.729 stemme-codec sammen med en enklere variation af det samme codec beskrevet i bilag A (eller G.729a codec), da datatype 18 er entydigt fastsat til disse codecs.

Den givne rækkefølge af opregning af codecs angiver også prioriteterne for at vælge et eller andet codec fra denne enheds synspunkt.

Se også

Links