Selective Repeat ARQ - Algoritması
 

TCP Hata Kontrolü (Error Control) ve Selective Repeat Algoritmasi

TCP herhangi bir nedenden dolayi gönderdigi segment için hata algiladiginda yeniden iletim yapmaktadir. TCP Yeniden Iletim 2 Sebepten dolayi olusabilmektedir. 1 - Paketlerin Kaybolmasi , 2 - Paketlerin Bozulmasi  Bu  2  duruma da bir önceki makalemizde deginmistik . Bu makalemizde 2 sebepten dolayi yeniden iletim yapan Tcp'nin kullandigi yeniden iletim algoritmalarina deginecegiz.

Kaybolan ve bozulan paketlerin sezimi ve yeniden iletimini ilgilendiren hata kontrol yöntemleri Automatic Repeat Request (ARQ) error control olarak tanimlanmaktadir. Yaygin olarak kullanilan ARQ yeniden ileti yöntemleri ,

Stop-and-Wait
Go Back N
Selective Repeat'dir.


Stop-and-Wait half-duplex mod da çalistigindan Tcp tarafindan kullanilmamaktadir.Çünkü Stop-and-Wait durumunda alicidan bir kabul gelmeden , Tcp yeni bir iletim yapamazdir.

Diger ARQ protokollerinde gönderici çoklu paketlerin gönderilmesine izin vermektedir.Bu paketler "in-flight" olarak tanimlanir  ve henüz kabul edilmemis paketlerdir.

Asagidaki sekil ile daha iyi bir sekilde farki anlayabiliriz.


Simdi Go Back N ve  Selective Repeat algoritmalarini inceleyelim .TCP Go Back N algoritmasinin bir türevini kullanir. Aslinda TCP 'nin kullandigi bu yeniden iletim algoritmasi Go Back N ve Selective Repeat'in iyi yönlerinin birlikte kullanildigi bir algoritmadir.

Bu makalemizde Selective Repeat algoritmasina deginecegiz.

Selective Repeat ARQ Algoritmasi

Bu algoritmada alicinin , göndericinin göndermis oldugu paketleri sirali bir sekilde  alma kosulu aranmaz .Alici , arada kaybolan bir paketin olusmasi durumunda sadece ilgili paketin iletimini ister.Fakat sirali bir sekilde tam alim olmadigi için alicinin tamponu 1 veri çerçevesini depolayabilecek boyuttan büyük olmalidir .Örnek olarak  göndericinin 10 paket gönderdigini ve gönderim sirasinda aradaki 5. paketin kayboldugunu düsünelim. Alici tcp , aldigi ilk  4 paket için Ack onaylarini  ve 6 7, 8 ,9 10.'cu paket içinde ACK onaylarini gönderecektir.Gönderici alicidan 1,2,3,4,6,7,8,9,10'.cu paketlerin Ack onayini almis fakat 5.paketin Ack onayini almamistir.Yeniden iletim zaman asimina gelindiginde halen göndericiye 5. paket için onay gelmediginden , gönderici tekrar 5. paketi yeniden gönderecektir. Fakat yalnizca kaybolan paket olan 5. paketi gönderilecektir. Bu durumun hem avantaj hem de dez avantajlari bulunmaktadir.


Avantaji  , iletim ortami esnek bir sekilde kullanilmis olacaktir. Çünkü yalnizca kaybolan paket yeniden gönderilmektedir.

Dezavantaji ise aliciya paketler sirali bir biçimde gitmediginden alicinin tamponu esnek kullanilmamis  olacaktir. Ve çok kayip paket oldugu düsünülürse tampon zamanla sisecek ve yeni paketler için yer kalmayacaktir.

Asagidaki sekiller ile durum daha iyi anlasilacaktir.

Ve alicinin gönderdigi onay ise asagidaki gösterilmistir. Alici 5. paketi almadigindan  4 ve  4'ten sonra gelen her paket için göndericiye ACK 'si 5 olan paketi gönderiyor. Ben 5'e kadar olani aldim bana 5 ve sonrasini gönder demek istiyor . Seklimiz ,



 

 

Author: Engin ATALAY
Date: 2.01.2013 18:38:20
View Count: 6251
 
 

COMMENTS
 
Resim Yüklenemedi
mahmut
12 Ocak 2014 21:59
Bu ve Go back N makaleler için tesekkür ederim. Açiklayici olmus.
 
 
Resim Yüklenemedi
Engin Atalay
11 Aralık 2020 22:36
Teşekkürler
 
 
 
 
 
 
 
 
 
 
 
 
WRITE COMMENT
 
 
Your Name :
 
 
 
E-mail :
 
 
 
Your Message :
 
 
 
 
 
 
 
This project : ASP.NET MVC , RAZOR, Entity Framework , CSS , HTML , JQUERY(2.0.2) , AJAX the C# side-tier architecture was developed with logic.
 
Yukarı Çık