RTP ve RSVP protokolleri,

http://www.isuct.ru/~ivt/books/NETWORKING/NET10/269/pa.html

Modern Uygulamalar paketlerinin geç gelmesine tahammül edemezler. İki protokol (RTP ve PSVP), hizmet kalitesiyle zamanında teslimatı sağlar.

İnternetin ve özel ağların sürekli büyümesi, bant genişliğine yeni talepler getiriyor. İstemci-sunucu uygulamaları, aktarılan veri miktarı açısından Telnet'ten çok daha üstündür. World Wide Web, grafikte dev bir artışa neden oldu grafik bilgi. Günümüzde ayrıca ses ve video uygulamaları zaten aşırı yüklenmiş ağlar için kendi özel gereksinimlerini ortaya koymaktadır.

Tüm bu talepleri karşılamak için ağ kapasitesinde tek bir artış yeterli değildir. Gerçekten ihtiyaç duyulan şey, akıllı verimli zamanlama yönetimi ve iş yükü kontrolü yöntemleridir.

Tarihsel olarak, IP tabanlı ağlar, tüm uygulamalara yalnızca mümkün olan en basit veri dağıtım hizmetini sağlamıştır. Ancak zamanla ihtiyaçlar değişti. arasında veri aktarmak için IP tabanlı bir ağ kurmak için milyonlarca dolar harcayan kuruluşlar yerel ağlar, şimdi bu tür yapılandırmaların yeni çok noktaya yayın gerçek zamanlı multimedya uygulamalarını verimli bir şekilde destekleyemediği gerçeğiyle karşı karşıya.

ATM, gerçek zamanlı trafikle birlikte normal TCP ve UDP trafiğini desteklemek için orijinal olarak tasarlanmış tek ağ teknolojisidir. Ancak ATM'ye geçmek, gerçek zamanlı trafik için yeni bir ağ altyapısı oluşturmak veya her ikisi de çok pahalı olan mevcut IP tabanlı yapılandırmayı değiştirmek anlamına gelir.

Bu nedenle, TCP/IP mimarisi içinde farklı hizmet kalitesi gereksinimlerine sahip birden çok trafik türünü destekleme ihtiyacı çok acildir. Bu problemin iki kişi tarafından çözülmesi amaçlanmıştır. Önemli araç: Gerçek Zamanlı Aktarım Protokolü (RTP) ve Kaynak Rezervasyon Protokolü (RSVP).

RTP, verilerin bir veya daha fazla hedefe belirtilen limitler dahilinde gecikmeyle teslim edilmesini garanti eder. Bu, verilerin gerçek zamanlı olarak yeniden oynatılabileceği anlamına gelir. RSVP, uç sistemlerin gerekli hizmet kalitesini, özellikle de RTP protokolü üzerinden gerçek zamanlı trafik için kaynakları elde etmek için ağ kaynaklarını ayırmasına izin verir.

En yaygın olarak kullanılan taşıma katmanı protokolü TCP'dir. TCP çok çeşitli dağıtılmış uygulamaları destekleyebilmesine rağmen, gerçek zamanlı uygulamalar için uygun değildir.

Gerçek zamanlı uygulamalarda, gönderici sabit bir hızda bir veri akışı oluşturur ve alıcı(lar) bu verileri uygulamaya aynı oranda sağlamalıdır. Bu tür uygulamalar arasında sesli ve görüntülü konferans, canlı video dağıtımı (anında oynatma için), paylaşılan çalışma alanları, tıbbi uzaktan teşhis, bilgisayar telefonu, dağıtılmış etkileşimli simülasyon, oyunlar ve gerçek zamanlı izleme yer alır.

Bu uygulamalar için aktarım protokolü olarak TCP'yi kullanmak birkaç nedenden dolayı mümkün değildir. İlk olarak, bu protokol sadece iki kişi arasında bağlantı kurmanıza izin verir. uç noktalar ve bu nedenle çok noktaya yayın için uygun değildir. Gerçek zamanlı uygulamanın artık onları beklemediği bir zamanda gelen kayıp segmentlerin yeniden iletilmesini sağlar. Ayrıca TCP, gerçek zamanlı uygulamalar için de bir gereklilik olan zamanlama bilgilerini segmentlerle ilişkilendirmek için uygun bir mekanizmaya sahip değildir.

Yaygın olarak kullanılan bir diğer taşıma katmanı protokolü olan UDP, ilk ikisine sahip değildir.

kısıtlamalar (noktadan noktaya bağlantı ve kayıp segmentlerin iletimi), ancak sağlamaz kritik bilgi senkronizasyon hakkında. Bu nedenle, UDP'nin kendisinin gerçek zamanlı uygulamalar için herhangi bir genel amaçlı aracı yoktur.

Her gerçek zamanlı uygulama, gerçek zamanlı iletimi desteklemek için kendi mekanizmalarına sahip olsa da, tek bir protokolün tanımlanmasını oldukça arzu edilir kılan birçok ortak özelliği paylaşırlar. Bu türden standart protokol, RFC 1889'da tanımlanan RTP'dir.

Tipik bir gerçek zamanlı ortamda gönderici, paketleri sabit bir hızda üretir. Onlara düzenli aralıklarla gönderilirler, ağda dolaşırlar ve verileri alındıkça gerçek zamanlı olarak oynatan alıcı tarafından alınırlar.

Ancak, paketler ağda dolaşırken gecikme süresindeki değişiklik nedeniyle düzensiz aralıklarla ulaşırlar. Bu etkiyi telafi etmek için gelen paketler ara belleğe alınır, bir süre tutulur ve daha sonra çıktı üreten yazılıma sabit bir oranda sağlanır. Bu şemanın çalışması için her pakete zaman damgası eklenir, böylece alıcı gelen verileri gönderen ile aynı hızda yeniden oynatabilir.

RTP, bir oturumdaki birden çok katılımcı arasında gerçek zamanlı veri aktarımını destekler. (Oturum, iki veya daha fazla RTP kullanıcısı arasında veri aktarımı süresince sürdürülen mantıksal bir ilişkidir. Oturum açma işlemi RTP kapsamı dışındadır.)

RTP gerçek zamanlı tek noktaya yayın için de kullanılabilirken, gücü çok noktaya yayın desteğinde yatmaktadır. Bunu yapmak için, her RTP veri bloğu, hangi katılımcının verileri oluşturduğunu gösteren bir gönderici tanımlayıcısı içerir. RTP veri blokları ayrıca, verilerin alıcı taraf tarafından doğru aralıklarla oynatılabilmesi için bir zaman damgası içerir.

Ayrıca RTP, iletilen verilerin yük biçimini tanımlar. Bununla doğrudan ilgili olan, kısmen mikserin - RTP çeviri mekanizmasının - sorumluluğunda olan senkronizasyon kavramıdır. Bir veya daha fazla kaynaktan RTP paketi akışları aldıktan sonra bunları birleştirir ve bir veya daha fazla alıcıya yeni bir RTP paketi akışı gönderir. Karıştırıcı, verileri kolayca birleştirebilir ve biçimini değiştirebilir.

Mikser Uygulama Örneği - Birden Fazla Ses Kaynağını Birleştirme. Örneğin, belirli bir ses oturumundaki bazı sistemlerin her birinin kendi RTP akışını oluşturduğunu varsayalım. Çoğu zaman, yalnızca bir kaynak etkindir, ancak bazen birkaç kaynak aynı anda "konuşur".

Eğer bir yeni sistem bir oturuma katılmak istiyor, ancak ağa olan bağlantısı tüm RTP akışlarını desteklemek için yeterli ve doğru kapasiteye sahip değil, ardından mikser tüm bu akışları alır, bir araya getirir ve sonuncuyu yeni oturum üyesine iletir. Birden çok akış alındığında, mikser PCM değerlerini ekler. Karıştırıcı tarafından üretilen RTP başlığı, verileri pakette bulunan göndericinin/göndericilerin tanımlayıcılarını içerir.

Daha basit bir cihaz, gelen her RTP paketi için bir giden RTP paketi oluşturur. Çevirmen adı verilen bu mekanizma, paketteki verilerin biçimini değiştirebilir veya verileri bir etki alanından diğerine aktarmak için farklı bir dizi düşük seviyeli protokol kullanabilir. Örneğin, potansiyel bir alıcı, oturumdaki diğer katılımcılar tarafından kullanılan yüksek hızlı video sinyalini işleyemeyebilir. Çevirmen daha sonra videoyu daha düşük bit hızı gerektiren daha düşük kaliteli bir biçime dönüştürür.

Her RTP paketinin temel bir başlığı ve muhtemelen uygulamaya özel ek alanları vardır. Pirinç. 4 ana başlığın yapısını gösterir. İlk 12 sekizli aşağıdaki alanlardan oluşur:

  • sürüm alanı (2 bit): Şimdiki versiyonu- ikinci;
  • doldurma alanı (1 bit): Bu alan, yükün sonunda doldurma sekizlilerinin varlığını bildirir. (Uygulama yük boyutunun örneğin 32 bitin katı olmasını gerektirdiğinde dolgu uygulanır.) Bu durumda, son sekizli dolgu sekizlilerinin sayısını gösterir;
  • başlık uzantısı alanı (1 bit): bu alan ayarlandığında, ana başlığın ardından deneysel RTP uzantılarında kullanılan ek bir başlık gelir;
  • gönderici sayısı alanı (4 bit): bu alan, verileri pakette bulunan göndericilerin tanımlayıcılarının sayısını içerir, tanımlayıcıların kendileri ana başlığı takip eder;
  • işaret alanı (1 bit): İşaret bitinin anlamı, yük tipine bağlıdır. İşaret biti tipik olarak veri akışının sınırlarını belirtmek için kullanılır. Video durumunda, çerçevenin sonunu ayarlar. Ses durumunda, bir sessizlik döneminden sonra konuşmanın başlangıcını belirtir;
  • faydalı yük tipi alanı (7 bit): Bu alan, sıkıştırma ve şifreleme dahil olmak üzere faydalı yük tipini ve veri formatını tanımlar. Durağan durumda, gönderici oturum başına yalnızca bir veri yükü türü kullanır, ancak Gerçek Zamanlı Aktarım Kontrol Protokolü tarafından sinyal verilirse değişen koşullara yanıt olarak bunu değiştirebilir;
  • alan seri numarası(16 bit): Her kaynak, paketleri rastgele bir sayıdan numaralandırmaya başlar, ardından gönderilen her RTP veri paketiyle birer birer artar. Bu, paket kaybını algılamanıza ve aynı zaman damgasına sahip paketlerin sırasını belirlemenize olanak tanır. Aynı anda mantıksal olarak oluşturulmuşlarsa (örneğin, aynı video çerçevesine ait paketler);
  • zaman damgası alanı (32 bit): yük verisinin ilk sekizlisinin burada oluşturulduğu zamandaki noktayı kaydeder. Bu alanda belirtilen sürenin birimleri, yükün türüne bağlıdır. Değer, gönderenin yerel saati tarafından belirlenir;
  • Senkronizasyon Kaynağı Kimliği alanı: Bir oturum sırasında kaynağı benzersiz şekilde tanımlayan, rastgele oluşturulmuş bir sayı.

Ana başlığı, verileri veri yükünde bulunan bir veya daha fazla gönderen tanımlayıcı alanı izleyebilir. Bu tanımlayıcılar karıştırıcı tarafından eklenir.

RTP protokolü yalnızca kullanıcı verilerini - genellikle çok noktaya yayın - oturumdaki tüm katılımcılara aktarmak için kullanılır. Ayrı bir Gerçek Zamanlı Aktarım Kontrol Protokolü (RTCP), sağlamak için birden çok hedefle çalışır. geri bildirim RTP veri göndericileri ve diğer oturum katılımcıları ile.

RTCP, RTP (genellikle UDP) ile aynı temel aktarım protokolünü kullanır, ancak farklı bir bağlantı noktası numarası. Her oturum katılımcısı, diğer tüm oturum katılımcılarına periyodik olarak bir RTCP paketi gönderir. RFC 1889, RTCP tarafından gerçekleştirilen üç işlevi açıklar.

İlk işlev, tıkanıklık durumunda hizmet kalitesi ve geri bildirim sağlamaktır. RTCP paketleri çok noktaya yayın olduğundan, oturumdaki tüm katılımcılar diğer katılımcıların ne kadar iyi çalıştığını ve aldığını değerlendirebilir. Gönderenin mesajları, alıcıların veri hızını ve iletim kalitesini değerlendirmesine olanak tanır. Alıcıların mesajları, paket kaybı ve aşırı dalgalanma da dahil olmak üzere yaşadıkları sorunlar hakkında bilgiler içerir. Örneğin, bağlantı belirli bir bit hızında istenen hizmet kalitesini sağlamazsa, bir ses/video uygulamasının bit hızı azaltılabilir.

Alıcı geri bildirimi, yayılma hatalarını teşhis etmek için de önemlidir.

Bir ağ yöneticisi, bir oturumdaki tüm katılımcılardan gelen mesajları analiz ederek, belirli bir sorunun bir katılımcıyla mı ilgili yoksa genel nitelikte mi olduğunu belirleyebilir.

RTCP'nin ikinci ana işlevi gönderici kimliğidir. RTCP paketleri, gönderenin standart bir metin açıklamasını içerir. Veri paketlerinin göndericisi hakkında, rastgele seçilen bir eşitleme kaynağı kimliğinden daha fazla bilgi sağlarlar. Ayrıca, kullanıcının farklı oturumlarla ilgili konuları tanımlamasına yardımcı olurlar. Örneğin, kullanıcının ayrı sesli ve görüntülü oturumların aynı anda açık olduğunu belirlemesine izin verir.

Üçüncü işlev, oturum boyutlandırma ve ölçeklemedir. Hizmet kalitesini sağlamak ve tıkanıklığı kontrol etmek için geri bildirim sağlamak ve göndereni belirlemek için tüm katılımcılar periyodik olarak RTCP paketleri gönderir. Katılımcı sayısı arttıkça bu paketlerin iletim sıklığı azalır.

Az sayıda katılımcı ile en fazla her beş saniyede bir RTCP paketi gönderilir. RFC 1889, katılımcıların toplam katılımcı sayısına göre RTCP paketlerinin oranını sınırladığı bir algoritmayı açıklar. Amaç, RTCP trafiğini toplam oturum trafiğinin %5'inin altında tutmaktır.

Herhangi bir ağın amacı, verileri alıcıya garantili bir hizmet kalitesiyle teslim etmektir. verim, gecikme ve izin verilen gecikme varyasyon limiti. Kullanıcıların ve uygulamaların sayısı arttıkça, hizmetlerin kalitesini sağlamak giderek daha zor hale geliyor.

Sadece aşırı yüklenmeye yanıt vermek artık yeterli değil. Tıkanıklığı tamamen önlemek, yani uygulamaların gerekli hizmet kalitesine göre ağ kaynaklarını ayırmasını mümkün kılmak için bir araca ihtiyaç vardır.

Önleyici tedbirler hem tek noktaya yayın hem de çok noktaya yayın için yararlıdır. Tek noktaya yayında, iki uygulama belirli bir oturum için belirli bir hizmet düzeyi kalitesi üzerinde anlaşırlar. Ağ çok yüklüyse, gerekli hizmet kalitesini sağlayamayabilir. Bu durumda başvuruların seansı daha iyi zamanlara ertelemesi veya mümkünse hizmet kalitesini düşürmeye çalışması gerekecektir.

Bu durumda çözüm, tek noktaya yayın uygulamalarının gerekli hizmet düzeyini sağlamak için kaynakları ayırmasıdır. Ardından, amaçlanan yoldaki yönlendiriciler kaynakları tahsis eder (örneğin, kuyrukta bir yer ve giden hattın kapasitesinin bir kısmı). Yönlendirici, önceki taahhütler nedeniyle kaynakları tahsis edemiyorsa, uygulamaya bildirir. Bu durumda uygulama, daha düşük hizmet kalitesi gereksinimlerine sahip başka bir oturum başlatmayı deneyebilir veya daha sonraki bir tarihe yeniden planlayabilir.

Çok noktaya yayın çok daha fazlasını koyar zorlu görevler kaynak rezervasyonu. Büyük hacimlerin üretilmesine yol açar ağ grafikleri- örneğin, video gibi uygulamalarda veya geniş ve dağınık bir alıcı grubunun olduğu durumlarda. Ancak, bir çok noktaya yayın kaynağından gelen trafik prensipte önemli ölçüde azaltılabilir.

Bunun iki nedeni var. İlk olarak, grubun bazı üyelerinin belirli bir zaman diliminde belirli bir kaynaktan veri göndermesi gerekmeyebilir. Böylece, aynı grubun üyeleri aynı anda iki kanal aracılığıyla (iki kaynaktan) bilgi alabilir, ancak alıcı yalnızca bir kanal almakla ilgilenebilir.

İkincisi, grubun bazı üyelerinin gönderici tarafından iletilen bilgilerin yalnızca bir kısmını işleyebilmesidir. Örneğin, bir video akışı iki bileşenden oluşabilir: biri düşük resim kalitesine ve diğeri yüksek resim kalitesine sahip. Bu formatın bir dizi video sıkıştırma algoritması vardır: düşük kaliteli bir resim ile bir temel bileşen oluştururlar ve ek bileşen daha yüksek çözünürlük ile.

Bazı alıcılar, bileşenleri işlemek için yeterli işlem gücüne sahip olmayabilir. yüksek çözünürlük veya tam sinyali taşımak için yeterli kapasiteye sahip olmayan bir alt ağ veya bağlantı yoluyla ağa bağlı olabilir.

Kaynak rezervasyonu, yönlendiricilerin çok noktaya yayın trafiğini tüm hedeflere iletip iletemeyeceklerini önceden belirlemesine olanak tanır.

Kaynak rezervasyonlarının uygulanmasına yönelik önceki girişimlerde ve çerçeve rölesi ve ATM'de benimsenen yaklaşımlarda, veri akışının kaynağı tarafından gerekli kaynaklar talep edilmektedir. Bu yöntem, tek noktaya yayın iletimi durumunda yeterlidir, çünkü ileten uygulama verileri belirli bir oranda iletir ve gerekli hizmet kalitesi seviyesi iletim şemasının doğasında vardır.

Ancak, bu yaklaşım çok noktaya yayın için kullanılamaz. Farklı grup üyelerinin farklı kaynak gereksinimleri olabilir. Orijinal akış alt akışlara bölünebilirse, grubun bazı üyeleri bunlardan yalnızca birini almak isteyebilir. Özellikle, bazı alıcılar yalnızca düşük çözünürlüklü video bileşenini işleyebilecektir. Veya birden fazla gönderici aynı gruba yayın yapıyorsa, alıcı yalnızca bir gönderici veya bunların bir alt kümesini seçebilir. Son olarak, farklı alıcıların hizmet kalitesi gereksinimleri, çıktı ekipmanına, işlemci gücüne ve kanal hızına bağlı olarak değişebilir.

Bu nedenle alıcı tarafından kaynak rezervasyonları tercih edilir olarak görülmektedir. Göndericiler, yönlendiricilere trafiğin genel özelliklerini sağlayabilir (veri hızı ve değişkenlik gibi), ancak alıcılar gereken hizmet kalitesi düzeyini belirlemelidir. Yönlendiriciler daha sonra yayılım ağacının ortak bölümlerinde kaynak tahsisi taleplerini toplar.

RSVP, veri akışlarıyla ilgili üç kavrama dayanmaktadır: oturum, akış belirtimi ve filtre belirtimi. Oturum hedefi tarafından tanımlanan bir veri akışıdır. RSVP ve RTP oturumları bire bir yazışmalara sahip olsa da, bu kavramın bir RTP oturumundan farklı olduğunu unutmayın. Bir yönlendirici belirli bir hedef için kaynak ayırdıktan sonra, bunu bir oturumun başlangıcı olarak kabul eder ve kaynakları o oturumun süresi için tahsis eder.

Akış tanımlayıcısı adı verilen hedef uç sistemden gelen bir rezervasyon talebi, bir akış belirtimi ve bir filtreden oluşur. Akış özellikleri gerekli hizmet kalitesini tanımlar ve düğüm tarafından paket planlayıcının parametrelerini ayarlamak için kullanılır. Yönlendirici, paketleri mevcut akış spesifikasyonuna dayalı olarak belirli bir dizi tercihle iletir.

Filtre özellikleri altında kaynakların talep edildiği bir dizi paketi tanımlar. Oturumla birlikte, gerekli hizmet kalitesinin sağlanacağı bir dizi paketi (veya akışı) tanımlar. Bu hedefe yönelik diğer paketler, ağ bunu yapabildiği sürece işlenir.

RSVP, akış belirtiminin içeriğini tanımlamaz, yalnızca isteği iletir. Bir akış belirtimi tipik olarak bir hizmet sınıfını, Rspec (R, yedek anlamına gelir) ve Tspec (T, trafik anlamına gelir) içerir. Diğer iki parametre bir sayı kümesidir. Rspec parametresi gerekli hizmet kalitesini tanımlar ve Tspec parametresi veri akışını tanımlar. Rspec ve Tspec'in içeriği RSVP'ye şeffaftır.

Prensipte, bir filtre belirtimi, tek bir oturumdan (yani, hedefi o oturum tarafından belirlenen paketler) rastgele bir paket alt kümesini tanımlar. Örneğin, bir filtre belirtimi yalnızca belirli göndericileri tanımlayabilir veya protokol başlık alanları belirtilenlerle eşleşen protokolleri veya paketleri tanımlayabilir.

Pirinç. 3, oturum, akış belirtimi ve filtre belirtimi arasındaki ilişkiyi gösterir. Gelen her paket en az bir oturuma aittir ve o oturumun mantıksal akışına göre değerlendirilir. Paket herhangi bir oturuma ait değilse, ücretsiz kaynaklar olduğu sürece teslim edilir.

RSVP ile ilgili ana zorluk, çok noktaya yayın ile ilgilidir. Bir çok noktaya yayın konfigürasyonunun bir örneği, Şek. 6. Bu yapılandırma dört yönlendiriciden oluşur. Bir hat ile temsil edilen herhangi iki yönlendirici arasındaki bağlantı, doğrudan bir bağlantı veya bir alt ağ olabilir. Üç ana bilgisayar - Gl, G2 ve G3 - aynı gruptadır ve ilgili çok noktaya yayın adresiyle datagramları alır. Bu adresteki veriler iki ana bilgisayar tarafından iletilir - S1 ve S2. Kırmızı çizgi S1 ve bu grup için yönlendirme ağacına ve S2 ve bu grup için mavi çizgiye karşılık gelir. Ok çizgileri, S1'den (kırmızı) ve S2'den (mavi) gelen paketlerin yönünü gösterir.

Şekil, dört yönlendiricinin de her alıcının kaynak rezervasyonundan haberdar olması gerektiğini göstermektedir. Böylece, kaynak tahsis talepleri, yönlendirme ağacında geriye doğru yayılır.

RSVP iki ana mesaj türü kullanır: Resv ve Path. Resv mesajları alıcılar tarafından üretilir ve her düğüm yol boyunca mümkün olduğunda farklı alıcılardan gelen paketleri birleştirerek ve yeniden birleştirerek ağaçta yayılır. Bu mesajlar, yönlendiricinin o oturum için bir kaynak ayırma durumuna (çok noktaya yayın adresi) girmesine neden olur. Sonunda tüm birleşik Resv mesajları gönderen ana bilgisayarlara ulaşır. Alınan bilgilere dayanarak, ilk atlama için uygun program kontrol parametrelerini ayarlarlar.

Pirinç. 7 Resv mesaj akışını gösterir. Lütfen dikkat: mesajlar birleştirilir; bu nedenle, birleşik teslimat ağacının herhangi bir dalına yalnızca bir mesaj gönderilir. Ancak, kaynak ayırma süresini uzatmak için bu mesajların periyodik olarak yeniden gönderilmesi gerekir.

Yol mesajı, ters rota bilgilerini yaymak için kullanılır. Tüm modern çok noktaya yayın yönlendirme protokolleri, yalnızca (göndericiden aşağı) bir yayılım ağacı biçimindeki doğrudan yolu destekler. Ancak Resv mesajları, tüm ara yönlendiriciler aracılığıyla tüm gönderen ana bilgisayarlara geri gönderilmelidir.

Yönlendirme protokolü ters yön bilgisi sağlamadığından, Yol mesajlarında RSVP tarafından taşınır. Gönderici olmak isteyen herhangi bir ana bilgisayar, grubun tüm üyelerine bir Yol mesajı gönderir. Yol boyunca, her yönlendirici ve her hedef ana bilgisayar, bu gönderici için paketlerin paketin alındığı sekmeye iletilmesi gerektiğini belirten yol durumuna girer. Pirinç. Şekil 5, Yol paketlerinin veri paketleriyle aynı yollar üzerinden gönderildiğini gösterir.

RSVP protokolünün işleyişini düşünün. Konağın bakış açısından, protokolün çalışması aşağıdaki adımlardan oluşur (bu sıradaki ilk iki adım bazen tersine çevrilir).

  1. Alıcı, komşu yönlendiriciye bir IGMP mesajı göndererek çok noktaya yayın grubuna katılır.
  2. Potansiyel gönderici, grubun adresine bir mesaj gönderir.
  3. Alıcı, göndereni tanımlayan bir Yol mesajı alır.
  4. Artık alıcı, dönüş yolu hakkında bilgiye sahip olduğuna göre, akış tanımlayıcıları ile Resv mesajları gönderebilir.
  5. Resv mesajları ağ üzerinden gönderene gönderilir.
  6. Gönderici veri iletmeye başlar.
  7. Alıcı veri paketlerini almaya başlar.

Dünün büyük hacimli grafiklerle çalışma yöntemleri, modern sistemler için tamamen uygun değildir. Yeni araçlar olmadan, hacimlerinin büyümesi, gerçek zamanlı uygulamaların yayılması ve çok noktaya yayın nedeniyle artan veri iletimi taleplerini karşılamak imkansızdır. RTP ve RSVP, yeni nesil LAN'lar için sağlam bir temel sağlar.

Bu protokollerin gerçek uygulamasına bir örnek, H.232 standardında açıklanan ve bir IP ağı üzerinden ses, video bilgisi ve veri iletimini sağlayan IP ağları üzerinden ses iletimi olan VoIP (IP üzerinden Ses) modelidir. . Bu durumda, bir bağlantı kurmak için gerçek zamanlı protokol RTP kullanılır ve ağ kaynaklarını ayırmak için RSVP protokolü kullanılır.

AT bu bölüm ağ ve taşıma protokolleri tarafından RTP paketlerinin transferinin bazı yönleri göz önünde bulundurulur. Diğer protokollerin spesifikasyonlarında aksi belirtilmedikçe, paketler iletilirken aşağıdaki temel kurallar geçerlidir.

RTP, RTP veri akışlarının ve RTCP kontrol bilgilerinin ayrılmasını sağlamak için alt katman protokollerine dayanır. UDP ve benzer protokoller için, RTP çift bağlantı noktası numarası kullanır ve karşılık gelen RTCP akışı birden büyük bir bağlantı noktası numarası kullanır.

RTP bilgi paketleri herhangi bir uzunluk alanı içermez, bu nedenle RTP ayrıca bir uzunluk göstergesi sağlamak için temel protokole güvenir. RTP paketlerinin maksimum uzunluğu yalnızca alt katman protokolleriyle sınırlıdır.

Birkaç RTP protokol paketi, örneğin bir UDP paketinde, bir alt katman protokol veri biriminde iletilebilir. Bu, başlık fazlalığını azaltır ve farklı akışlar arasındaki senkronizasyonu basitleştirebilir.

9. Protokol sabitlerinin listesi

Bu bölüm, RTP protokolü belirtiminde tanımlanan sabitlerin bir listesini içerir.

RTP (PT - yük tipi) trafik tipi sabitleri profillerde tanımlanır. Bununla birlikte, RTP paketlerini RTCP SR ve RR paketlerinden ayırt etmek için işaretleyici bit(ler)i ve trafik türü alanını içeren RTP başlık sekizlisi, 200 ve 201 (ondalık) ayrılmış değerleri içermemelidir. Bir işaret biti ve yedi bit trafik türü alanına sahip standart bir biçim için bu kısıtlama, 72 ve 73 numaralı trafik türlerinin kullanılmaması gerektiği anlamına gelir.

RTCP paket türlerinin değerleri (bkz. Tablo 1), RTP paketleriyle karşılaştırıldığında RTCP paket başlığının doğruluğunu daha iyi kontrol etmek için 200 ila 204 aralığında seçilir. RTCP paket tipi alanı, RTP başlığının ilgili sekizlisi ile karşılaştırıldığında, bu aralık bir işaretleyici bitine (normalde bilgi paketlerinde durum böyle değildir) ve standart trafik tipi alanının en anlamlı bitine tekabül eder. (oysa statik olarak tanımlanmış trafik türleri genellikle en önemli basamakta sıfır olan PT değerlerine sahiptir). Bu aralık aynı zamanda 0 ve 255 değerlerinden daha uzak olacak şekilde seçilmiştir, çünkü tamamen sıfırlardan veya birlerden oluşan alanlar çoğunlukla verinin karakteristiğidir.

Diğer RTCP paketleri türleri, IANA Topluluğu tarafından tanımlanır. Geliştiriciler, deneysel araştırma için ihtiyaç duydukları değerleri kaydetme ve daha sonra bu değerlere ihtiyaç kalmadığında kaydı silme yeteneğine sahiptir.

SDES paketindeki geçerli öğe türleri Tablo'da sunulmuştur. 2. Diğer SDES öğe türleri, IANA Topluluğu tarafından atanır. Geliştiriciler, deneysel çalışmalar gerçekleştirirken ihtiyaç duydukları değerleri kaydetme ve daha sonra bu değerlere artık ihtiyaç duyulmadığında kaydı silme yeteneğine sahiptir.

10. Trafik profili ve formatının tanımı

Yukarıda belirtildiği gibi (bkz. Bölüm 2), belirli bir uygulama için RTP protokolünün tam açıklaması, iki tür ek belge gerektirir: profilin açıklaması ve trafik formatı.

RTP, çok farklı gereksinimlere sahip birçok uygulama sınıfı için kullanılabilir. Bu gereksinimlere uyum esnekliği, farklı profiller kullanılarak sağlanır (bkz. ). Tipik olarak bir uygulama yalnızca bir profil kullanır ve hangi profilin içinde olduğuna dair açık bir gösterge yoktur. şu an kullanımda, hayır.

İkinci türden isteğe bağlı bir belge olan trafik formatı belirtimi, belirli bir trafik türünün (örneğin H.261 kodlanmış video) RTP'ye göre nasıl iletilmesi gerektiğini tanımlar. Aynı trafik formatı birden fazla profil için kullanılabilir ve bu nedenle profilden bağımsız olarak tanımlanabilir. Profil belgeleri yalnızca bu biçimi PT değeriyle eşleştirmekten sorumludur. .

Profil açıklaması aşağıdaki öğeleri tanımlayabilir, ancak bu liste ayrıntılı değildir.

RTP veri paketinin başlığı. Belirteç bitini ve trafik türü alanını içeren RTP veri paketinin başlığındaki sekizli, farklı gereksinimleri karşılamak için, örneğin daha fazla veya daha az simge biti sağlamak için profile göre yeniden tanımlanabilir (Bölüm 3.3).

trafik türleri. Bir profil tipik olarak bir dizi trafik biçimini (örneğin, medya kodlama algoritmaları) ve bu biçimlerin ve PT değerlerinin varsayılan bir statik eşlemesini tanımlar. Trafik formatlarından bazıları, bireysel trafik formatı açıklamalarına atıfta bulunularak tanımlanabilir. Tanımlanan her trafik türü için profil, kullanılacak gerekli RTP zaman damgası saat hızını belirtmelidir (Bölüm 3.1).

RTP veri paketi başlığı eklemeleri. eğer bazı ek işlevsellik içinde uygulama sınıfı profil, trafik türünden bağımsız olarak, RTP veri paketinin sabit başlığına ek alanlar eklenebilir .

RTP veri paketi başlık uzantıları. RTP Veri Paketi Başlık Uzantısı yapısının ilk 16 bitinin içeriği, bu mekanizmanın kullanımına profil tarafından izin veriliyorsa belirtilecektir. .

RTCP paketlerinin türleri. Yeni, uygulama sınıfına özel RTCP paketleri türleri tanımlanabilir (ve IANA'ya kaydedilebilir).

RTCP raporlama aralığı. Profil, RTCP raporlama aralığının hesaplanmasında kullanılan değerleri tanımlamalıdır: RTCP oturum bant genişliği oranı, minimum raporlama aralığı ve göndericiler ve alıcılar arasındaki bant genişliği dağılımı.

SR/RR paket uzantısı. Mümkün ise Ek Bilgiler düzenli olarak iletilecek bir gönderici veya alıcı hakkında, RTCP SR ve RR paketleri için bir uzantı bölümü tanımlanabilir.

SDES'i kullanma. Profil, iletilecek veya hariç tutulacak RTCP SDES öğeleri için göreli öncelikleri tanımlayabilir (bkz. bölüm 4.2.2); bir CNAME yan tümcesi için alternatif sözdizimi veya semantik (Bölüm 4.4.1); LOC öğe formatı (Bölüm 4.4.5); NOT maddesinin (Bölüm 4.4.7) anlamı ve kullanımı ile IANA'ya kaydedilecek yeni SDES hükümleri.

Emniyet. Bir profil, uygulamaların hangi güvenlik hizmetlerini ve algoritmaları kullanması gerektiğini tanımlayabilir ve bunların kullanımı üzerinde kontrol sağlayabilir (madde 7).

Şifre-anahtar eşleşmesi. Profil, kullanıcı tarafından girilen parolanın nasıl bir şifreleme anahtarına dönüştürüleceğini belirleyebilir.

Temel protokol. RTP paketlerinin iletimi, belirli bir temel ağ veya taşıma katmanı protokolünün kullanılmasını gerektirebilir.

Taşıma Uygunluğu. RTP ve RTCP'nin standart eşleştirme dışında, UDP portları gibi bölüm 8'de belirtilen taşıma katmanı adresleri tanımlanabilir.

kapsülleme. RTP paket şekillendirme, birden çok RTP bilgi paketinin tek bir temel protokol veri biriminde iletilmesine izin verecek şekilde tanımlanabilir (bölüm 8).

Geliştirdiğiniz her uygulama yeni bir profil gerektirmemelidir. Yeni bir tane oluşturmaktansa, aynı uygulama sınıfı içinde mevcut bir profili genişletmek daha uygundur. Bu, her uygulama tipik olarak yalnızca bir profil altında çalıştığından, uygulamaların etkileşimini kolaylaştıracaktır. Ek PT değerleri veya RTCP paket türleri tanımlamak gibi basit uzantılar, bunları IANA'ya kaydettirerek ve açıklamalarını bir profil spesifikasyonunda veya trafik formatı spesifikasyonunda yayınlayarak yapılabilir.

11. Minimum kontrolle sesli ve görüntülü konferans için RTP profili

RFC 1890, sesli ve görüntülü konferanslar için RTP Profili (Sesli ve Görüntülü Konferanslar için RTP Profili) olarak adlandırılan bir grup sesli veya video konferansında RTP sürüm 2 gerçek zamanlı aktarım protokolünü ve bununla ilişkili RTCP kontrol protokolünü kullanmak için bir profili açıklar. . Minimal Kontrol ile). Bu profil, RTP protokolü sürüm 2 belirtiminde (RFC 1889) belirtilmeyen RTP özelliklerini tanımlar. Minimum kontrol, parametre anlaşması veya üyelik kontrolü için hiçbir desteğin gerekli olmadığı anlamına gelir (örneğin, RTCP tarafından sağlanan statik trafik tipi eşlemeleri ve üyelik göstergeleri kullanılarak). Ana hükümleri göz önünde bulundurun bu profil.

11.1. RTP ve RTCP paket biçimleri ve protokol parametreleri

Bu bölüm, bir profilde tanımlanabilen veya değiştirilebilen bir dizi öğenin tanımını içerir.

RTP bilgi paketinin başlığı. RTP bilgi paketlerinin standart sabit başlık formatı (bir bit işaretleyici) kullanılır.

trafik türleri. Trafik türleri için statik değerler 11.3 ve 11.4 bölümlerinde tanımlanmıştır.

RTP Bilgi Paketi Başlık Uzantıları. RTP bilgi paketi başlıklarına ek sabit alan eklenmez.

RTP Bilgi Paketi Başlık Uzantıları. Hiçbir RTP bilgi paketi başlık uzantısı tanımlanmamıştır, ancak bu profili kullanan uygulamalar bu tür uzantıları KULLANABİLİR. Yani uygulamalar, RTP başlığının X bitinin her zaman sıfır olduğunu varsaymamalıdır. Uygulamalar, başlık genişletmesini yok sayacak şekilde hazırlanmalıdır. Gelecekte bir başlık uzantısı tanımlanırsa, birçok farklı uzantının tanımlanabilmesi için ilk 16 bitin içeriği belirtilmelidir.

RTCP paketlerinin türleri. Bu profil belirtiminde ek RTCP paket türleri tanımlanmamıştır.

RTCP raporlama aralığı. RTCP raporlama aralığı hesaplanırken, RFC 1889'da önerilen sabitler kullanılacaktır.

SR/RR paket uzantıları. RTCP SR ve RR paketleri için uzantılar tanımlanmamıştır.

SDES'i kullanma. Uygulamalar, açıklanan SDES maddelerinden herhangi birini kullanabilir. Kurallı ad (CNAME) bilgisi her raporlama aralığında gönderilirken, diğer öğelerin yalnızca her beşinci raporlama aralığında gönderilmesi gerekir.

Emniyet. Varsayılan RTP güvenlik hizmetleri de bu profil tarafından varsayılan olarak tanımlanır.

Şifre-anahtar eşleşmesi. Kullanıcı tarafından girilen şifre, MD5 algoritması kullanılarak 16 sekizli bir özete dönüştürülür. Özetten ilk N biti kullanılarak bir N bitlik anahtar elde edilir. Parolanın telefon, faks, teleks veya e-posta yoluyla iletirken bozulma olasılığını azaltmak için yalnızca ASCII harflerini, sayıları, kısa çizgileri ve boşlukları içermesi amaçlanmıştır. Parolanın önüne bir şifreleme algoritması belirtimi gelebilir. İlk eğik çizgiye (ASCII kodu 0x2f) kadar olan herhangi bir karakter, şifreleme algoritmasının adı olarak alınır. Eğik çizgi yoksa, varsayılan şifreleme algoritması DES-CBC'dir.

Kullanıcı tarafından girilen şifre, kapatma algoritması uygulanmadan önce kanonik formuna dönüştürülür. Bunu yapmak için, parola ISO/IEC 10646-1:1993 Ek P'de tanımlandığı gibi UTF-8 kodlaması kullanılarak ISO 10646 karakter kümesine dönüştürülür (ASCII karakterleri herhangi bir dönüştürme gerektirmez); parolanın başındaki ve sonundaki boşluklar kaldırılır; iki veya daha fazla boşluk bir boşlukla değiştirilir (ASCII veya UTF-8 0x20); tüm harfler küçük harflere dönüştürülür

temel protokol. Profil, çift yönlü ve çok noktaya yayın modunda UDP üzerinden RTP kullanımını tanımlar.

Taşıma Uygunluğu. RTP ve RTCP'nin taşıma katmanı adreslerine standart eşlemesi kullanılır.

kapsülleme. RTP paketlerinin kapsüllenmesi tanımlı değil.

11.2. Trafik türlerinin kaydedilmesi

Bu profil, RTP ile kullanılan standart kodlama türlerini tanımlar. Diğer kodlama türleri, kullanılmadan önce IANA'ya kaydedilmelidir. Yeni bir kodlama türü kaydedilirken aşağıdaki bilgiler sağlanmalıdır:

  • kodlama türü kural adı ve RTP zaman damgası saat hızı (gerekirse, kompakt bir temsil sağlamak için geleneksel adlar üç veya dört karakter uzunluğunda olmalıdır);
  • kodlama türünü değiştirme hakkına kimin sahip olduğuna dair bir gösterge (örneğin, ISO, CCITT/ITU, diğer uluslararası standart kuruluşları, bir konsorsiyum, belirli bir şirket veya şirketler grubu);
  • herhangi bir çalışma parametresi;
  • bağlantılar mevcut açıklamalar kodlama algoritması, örneğin (tercih sırasına göre) RFC, yayınlanmış makale, patent kaydı, teknik rapor, codec kaynak kodu veya referans;
  • özel kodlama türleri için, İletişim bilgileri(posta adresi ve e-posta adresi);
  • gerekirse, bu profilin trafik türünü belirtmek için değer (aşağıya bakın).
  • RTP ile kullanılacak tüm kodlama türlerinin statik olarak atanması gerekmediğini unutmayın. 96 ila 127 aralığındaki bir Trafik Türü (PT) değeri ile bir kodlama türü arasında dinamik bir eşleme oluşturmak için bu makalede ele alınmayan "RTP olmayan araçlar" kullanılabilir.
  • Trafik türleri için mevcut değer alanı oldukça küçüktür. Yeni trafik türleri, yalnızca aşağıdaki koşullar yerine getirildiğinde statik olarak (kalıcı olarak) atanır:
  • kodlama, İnternet topluluğu için büyük ilgi görüyor;
  • mevcut kodlamalarla karşılaştırılabilir avantajlar sunar ve/veya mevcut, yaygın olarak kullanılan konferans veya multimedya sistemleriyle birlikte çalışabilirlik için gereklidir;
  • açıklama bir kod çözücü oluşturmak için yeterlidir.

11.3. Ses kodlama

Duraklamalar sırasında paket göndermeyen uygulamalar için, aktif konuşmanın ilk patlaması (duraklamadan sonraki ilk paket), RTP bilgi paketinin başlığındaki işaretleyici biti bir olarak ayarlanarak ayırt edilir. Sessizlik bastırma özelliği olmayan uygulamalar bu biti sıfıra ayarlar.

RTP zaman damgası oluşturulurken kullanılan RTP saati, kanal sayısından ve kodlama türünden bağımsızdır; saniyedeki örnekleme periyotlarının sayısına eşittir. N-kanal kodlaması için (stereo, dörtlü, vb.), her örnekleme periyodu (örneğin 1/8000 saniye) N örnek üretir. Toplam sayısı saniyede üretilen numune sayısı, numune hızının ve kanal sayısının çarpımına eşittir.

Çoklu kullanırken ses kanalları ilkinden başlayarak soldan sağa doğru numaralandırılırlar. RTP ses paketlerinde, düşük numaralı kanallardan gelen veriler, yüksek numaralı kanallardan gelen verilerden önce gelir. İkiden fazla kanal için aşağıdaki gösterim kullanılır:

  • l - sol;
  • r - sağ;
  • c - merkezi;
  • S - çevresel;
  • F - ön;
  • R - geri.
Kanal Sayısı Sistem adı Kanal numaraları
1 2 3 4 5 6
2 müzik seti ben r
3 ben r c
4 dörtlü fl Cum Rl sağ
4 ben c r S
5 fl Cum Fc Sl Bay
6 ben lc c r rc S

Aynı örnekleme anına ait tüm kanalların örnekleri aynı paket içinde olmalıdır. Farklı kanallardan örneklerin serpiştirilmesi, kodlamanın türüne bağlıdır.

Örnekleme hızı çeşitli seçeneklerden seçilmelidir: 8000, 11025, 16000, 22050, 24000, 32000, 44100 ve 48000 Hz (Apple Macintosh bilgisayarları, 22050 ve 11025 s'ye dönüştürülebilen 22254.54 ve 11127.27 yerel örnek hızlarına sahiptir. 20 ms'lik bir çerçevede dört veya iki örnek atlayarak kalite). Bununla birlikte, çoğu ses kodlama algoritması, daha sınırlı bir dizi örnekleme hızı için tanımlanır. Alıcılar çok kanallı ses almaya hazır olmalıdır, ancak mono'yu da seçebilir.

paketleme için ses sinyali, varsayılan paketleme aralığı, kodlama açıklamasında aksi belirtilmedikçe 20 ms olacaktır. Paketleme aralığı, minimum uçtan uca gecikmeyi tanımlar. Daha uzun paketlerde, başlık için nispeten daha küçük bir bayt oranı tahsis edilir, ancak bunlar büyük gecikme ve paket kaybını daha önemli hale getirir. Önemli bant genişliği kısıtlamaları olan dersler veya kanallar gibi etkileşimli olmayan uygulamalar için daha yüksek bir paketleme gecikmesi kabul edilebilir. Alıcı, 0 ila 200 ms gecikmeli bir ses sinyali içeren paketleri almalıdır. Bu sınır, alıcı için kabul edilebilir bir arabellek boyutu sağlar.

Örnek tabanlı kodlamalarda, her sinyal örneği sabit sayıda bit ile temsil edilir. Sıkıştırılmış ses verileri içinde, tek tek örnek kodlar sekizli sınırlarını aşabilir. Ses paketinde iletilen sinyalin süresi, paketteki örnek sayısı ile belirlenir.

Numune başına bir veya daha fazla sekizli üreten numune tabanlı kodlama türleri için, aynı anda numune alınan farklı kanallardan numuneler bitişik sekizlilere paketlenir. Örneğin, stereo kodlama için, sekizli dizisi şöyledir: sol kanal, ilk örnek; sağ kanal, ilk sayım; sol kanal, ikinci sayım; sağ kanal, ikinci örnek, vb. Çoklu sekizli kodlamada, en önemli sekizli ilk olarak iletilir. Numune başına bir sekizliden daha az üreten numune tabanlı kodlamaların paketlenmesi, kodlama algoritması tarafından belirlenir.

Çerçeve tabanlı kodlama algoritması, sabit uzunluktaki bir ses bloğunu, genellikle yine sabit uzunlukta olan başka bir sıkıştırılmış veri bloğuna dönüştürür. Çerçeve tabanlı kodlamalar için gönderici, bu tür birkaç çerçeveyi tek bir mesajda birleştirebilir.

Çerçeve tabanlı kodekler için, tüm blok için kanal sırası tanımlanır. Yani, stereo ses için sol ve sağ kanalların örnekleri bağımsız olarak kodlanır; burada sol kanal için kodlama çerçevesi, sağ kanal için çerçeveden önce gelir.

Tüm çerçeve yönelimli ses kodekleri, tek bir paket içinde iletilen ardışık birden çok çerçeveyi kodlayabilmeli ve kodunu çözebilmelidir. Çerçeve yönelimli kodekler için çerçeve boyutu belirtildiğinden, aynı kodlama için ayrı bir gösterim kullanmaya gerek yoktur, ancak farklı numara bir pakette çerçeveler.

Masada. Şekil 3, ses sinyalleri için bu profil tarafından tanımlanan trafik türlerinin (PT) değerlerini, bunların sözleşmeler ve ana özellikler kodlama algoritmaları

11.4. video kodlama

Masada. Şekil 4, bu profil tarafından tanımlanan kodlama türlerinin (PT), kodlama algoritmalarının sembollerinin ve video kodlama algoritmalarının teknik özelliklerinin yanı sıra atanmamış, ayrılmış ve dinamik olarak atanmış PT değerlerini gösterir.

96 ile 127 aralığındaki trafik tipi değerleri bu yazıda ele alınmayan konferans kontrol protokolü ile dinamik olarak belirlenebilir. Örneğin, oturum dizini, belirli bir oturum için trafik tipi 96'nın PCMU kodlamasını, 8000 Hz'de çift kanalı gösterdiğini belirtebilir. "Ayrılmış" olarak işaretlenmiş trafik türü aralığı, RTCP ve RTP protokol paketlerinin güvenilir bir şekilde ayırt edilebilmesi için kullanılmaz .

Bir RTP kaynağı, herhangi bir zamanda yalnızca bir tür trafik yayar; bir RTP oturumunda farklı trafik türlerinin serpiştirilmesine izin verilmez. Farklı trafik türlerini taşımak için paralel olarak birden çok RTP oturumu kullanılabilir. Bu profilde tanımlanan trafik türleri, ses veya videoya atıfta bulunur, ancak her ikisine birden değil. Ancak, örneğin ses ve videoyu trafik biçiminde uygun ayırma ile birleştiren birleştirilmiş trafik türlerini tanımlamak mümkündür.

Bu profili kullanan ses uygulamaları, en azından 0 (PCMU) ve 5 (DVI4) trafik türlerini gönderip alabilmelidir. Bu, format anlaşması olmadan birlikte çalışabilirliğe izin verir.

11.5. Liman Ataması

RTP protokolü açıklamasında tanımlandığı gibi, RTP verileri çift numaralı bir UDP bağlantı noktasında iletilmelidir ve karşılık gelen RTCP paketleri birden büyük bir bağlantı noktasında (tek numara) iletilmelidir.

Bu profille çalışan uygulamalar, bu tür herhangi bir UDP bağlantı noktası çiftini kullanabilir. Örneğin, bir çift bağlantı noktası, oturum yönetim programı tarafından rastgele atanabilir. Bazı durumlarda bu profili kullanan birden çok uygulamanın aynı ana bilgisayarda doğru şekilde çalışması gerektiğinden ve bazı işletim sistemleri birden çok işlemin farklı çok noktaya yayın adresleriyle aynı UDP bağlantı noktasını kullanmasına izin vermediğinden, tek bir sabit bağlantı noktası çifti belirtilemez.

Ancak, varsayılan bağlantı noktası numaraları 5004 ve 5005 olabilir. Birden çok profil kullanan uygulamalar, bu profilin göstergesi olarak bu bağlantı noktası çiftini seçebilir. Ancak uygulamalar, bağlantı noktası çiftinin açıkça belirtilmesini de gerektirebilir.

12. Kullanılan terimlerin ve kısaltmaların listesi

  • ASCII (Amerikan Bilgi Değişimi Standart Kodu), bilgi alışverişi için Amerikan standart kodudur. Temsil için yedi haneli kod metin bilgisi, çoğu bilgisayar sisteminde bazı değişikliklerle kullanılır
  • CBC (şifre blok zincirleme) - şifreli bloklar zinciri, DES veri şifreleme standart modu
  • CELP (kod uyarımlı doğrusal tahmin) - kod uyarımlı doğrusal tahmin kullanan bir tür ses kodlaması
  • CNAME (kurallı ad) - kurallı ad
  • CSRC (katkıda bulunan kaynak) - dahil edilen kaynak. RTP karıştırıcısı tarafından üretilen birleşik akışa katkıda bulunan RTP paket akışının kaynağı. Karıştırıcı, RTP paketinin başlığına, bu paketin oluşumuna katılan kaynakların SSRC tanımlayıcılarının bir listesini ekler. Bu listeye CSRC listesi denir. Örnek: karıştırıcı, tüm ses paketleri aynı SSRC tanımlayıcısını (örneğin, mikser olarak)
  • DES (Veri Şifreleme Standardı) - veri şifreleme standardı
  • IANA (İnternet Atanmış Numaralar Otoritesi) - İnternet Atanmış Numaralar Otoritesi
  • IMA (Etkileşimli Multimedya Derneği) - Etkileşimli Multimedya Derneği
  • IP (İnternet Protokolü) - internet protokolü, ağ katmanı protokolü, datagram protokolü. Paketlerin hedeflerine giderken birden fazla ağı geçmesine izin verir
  • IPM (IP Çok Noktaya Yayın) - IP protokolünü kullanarak çok noktaya yayın
  • LD-CELP (düşük gecikmeli kod uyarımlı doğrusal tahmin) - düşük gecikmeli kod uyarımlı doğrusal tahmin kullanan bir konuşma kodlama algoritması
  • LPC (doğrusal tahmin kodlaması) - doğrusal tahmin kodlaması
  • NTP (Ağ Zaman Protokolü) - bir ağ zaman protokolü, 1 Ocak 1900'de sıfır saate göre saniye cinsinden bir geri sayımdır. Tam NTP zaman damgası biçimi, imzasız 64 bitlik bir sayıdır. sabit nokta ilk 32 bitte bir tamsayı kısmı ve son 32 bitinde bir kesirli kısım ile. Bazı durumlarda, tam formattan sadece ortadaki 32 bitin alındığı daha kompakt bir gösterim kullanılır: tamsayı kısmının düşük 16 biti ve kesirli kısmın yüksek 16 biti
  • RPE/LTP ​​​​(artık darbe uyarma/uzun vadeli tahmin) - diferansiyel darbe uyarma ve uzun vadeli tahmin ile konuşma sinyali kodlama algoritması
  • RTCP (Gerçek Zamanlı Kontrol Protokolü) - gerçek zamanlı iletişim kontrol protokolü
  • RTP (Gerçek Zamanlı Aktarım Protokolü) - gerçek zamanlı aktarım protokolü
  • SSRC (senkronizasyon kaynağı) - senkronizasyon kaynağı. Ağ adresinden bağımsız olarak RTP başlığında taşınan 32 bit sayısal SSRC tanımlayıcısı tarafından tanımlanan RTP paket akışının kaynağı. Aynı zamanlama kaynağına sahip tüm paketler, aynı zamanlama aralığını ve aynı sıra numarası alanını kullanır, böylece alıcı, paketleri zamanlama kaynağını kullanarak oynatma için gruplandırır. Senkronizasyon kaynağı örneği: Mikrofon, video kamera veya RTP karıştırıcı gibi bir sinyal kaynağından alınan paket akışının göndericisi. Saat kaynağı, ses kodlaması gibi zaman içinde veri biçimini değiştirebilir. SSRC Kimliği, belirli bir RTP oturumu içinde genel olarak benzersiz olarak kabul edilen rastgele seçilmiş bir değerdir. Bir telekonferans katılımcısının bir multimedya oturumundaki tüm RTP oturumları için aynı SSRC tanımlayıcısını kullanması gerekmez; SSRC ID toplaması, RTCP protokolü aracılığıyla sağlanır. Bir katılımcı, tek bir RTP oturumunda, örneğin birden çok kameradan birden çok akış oluşturursa, her bir akış ayrı bir SSRC tarafından tanımlanmalıdır.
  • TCP (İletim Kontrol Protokolü), IP protokolü ile birlikte kullanılan bir taşıma katmanı protokolüdür.
  • UDP (Kullanıcı Datagram Protokolü), mantıksal bir bağlantı kurmadan bir taşıma katmanı protokolüdür. UDP, yalnızca ağdaki bir veya daha fazla istasyona paket göndermeyi sağlar. Veri iletiminin doğruluğunun kontrol edilmesi ve bütünlüğünün sağlanması (güvenli teslimat) daha üst düzeyde gerçekleştirilir.
  • ADPCM - uyarlanabilir diferansiyel darbe kodu modülasyonu
  • titreşim (titreşim) - titreşim, sinyalin faz veya frekansındaki sapmalar; IP telefonu ile ilgili olarak - ağdaki datagram gecikme düzensizlikleri
  • ZPD - veri iletim bağlantısı (Referans etkileşim modelinin ikinci seviyesi açık sistemler)
  • IVS - bilgi ve bilgi işlem ağları
  • mikser (mikser) - bir veya daha fazla kaynaktan RTP paketleri alan, muhtemelen veri formatını değiştiren, paketleri birleştiren bir ara sistem yeni paket RTP ve sonra iletir. Çoklu sinyal kaynakları genellikle senkronize olmadığı için, karıştırıcı bileşen akışlarının zamanlamasını düzeltir ve birleşik akış için kendi zamanlamasını oluşturur. Böylece, mikser tarafından üretilen tüm veri paketleri, mikserin saat kaynağına sahip olduğu şeklinde tanımlanır.
  • monitör (monitör) - RTP oturumu katılımcıları tarafından gönderilen RTCP paketlerini, özellikle alım raporlarını alan ve dağıtım kontrolü, hata tespiti ve uzun vadeli istatistikler için mevcut hizmet kalitesini değerlendiren bir uygulama. Normalde, bir monitörün işlevleri, oturumda kullanılan uygulamalarda bulunur, ancak monitör, RTP bilgi paketleri gönderen veya almayan başka bir şekilde kullanılmayan ayrı bir uygulama da olabilir. Bu tür uygulamalara üçüncü taraf monitörler denir.
  • ITU-T - Uluslararası Telekomünikasyon Birliği Telekomünikasyon Standardizasyon Sektörü
  • uç sistem - RTP paketlerinde iletilen içeriği üreten ve/veya alınan RTP paketlerinin içeriğini tüketen bir uygulama. Bir uç sistem, her RTP oturumunda bir veya daha fazla (ancak genellikle yalnızca bir) saat kaynağı olarak hareket edebilir.
  • RTCP paketi - RTP protokolünün bilgi paketlerinin başlıklarına benzer sabit bir başlık bölümünden ve ardından RTCP paketinin türüne bağlı olarak değişen yapısal öğelerden oluşan bir kontrol paketi. Tipik olarak, birden çok RTCP paketi, tek bir temel protokol paketinde birden çok RTCP paketi olarak birlikte iletilir; bu, her RTCP paketinin sabit başlığındaki uzunluk alanı tarafından sağlanır.
  • RTP paketi - Sabit bir RTP başlığından, muhtemelen dahil edilecek boş bir kaynak listesi, bir uzantı ve trafikten oluşan bir protokol veri birimi. Tipik olarak, bir temel protokol paketi bir RTP paketi içerir, ancak birkaç tane olabilir.
  • port, tek bir ana bilgisayardaki birden çok hedef arasında ayrım yapmak için taşıma katmanı protokolleri tarafından kullanılan bir soyutlamadır. Bağlantı noktası numarası ile tanımlanır. Bu nedenle, bağlantı noktası numarası, iletilen verilerin amaçlandığı belirli uygulamayı tanımlayan bir sayıdır. Bu numara, üst katmanda hangi protokolün (örneğin, TCP veya UDP) kullanıldığına ilişkin bilgilerle birlikte, İnternet üzerinden gönderilen datagramlarda diğer hizmet bilgileri arasında yer alır. Taşıma tarafından kullanılan taşıma seçicileri (TSEL'ler) OSI katmanı, bağlantı noktalarına eşdeğerdir
  • profil (profil) - işlevlerinin özelliklerini belirleyen bir uygulama sınıfı için RTP ve RTCP protokollerinin bir dizi parametresi. Profil, RTP veri paketi başlığı, trafik türleri, RTP veri paketi başlık uzantıları, RTP veri paketi başlık uzantısının ilk 16 biti, RTCP paket türleri, RTCP raporlama aralığı, SR'deki işaret biti ve trafik türü alanlarının kullanımını tanımlar. /RR paket uzantısı, iletişim güvenliğini sağlamak için SDES paketlerini, hizmetlerini ve algoritmalarını ve temel protokolü kullanmanın özelliklerini kullanır
  • RTP oturumu (RTP oturumu) - RTP protokolü aracılığıyla etkileşime giren birden fazla katılımcının iletişimi. Her katılımcı için bir oturum, belirli bir çift hedef aktarım adresi (bir ağ adresi artı RTP ve RTCP için bir çift bağlantı noktası) tarafından tanımlanır. Hedef aktarım adres çifti tüm katılımcılar için ortak olabilir (IPM durumunda olduğu gibi) veya her biri için farklı olabilir (çift yönlü iletişimde olduğu gibi tek bir ağ adresi ve ortak bir çift bağlantı noktası). Bir multimedya oturumunda, her trafik türü, kendi RTCP paketleri ile ayrı bir RTP oturumunda taşınır. Çok noktaya yayın RTP oturumları, farklı bağlantı noktası çifti numaraları ve/veya farklı çok noktaya yayın adresleri ile ayırt edilir
  • RTP olmayan araçlar - Kabul edilebilir bir hizmet sağlamak için RTP'ye ek olarak ihtiyaç duyulabilecek protokoller ve mekanizmalar. Özellikle multimedya konferans için, bir konferans kontrol uygulaması, çok noktaya yayın adresleri ve şifreleme anahtarları dağıtabilir, kullanılacak şifreleme algoritmasını müzakere edebilir ve RTP trafik türü değerleri ile temsil ettikleri trafik biçimleri (önceden tanımlı olmayan biçimler) arasındaki dinamik eşlemeleri belirleyebilir. değeri). trafik türü). İçin basit uygulamalar ayrıca kullanılabilir E-posta veya konferans veritabanı
  • çevirmen (çevirmen) - senkronizasyon kaynağının tanımlayıcısını değiştirmeden RTP paketlerini ileten bir ara sistem. Çevirmen örnekleri: karıştırmadan kod çeviren cihazlar, çok yönlü veya çift yönlü çoğaltıcılar, güvenlik duvarlarında uygulama katmanı uygulamaları
  • aktarım adresi - IP adresi ve UDP bağlantı noktası numarası gibi bir aktarım uç noktasını tanımlayan ağ adresi ve bağlantı noktası numarasının birleşimi. Paketler, kaynak taşıma adresinden hedef taşıma adresine iletilir.
  • RTP trafiği - ses örnekleri veya sıkıştırılmış video verileri gibi bir RTP protokol paketinde iletilen multimedya verileri
  • PSTN - Genel Anahtarlamalı Telefon Ağları

RTP protokolü

Multimedya uygulamaları için ana aktarım protokolü, paketlerin kodlanmış konuşma sinyalleriyle bir IP ağı üzerinden iletimini düzenlemek için tasarlanmış gerçek zamanlı protokol RTP (Gerçek Zamanlı Protokol) haline geldi. RTP paketlerinin iletimi, sırayla IP üzerinden çalışan UDP protokolü üzerinden gerçekleştirilir (Şekil 1.5.).

Pirinç. 1.5.

Aslında, RTP'nin ait olduğu seviye, Şekil 2'de gösterildiği gibi açık bir şekilde tanımlanmamıştır. 1.5 ve genellikle literatürde anlatıldığı gibi. Bir yandan, protokol gerçekten UDP'nin üzerinde çalışır, uygulama programları tarafından uygulanır ve tüm göstergelerle bir uygulama protokolüdür. Ancak aynı zamanda, bu paragrafın başında belirtildiği gibi, RTP, multimedya uygulamalarından bağımsız olarak taşıma hizmetleri sağlar ve bu açıdan bakıldığında, sadece bir taşıma protokolüdür. En iyi tanım: RTP, uygulama katmanında uygulanan bir aktarım protokolüdür.

Ses (multimedya) trafiğini iletmek için RTP, yapısı Şekil 1'de gösterilen paketleri kullanır. 1.6.

Bir RTP paketi en az 12 bayttan oluşur. RTP başlığının ilk iki biti (versiyon bit alanı, V), RTP protokolünün sürümünü (şu anda sürüm 2) gösterir.

Açıktır ki, bu başlık yapısı ile en fazla sadece bir tane daha RTP versiyonu mümkündür. Bunları izleyen alan iki bit içerir: yük alanının sonuna dolgu karakterlerinin eklenip eklenmediğini belirten P biti (genellikle aktarım protokolü veya kodlama algoritması sabit boyutlu blokların kullanılmasını gerektiriyorsa eklenirler), ve genişletilmiş bir başlığın kullanılıp kullanılmadığını gösteren X biti.


Pirinç. 1.6.

Kullanılırsa, genişletilmiş başlığın ilk sözcüğü, uzantının toplam uzunluğunu içerir. Ayrıca, dört CC biti, RTP başlığının sonundaki CSRC alanlarının sayısını belirler, yani. akışı oluşturan kaynakların sayısı. M işaretleyici biti, örneğin bir video karesinin başlangıcı, bir ses kanalındaki bir kelimenin başlangıcı vb. gibi standardın önemli olaylar olarak tanımladığı şeyleri işaretlemenize izin verir. Bunu, faydalı yük alanının içeriğini belirleyen faydalı yük tipi kodunun belirtildiği PT veri tipi alanı (7 bit) takip eder - uygulama verileri (Uygulama Verileri), örneğin sıkıştırılmamış 8-bit MP3 ses, vb. Bu koddan uygulama, verilerin kodunu çözmek için ne yapması gerektiğini öğrenebilir. Sabit uzunluklu başlığın geri kalanı, bir Sıra Numarası alanından, paketin ilk kelimesi oluşturulduğunda kaydedilecek bir Zaman Damgası alanından ve bu kaynağı tanımlayan bir SSRC zamanlama kaynağı alanından oluşur. Son alan, yalnızca bir ağ adresine sahip tek bir cihaz, farklı ortamları (ses, video vb.) temsil edebilen birden çok kaynak veya aynı ortamın farklı akışları olabilir. Kaynaklar farklı cihazlarda olabileceğinden, bir RTP oturumu sırasında iki kaynaktan aynı anda veri alma şansı minimum olacak şekilde SSRC tanımlayıcısı rastgele seçilir. Bununla birlikte, ortaya çıkarsa çatışmaları çözmek için bir mekanizma da tanımlanmıştır. RTP başlığının sabit kısmını, veri kaynaklarını tanımlayan 15 adede kadar ayrı 32-bit CSRC alanı takip edebilir.

RTP, RTP oturumları hakkında bilgi içeren ek raporlar oluşturan Gerçek Zamanlı Aktarım Kontrol Protokolü (RTCP) tarafından desteklenir. Ne UDP'nin ne de RTP'nin QoS (Hizmet Kalitesi) sağlamakla meşgul olmadığını hatırlayın. RTCP protokolü göndericilere geri bildirim sağlar ve akış alıcılarına bazı QoS geliştirmeleri, paket bilgileri (kayıp, gecikme, titreşim) ve kullanıcı (uygulama, akış) sağlar. Akış denetimi için, gönderenler tarafından oluşturulan ve alıcılar tarafından oluşturulan iki tür rapor vardır. Örneğin, kayıp paketlerin yüzdesi ve kayıpların mutlak sayısı hakkında bilgi, göndericinin bir rapor alırken, kanal tıkanıklığının alıcıların bekledikleri paket akışlarını alamamasına neden olabileceğini algılamasını sağlar. Bu durumda gönderici, tıkanıklığı azaltmak ve alımı iyileştirmek için kodlama oranını düşürme seçeneğine sahiptir. Gönderici raporu, son RTP paketinin ne zaman oluşturulduğuna ilişkin bilgileri içerir (hem dahili bir etiket hem de gerçek zamanlı). Bu bilgi, alıcının video ve ses gibi birden çok akışı koordine etmesine ve senkronize etmesine olanak tanır. Akış birkaç alıcıya yönlendirilirse, her birinden gelen RTCP paket akışları düzenlenir. Bu, bant genişliğini sınırlamak için adımlar atacaktır - RTCP raporlarının oluşturulma hızı ve alıcı sayısı ile ters orantılıdır.

RTCP'nin RTP'den ayrı çalışmasına rağmen, RTP/UDP/IP zincirinin kendisinin önemli bir ek yüke (başlıkları şeklinde) yol açtığına dikkat edilmelidir. G.729 codec bileşeni, 10 baytlık paketler oluşturur (her 10 ms'de 80 bit). 12 bayt boyutunda bir RTP başlığı, bu paketin tamamından daha büyüktür. Ek olarak, iletilen verinin dört katı büyüklüğünde bir başlık oluşturan 8 baytlık bir UDP başlığı ve 20 baytlık bir IP başlığı (IPv4'te) eklenmelidir.

Modern telekomünikasyonun evrimindeki en önemli eğilimlerden biri, multimedya mesajlarının (ses, veri, video) bilgi ve bilgisayar ağları (ICN) aracılığıyla iletimini sağlayan bir dizi yeni teknoloji olan IP telefonunun geliştirilmesidir. yerel, kurumsal, küresel bilgisayar ağları ve İnternet dahil olmak üzere IP (İnternet Protokolü) protokolünün temeli. IP telefon kavramı, İnternet aboneleri arasında, aboneler arasında telefon iletişiminin düzenlenmesini sağlayan İnternet telefonunu içerir. telefon ağlarıİnternet üzerinden genel kullanım (PSTN) ve PSTN ile İnternet aboneleri arasında kendi aralarında telefon iletişimi.

IP telefonunun, bilgisayar telefonu pazarının hızla gelişmesini ve genişlemesini sağlayan bir dizi inkar edilemez avantajı vardır. Dakika başına oldukça düşük bir ödemeyle telefon iletişimi sağlanan son kullanıcılar için faydalıdır. Uzak şubeleri olan şirketler için IP teknolojisi, mevcut kurumsal IP ağlarını kullanarak sesli iletişim düzenlemenize olanak tanır. Birkaç iletişim ağı yerine bir tane kullanılır. IP telefonunun normal bir telefona göre şüphesiz avantajı, aynı zamanda sağlama yeteneğidir. ek hizmetler bir multimedya bilgisayar ve çeşitli İnternet uygulamalarının kullanımı yoluyla. Böylece, IP telefon ile işletmeler ve bireyler, gelişmiş video konferans, uygulama paylaşımı, beyaz tahta tipi araçlar vb. dahil ederek iletişim yeteneklerini genişletebilirler.

Hangi uluslararası standartlar ve protokoller, donanımın çalışması için ana parametreleri ve algoritmaları düzenler ve yazılım araçları IP telefonda kullanılan bağlantılar? Açıkçası, adından da anlaşılacağı gibi, bu teknoloji IP protokolüne dayanmaktadır, ancak bu sadece telefon için kullanılmaz: orijinal olarak dijital verileri paket anahtarlamalı IVS'ye iletmek için geliştirilmiştir.

Garantili bir hizmet kalitesi sağlamayan ağlarda (bunlara IP protokolü temelinde kurulan ağlar dahildir), paketler kaybolabilir, geliş sıraları değişebilir, paketlerde iletilen veriler bozulabilir. Bu koşullar altında iletilen bilgilerin güvenilir bir şekilde teslim edilmesini sağlamak için çeşitli taşıma katmanı prosedürleri kullanılır. Dijital veri aktarılırken bu amaçla TCP protokolü (Transmission Control Protocol) kullanılır. Bu protokol güvenilir veri dağıtımı sağlar ve orijinal paket sırasını geri yükler. Bir pakette bir hata tespit edilirse veya paket kaybolursa, TCP prosedürleri bir yeniden iletim talebi gönderir.

Sesli ve görüntülü konferans uygulamaları için paket gecikmeleri, sinyal kalitesi üzerinde bireysel veri bozulmalarından çok daha büyük bir etkiye sahiptir. Gecikmelerdeki farklılıklar boşluklara neden olabilir. Bu tür uygulamalar, paket yeniden sıralama, minimum gecikme ile teslimat, kesin olarak belirlenmiş anlarda gerçek zamanlı oynatma, trafik türü tanıma, çok noktaya yayın veya iki yönlü iletişim sağlayan farklı bir taşıma katmanı protokolü gerektirir. Böyle bir protokol, gerçek zamanlı aktarım protokolü RTP'dir (Gerçek Zamanlı Aktarım Protokolü). Bu protokol, çoklu ortam verilerinin paketler halinde iletim seviyesinde IVS aracılığıyla iletimini düzenler ve gerçek zamanlı veri iletim kontrol protokolü RTCP (Gerçek Zamanlı Kontrol Protokolü) ile desteklenir. RTCP protokolü, sırayla, multimedya verilerinin teslimi, hizmet kalitesi kontrolü, mevcut iletişim oturumundaki katılımcılar hakkında bilgi aktarımı, kontrol ve tanımlama üzerinde kontrol sağlar ve bazen RTP protokolünün bir parçası olarak kabul edilir.

IP telefonla ilgili birçok yayın, çoğu ağ ekipmanının ve özel yazılım bu teknoloji için, Uluslararası Telekomünikasyon Birliği'nin (ITU-T) Telekomünikasyon Standardizasyon Sektörünün H.323 Tavsiyesi (TAPI 3.0, NetMeeting 2.0, vb. dahil) temelinde geliştirilmiştir. H.323, RTP ve RTCP ile nasıl ilişkilidir? H.323, her biri bilgi transferinin farklı yönleriyle ilgilenen birçok başka standardı içeren geniş bir kavramsal çerçevedir. Ses ve video kodek standartları gibi bu standartların çoğu, yalnızca IP telefonunda yaygın olarak kullanılmamaktadır. RTP / RTCP protokollerine gelince, H.323 standardının temelini oluştururlar, tam olarak IP teknolojisi sağlamaya odaklanırlar ve IP telefon organizasyonunun temelini oluştururlar. Bu makale, bu protokollerin değerlendirilmesine ayrılmıştır.

2. Temel kavramlar

RTP gerçek zamanlı aktarım protokolü, etkileşimli ses ve video gibi multimedya verilerinin uçtan uca gerçek zamanlı iletimini sağlar. Bu protokol, trafik tipi tanıma, paket sıra numaralandırma, zaman damgaları ve iletim kontrolü.

RTP protokolünün eylemi, giden her pakete bir zaman damgası atamaya indirgenmiştir. Alıcı tarafta, paket zaman damgaları, bunların hangi sırayla ve hangi gecikmelerle oynatılması gerektiğini belirtir. RTP ve RTCP desteği, alıcı ana bilgisayarın alınan paketleri doğru sırada düzenlemesine, ağdaki paket gecikme dalgalanmasının sinyal kalitesi üzerindeki etkisini azaltmasına ve ses ve video arasındaki senkronizasyonu, gelen bilgilerin doğru bir şekilde duyulabilmesi ve görüntülenmesi için geri yüklemesine olanak tanır. kullanıcılar.

RTP'nin zamanında veri iletimini ve hizmet kalitesini garanti edecek herhangi bir mekanizmaya sahip olmadığını, ancak bunu sağlamak için temel hizmetleri kullandığını unutmayın. Sıra dışı paketleri engellemez, ancak temel alınan ağın kesinlikle güvenilir olduğunu ve paketleri doğru sırada ilettiğini varsaymaz. RTP'ye dahil edilen sıra numaraları, alıcının göndericinin paketlerini yeniden sıralamasına izin verir.

RTP protokolü, çok noktaya yayın temel alınan ağ tarafından destekleniyorsa, hem iki yönlü iletişimi hem de bir grup hedefe veri aktarımını destekler. RTP, bireysel uygulamaların gerektirdiği bilgileri sağlamayı amaçlar ve çoğu durumda uygulamanın işleyişine entegre edilir.

RTP bir taşıma katmanı protokolü olarak kabul edilse de, genellikle başka bir taşıma katmanı protokolü olan UDP'nin (Kullanıcı Datagram Protokolü) üzerinde çalışır. Her iki protokol de taşıma katmanının işlevselliğine katkıda bulunur. RTP ve RTCP'nin temeldeki aktarım ve ağ katmanlarından bağımsız olduğu, dolayısıyla RTP/RTCP protokollerinin diğer uygun aktarım protokolleriyle birlikte kullanılabileceğine dikkat edilmelidir.

RTP/RTCP protokol veri birimlerine paketler denir. RTP protokolüne göre üretilen ve multimedya verilerini iletmek için kullanılan paketlere bilgi paketleri veya veri paketleri (veri paketleri) denir ve RTCP protokolüne göre oluşturulan ve bir telekonferansın güvenilir çalışması için gerekli hizmet bilgilerini iletmek için kullanılan paketlere denir. paketler, kontrol veya servis paketleri (kontrol paketleri). Bir RTP paketi, sabit bir başlık, isteğe bağlı bir değişken uzunluk başlık uzantısı ve bir veri alanı içerir. Bir RTCP paketi, sabit bir kısım (RTP bilgi paketlerinin sabit kısmına benzer) ile başlar ve ardından değişken uzunluktaki yapı taşları gelir.

RTP protokolünün daha esnek ve çeşitli uygulamalara uygulanabilir olması için bazı parametreleri kasıtlı olarak tanımlanmamıştır, ancak bir profil konsepti sağlar. Profil (profil), işlevlerinin özelliklerini belirleyen belirli bir uygulama sınıfı için RTP ve RTCP protokolleri için bir dizi parametredir. Profil, bireysel paket başlık alanları, trafik türleri, başlık eklemeleri ve başlık uzantıları, paket türleri, iletişim güvenlik hizmetleri ve algoritmaları, temel protokolün kullanım özellikleri vb. kullanımını tanımlar. Minimum kontrolle sesli ve görüntülü konferans için RTP profili ). Her uygulama genellikle sadece bir profille çalışır ve profil tipinin ayarlanması uygun uygulama seçilerek yapılır. Bağlantı noktası numarasına, protokol tanımlayıcısına vb. göre profil türünün açık bir göstergesi yok. sağlanmadı.

Bu nedenle, belirli bir uygulama için eksiksiz bir RTP spesifikasyonu, bir profil açıklamasını ve ayrıca ses veya video gibi belirli bir trafik türünün RTP'de nasıl işleneceğini tanımlayan bir trafik formatı tanımını içeren ek belgeleri içermelidir.

Sesli ve görüntülü konferanslar sırasında multimedya veri iletiminin özellikleri aşağıdaki bölümlerde tartışılmaktadır.

2.1. Grup sesli konferansı

Grup sesli konferansı, çok kullanıcılı bir grup adresi ve iki bağlantı noktası gerektirir. Bu durumda, ses verilerinin değişimi için bir bağlantı noktası gerekir ve diğeri RTCP protokolünün kontrol paketleri için kullanılır. Grup adresi ve port bilgileri hedeflenen telekonferans katılımcılarına gönderilir. Gizlilik gerekliyse, bilgi ve kontrol paketleri Bölüm 7.1'de tanımlandığı gibi şifrelenebilir, bu durumda şifreleme anahtarı da oluşturulmalı ve dağıtılmalıdır.

Her konferans katılımcısı tarafından kullanılan sesli konferans uygulaması, ses verilerini 20 ms gibi küçük aralıklarla gönderir. Her ses verisi parçasından önce bir RTP başlığı gelir; RTP başlığı ve verileri sırayla bir UDP paketine dönüştürülür (kapsüllenir). RTP başlığı, paketteki verileri oluşturmak için hangi tür ses kodlamasının (örneğin, PCM, ADPCM veya LPC) kullanıldığını belirtir. Bu, konferans sırasında, örneğin düşük bant genişliği bağlantısı kullanan yeni bir katılımcı geldiğinde veya ağ tıkanıklığı sırasında kodlama türünü değiştirmeyi mümkün kılar.

İnternette, diğer paket anahtarlamalı veri ağlarında olduğu gibi, paketler bazen kaybolur ve yeniden sıralanır ve ayrıca çeşitli zamanlarda ertelenir. Bu olaylara karşı koymak için, RTP başlığı, alıcıların yeniden zamanlamasına izin veren bir zaman damgası ve sıra numarası içerir, böylece örneğin bir ses sinyalinin bölümleri, her 20 ms'de bir hoparlör tarafından sürekli olarak çalınır. Bu zamanlama yeniden yapılandırması, telekonferanstaki her bir RTP paketi kaynağı için ayrı ayrı ve bağımsız olarak gerçekleştirilir. Sıra numarası, alıcı tarafından kayıp paketlerin sayısını tahmin etmek için de kullanılabilir.

Bir telekonferansa katılanlar telekonferans sırasında katılıp ayrılabildiklerinden, şu anda konferansta kimlerin bulunduğunu ve konferans katılımcılarının ses verilerini ne kadar iyi aldıklarını bilmek faydalıdır. Bu amaçla, konferans sırasında ses uygulamasının her bir örneği, diğer tüm katılımcıların uygulamaları için kontrol portunda (RTCP portu) periyodik olarak, kullanıcı adlarını belirten paket alım mesajları yayınlar. Alma mesajı, mevcut konuşmacının ne kadar iyi duyulduğunu gösterir ve uyarlanabilir kodlayıcıları kontrol etmek için kullanılabilir. Kullanıcı adına ek olarak, bant genişliği kontrolü için diğer kimlik bilgileri de dahil edilebilir. Konferanstan ayrılırken site bir RTCP BYE paketi gönderir.

2.2. Video konferans

Bir telekonferansta hem ses hem de video sinyalleri kullanılıyorsa, bunlar ayrı ayrı iletilir. Diğerinden bağımsız olarak her bir trafik türünün iletimi için, protokol belirtimi bir RTP oturumu kavramını tanıtmaktadır (kullanılan kısaltmaların ve terimlerin listesine bakın). Bir oturum, belirli bir çift hedef aktarım adresi (bir ağ adresi artı RTP ve RTCP için bir çift bağlantı noktası) tarafından tanımlanır. Her trafik türü için paketler, iki farklı çift UDP bağlantı noktası ve/veya çok noktaya yayın adresi kullanılarak iletilir. Ses ve video oturumları arasında doğrudan RTP katmanı bağlantısı yoktur, ancak her iki oturuma katılan bir kullanıcının oturumların bağlanabilmesi için her iki oturum için RTCP paketlerinde aynı kurallı adı kullanması gerekir.

Bu ayrımın bir nedeni, bazı konferans katılımcılarının isterlerse yalnızca bir tür trafik almasına izin verilmesi gerekmesidir. Ayrılmaya rağmen, her iki oturum için RTCP paketlerinde taşınan zamanlama bilgileri kullanılarak kaynak ortam verilerinin (ses ve video) senkronize oynatımı gerçekleştirilebilir.

2.3. Karıştırıcılar ve çevirmenler kavramı

Her zaman tüm siteler multimedya verilerini aynı biçimde alma yeteneğine sahip değildir. Aynı yerdeki katılımcıların düşük hızlı bir bağlantı aracılığıyla geniş bant ağ erişimine sahip diğer konferans katılımcılarının çoğuna bağlandığı durumu düşünün. Herkesi daha dar bir bant genişliği ve daha düşük kaliteli ses kodlaması kullanmaya zorlamak yerine, düşük bant genişliği bölgesine mikser adı verilen bir RTP katmanı iletişim tesisi yerleştirilebilir. Bu mikser, orijinal 20ms aralıklarını geri yüklemek için gelen ses paketlerini yeniden senkronize eder, geri yüklenen bu ses akışlarını tek bir akışta karıştırır, düşük bant genişlikli ses kodlaması gerçekleştirir ve paket akışını düşük hızlı bir bağlantı üzerinden iletir. Bu durumda, paketler bir alıcıya veya farklı adreslere sahip bir grup alıcıya adreslenebilir. Mesajların kaynağının doğru bir göstergesini sağlamak üzere uç noktaların alınması için, RTP başlığı, karıştırıcıların karışık paketin oluşumunda yer alan kaynakları tanımlaması için araçlar içerir.

Sesli konferanstaki katılımcılardan bazıları geniş bant iletişim hatlarıyla bağlanabilir, ancak bir IP çok noktaya yayın grup konferansı (IPM) aracılığıyla ulaşılamayabilir. Örneğin, IP paketlerinin herhangi bir şekilde iletilmesine izin vermeyecek bir uygulama katmanı güvenlik duvarının arkasında olabilirler. Bu gibi durumlarda, karıştırıcılara değil, çevirmenler adı verilen farklı bir RTP katmanı iletişimine ihtiyaç vardır. İki çevirmenden biri güvenlik duvarının dışına kurulur ve güvenli bir bağlantı üzerinden alınan tüm çok noktaya yayın paketlerini harici olarak güvenlik duvarının arkasına kurulu diğer çevirmene iletir. Güvenlik duvarının arkasındaki çevirmen, bunları, sınırlı sayıda çok kullanıcılı bir gruba çok noktaya yayın paketleri olarak yeniden yayınlar. Dahili ağ alan.

Karıştırıcılar ve çevirmenler bir dizi amaç için tasarlanabilir. Örnek: Bağımsız video akışlarındaki bireylerin video görüntülerini ölçekleyen ve bunları bir grup sahnesini simüle ederek tek bir video akışında birleştiren bir video karıştırıcı. Yayın örnekleri: Bir grup yalnızca IP/UDP ana bilgisayarını bir grup yalnızca ST-II ana bilgisayara bağlama veya video paketini yeniden zamanlama veya karıştırma olmadan ayrı kaynaklardan paket halinde dönüştürme. Karıştırıcıların ve çevirmenlerin nasıl çalıştığına ilişkin ayrıntılar Bölüm 5'te tartışılmaktadır.

2.4. Bayt sırası, hizalama ve zaman damgası biçimi

RTP/RTCP paketlerinin tüm alanları ağ üzerinden bayt (sekizli) olarak iletilir; en önemli bayt önce iletilir. Tüm başlık alanı verileri uzunluğuna göre hizalanır . İsteğe bağlı olarak belirlenen sekizlilerin değeri sıfırdır.

RTP'deki mutlak süre (Duvar saati), 1 Ocak 1900'de sıfır saate göre saniye cinsinden geri sayım olan NTP (Ağ Zaman Protokolü) zaman damgası formatı kullanılarak temsil edilir. Tam NTP zaman damgası biçimi, ilk 32 bitinde bir tamsayı kısmı ve son 32 bitinde bir kesirli kısmı olan 64 bitlik işaretsiz sabit noktalı bir sayıdır. Daha kompakt gösterime sahip bazı alanlar, yalnızca ortadaki 32 biti kullanır - tamsayı bölümünün alt 16 biti ve kesirli bölümün üst 16 biti.

Bu makalenin sonraki iki bölümü (3 ve 4) sırasıyla paket formatlarını ve RTP ve RTCP protokollerinin işleyişinin özelliklerini tartışmaktadır.

3. RTP veri aktarım protokolü

3.1. Sabit RTP başlık alanları

Yukarıda belirtildiği gibi, bir RTP paketi sabit bir başlık, isteğe bağlı bir değişken uzunluk başlık uzantısı ve bir veri alanı içerir. RTP protokol paketlerinin sabit başlığı aşağıdaki biçime sahiptir: .

İlk on iki sekizli her RTP paketinde bulunurken, CSRC (katkıda bulunan kaynak) tanımlayıcı alanı yalnızca mikser tarafından eklendiğinde mevcuttur. Alanlar aşağıdaki amaçlara sahiptir.

Sürüm (V): 2 bit. Bu alan, RTP sürümünü tanımlar. Bu makale, RTP protokolünün 2. sürümüne odaklanmaktadır (RTP'nin ilk taslak sürümünde 1 değeri kullanılmıştır).

Tamamlayıcı (P): 1 bit. Doldurma biti bire ayarlanırsa, sonundaki paket, trafiğin parçası olmayan bir veya daha fazla dolgu sekizlisi içerir. Son doldurma sekizlisi, daha sonra yok sayılacak bu tür sekizlilerin sayısının bir göstergesini içerir. Doldurma, sabit blok boyutlarına sahip bazı şifreleme algoritmaları tarafından veya tek bir temel protokol yükünde birden çok RTP paketi taşımak için gerekli olabilir.

Uzantı (X): 1 bit. Uzantı biti ayarlanmışsa, sabit başlığı, içinde tanımlanan biçime sahip bir başlık uzantısı izler.

CSRC sayacı (CC): 4 bit. CSRC sayacı, sabit başlığı takip eden dahil edilecek (kullanılan kısaltmalar ve terimler listesine bakın) CSRC kaynak tanımlayıcılarının sayısını içerir.

İşaretleyici (M): 1 bit. İşaretçinin yorumu profil tarafından belirlenir. Paket akışında önemli olayların (örneğin video çerçeve sınırları) işaretlenmesine izin verilmesi amaçlanmıştır. Profil, trafik tipi alanındaki bit sayısını değiştirerek ek işaret bitleri getirebilir veya işaret biti bulunmadığını belirleyebilir (bkz. ).

Trafik türü (PT): 7 bit. Bu alan, RTP trafiğinin biçimini tanımlar ve uygulamanın bunu nasıl yorumlayacağını belirler. Bir profil, PT değerlerinin ve trafik biçimlerinin varsayılan bir statik eşlemesini tanımlar. Ek trafik türü kodları, RTP olmayan tesisler aracılığıyla dinamik olarak tanımlanabilir. Herhangi bir zamanda bir RTP paketinin göndericisi, tek bir RTP trafik türü değeri yayar; bu alan, tek tek medya akışlarını çoğullamak için tasarlanmamıştır (bkz. ).

Sıra numarası: 16 bit. Sıra numarası değeri, gönderilen her RTP bilgi paketi ile bir artırılır ve alıcı tarafından kayıp paketleri tespit etmek ve orijinal sıralarını geri yüklemek için kullanılabilir. Sıra numarasının ilk değeri, bu alanın bilinen değerlerine dayanarak anahtarın kırılmasını zorlaştırmak için rastgele seçilir (paketler şifreleme kullanan bir röleden geçebileceğinden kaynak şifreleme kullanmasa bile). Zaman damgası: 32 bit. Zaman damgası, RTP bilgi paketindeki ilk sekizli için örnekleme süresini yansıtır. Örnekleme zamanı, senkronizasyon ve titreşim tespiti sağlamak için zamanla monoton ve doğrusal olarak artan bir zamanlayıcıdan türetilmelidir (bkz. Bölüm 4.3.1). Zamanlayıcının çözünürlüğü, istenen zamanlama doğruluğu ve paket varış titreşim ölçümü için yeterli olmalıdır (video karesi başına bir zamanlayıcı raporu genellikle yeterli değildir). Zamanlama frekansı, iletilen trafiğin biçimine bağlıdır ve bir profil veya trafik biçimi belirtiminde statik olarak ayarlanır veya "RTP olmayan araçlar" aracılığıyla tanımlanan trafik biçimleri için dinamik olarak ayarlanabilir. RTP paketleri periyodik olarak üretiliyorsa, sistem zamanlayıcısının değerleri değil, örnekleme zamanlayıcısı tarafından belirlenen nominal örnekleme süreleri kullanılmalıdır. Örneğin, sabit oranlı bir ses sinyali için, zaman damgası kodlayıcısının her bir örnekleme periyodu için birer birer arttırılması arzu edilir. Bir giriş cihazından bir ses uygulaması 160 örnek içeren blokları okursa, bloğun bir paket içinde iletilmesine veya bir duraklama olarak bırakılmasına bakılmaksızın, bu tür her blok için zaman damgası 160 artırılmalıdır. Zaman damgasının başlangıç ​​değeri, sıra numarasının başlangıç ​​değeri gibi rastgele bir değerdir. Aynı anda mantıksal olarak oluşturulmuşlarsa, örneğin aynı video karesine aitlerse, birkaç ardışık RTP paketi eşit zaman damgalarına sahip olabilir. Ardışık RTP paketleri, enterpolasyonlu MPEG video çerçevelerinde olduğu gibi, veriler örnek sırayla iletilmezse monoton olmayan zaman damgaları içerebilir (ancak, iletilirken paket sıra numaraları hala monoton olacaktır).

SSRC: 32 bit. SSRC (senkronizasyon kaynağı) alanı, senkronizasyon kaynağını tanımlar (kullanılan kısaltmaların ve terimlerin listesine bakın). Bu kimlik, aynı RTP oturumu içindeki iki saat kaynağının aynı SSRC kimliğine sahip olmaması için rastgele seçilir. Birden fazla kaynağın aynı tanımlayıcıyı seçme olasılığı düşük olsa da, tüm RTP uygulamaları bu tür çakışmaları algılamak ve çözmek için hazırlanmalıdır. Bölüm 6, SSRC tanımlayıcısının benzersizliğine dayalı olarak bunları çözmek ve RTP katman döngülerini tespit etmek için bir mekanizma ile birlikte çarpışma olasılığını tartışır. Bir kaynak orijinal taşıma adresini değiştirirse, döngülü bir kaynak olarak yorumlanmaması için yeni bir SSRC tanımlayıcısı da seçmelidir.

CSRC listesi: 0 ila 15 öğe, her biri 32 bit. Katkıda bulunan kaynak (CSRC) listesi, dahil edilecek pakette bulunan trafik kaynaklarını tanımlar. Tanımlayıcı sayısı CC alanı tarafından verilir. Dahil edilen on beşten fazla kaynak varsa, bunlardan yalnızca 15'i tanımlanabilir. CSRC Kimlikleri, anahtarlamalı kaynaklar için SSRC kimlikleri kullanılırken karıştırıcılar tarafından eklenir. Örneğin, ses paketleri için, paket oluşturulduğunda karıştırılan tüm kaynakların SSRC tanımlayıcıları, CSRC listesinde listelenir ve alıcıya mesaj kaynaklarının doğru bir göstergesini sağlar.

3.2. RTP oturumları

Yukarıda belirtildiği gibi, RTP protokolüne göre, farklı RTP oturumlarında farklı trafik türleri ayrı ayrı iletilmelidir. Bir oturum, belirli bir çift hedef aktarım adresi (bir ağ adresi artı RTP ve RTCP için bir çift bağlantı noktası) tarafından tanımlanır. Örneğin, ayrı ayrı kodlanmış ses ve videodan oluşan bir telekonferansta, her trafik türünün kendi hedef aktarım adresiyle ayrı bir RTP oturumunda gönderilmesi gerekir. Ses ve videonun aynı RTP oturumunda taşınması ve trafik türüne veya SSRC alanlarına göre ayrılması beklenmez. sahip paketlerin serpiştirilmesi farklı şekiller trafik ancak aynı SSRC'yi kullanmak bazı sorunlara neden olur:

  1. Bir oturum sırasında trafik türlerinden biri değişirse, eski değerlerden hangisinin yenisiyle değiştirildiğini belirlemenin genel bir yolu olmayacaktır.
  2. SSRC, tek bir zamanlama aralığı değeri ve sıra numarası alanı tanımlar. Birden çok trafik türünün serpiştirilmesi, farklı akışların saat hızları farklıysa, farklı senkronizasyon aralıkları ve paket kaybının ilişkili olduğu trafik türünü belirtmek için farklı sıra numarası boşlukları gerektirir.
  3. RTCP gönderici ve alıcı mesajları (bkz. Bölüm 4.3), SSRC için yalnızca bir zamanlama aralığı değerini ve sıra numarası alanını tanımlar ve bir trafik türü alanı taşımaz.
  4. RTP karıştırıcısı, farklı trafik türlerinin serpiştirilmiş akışlarını tek bir akışta birleştirme yeteneğine sahip değildir.
  5. Tek bir RTP oturumunda birden çok trafik türünün iletimi aşağıdaki faktörler tarafından engellenir: farklı ağ yolları veya ağ kaynaklarının dağıtımı; yalnızca video sinyali mevcut bant genişliğini aştığında ses gibi gerektiğinde bir multimedya verisi alt kümesinin alınması; farklı trafik türleri için ayrı işlemler kullanan havuz uygulamaları, ayrı RTP oturumlarının kullanılması ise hem tekli hem de çoklu işlem uygulamalarına izin verir.

Her trafik türü için farklı SSRC'ler kullanarak, ancak bunları aynı RTP oturumunda göndererek, ilk üç sorundan kaçınılabilir, ancak son ikisinden kaçınılamaz. Bu nedenle, RTP protokolünün belirtimi, her trafik türünün kendi RTP oturumunu kullanmasını gerektirir.

3.3. Profil tanımlı RTP başlık değişiklikleri

Mevcut RTP Bilgi Paketi başlığı, RTP'yi destekleyebilecek tüm uygulama sınıfları için genel olarak gerekli olan özellikler kümesi için tamamlanmıştır. Ancak, belirli görevlere daha iyi uyum sağlamak için başlık, profil belirtiminde tanımlanan değişiklikler veya eklemeler yoluyla değiştirilebilir.

İşaret biti ve trafik türü alanı, profile özel bilgiler taşır, ancak birçok uygulamanın bunlara ihtiyaç duyması beklendiği için sabit bir başlıkta bulunur. Bu alanları içeren oktet, örneğin daha fazla veya daha az işaret biti ile farklı gereksinimleri karşılamak için profil tarafından yeniden tanımlanabilir. Herhangi bir işaret biti mevcutsa, profilden bağımsız monitörler paket kaybı modeli ile işaretleyici biti arasındaki bir korelasyonu gözlemleyebileceğinden, bunlar sekizlinin yüksek sıralı bitlerine yerleştirilmelidir.

Belirli bir trafik formatı (örn. video kodlama türü) için gerekli olan ek bilgiler paketin veri alanında TAŞINMALIDIR. Veri dizisinin başında veya içinde belirli bir yere yerleştirilebilir.

Belirli bir uygulama sınıfı, trafik formatından bağımsız ek işlevselliğe ihtiyaç duyarsa, bu uygulamaların birlikte çalıştığı profil, mevcut sabit başlığın SSRC alanından hemen sonra yerleştirilecek ek sabit alanlar tanımlamalıdır. Bu uygulamalar doğrudan ek alanlara hızlı bir şekilde erişebilecekken, profilden bağımsız monitörler veya kaydediciler yalnızca ilk on iki sekizliyi yorumlayarak RTP paketlerini işleyebilecek.

Genel olarak tüm profiller için ek işlevsellik gerektiği düşünülürse, yeni bir versiyon RTP yapmak kalıcı değişim sabit başlık

3.4. RTP başlık uzantısı

Bireysel uygulamaların, veri paketi başlığında taşınacak ek bilgileri gerektiren yeni trafik formatından bağımsız özellikleri denemesine izin vermek için, RTP bir paket başlığı uzatma mekanizması sağlar. Bu mekanizma, başlık uzantısının, onu gerektirmeyen diğer işbirliği yapan uygulamalar tarafından yok sayılabilmesi için tasarlanmıştır.

RTP başlığındaki X biti bire ayarlanırsa, sabit RTP başlığına değişken uzunluklu bir başlık uzantısı eklenir (varsa CSRC listesinin ardından). Bu başlık uzantısının yalnızca sınırlı kullanım için olduğunu unutmayın. RTP paket başlığı uzantısı aşağıdaki biçime sahiptir:

Uzantı, dört sekizli uzantı başlığı hariç, içindeki 32 bitlik sözcüklerin sayısını gösteren 16 bitlik bir uzunluk alanı içerir (dolayısıyla uzunluk sıfır olabilir). Sabit bir RTP bilgi paketi başlığına yalnızca bir uzantı eklenebilir. İşbirliği yapan çok sayıda uygulamanın her birinin farklı başlık uzantılarıyla bağımsız olarak deney yapmasına veya belirli bir uygulamanın birden fazla başlık uzantısı tipiyle deneme yapmasına izin vermek için uzantının ilk 16 bitinin kullanımı tanımlanmamıştır, ayırt etme işlemine bırakılmıştır. tanımlayıcılar veya parametreler. Bu 16 bitin formatı, uygulamaların birlikte çalıştığı profil belirtimine göre belirlenmelidir.


1999
2000

Bir IP telefonda konuşurken, alıcıdaki muhatabın sesini duyduğumuzda veya bir video konferans sistemi kullanarak meslektaşlarımız ve akrabalarımızla iletişim kurduğumuzda, sürekli bir veri akışı alışverişi yaparız. Bir paket ağı üzerinden ses ve video gibi akış verilerini iletirken, aşağıdaki görevleri çözecek mekanizmaların kullanılması çok önemlidir:

  • Paket kaybının etkisini ortadan kaldırın
  • Sipariş Geri Yükleme ve Paket Kontrolü
  • Gecikme yumuşatma (titreşim)

Bu amaçlar için geliştirilen RTP(Gerçek Zamanlı Aktarım Protokolü), bugünün makalesinde tartışılacak olan gerçek zamanlı bir aktarım protokolüdür. Protokol, IETF tarafından Audio-Video Transport Working Group tarafından geliştirilmiştir ve RFC 3550'de açıklanmıştır.

Kural olarak, RTP, UDP'nin (Kullanıcı Datagram Protokolü) üzerinde çalışır, çünkü multimedya verilerini iletirken, zamanında teslim edilmesini sağlamak çok önemlidir.

RTP, yük türünü belirleme ve akıştaki paketin sıra numarasının yanı sıra zaman damgalarının kullanımını belirleme yeteneğini içerir.

Gönderici tarafta, her paket bir zaman damgası ile işaretlenir, alıcı taraf bunu alır ve toplam gecikmeyi belirler, ardından toplam gecikmelerdeki fark hesaplanır ve titreşim belirlenir. Böylece, paketlerin tesliminde sabit bir gecikme ayarlamak ve böylece titreşimin etkisini azaltmak mümkün hale gelir.

RTP'nin başka bir işlevi, olası kayıplar paketler, konuşmada kısa duraklamaların görünümünde ifade edilen IP ağından geçerken. Ani sessizlik ahize, kural olarak, dinleyici üzerinde çok olumsuz bir etkiye sahiptir, bu nedenle, RTP protokolünün yetenekleriyle, bu tür sessizlik dönemleri “konfor gürültüsü” ile doldurulur.

RTP, RFC 3550'de açıklanan RTCP (Gerçek Zamanlı Aktarım Kontrol Protokolü) adlı başka bir IETF protokolü ile birlikte çalışır. RTCP, istatistiksel bilgi toplamak, hizmet QoS'nin (Hizmet Kalitesi) kalitesini belirlemek ve ayrıca RTP oturumunun medya akışları arasında senkronize edin.

RTCP'nin ana işlevi, alınan bilgilerin kalitesi hakkında rapor vermek için uygulama ile geri bildirim oluşturmaktır. Bir RTCP oturumundaki katılımcılar, alınan ve kaybolan paketlerin sayısı, titreşim değeri, gecikme vb. hakkında bilgi alışverişinde bulunur. Bu bilgilerin analizine dayanarak, örneğin iletim kalitesini iyileştirmek için bilgi sıkıştırma oranını azaltmak için iletim parametrelerini değiştirme kararı verilir.

Bu işlevleri gerçekleştirmek için RTCP belirli türlerde özel mesajlar gönderir:

  • SR - Gönderen Raporu - RTP oturumu hakkında istatistiksel bilgiler içeren kaynak rapor
  • RR - Alıcı Raporu - RTP oturumu hakkında istatistiksel bilgiler içeren alıcı raporu
  • SDES - cname (kullanıcı adı) dahil olmak üzere kaynak seçeneklerin açıklamasını içerir
  • HOŞÇAKALBir gruba üyeliğin sonunu başlatır
  • UYGULAMA - Uygulama fonksiyonlarının açıklaması

RTP tek yönlü bir protokoldür, bu nedenle iki yönlü iletişim, her iki tarafta birer tane olmak üzere iki RTP oturumu gerektirir.

Bir RTP oturumu, katılımcıların IP adreslerinin yanı sıra 16384 - 32767 aralığındaki bir çift ayrılmamış UDP bağlantı noktası ile tanımlanır. Ayrıca, uygulama ile geri bildirim düzenlemek için ayrıca iki tane oluşturmak gerekir. yol RTCP oturumu. RTCP oturumları için, RTP'den bir numara büyük olan bağlantı noktaları kullanılır. Örneğin, RTP için 19554 numaralı bağlantı noktası seçilirse, RTCP oturumu 19555 numaralı bağlantı noktasını alacaktır. Görsel olarak, bir RTP/RTCP oturumunun oluşumu aşağıdaki şekilde gösterilmektedir.