Tıkanıklık Kontrolü için Yeni Bir İletim Protokolü: DCCP

Slides:



Advertisements
Benzer bir sunumlar
Bilgisayar Ağları ve İnternet
Advertisements

TCP/IP Mimarisi ve Katmanları
İNTERNET HABERLEŞME ARAÇLARI
Çoklu Ortam Ve Gerçek Zamanlı Uygulamalar
WEB TASARIM Temel Kavramlar.
BBY 302 Bilgi Teknolojisi ve Yönetimi
NOKTA, DOĞRU, DOĞRU PARÇASI, IŞIN, DÜZLEMDEKİ DOĞRULAR
Network Layer Bölüm Ağ Katmanı Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
Sıkışıklık kontrolüne yönelik yaklaşımlar
TCP (Transmission Control Protocol)
TCP/IP Protokolü.
İNTERNET.
İNTERNET VE İLETİŞİM.
 Meltem KORCAY  Ayşe KUBİLAY
Veri İletiminde Hata Kontrol Yöntemleri
1. Internet Nedir?.
AĞ PROTOKOLÜ.
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
SOME-Bus Mimarisi Üzerinde Mesaj Geçişi Protokolünün Başarımını Artırmaya Yönelik Bir Algoritma Çiğdem İNAN, M. Fatih AKAY Çukurova Üniversitesi Bilgisayar.
2- OSI BAŞVURU MODELİ & TCP/IP MODELİ
Open Systems Interconnection
Çizge Teorisi, Dağıtık Algoritmalar ve Telsiz Duyarga Ağları
TCP/IP Protokol Yapısı
Büyük Risk Bilgisayar Ağları Network Soru-Cevap 1 Bilgisayar Ağları
Yönlendirici Mimarisi
İnternet Teknolojisi Temel Kavramlar
İnternet Teknolojisi Temel Kavramlar
WEB TASARIMINDA TEMEL KAVRAMLAR
BTEP 203 – İnternet ProgramcIlIğI - I
HABTEKUS' HABTEKUS'08 3.
( HATA VE AKIŞ KONTROLU – PROTOKOLLER – AĞ YAPILARI )
Anahtar link-katmanı cihazı: hublardan daha zeki, aktif rol üstlenir
Bilgisayar Ağları Emre ÜNSAL Dokuz Eylül Üniversitesi
Diferansiyel Denklemler
Adresindeki HTTP ve DNS appletleri
BİLGİSAYAR AĞLARI GÜZ DÖNEMİ
3. Bölüm Taşıma Katmanı Computer Networking: A Top Down Approach 4th edition. Jim Kurose, Keith Ross Addison-Wesley, July Transport Layer.
Taşıma Katmanı Öğr. Gör. Mustafa SARIÖZ
BLM619 Bilgisayar Ağları ve Uygulamaları
 Bilgisayarlar arasında bilgi alışverişini, dosya iletimini sağlamaktadır.  Bu protokol kullanılarak, internet üzerinde bulunan herhangi bir bilgisayarda.
Ders Sorumlusu: Yrd. Doç. Dr. Mustafa TURAN
NAT: Network Address Translation (Ağ Adres Dönüşümü)
Toplama Yapalım Hikmet Sırma 1-A sınıfı.
TCP/IP – DHCP Nedir?.
TCP Akış Kontrolü Akış kontrolü
Güvenli veri transferinin esasları
ÖĞR. GRV. Ş.ENGIN ŞAHİN BİLGİ VE İLETİŞİM TEKNOLOJİSİ.
İnternet Teknolojisi Temel Kavramlar
Chapter 5. Ağ Protokolleri
Ethernet Anahtarlama.
KIRKLARELİ ÜNİVERSİTESİ
B İ L İŞİ M S İ STEMLER İ GÜVENL İĞİ (2016) PROF. DR. ORHAN TORKUL ARŞ. GÖR. M. RAŞIT CESUR.
Ağ Donanımları Ağ Nedir ? Ağ Donanımları Bridge Hub Switch Router
TCP/IP. Network Katmanı ● Bu katmanda IP'ye göre düzenlenmiş veri paketleri bulunur. ● İletim katmanından gelen veriler burada Internet paketleri haline.
Bilgi İşlem Organizasyonu Güz Dönemi Server Çeşitleri ve Aralarındaki Farklar – Burak Eray KAYIŞ.
Öğretim Görevlisi Alper Talha Karadeniz Ağ Temelleri
BİLGİ İŞLEM ORGANİZASYONU -Voice/VoIP
İnternet Adresleri IP Kavramı
Dünyanın bilgisine açılan pencere...
OSI Modeli 6. Hafta Dersi.
OSI Modeli Öğr. Gör. Ferdi DOĞAN.
MAİL SERVER Oğuz ZARCI –
PORTLAR Gizem GÜRSEL
Cumhuriyet Üniversitesi Bilgisayar Ağları Dersi
TCP/IP PROTOKOLÜ.
Bilgisayar Ağları Ders Notları
OSİ Modeli.
Raptor - Reed-Solomon Göndermede Hata Düzeltim Kodları (FEC)
Sunum transkripti:

Tıkanıklık Kontrolü için Yeni Bir İletim Protokolü: DCCP Ayşegül Alaybeyoğlu, Yonca Bayrakdar, Aylin Kantacı Ege Üniversitesi Bilgisayar Mühendisliği Bölümü

Sunum İçeriği Giriş Diğer Protokoller TCP UDP RTP RTCP Datagram Congestion Control Protocol (DCCP) Paket Yapısı Bağlantı Kurulumu Tıkanıklık Kontrolü TCP Like (CCID2) TCP Friendly Rate –TFRC (CCID3)

1. Giriş-1 Video akışlandırma gibi gerçek zamanlı uygulamalarda, verinin zamanında iletimi güvenli iletimine göre daha büyük öncelik taşır. Bu yüzden TCP gibi güvenli iletim sağlayan bir protokol bu tarz uygulamalar için uygun değildir. Geçmişte, zamanında iletimin önemli olduğu uygulamalar için UDP protokolü kullanılmış fakat zaman içinde iletim esnasındaki tıkanıklık kontrol mekanizmasının önemi anlaşılmıştır.

1. Giriş-2 Bu çalışmada UDP protokolünün yerine kullanılması düşünülerek tasarlanmış, yeni bir protokol olan DCCP protokolü tanıtılmıştır. DCCP protokolünün temel özelliklerinden bahsedilmiş, tıkanıklık kontrol mekanzimasında TCP’den farkları belirtilmiştir.

2. Diğer Protokoller-1 Verinin iletildiğine dair güvence gerektiren ancak gecikmelere çok hassas olmayan uygulamalar için TCP(Transmission Control Protocol) protokolü Birtakım veri kayıplarına tolerans gösterilebilecek ancak gecikmelerin daha fazla önem azrettiği uygulamalarda ise UDP(User Datagram Protocol) protokolü. Uygulama gerçek zamanlı ses ve video akışlandırma içermekteyse ve alıcı aldığı paketlerin senkronizasyonu için bir zamanlama bilgisine ihtiyaç duyuyorsa, RTP (Real-time Transport Protocol) ve ilişkili olarak da RTCP (Real-time Transport Protocol) protokolleri kullanılabilir

2.1 TCP-1 TCP basitleştirilmiş OSI modelinde iletim katmanı üzerinde görev yapmaktadır. TCP kullanılarak, network üzerindeki bilgisayarlardaki uygulamalar arasında veri iletimi yapılmasını mümkün kılan bağlantılar kurulabilir. Protokol göndericiden alıcıya güvenli ve sıralı bir şekilde veri iletilmesi garantisini vermektedir.

2.1 TCP-2 TCP internet üzerinde kullanılan en popüler uygulama protokollerini ve uygulamaları desteklemektedir. World Wide Web E-mail File Transfer Protocol (FTP) Secure Shell TCP protokolünde sırayla bağlantı kurulması veri transferi bağlantı sonlandırılması aşamaları yer almaktadır

2.1 TCP-3 TCP protokolü kullanımının uygun olmadığı birçok uygulama mevcuttur. Bir paket kaybolduğunda, bu paket tekrar iletilene kadar sonraki paketler uygulama tarafından alınamamaktadır. Bu durum gerçek zamanlı uygulamalarda sorunlara yol açar. Bu tarz uygulamalarda verinin büyük bir kısmının zamanında iletilmesi , tamamının sırayla iletilmesinden daha fazla avantaj sağlar.

2.2 UDP-1 UDP kullanılarak network üzerindeki bilgisayarlardaki programlar birbirlerine datagram olarak ifade edilen küçük paketleri gönderirler. UDP, TCP’nin sağladığı güvenilirliği ve sıralı iletimi sağlamaz. Datagramlar sırasız, tekrarlı iletilebilir veya kaybolabilir. Tüm paketlerin hatasız iletilmesinin kontrolü ile zaman kaybedilmemesi, küçük ölçekli veya zamana duyarlı uygulamalar için UDP’nin daha hızlı ve etkin bir çözüm olarak ortaya çıkmasını sağlar.

2.2 UDP-2 TCP ‘ye kıyasla UDP yayımı(broadcast) ve çoğayayımı (multicast) için tercih edilir. UDP kullanan belli başlı network uygulamaları Domain Name System (DNS) Streaming media uygulamaları Voice over IP (VoIP) Trivial File Transfer Protocol (TFTP) Online oyunlar Güvenilirlik özelliğinin sağlanmamasından dolayı UDP uygulamaları kayıp, hata ve tekrarlı iletimi kabul eder yapıda olmalıdır.

2.3 RTP/RTCP Bir uygulamada gerçek zamanlı ses veya video transferi söz konusuysa, alıcının gelen paket akışını gereken hızda işleyebilmesi için gereken zamanlama bilgisi RTP tarafından sağlanır. Buna ek olarak, ses ve video içeriklerini birlikte barındıran uygulamalarda, RTCP kullanılarak gelen iki ortam içeriğinin senkronizasyonu sağlanabilir. RTP, UDP üzerine kurulmuş olup RTCP ile birlikte çalışmaktadır.

3. Protokollerin Karşılaştırılması TCP ve UDP’nin karşılaştırılması TCP UDP Bağlantı temelli Bağlantısız Güvenilir Güvenilir değil. Mesajların ulaşıp ulaşmadığı bilinmiyor. Sıralı Aynı anda gönderilen iki mesajda sıra belirsiz Uygulanması zor Uygulanması basit Stream (bir kerede çok sayıda paket gönderilebilir) Datagram (bir kerede tek paket)

4. Datagram Congestion Control Protocol(DCCP)-1 DCCP, çokluortam trafiğini desteklemek üzere IETF topluluğu tarafından önerilmiş bir iletim protokolüdür. Güvenilir olmayan veri iletimi gerçekleştirmektedir. Bağlantı kurulumu, sonlandırımı ve uygun tıkanıklık kontrol mekanizmasının seçimi için anlaşmalar yapmaktadır. ECN mekanizmasında, tıkanık durumda olan yönlendiriciler (router), paketleri atmak yerine paketleri işaretleme işlemini gerçekleştirirler.

4.Datagram Congestion Control Protocol(DCCP)-2 DCCP, herhangi bir paket kaybı olduğunda, Explicit Congestion Notification (ECN) olarak adlandırılan bir bilgilendirme mekanizması kullanmaktadır. Bu mekanizma ile de göndericiye, alıcının hangi paketleri alabildiğine ve hangi paketlerin kaybolduğuna dair bilgiler gönderilir DCCP= UDP+ (Tıkanıklık Kontrolü+ Tokalaşmalar+ Bağlantı Kurulumu) DCCP= TCP-(Güvenirlik+ Sıralı Paket İletimi+ Bayt akışı )

4.1 DCCP’de Paket Yapısı-1 DCCP protokol fonksiyonları on adet paket türü ile gerçekleştirilmektedir. Bu paketlerden sekizi bağlantı kurulumu için kullanılırken diğer ikisi de senkronizasyonu sağlamak için kullanılır. DCCP-Request paketi, istemci tarafından bağlantının kurulumunın başlaması için gönderilir. DCCP-Response paketi, sunucu tarafından DCCP-Request paketine cevap olarak gönderilir. DCCP-Data paketi ile uygulama verisi, DCCP-Ack paketi ile yalın onay bilgisi, DCCP-DataAck paketi ile de uygulama verisi ile onay bilgisi birlikte gönderilmektedir.

4.1 DCCP’de Paket Yapısı-2 DCCP-CloseReq paketi sunucunun istemciye bağlantıyı kapatması için gönderdiği bir istek paketidir. DCCP-Close paketi sunucu ya da istemcinin bağlantıyı kapatması için kullandığı bir pakettir. DCCP-Reset paketi, bağlantının beklenmedik bir durumda sonlandırımı için kullanılmaktadır. DCCP-Sync ve DCCP-SyncAck paketleri paket iletiminde senkronizasyonu sağlamak için kullanılır. Her bir DCCP paketi birer sıra numarası taşır böylece paket kayıpları kolayca belirlenip rapor edilebilir.

4.2 DCCP’de Bağlantı Kurulumu-1 DCCP bağlantısı kurulmadan önce istemci ve sunucu arasında hangi tıkanıklık mekanizmasının ve parametrelerinin kullanılacağına dair bir anlaşmaya varılmış olması gerekir. DCCP, güvenilir olmayan bir veri iletimi gerçekleştirse de, onay bilgilerinin gönderiminin güvenilir olması beklenir. Bunun içinde göndericinin, alıcının göndermiş olduğu onay bilgilerinden en az birisini onaylaması gerekmektedir. DCCP’de, göndericinin bu onaylama işlemini gerçekleştirebilmesi için kullanılan yöntem, alıcının gönderdiği onay bilgisinde paket sıra numarası bilgisinin bulunmasını sağlamaktır ki gönderici alıcıya hangi pakete ait onay bilgisinin alındığını rapor edebilsin.

4.2 DCCP’de Bağlantı Kurulumu-2 DCCP’de bağlantılar iki yönlüdür yani veri ve onay bilgisi eş zamanlı olarak her iki yönde iletilebilmektedir. Bu durum video akışlandırma uygulamalarda kullanılan DCCP gibi bir protokol için uygun değildir. Çünkü sunucudan istemciye video gibi büyük bir boyutta veri iletilirken, istemciden sunucuya sadece dosya ismi gönderilebilmektedir. Yani tek bir bağlantıda asimetrik bir durum oluşmaktadır.

4.3 DCCP’de Bağlantı Kurulumu-3 Bu duruma çözüm olarak, DCCP bağlantısının iki yarım bağlantıya ayrılması önerilmiştir. Alıcıdan göndericiye, göndericiden alıcaya olan bağlantıların herbirine yarım-bağlantı (half-connection) denmektedir. Bu yarım bağlantıların her biri tıkanıklık kontrol mekanizmasına sahiptir

A ve B arasındaki bağlantıda, ilk yarım bağlantı A’dan B’ye veri paketlerini ve B’den A’ya onay bilgisisi içerirken, ikinci yarım bağlantı ise B’den A’ya veri paketlerini ve A’dan B’ye de onay bilgisini içerir. Bu iki yarım bağlantı birbirlerinden bağımsız bir şekilde eş zamanlı olarak gerçekleşebilmektedir.

4.4 DCCP’de Tıkanıklık Kontrolü-1 DCCP, birçok tıkanıklık kontrol mekanizmasını içermekte ve bu mekanizmalardan en uygun olanını dinamik olarak seçebilmektedir. Her bir tıkanıklık kontrol algoritması birer tıkanıklık kontrol tanımlayıcısı (CCID) ile belirtilir. CCID2 ve CCID3, IETF tarafından standartlaştırılan kontrol tanımlayıcılarıdır. CCID2, TCP gibi pencere tabanlı bir tıkanıklık kontrol algoritmasıdır ve daha çok online oyunlar gibi uygulamalar için uygundur. CCID3 ise, TCP Friendly Rate Control (TFRC) algoritmasıdır ve daha çok IP telefonculuğu gibi iletim oranında ani değişimler yerine hassas değişimlerin olduğu uygulamalar için uygundur.

4.4 DCCP’de Tıkanıklık Kontrolü-2 TCP-like Congestion Control (CCID2)-1 CCID2, TCP protokolünün de kullandığı artımsal artış çarpımsal azalış (Additive Increase Multiplicative Decrease) tıkanıklık kontrol mekanizmasına benzer bir mantıkta çalışır. Buna göre, gönderici bir tıkanıklık penceresi oluşturur ve bu pencere doluncaya kadar paket iletimine devam eder. Paket alıcı tarafından onaylanarak alınır. Alıcı tarafından ECN bilgisinin gönderilmesi tıkanıklık olduğunu belirtir. Bu durumda tıkanıklığın giderilmesi için tıkanıklık penceresi yarıya düşürülür.

4.4 DCCP’de Tıkanıklık Kontrolü-3 TCP-like Congestion Control (CCID2)-2 CCID2, uzun vadede maksimum bant genişliği kullanımı sağlarken, herhangi bir tıkanıklık durumunda tıkanıklık penceresini direk yarıya düşürmesi ile veri gönderim oranında ani değişimlere neden olur. Bu özellikler de CCID2’yi video akışlandırma gibi gerçek zamanlı uygulamalardan ziyade online oyunlar için daha uygun kılar.

4.4 DCCP’de Tıkanıklık Kontrolü-4 TCP Friendly Rate Control –TFRC (CCID3) TFRC, bir eşitlik tabanlı (equation-based) tıkanıklık kontrol mekanizmasıdır. Daha önce bahsedilen AIMD tıkanıklık kontrol mekanizması, herhangi bir tıkanıklık olduğunda iletim oranını direk yarıya düşürürken, eşitlik tabanlı tıkanıklık kontrol mekanizması ile iletim oranı en son birim zamandaki kayıp sayısına bağlı olarak belirlenmektedir.

4.4 DCCP’de Tıkanıklık Kontrolü-5 Gönderici, alıcıdan tıkanıklık durumu ile ilgili geri bildirim almaktadır ve aşağıda verilen tıkanıklık kontrol denklemine göre de iletim oranını belirlemektedir. Bu denklemde T maksimum gönderim hızına karşılık gelmektedir. s parametresi paket büyüklüğünü, R parametresi gidiş dönüş zamanını, p parametresi kayıp olayı sayısını ve t parametresi de yeniden gönderim zaman aşımını ifade etmektedir.

4.4 DCCP’de Tıkanıklık Kontrolü-6 Tıkanıklık kontrolü için belirtilen denklemin kullanılabilmesi için R ve p parametrelerinin tanımlanması gereklidir. Burada kayıp olay sayısını ifade eden p parametresi alıcıda hesaplanırken, gidiş dönüş zamanını ifade eden R parametresi de alıcı yada göndericide hesaplanabilir. Alıcı p parametre değerini göndericiye geribildirim yapar. Gönderici de bu geribildirimi yorumlayarak, belirtilen denkleme göre bir gönderim hızını hesaplar. Eğer mevcut gönderim hızı, hesaplanan gönderim hızından düşükse arttırılır, yüksekse de azaltılır.

4.4 DCCP’de Tıkanıklık Kontrolü-7 Eşitlik tabanlı tıkanıklık kontrol mekanizmasında, uygulama için en uygun kontrol denkleminin seçilmesi çok önemlidir. CCID3, CCID2 ile karşılaştırıldığında, CCID3’teki iletim oranında daha az değişimin olduğu görülür. Bu özellikler CCID3’ü, iletim oranının önem taşıdığı video akışlandırma gibi uygulamalar için daha uygun hale getirir. CCID3, pencere tabanlı değil hız tabanlıdır. Bu yüzden göndericinin alıcıdan olumlu bir geribildirim almaması durumunda, iletim oranının düşürülmesi için mekanizmaya ihtiyaç vardır

Sonuç Son yıllarda video akışlandırma, online oyunlar, internet telefonculuğu gibi uygulamalara olan ilgideki artış, bu uygulamalar için kullanılan protokollerde gelişmelerin olmasında tetikleyici olmuştur. Özellikle tıkanıklık konusuna verilen önem artmış, bu konu üzerine yapılan araştırmalara öncelik verilmiştir. DCCP, TCP ve UDP’nin avantajlarını bir araya getirerek tıkanıklık kontrolü mekanizmasında başarılı olmuştur ve ileride çokluortam uygulamaları için çok tercih edilen bir standart olması beklenmektedir.

Dinlediğiniz İçin Teşekkürler...