İçeriğe atla

Gerçek Zamanlı İletim Protokolü

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, video telekonferans uygulamaları ve web tabanlı bas-konuş özellikleri gibi streaming media gerektiren iletişim ve görsel sistemlerde kullanılır.

RTP genellikle RTP Control Protocol (RTCP) ile beraber kullanılır. RTP media streamleri (audio ve video gibi) taşıyorken RTCP Quality of Service (QoS) 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 H.323 ve RTSP gibi diğer protokoller ile beraber kullanılır. RTP standardı RTP ve Real-time Transport Control Protocol (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ı(real-time), uçtan uca ( end-to-end) transferi için tasarlanmıştır. Protokol bir IP network üzerindeki veri iletiminde verilerdeki sıra bozukluğunu tespit eder ve jitter (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ü: Servis önceliği (QoS) 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ı G.711, G.723, G.726, G.729, GSM, QCELP, MP3 içerir. Ve video Payload formatlarından bazıları H.261, H.263, H.264, 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 CSRC 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, RTSP, H.225 ve H.263 e benzer protokoller oturum başlatılması, kontrol edilmesi ve sonlandırılması için kullanılır. H.263, H.264, 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.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">IPv4</span> İnternet Protokolünün 4. sürümü

İnternet Protokol Versiyon 4 (IPv4), İnternet Protokolü'nün (IP) dördüncü versiyonudur.

<span class="mw-page-title-main">UDP</span>

UDP, TCP/IP protokol takımının iki aktarım katmanı protokolünden birisidir. Verileri bağlantı kurmadan yollar.

Telnet, Internet ağı üzerindeki çok kullanıcılı bir makineye uzaktaki başka bir makineden bağlanmak için geliştirilen bir TCP/IP protokolü ve bu işi yapan programlara verilen genel isimdir. Telnet iki bileşenden oluşur: (1) iki tarafın nasıl iletişim kuracağını belirleyen protokolün kendisi ve (2) hizmeti sağlayan yazılım uygulaması.Kullanıcı verileri, İletim Kontrol Protokolü (TCP) üzerinden 8 bitlik bayt yönlendirmeli bir veri bağlantısında Telnet kontrol bilgisi ile bant içi serpiştirilir. Telnet, 1969'da RFC 15 ile başlayarak geliştirildi, RFC 855'te genişletildi ve ilk İnternet standartlarından biri olan İnternet Mühendisliği Görev Gücü (IETF) İnternet Standardı STD 8 olarak standartlaştırıldı. encryption sağlayan bazı Telnet eklentileri geliştirilmiştir. Bağlanılan makineye girebilmek (login) için orada bir kullanıcı isminizin (İng:username) ve bağlantının gerçekleşebilmesi için bir telnet erişim programınızın olması gereklidir. Fakat bazı kütüphane ve herkese açık telnet bazlı web servisleri, bağlantı sırasında kullanıcı ismi (numarası) istemeyebilirler; ya da, kullanıcı isim ve parola olarak ne yazmanız gerektiği bağlandığınızda otomatik olarak karşınıza çıkar. Telnet, BBS sistemlere İnternet üzerinden erişimde günümüzde yaygın olarak kullanılmaktadır. Telnet erişim programları, günümüzdeki işletim sistemlerinin çoğunda işletim sistemi ile birlikte gelmektedir. Çok kullanıcılı işletim sistemleri genellikle kullanıcılara metin tabanlı bir arayüz sunar ve bu sistemlerde tüm işlemler klavye vasıtası ile komut isteminden gerçekleştirilir.

<span class="mw-page-title-main">IPv6</span> İnternet protokolünün 6. versiyonu

Internet Protocol Version 6 kısaca IPv6, aslında 32 bitlik bir adres yapısına sahip olan IPv4'ün adreslemede artık yetersiz kalması ve ciddi sıkıntılar meydana getirmesi üzerine IETF tarafından geliştirilmiştir.

<span class="mw-page-title-main">İnternet iletişim kuralları dizisi</span>

İnternet protokol takımı, bilgisayarlar ve ağ cihazları arasında iletişimi sağlamak amacıyla standart olarak kabul edilmiş kurallar dizisidir. Bu kurallar dizisi temel olarak verinin ağ üzerinden ne şekilde paketleneceğini ve iletilen veride hata olup olmadığının nasıl denetleneceğini belirlemektedir.

<span class="mw-page-title-main">SIP</span>

Oturum başlatma Protokolü (SIP), ses, video ve mesajlaşma uygulamalarını içeren gerçek zamanlı oturumları başlatmak, sürdürmek ve sonlandırmak için kullanılan bir sinyal protokolüdür. VoIP gibi IP üzerinden üzerinden ses, görüntü ve anlık mesaj iletişimi yanı sıra LTE (VoLTE) üzerinden cep telefonu araması için multimedya iletişim oturumlarını sinyalize etmek ve kontrol etmek için kullanılır. Günümüz IP Telefonlarının çoğunluğu SIP Protokolü ile çalışmaktadır. Cisco gibi bazı üreticiler SIP kullanmakla beraber bazı telefon modellerinde SCCP tercih etmektedir.

MPEG tarafından geliştirilen ve geliştirilmesine devam edilen çoklu-iletişim görüntü kodlama standardı. MPEG-4 standardı, şu anda kullanılan MPEG-2 standardına göre daha yüksek sıkıştırma olanakları ve yeni kodlama araçları sunmayı amaçlamaktadır. MPEG-4 sesli ve görsel(İngilizce: Audio Visual, "AV") sayısal verilerin görüntü sıkıştırmasını tanımlayan metotlar bütünüdür. İlk olarak 1998 yılı sonlarında yayınlanmıştır ve ISO/IEC ile MPEG 'in ISO/IEC 14496 standardı olarak üzerinde uzlaştıkları bir grup ses ve görüntü kodlama formatı ile, ilgili teknolojilerin standardizasyonunu ifade eder. Kullanım alanları arasında AV web dosyaları, kompakt disk (CD), ses ve televizyon yayınları sayılabilir.

Adres Çözümleme Protokolü ağ katmanı adreslerinin veri bağlantısı katmanı adreslerine çözümlenmesini sağlayan bir telekomünikasyon protokolüdür. 1982 yılında RFC 826 aracılığıyla tanımlanmıştır. STD 37 kodlu bir internet standardıdır.

IP adresi, interneti ya da TCP/IP protokolünü kullanan diğer paket anahtarlamalı ağlara bağlı cihazların, ağ üzerinden birbirleri ile veri alışverişi yapmak için kullandıkları adres.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

GPRS Tunnelling Protocol, GSM ve UMTS ağları içerisindeki GPRS(General Packet Radio Service) verilerinin taşınmasında kullanılan IP tabanlı bir haberleşme protokolüdür. Yönlendirme bilgisi ekleyerek protokol veri ünitelerini IP omurgası içinde tüneller. UMTS' deki merkezi ağın paket anahtarlamalı bölümü iki tip GPRS destek düğümünden oluşmuştur. GPRS Destek Düğümü Sunucusu (SGSN) ve GPRS Geçit Destek Düğümü (GGSN).

Datagram Congestion Control Protocol (DCCP), mesaj tabanlı bir Ulaşım katmanı protokolüdür.

<span class="mw-page-title-main">OSI modeli</span>

Open Systems Interconnection (OSI) modeli ISO tarafından geliştirilmiştir. Bu modelle, ağ farkındalığına sahip cihazlarda çalışan uygulamaların birbirleriyle nasıl iletişim kuracakları tanımlanır.

İnternet Protokolü Güvenliği (IPsec), Internet Protokolü (IP) kullanılarak sağlanan iletişimlerde her paket için doğrulama ve şifreleme kullanarak koruma sağlayan bir protokol paketidir. IPsec, içinde bulundurduğu protokoller sayesinde, oturum başlarken karşılıklı doğrulama ve oturum sırasında anahtar değişimlerini gerçekleştirme yetkisine sahiptir. İki bilgisayar arasında (host-to-host), iki güvenlik kapısı arasında(network-to-network), bir güvenlik kapısı ve bir bilgisayar arasında(network-to-host) sağlanan bağlantıdaki veri akışını korumak için kullanılır. IPsec kriptografik güvenlik servislerini kullanarak IP protokolü ile gerçekleştirilen bağlantıları korumak için kullanılır. Ağ seviyesinde doğrulama veri kaynağı doğrulama,veri bütünlüğü, şifreleme ve replay saldırılarına karşı koruma görevlerini üstlenir.

<span class="mw-page-title-main">H.264/MPEG-4 AVC</span>

H.264 bir görüntü sıkıştırma standardıdır ve MPEG-4 Bölüm 10 ya da MPEG-4 AVC in muadilidir. 2008 yılı itibarıyla, ITU-T, Video Coding Experts Group (VCEG), ISO/IEC içindeki Moving Picture Experts Group (MPEG) tarafından oluşturulan Birleşik Video Ekibi tarafından geliştirilen en son blok-yönelimli hareket-kompanzasyonuna dayalı çözücü standardıdır. ITU-T H.264 ve ISO/IEC MPEG-4 Bölüm 10 standartları birlikte sürdürülmektedir, dolayısıyla aynı teknik içeriğe sahiptirler. Standartın ilk nihai taslak metni Mayıs 2003'te tamamlanmıştır.

Real Time Streaming Protocol (RTSP), eğlence ve iletişim sistemlerinde medya sunucularındaki verilerin akışını kontrol etmek için tasarlanan bir ağ denetim protokolüdür. Bu protokol bitiş noktaları arasındaki medya bağlantılarının kurulması ve kontrol edilmesinde kullanılır. Medya sunucularının sorunu VCR'lerdeki gibi müşterilerin sunucudan alınan medya dosyalarını çalışma, durdurma gibi kısacası gerçek zamanlı kontrolü kolaylaştırmak.

İnternet Akış Protokolü(ST ve daha sonraları ST-||) ilk olarak İnternet Mühendisliği Notu IEN-119 (1979) ve daha sonra RFC 1190(ST-II) da ve RFC 1819(ST2+) da önemli ölçüde revizyona tabi tutulan deneysel protokoller ailesidir. ST bir http://en.wikipedia.org/wiki/Network_Voice_Protocol Ağ Ses Protokolü]nün multimedya taşıma protokolü olarak ortaya çıktı ve insan konuşmalarını paketlenmiş bir iletişim ağı üzerinden taşımak için öncü bir bilgisayar ağ protokolü olarak 1973'te internet araştırmacısı Information Science Institute (ISI) den Danny Cohen tarafından, ARPANET'in Güvenli İletişim Ağı projesinin bir parçası olarak uygulandı.(bkz.RFC 741(1977de yayımlandı))

ZRTP bir şifreleme anahtar paylaşma protokolüdür. Bu protokolde, Voice over Internet Protocol (VoIP) protokolüne dayanan iki uç nokta arasında şifreleme yapabilmek için anahtarlar üzerinde anlaşma yapılmaktadır. Voice over Internet Protocol (VoIP) telefon çağrısı Real Time Transport Protocol'e dayanır. Şifreleme için Diffie–Hellman anahtar değişimi ve Secure Real-time Transport Protokol (SRTP)' lerini kullanır. ZRTP, Bryce Wilcox-O'Hearn, Colin Plumb, Jon Callas ve Alan Johnston yardımıyla, Phil Zimmermann tarafından geliştirildi ve 5 Mart 2006 tarihinde Bryce Wilcox-O'Hearn'nin yardımıyla, Phil Zimmermann, Jon Callas and Alan Johnston tarafından Internet Engineering Task Force (IETF)' a sunuldu ve RFC 6189 olarak 11 Nisan 2011 tarihinde yayınladı.

Çap, Uzun Vadeli Evrim (LTE) ve IP Multimedya Sistemlerinde (IMS) kimlik doğrulama, yetkilendirme ve muhasebe (AAA) bilgilerini değiş tokuş etmek için kullanılan yeni nesil endüstri standardı bir protokoldür. Daha önceki RADIUS protokolünden evrimleşmiştir. RADIUS "Remote Authentication Dial-in User Service" tanımından alan ve uygulama katmanlı protokollerden biridir. İletişim yöntemi olarak Network UDP protokolünü kullanır. Server (Sunucu) / Client (İstemci) mimarisini kullanır.İnternet protokol paketindeki uygulama katmanı protokollerine aittir.