SDP, Oturum Açıklama Protokolü anlamına gelir. Multimedya oturumlarını, katılımcılar tarafından bir ağ üzerinden anlaşılan bir formatta tanımlamak için kullanılır. Bu açıklamaya bağlı olarak, taraf bir konferansa katılıp katılmayacağına veya konferansa ne zaman veya nasıl katılacağına karar verir.
Konferansın sahibi, oturumun açıklamasını içeren çok noktaya yayın iletileri göndererek konferansı ağ üzerinden duyurur; sahibin adı, oturumun adı, kodlama, zamanlama vb. Bu bilgilere bağlı olarak, reklamın alıcıları oturuma katılım hakkında bir karar alır.
SDP genel olarak SIP olarak adlandırılan Oturum Başlatma Protokolü’nün gövde bölümünde yer alır.
SDP, RFC 2327’de tanımlanmıştır. SDP mesajı, adları tek bir küçük harfle kısaltılan ve ayrıştırmayı basitleştirmek için gerekli sırada olan, alan adı verilen bir dizi satırdan oluşur.
SDP’NIN AMACI
SDP’nin amacı, katılımcıların belirli bir oturuma katılmalarına veya bilgi toplamalarına yardımcı olmak için multimedya oturumlarındaki medya akışları hakkında bilgi iletmektir.
SDP, kısa yapılandırılmış bir metin açıklamasıdır.
Oturumun adı ve amacı, medya, protokoller, kodek formatları, zamanlama ve taşıma bilgilerini aktarır.
Geçici bir katılımcı bu bilgileri kontrol eder ve bir oturuma katılıp katılmayacağına ve bir oturuma katılmaya karar verirse nasıl ve ne zaman katılacağına karar verir.
Biçim = biçiminde girişlere sahiptir; burada benzersiz bir oturum parametresi tanımlar ve bu parametre için belirli bir değer sağlar.
Bir SDP mesajının genel biçimi –
x = parametre1 parametre2 … parametreN
Çizgi tek bir küçük harfle başlar, örneğin, x. Harf ve = arasında hiçbir boşluk yoktur ve her parametre arasında tam olarak bir boşluk vardır. Her alanın tanımlanmış sayıda parametresi vardır.
Session Description Parametreleri
Oturum açıklaması (* isteğe bağlı olarak belirtilir)
v = (protokol versiyonu)
o = (sahip / yaratıcı ve oturum tanımlayıcı)
s = (oturum adı)
i = * (oturum bilgileri)
u = * (açıklama URI’si)
e = * (e-posta adresi)
p = * (telefon numarası)
c = * (bağlantı bilgileri – tüm ortamlarda varsa gerekli değildir)
b = * (bant genişliği bilgileri)
z = * (saat dilimi ayarları)
k = * (şifreleme anahtarı)
a = * (sıfır veya daha fazla oturum özellik satırı)
Protokol Versiyonu
V = alanı SDP sürüm numarasını içerir. SDP’nin geçerli sürümü 0 olduğundan, geçerli bir SDP iletisi her zaman v = 0 ile başlar.
Origin
O = alanı, oturumun kaynağı ve oturum tanımlayıcıları hakkında bilgi içerir. Bu alan oturumu benzersiz bir şekilde tanımlamak için kullanılır.
o = <username><session-id><version><network-type><address-type>
Username parametresi, gönderenin giriş veya ana bilgisayarını içerir.
Session-id parametresi bir Ağ Zaman Protokolü (NTP) zaman damgası veya benzersizliği sağlamak için kullanılan rastgele bir sayıdır.
Sürüm, oturumdaki her değişiklik için artırılan sayısal bir alandır ve ayrıca bir NTP zaman damgası olması önerilir.
Ağ türü Internet için her zaman IN’dir. Adres türü parametresi, noktalı ondalık biçimde IPv4 veya IPv6 adresi için IP4 veya IP6 veya tam ana bilgisayar adıdır.
Session name and information
S = alanı oturum için bir ad içerir. Sıfır olmayan herhangi bir sayıda karakter içerebilir. İsteğe bağlı i = alanı oturum hakkında bilgi içerir. Herhangi bir sayıda karakter içerebilir.
URI
İsteğe bağlı u = alanı, oturum hakkında daha fazla bilgi içeren tek tip bir kaynak göstergesi (URI) içerir
E-mail address and phone number
İsteğe bağlı e = alanı, oturumun ana bilgisayarının e-posta adresini içerir. İsteğe bağlı p = alanı bir telefon numarası içerir.
Connection Data
C = alanı medya bağlantısı hakkında bilgi içerir.
c =<network-type><address-type><connection-address>
Ağ tipi parametresi İnternet için IN olarak tanımlanır.
Adres türü, IPv4 adresleri için IP4 ve IPv6 adresleri için IP6 olarak tanımlanır.
Bağlantı adresi, çok noktaya yayın veya tek noktaya yayın olabilen ortam paketlerini gönderecek IP adresi veya ana bilgisayardır.
Eğer multicast yayın varsa, bağlantı adresi alanı –
connection-address=base-multicast-address/ttl/number-of-addresses
Bandwitch
İsteğe bağlı b = alanı, gerekli bant genişliği hakkında bilgi içerir. Şu şekildedir –
b=modifier:bandwidth − value
Time, Repeat Times, and Time Zones
T = alanı, oturumun başlama ve bitiş zamanını içerir.
İsteğe bağlı r = alanı, NTP veya gün (d), saat (s) veya dakika (m) olarak belirtilebilen tekrar süreleri hakkında bilgi içerir.
İsteğe bağlı z = alanı, saat dilimi ofsetleri hakkında bilgi içerir. Bu alan gerçekleşen oturumun yaz saatinden standart saate veya tam tersine değişmesi durumunda kullanılır.
Media Announcements
İsteğe bağlı m = alanı, ortam oturumunun türü hakkında bilgi içerir.
Media parametresi ses, video, metin, uygulama, mesaj, görüntü veya kontroldür. Port parametresi, port numarasını içerir.
Aktarım parametresi, aktarım protokolünü veya kullanılan RTP profilini içerir.
Format-list medya hakkında daha fazla bilgi içerir. Genellikle, RTP ses video profillerinde tanımlanan ortam yükü türlerini içerir.
Example:
m = audio 49430 RTP/AVP 0 6 8 99
Bu üç codec bileşeninden biri ses ortamı oturumu için kullanılabilir. Amaç üç ses kanalı oluşturmaksa, üç ayrı medya alanı kullanılır.
Bir SDP Örneği
Aşağıda RFC 2327'den alınan örnek bir oturum açıklaması verilmiştir.
v = 0
o = mhandley2890844526 2890842807 IN IP4 126.16.64.4
s = SDP Seminar
i = A Seminar on the session description protocol
u = http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps
e = [email protected](Mark Handley)
c = IN IP4 224.2.17.12/127
t = 2873397496 2873404696
a = recvonly
m = audio 49170 RTP/AVP 0
m = video 51372 RTP/AVP 31
m = application 32416udp wb
a = orient:portrait