You are on page 1of 17

TCP ve UDP

Port
Adreslemesi
• TCP veya UDP kullanılarak mesaj iletildiğinde, istenen protokol ve hizmetler bir port numarası tarafından tanımlanır.
• Host tarafından gönderilen her mesaj kaynak ve hedef port içerir.

• Hedef Port
İstemci, hedef sunucusuna hangi hizmetin istendiğini söylemek için segmente hedef port numarası yerleştirir. Örneğin
istemci hedef portta port 80'i belirttiğinde, mesajı alan sunucu web hizmetlerinin istendiği bilir.
Bir sunucu eşzamanlı olarak birden fazla hizmet sağlayabilir. Örneğin sunucu, port 80 üzerinde web hizmetleri sunarken
aynı zamanda port 21 üzerinde FTP bağlantısı kurulumu sunabilir.
• Kaynak Port
Kaynak port numarası, iki cihaz arasındaki sohbeti tanımlamak için gönderen cihaz tarafından rastgele oluşturulur. Bu
birden çok sohbetin aynı anda gerçekleşmesini sağlar. Diğer bir ifadeyle, cihaz web sunucusuna aynı anda birden çok
HTTP hizmet istemi gönderebilir. Ayrı sohbetler kaynak portlara bağlı olarak takip edilir.

• Kaynak ve hedef portlar segment içine yerleştirilir. Segmentler daha sonra IP paketi içinde kapsüllenir. IP paketi
kaynak ve hedefin IP adresini içerir. Kaynak ve hedef IP adreslerinin kombinasyonu ve kaynak ve hedef port
numaraları soket olarak bilinir. Soket, istemci tarafından talep edilen sunucuyu ve hizmeti tanımlamak için kullanılır.
Her gün binlerce host milyonlarca farklı sunucu ile iletişime geçmektedir. Bu iletişimler soketler tarafından
tanımlanmaktadır.
• Port numaralarını Internet Assigned Numbers Authority (IANA) atar. IANA çeşitli adresleme standartlarını
atamakla sorumlu bir standartlar kuruluşudur.

• İyi Bilinen Portlar (0'dan 1023'e kadar Numaralar): Bu numaralar hizmet ve uygulamalar için ayrılmıştır. Bu
port numaraları HTTP (web sunucusu), İnternet Mesaj Erişim Protokolü (IMAP)/Basit Posta Aktarım Protokolü
(SMTP) (e-posta sunucusu) ve Telnet gibi yaygın kullanılan uygulamalar tarafından kullanılırlar.
• Kayıtlı Portlar (1024'ten 49151'e kadar Numaralar): Bu port numaraları kullanıcı işlemleri veya
uygulamalarına ayrılmıştır. Bunlar, iyi bilinen port numarasını alacak ortak kullanılan uygulamalardan ziyade
esas olarak kullanıcının yüklemeyi seçtiği tekil uygulamalardır. Bu portlar, sunucu kaynağı için
kullanılmadıklarında bir istemci tarafından dinamik şekilde kaynak portu olarak seçilebilir.
• Dinamik veya Özel Portlar (49152'den 65535'e kadar Numaralar): Kısa ömürlü portlar olarak da bilinen bu
portlar, genellikle istemci hizmete bağlantı başlattığında istemci uygulamalarına dinamik olarak atanır.
İstemci iyi bilinen portu sunucuda istenen hizmeti tanımlamak ve hizmete bağlanmak için kullanırken,
dinamik port en sık olarak iletişim sırasında istemci uygulamasını tanımlamak için kullanılır. İstemcinin
hizmete dinamik veya özel port kullanarak bağlanması yaygın değildir (ancak bazı eşler arası (peer-to-peer)
dosya paylaşım programları bu portları kullanmaktadır).
TCP İletişimi
TCP İletişimi
 TCP ve UDP arasındaki ana ayrım
güvenilirliktir.

 TCP iletişiminin güvenilirliği bağlantı


yönelimli oturumların kullanımıyla elde
edilir.

 TCP kullanan host diğer bir hosta veri


göndermeden önce, TCP hedefle bağlantı
oluşturmak için bir işlem başlatır. Bu durum
bağlantısı, hostlar arasındaki oturumu veya
iletişim akışını izleme olanağı tanır. Böylece
her bir hostun iletişim akışının farkında
olması ve akış için hazırlanması sağlanır.
• İki host TCP kullanarak iletişim kurduğunda, veri
değişimi gerçekleşmeden önce bağlantı kurulur.
• İletişim tamamlandıktan sonra, oturumlar kapatılır ve
bağlantı sonlandırılır.
• Bağlantı ve oturum mekanizmaları TCP'nin güvenilirlik
TCP işlevini sağlar.

Bağlantısı • Üç yollu tokalaşma:

Kurma ve • Hedef cihazın ağda olduğunu belirler.


• Hedef cihazın etkin bir hizmete sahip olduğunu ve
Sonlandırma işlemi başlatan istemcinin oturum için kullanmak
istediği hedef port numarasında istek kabul
ettiğini doğrular.
• Hedef cihazı, kaynak istemcinin bu port
numarasında iletişim oturumu kurmak istediği
konusunda bilgilendirir.
• TCP bağlantı kurulumundaki üç adım aşağıdaki gibidir:
• 1. Adım İşlemi başlatan istemci, sunucu ile istemci-sunucu iletişimi kurma talebinde bulunur.
• 2. Adım Sunucu, istemciden sunucuya iletişim oturumunu onaylar ve sunucudan istemciye iletişim oturumu
talep eder.
• 3. Adım İşlemi başlatan istemci, sunucudan istemciye iletişim oturumunu onaylar.
TCP Bağlantısı Sonlandırma

• 1. Adım: İstemcinin akışta gönderecek verisi


kalmadığında, FIN işareti ayarlanmış bir segment
gönderir.
• 2. Adım: Sunucu, istemciden sunucuya olan
oturumu sonlandırmaya yönelik FIN'in alınmasını
onaylamak için bir ACK gönderir.
• 3. Adım: Sunucu, sunucudan istemciye olan
oturumu sonlandırmak için istemciye bir FIN
gönderir.
• 4. Adım: İstemci, sunucudan gelen FIN'i
onaylamak için ACK ile yanıt verir.
Segmentlerin Alınmasını Onaylama
• TCP'nin işlevlerinden biri, her segmentin hedefine ulaştığından emin olmaktır. Hedef hosttaki TCP hizmetleri,
kaynak uygulamadan aldığı veriyi onaylar.
• İletilen segmentlerdeki veri baytlarının alınmasını onaylamak için sıra (SEQ) numarası ve onay (ACK) numarası
birlikte kullanılır.
• SEQ numarası, geçerli segmentteki baytlar dahil bu oturumda iletilmiş baytların görece sayısını gösterir. TCP,
alıcının almayı beklediği bir sonraki baytı belirtmek için, kaynağa geri gönderilen ACK numarasını kullanır.
Buna beklentiye dayalı onay adı verilir.
• Kaynak, hedefin bu veri akışında bulunan ve ACK numarasıyla belirtilen bayta kadar olan (ACK numarasıyla
belirtilen bayt hariç) tüm baytları aldığı konusunda bilgilendirilir. Gönderen hostun, ACK numarasına eşit sıra
numarası kullanan bir segment göndermesi beklenir.
• SEQ ve ACK numaraları iki yönde de değişilmektedir.
ÖRNEK
soldaki host sağdakine veri
göndermektedir.
Bu oturum için 10 baytlık veri
içeren bir segment ve başlıkta
1'e eşit bir sıra numarası
gönderir.
Transport Layer: 3-28
Örnek
• Host A ve Host B, TCP bağlantısı ile • A'dan B'ye giden ikinci segmentte
haberleşiyor. • sequence numarası ?
• Host B, A'dan gelen ilk 126 byte'ı • kaynak port numarası ?
almış durumda. • hedef port numarası ?
• Host A peşpeşe iki segment
gönderiyor
 Ilk segmentte
• sequence numarası 127
• kaynak port numarası 302
• hedef port numarası 80
 İlk segmentte 80 byte,
ikinci segmentte 40 bytelık veri var.
 Host B, Host A'dan
segment aldıkça acknowledgment
gönderiyor
Transport Layer: 3-29
Örnek
• Host A ve Host B, TCP bağlantısı ile • A'dan B'ye giden ikinci segmentte
haberleşiyor. • sequence numarası 207
• Host B, A'dan gelen ilk 126 byte'ı • kaynak port numarası 302
almış durumda. • hedef port numarası 80
• Host A peşpeşe iki segment
gönderiyor
 Ilk segmentte
• sequence numarası 127
• kaynak port numarası 302
• hedef port numarası 80
 İlk segmentte 80 byte,
ikinci segmentte 40 bytelık veri var.
 Host B, Host A'dan
segment aldıkça acknowledgment
gönderiyor
Transport Layer: 3-30

You might also like