10
3:TAŞIMA KATMANI 3-1 TCP Akış Kontrolü TCP bağlantısının alıcı tarafının bir alıcı bufferı var: Hız uygunluğu servisi: gönderme ve alıcının okuma hızının uygunluğundan emin olur Uygulama bufferdan okumada yavaş olabilir Gönderici çok fazla datayı çok hızlı göndererek alıcının bufferının taşmasına sebebiyet vermez Akış kontrolü

TCP Akış Kontrolü

  • Upload
    rowena

  • View
    36

  • Download
    2

Embed Size (px)

DESCRIPTION

TCP bağlantısının alıcı tarafının bir alıcı bufferı var :. Hız uygunluğu servisi : gönderme ve alıcının okuma hızının uygunluğundan emin olur. Akış kontrolü. TCP Akış Kontrolü. Gönderici çok fazla datayı çok hızlı göndererek alıcının bufferının taşmasına sebebiyet vermez. - PowerPoint PPT Presentation

Citation preview

Page 1: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-1

TCP Akış Kontrolü

TCP bağlantısının alıcı tarafının bir alıcı bufferı var:

Hız uygunluğu servisi: gönderme ve alıcının okuma hızının uygunluğundan emin olur

Uygulama bufferdan okumada yavaş olabilir

Gönderici çok fazla datayı çok hızlı göndererek

alıcının bufferının taşmasına sebebiyet

vermez

Akış kontrolü

Page 2: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-2

TCP Akış kontrolü: nasıl çalışıyor

(TCP’nin sıralı gelmeyen pakeleri attığını varsayalım)

Bufferda Yedek boşluk

Alıcı segmentlerine RcvWindow değeri koyarak yedek boşluğu bildirir

Gönderici ACKlenmemiş data miktarını RcvWindow ile sınırlar• Bu alıcı bufferının

taşmamasını garanti eder

Applet

Page 3: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-3

TCP Bağlantı Yönetimi

Hatırlayalım: TCP gönderici ve alıcısı veri segmentleri alıp vermeye başlamadan önce “bağlantı” oluştururlar

TCP değişkenlerini sıfırla:• sıra numaraları• buffer, akış kontrolü

bilgisi(e.g. RcvWindow) istemci: bağlantı isteğini

başlatır sunucu: istemci

tarafından bağlantı isteği alır

Üç Yönlü El Sıkışma:

1. adım: istemci host TCP SYN (senkronizasyon) segmentini sunucuya gönderir• İlk sıra numarasını belirtir• Veri gönderilmez

2.adım: sunucu host SYN mesajını alır, SYNACK segmenti ile cevap verir• sunucu buffer ayırır• Sunucu ilk sıra numarasını

belirtir3. adım: istemci SYNACK

mesajını alır, ACK segmenti ile cevap verir. Bu aşamada veride gönderilebilir.

Page 4: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-4

TCP Bağlantı Yönetimi

Bağlantıyı kapama:

1. Adım: istemci host sunucuya TCP FIN kontrol segmenti gönderir

2. Adım: sunucu FIN mesajını alır ve ACK ile cevap verir. Bağlantıyı kapatır ve FIN gönderir.

3. Adım: istemci FIN alır, ACK ile cevap verir.

• “beklemeye” girer

4. Adım: sunucu, ACK alır. Bağlantı kapatılır.

istemci

FIN

sunucu

ACK

ACK

FIN

kapat

kapat

kapandı

bekl

em

e

Page 5: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-5

Sıkışıklık Kontrolünün Esasları

Sıkışıklık: çok fazla kaynak ağın kaldırabileceğinden çok

fazla veriyi çok hızlı gönderiyor Akış kontrolünden farklı! sorunlar:

• kayıp paketler (yönlendiricilerde buffer taşması)

• Uzun gecikmeler (yönlendiricilerde kuyruklama)

Page 6: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-6

Sıkışıklığın sebepleri/maliyetleri: 1. senaryo

İki gönderici, iki alıcı

Bir yönlendirici, sonsuz buffer

Yeniden gönderme yok

Sıkışıklık durumunda uzun gecikmeler

maksimum başarılabilecek gönderim hızı

sınırsız paylaşılan çıkış link bufferları

Host Ain : orjinal data

Host B

out

Page 7: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-7

Sıkışıklığın sebepleri/maliyetleri: 2. senaryo

Bir yönlendirici, sonlu bufferlar Kayıp paket yeniden gönderiliyor

Paylaşılan sınırlı çıkış linki bufferları

Host A in : orjinal data

Host B

out

'in : orjinal data, ve yeniden gönderilen data

Page 8: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-8

Sıkışıklığın sebepleri/maliyetleri: 2. senaryo Her zaman:

“mükemmel” yeniden gönderim, yalnız kayıp:

Gecikmiş (kaybolmamış) paketlerin yeniden gönderimi i

öncekindenden daha büyük yapar

in

out

=

in

out

>

in

Sıkışıklığın maliyeti: Belli bir iletim oranı için daha fazla iş (yeniden gönderim) Gereksiz yeniden gönderimler: link aynı paketin birçok kopyasını taşır

R/2

R/2in

ou

tR/2

R/2in

ou

t

a. Sadece bufferda yer varken veri gönderiliyor

R/2

R/2in

ou

t

R/4

R/3

b. R/3 orijinal veriler R/6 tekrarlanan veri

b. R/4 orijinal veriler R/4 tekrarlanan veri

Page 9: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-9

Sıkışıklığın sebepleri/maliyetleri: 3. senaryo 4 gönderici Çok duraklı yollar zamanaşımı/yeniden gönder

in

Q: ve arttığında ne olur ?

in

Paylaşılan sınırlı çıkış linki bufferları

Host Ain : orjinal data

Host B

out

'in : orjinal data, ve yeniden gönderilen data

Page 10: TCP  Akış Kontrolü

3:TAŞIMA KATMANI 3-10

Sıkışıklığın sebepleri/maliyetleri: 3. senaryo

Sıkışıklığın diğer bir maliyeti: Paket atıldığında, yukarı link iletim kapasitesinin bir kısmı o

atılan paket için boşa harcanmıştır!

Host A

Host B

o

u

t