Bu maddenin içeriğinin Türkçeleştirilmesi veya doğrultusunda düzeltilmesi gerekmektedir. Bu maddedeki yazım ve noktalama yanlışları ya da anlatım bozuklukları giderilmelidir. (Yabancı sözcükler yerine Türkçe karşılıklarının kullanılması, karakter hatalarının düzeltilmesi, dilbilgisi hatalarının düzeltilmesi vs.) Düzenleme yapıldıktan sonra bu şablon kaldırılmalıdır. |
RTP (Real-time Transport Protocol), gerçek zamanlı ses, görüntü ya da simülasyon verilerinin uçtan uca taşınmasını sağlayan protokoldür. Bu protokol IETF nin Audio-Video Transport çalışma grubu tarafından geliştirildi. RTP geniş ölçüde telefon, uygulamaları ve web tabanlı özellikleri gibi streaming media gerektiren iletişim ve görsel sistemlerde kullanılır.
RTP genellikle (RTCP) ile beraber kullanılır. RTP media streamleri (audio ve video gibi) taşıyorken RTCP Quality of Service bilgisini ve iletim istatistiklerini izlemek için kullanılır. Bu protokollerin her ikisi beraber kullanıldığı zaman RTP portunun bir çift sayıya denk gelmesi gerekir. RTCP portu ise o oturuma ait RTP portundan sonraki elverişli olan ilk tek port numarasıdır. RTP ve RTCP genellikle 1024-65535 arası portları kullanır.
Genel Tanıtım
RTP IETF standartları organizasyonunun Audio/Video Transport çalışma grubu tarafından geliştirildi. RTP ve gibi diğer protokoller ile beraber kullanılır. RTP standardı RTP ve (RTCP) yi bir protokol çiftini tanımlar. RTP multimedia veri transferi için kullanılır ve RTCP periyodik olarak QoS parametrelerini kontrol bilgilerini yollamak için kullanılır.
RTP çoklu ortam verilerinin gerçek-zamanlı, uçtan uca transferi için tasarlanmıştır. Protokol bir IP network üzerindeki veri iletiminde verilerdeki sıra bozukluğunu tespit eder ve (network üzerinde paketlerin geliş süresindeki, düzenindeki değişiklik) kompanzasyonu için kolaylık sağlar. RTP multicast servisler üzerinden birden çok hedefe veri transferini destekler. RTP IP ağlarında ses/video iletiminde öncelikli standart olarak kabul edilir.
Gerçek zamanlı çoklu ortam streaming uygulamaları zamanında bilgileri teslim etmeyi gerektirir ve bu amacı gerçekleştirmek için bazı kaybolan paketleri tolere edebilmelidir. Örneğin audio (ses) uygulamasında kaybolan bir paket ikinci bir paketinin kaybolmasına neden olabilir. TCP RTP için standart haline gelmiş olmasına rağmen bağlantı kurulumundaki ve hata düzeltmedeki doğal gecikmelerden dolayı sık kullanılmamaktadır. RTP yürütme işlemlerinin çoğu UDP üzerine temellendirilir. Diğer taşıma protokolleri daha henüz yaygın olarak kullanılmasalar da özellikle çoklu ortam oturumları (sessions) için tasarlanan SCTP ve DCCP dir.
Protokol Bileşenleri
RTP iki alt protokolü tanımlar:
- Veri Transfer Protokolü: gerçek zamanlı çoklu ortam verisinin transferiyle ilgilenir. Bu protokol tarafından sağlanan bilgi senkronizasyon için tarih bilgisi, kaybolan paketlerin denetimi için sıra numarası ve verinin kodlanmış formatını gösteren payload formatını içerir.
- Gerçek Zamanlı Kontrol Protokolü: ile ilgili geribildirimler ve ortam streamleri arasında senkronisazyonu belirtmek için kullanılır.
Oturumlar
Veri iletimi esnasında iki uç arası bir RTP oturumu kurulur. Bu oturum IP adresleri ve RTP ve RTCP ye ait portlardan oluşur. Bu oturum içerisindeki cihazlar veri alıp gönderebilirler. Her bir medya türü için cihazlar arası ayrı bir oturum oluşturulur. Bir RTP oturumu her ortam streami için kurulur. Böylelikle oturum içerisindeki kişilerin hangi medya tipinden veri almak istemelerine imkân sağlanmış olur. Örneğin bir kullanıcı yayınlanan bir filmin sadece sesini almak isteyebilir. Bu durumda alıcının video yayınını engellemesi yeterli olacaktır.
Profiller ve Payload Formatları
RTP nin formatında dikkat edilecek hususlardan biri birçok formatı desteklemesidir (H.264, MPEG-4, MJPEG, MPEG, gibi). RTP, standartların yeniden düzenlenmesinin dışında yeni formatların eklenmesine izin verir. RTP protokolünün yapısı Application Level Framing(ALF) ye dayanmaktadır. RTP bu yapsısı itibarı ile birden çok çokluortam formatında yayın yapıp alabilmektedir. RTP de belli bir formatta veri transferi için gerekli bilgiler RTP başlığının içerisinde değil RTP Payload bilgisi ve Profil bilgisi içerisinde yer alır. RTP her bir uygulama için bir profil ve buna bağlı payload girdilerini belirler. Bu da birçok format ile uyumlu çalışmasına imkân sağlar.
RTP de profil bilgisi payload veriyi kodlamak için kullanılan kodlayıcıları (codec) tanımlar ve profil başlığındaki "Payload TYpe" alanındaki payload format kodları için onların eşleşmelerini tanımlar. Her profil birkaç payload format belirtimleriyle beraberdir. Ses Payload formatlarından bazıları , , , , GSM, , MP3 içerir. Ve video Payload formatlarından bazıları , , , MPEG yi içerir.
Paket Başlığı
bit offset | 0-1 | 2 | 3 | 4-7 | 8 | 9-15 | 16-31 |
---|---|---|---|---|---|---|---|
0 | Ver. | P | X | CC | M | PT | Sequence Number |
32 | Timestamp | ||||||
64 | SSRC identifier | ||||||
96 | CSRC identifiers (optional) ... |
RTP başlığı en az 12 byte boyutundadır. Başlıktan sonra seçimli başlık uzantıları bulunabilir. Başlık alanları aşağıdaki gibidir.
- Ver.: (2 bit) Protokolün versiyonunu işaret eder. Şu andaki versiyon 2 dir.
- P (Padding): (1 bit) Eğer RTP paketinin sonunda ekstra doldurma (padding) bytelar varsa bunları işaret etmek için kullanılır. Bir padding belirli bir boyutun bir bloğunu,bir kısmını doldurmak için kullanılabilir.
- X (Extension): (1 bit) Payload veri ve standart başlık kısmı arasındaki bir uzantı başlığının varlığını işaret eder.
- CC (CSRC Count): (4 bit) sabit başlığı takip eden tanımlayıcılarının sayısını içerir.
- M (Marker): (1 bit) Bir profil tarafından tanımlanır ve uygulama seviyesinde kullanılır. Eğer ayarlanırsa uygulama için o andaki verinin uygulamayla ilgili bazı özel durumlara sahip olduğunu belirtir.
- PT (Payload Type): (7 bit) Payload formatını gösterir. Ve uygulama tarafından onun yorumlanmasına karar verilir. Bir RTP profili tarafından belirtilir. Örneğin minimal kontrol ile ses ve video konferansları.
- Sequence Number: (16 bit) Sıra numarası RTP başlığında paket kaybını belirlemeye yarayan ve aynı tarih bilgisi değerine sahip paketlerin sıralanmasını sağlar. Ve başlangıç değeri rastgele olarak belirlenir.
- Timestamp: (32 bit) Uygun aralıklarla kabul edilen örnekleri, kayıtları yeniden göstermek için alıcı uygulamaya imkân tanıması amacıyla kullanılır. Birkaç ortam streamleri mevcut ise, timestamp lar her stream de bağımsızdır ve ortam senkronizasyonu için güvenilir olmayabilir. Senkronizasyona ve jitter hesaplamalarına izin vermek için zaman içinde tekdüze ve artan bir şekilde artan zaman bilgisinden meydana gelir.
- SSRC: (32 bit) Senkronizasyon kaynak tanımlayıcıları tek bir şekilde bir streamin kaynağını tanımlar. aynı RTP oturumu içindeki senkronizasyon kaynağı tek ve eşsiz olmalıdır. Bu tanımlayıcı rastgele seçilir.
- CSRC: 32 bitlik yardımcı kaynaktır. Yardımcı kaynak idleri birçok kaynaktan oluşturulan bir stream için yardımcı kaynakları numaralandırır.
- Uzantı Başlığı:(seçimli) İlk 32 bitlik alan özel bir profil tanımlayıcısı ve uzantı başlığının 32 bitinin dışında 32 bitlik birimlerde (EHL=uzantı başlık uzunluğu) uzantının uzunluğunu belirten 16 bitlik bir uzunluk tanımlayıcısın içerir.
RTP Tabanlı Sistemler
Tam bit network tabanlı sistem RTP ile beraber diğer protokoller ve standartları da kapsayacak. SIP, , ve e benzer protokoller oturum başlatılması, kontrol edilmesi ve sonlandırılması için kullanılır. , , MPEG gibi standartlar da RTP profili üzerinden tanımlanan payload veriyi kodlamak için kullanılır.
RTP ister connection-oriented ister connectionless olsun bağlantının türünden bağımsız olarak çalışır. Herhangi bir adres formatına bağımlılığı yoktur. Sadece çerçeveleme(framing) ve segmentasyon işlemlerinin alt katmandaki protokoller tarafından halledilmesini bekler. RTP herhangi bir şekilde reliability (güvenilirlik) garantisi vermez. RTP paket başlığında içerdiği bilgilerle hata kontrolü yapılmasını sağlar. RTP protokolü sanki uygulamanın bir bileşeniymiş gibi çalışır. RTP adının gerçek zamanlı iletişim protokolü olmasına rağmen (pratikte olamayacağı gibi) gerçek zamanlı iletişim sağlamaz. RTP gerçek zamanlı uygulama içeriğini taşınmasını sağlar.
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Bu maddenin iceriginin Turkcelestirilmesi veya Turkce dilbilgisi ve kurallari dogrultusunda duzeltilmesi gerekmektedir Bu maddedeki yazim ve noktalama yanlislari ya da anlatim bozukluklari giderilmelidir Yabanci sozcukler yerine Turkce karsiliklarinin kullanilmasi karakter hatalarinin duzeltilmesi dilbilgisi hatalarinin duzeltilmesi vs Duzenleme yapildiktan sonra bu sablon kaldirilmalidir RTP Real time Transport Protocol gercek zamanli ses goruntu ya da simulasyon verilerinin uctan uca tasinmasini saglayan protokoldur Bu protokol IETF nin Audio Video Transport calisma grubu tarafindan gelistirildi RTP genis olcude telefon uygulamalari ve web tabanli ozellikleri gibi streaming media gerektiren iletisim ve gorsel sistemlerde kullanilir RTP genellikle RTCP ile beraber kullanilir RTP media streamleri audio ve video gibi tasiyorken RTCP Quality of Service bilgisini ve iletim istatistiklerini izlemek icin kullanilir Bu protokollerin her ikisi beraber kullanildigi zaman RTP portunun bir cift sayiya denk gelmesi gerekir RTCP portu ise o oturuma ait RTP portundan sonraki elverisli olan ilk tek port numarasidir RTP ve RTCP genellikle 1024 65535 arasi portlari kullanir Genel TanitimRTP IETF standartlari organizasyonunun Audio Video Transport calisma grubu tarafindan gelistirildi RTP ve gibi diger protokoller ile beraber kullanilir RTP standardi RTP ve RTCP yi bir protokol ciftini tanimlar RTP multimedia veri transferi icin kullanilir ve RTCP periyodik olarak QoS parametrelerini kontrol bilgilerini yollamak icin kullanilir RTP coklu ortam verilerinin gercek zamanli uctan uca transferi icin tasarlanmistir Protokol bir IP network uzerindeki veri iletiminde verilerdeki sira bozuklugunu tespit eder ve network uzerinde paketlerin gelis suresindeki duzenindeki degisiklik kompanzasyonu icin kolaylik saglar RTP multicast servisler uzerinden birden cok hedefe veri transferini destekler RTP IP aglarinda ses video iletiminde oncelikli standart olarak kabul edilir Gercek zamanli coklu ortam streaming uygulamalari zamaninda bilgileri teslim etmeyi gerektirir ve bu amaci gerceklestirmek icin bazi kaybolan paketleri tolere edebilmelidir Ornegin audio ses uygulamasinda kaybolan bir paket ikinci bir paketinin kaybolmasina neden olabilir TCP RTP icin standart haline gelmis olmasina ragmen baglanti kurulumundaki ve hata duzeltmedeki dogal gecikmelerden dolayi sik kullanilmamaktadir RTP yurutme islemlerinin cogu UDP uzerine temellendirilir Diger tasima protokolleri daha henuz yaygin olarak kullanilmasalar da ozellikle coklu ortam oturumlari sessions icin tasarlanan SCTP ve DCCP dir Protokol Bilesenleri RTP iki alt protokolu tanimlar Veri Transfer Protokolu gercek zamanli coklu ortam verisinin transferiyle ilgilenir Bu protokol tarafindan saglanan bilgi senkronizasyon icin tarih bilgisi kaybolan paketlerin denetimi icin sira numarasi ve verinin kodlanmis formatini gosteren payload formatini icerir Gercek Zamanli Kontrol Protokolu ile ilgili geribildirimler ve ortam streamleri arasinda senkronisazyonu belirtmek icin kullanilir Oturumlar Veri iletimi esnasinda iki uc arasi bir RTP oturumu kurulur Bu oturum IP adresleri ve RTP ve RTCP ye ait portlardan olusur Bu oturum icerisindeki cihazlar veri alip gonderebilirler Her bir medya turu icin cihazlar arasi ayri bir oturum olusturulur Bir RTP oturumu her ortam streami icin kurulur Boylelikle oturum icerisindeki kisilerin hangi medya tipinden veri almak istemelerine imkan saglanmis olur Ornegin bir kullanici yayinlanan bir filmin sadece sesini almak isteyebilir Bu durumda alicinin video yayinini engellemesi yeterli olacaktir Profiller ve Payload FormatlariRTP nin formatinda dikkat edilecek hususlardan biri bircok formati desteklemesidir H 264 MPEG 4 MJPEG MPEG gibi RTP standartlarin yeniden duzenlenmesinin disinda yeni formatlarin eklenmesine izin verir RTP protokolunun yapisi Application Level Framing ALF ye dayanmaktadir RTP bu yapsisi itibari ile birden cok cokluortam formatinda yayin yapip alabilmektedir RTP de belli bir formatta veri transferi icin gerekli bilgiler RTP basliginin icerisinde degil RTP Payload bilgisi ve Profil bilgisi icerisinde yer alir RTP her bir uygulama icin bir profil ve buna bagli payload girdilerini belirler Bu da bircok format ile uyumlu calismasina imkan saglar RTP de profil bilgisi payload veriyi kodlamak icin kullanilan kodlayicilari codec tanimlar ve profil basligindaki Payload TYpe alanindaki payload format kodlari icin onlarin eslesmelerini tanimlar Her profil birkac payload format belirtimleriyle beraberdir Ses Payload formatlarindan bazilari GSM MP3 icerir Ve video Payload formatlarindan bazilari MPEG yi icerir Paket Basligibit offset 0 1 2 3 4 7 8 9 15 16 310 Ver P X CC M PT Sequence Number32 Timestamp64 SSRC identifier96 CSRC identifiers optional RTP basligi en az 12 byte boyutundadir Basliktan sonra secimli baslik uzantilari bulunabilir Baslik alanlari asagidaki gibidir Ver 2 bit Protokolun versiyonunu isaret eder Su andaki versiyon 2 dir P Padding 1 bit Eger RTP paketinin sonunda ekstra doldurma padding bytelar varsa bunlari isaret etmek icin kullanilir Bir padding belirli bir boyutun bir blogunu bir kismini doldurmak icin kullanilabilir X Extension 1 bit Payload veri ve standart baslik kismi arasindaki bir uzanti basliginin varligini isaret eder CC CSRC Count 4 bit sabit basligi takip eden tanimlayicilarinin sayisini icerir M Marker 1 bit Bir profil tarafindan tanimlanir ve uygulama seviyesinde kullanilir Eger ayarlanirsa uygulama icin o andaki verinin uygulamayla ilgili bazi ozel durumlara sahip oldugunu belirtir PT Payload Type 7 bit Payload formatini gosterir Ve uygulama tarafindan onun yorumlanmasina karar verilir Bir RTP profili tarafindan belirtilir Ornegin minimal kontrol ile ses ve video konferanslari Sequence Number 16 bit Sira numarasi RTP basliginda paket kaybini belirlemeye yarayan ve ayni tarih bilgisi degerine sahip paketlerin siralanmasini saglar Ve baslangic degeri rastgele olarak belirlenir Timestamp 32 bit Uygun araliklarla kabul edilen ornekleri kayitlari yeniden gostermek icin alici uygulamaya imkan tanimasi amaciyla kullanilir Birkac ortam streamleri mevcut ise timestamp lar her stream de bagimsizdir ve ortam senkronizasyonu icin guvenilir olmayabilir Senkronizasyona ve jitter hesaplamalarina izin vermek icin zaman icinde tekduze ve artan bir sekilde artan zaman bilgisinden meydana gelir SSRC 32 bit Senkronizasyon kaynak tanimlayicilari tek bir sekilde bir streamin kaynagini tanimlar ayni RTP oturumu icindeki senkronizasyon kaynagi tek ve essiz olmalidir Bu tanimlayici rastgele secilir CSRC 32 bitlik yardimci kaynaktir Yardimci kaynak idleri bircok kaynaktan olusturulan bir stream icin yardimci kaynaklari numaralandirir Uzanti Basligi secimli Ilk 32 bitlik alan ozel bir profil tanimlayicisi ve uzanti basliginin 32 bitinin disinda 32 bitlik birimlerde EHL uzanti baslik uzunlugu uzantinin uzunlugunu belirten 16 bitlik bir uzunluk tanimlayicisin icerir RTP Tabanli SistemlerTam bit network tabanli sistem RTP ile beraber diger protokoller ve standartlari da kapsayacak SIP ve e benzer protokoller oturum baslatilmasi kontrol edilmesi ve sonlandirilmasi icin kullanilir MPEG gibi standartlar da RTP profili uzerinden tanimlanan payload veriyi kodlamak icin kullanilir RTP ister connection oriented ister connectionless olsun baglantinin turunden bagimsiz olarak calisir Herhangi bir adres formatina bagimliligi yoktur Sadece cerceveleme framing ve segmentasyon islemlerinin alt katmandaki protokoller tarafindan halledilmesini bekler RTP herhangi bir sekilde reliability guvenilirlik garantisi vermez RTP paket basliginda icerdigi bilgilerle hata kontrolu yapilmasini saglar RTP protokolu sanki uygulamanin bir bileseniymis gibi calisir RTP adinin gercek zamanli iletisim protokolu olmasina ragmen pratikte olamayacagi gibi gercek zamanli iletisim saglamaz RTP gercek zamanli uygulama icerigini tasinmasini saglar