2.1. Ağ Erişim Katmanı
Bu katman TCP/IP paketlerini fiziksel ağa bırakmak ve aynı zamanda fiziksel ağdan gelen paketleri
almakla görevlidir. OSI modelindeki Fiziksel katman ve Veri-Bağ katmanının karşılığıdır.
2.2. Ağ Katmanı
Bu katman adresleme, paketleme ve yönlendirme fonksiyonlarını yerine getirir. IP, ARP, ICMP ve
IGMP protokolleri, bu katmana ait çekirdek protokollerdir.
Internet Protocol (IP): Adres bilgilerini ve paket yönlendirme için bazı kontrol bilgilerini içerir.
RFC 791'de tanımlanmış olup en önemli internet protokolüdür. İki önemli görevi vardır: 1. Ağlar
arasında bağlantısız datagram dağıtımını yapmak, 2. Fregmantasyon ve veri katmanına yardımcı
olarak değişik MTU(maximum-transmission unit) değerleri ile datagramları yeniden oluşturmak. IP
paketinin başlık yapısı aşağıdaki gibi tanımlanmıştır:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| IHL |Type of Service| Total Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Identification |Flags| Fragment Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time to Live | Protocol | Header Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Version: Kullanılan internet başlığının
biçimini, versiyonunu gösterir.
IP Header Length (IHL): Datagram başlığının 32 bit olarak boyutunu gösterir. Doğru bir IP başlığı
için başlık boyutu en az 5 olmalı.
Type of Service: İstenilen hizmet kalitesi ile ilgili soyut parametreler sunar. Örneğin bazı ağlar,
önceliği destekler. Trafiğin bir kısmına öncelik verilebilir.
Total Length: Başlık ve veri bilgisi ile birlikte toplam datagram boyutunu gösterir. 16 bittir,
buradaki değer byte olarak gösterir. Yani IP paketi en fazla 64K boyutunda olabilir.
Identification: Gönderen tarafından yazılır. Datagram parçalarını biraraya getirmeye yardımcı olur.
Flags: Paketin parçalanabileceğini veya parçalanamayacağını gösterir.
Fragment Offset: Bu paketin datagram içerisinde nereye ait olduğunu tanımlar.
Time to Live: Sürekli azalan tam sayıdır. Paketin hangi noktada yok edileceğini belirtir. Paketin
sonsuza tek ağda kalmasına engel olur.
Protocol: IP'nin işi bittikten sonra paketi hangi üst protokol alacağını gösterir.
Header Checksum: IP başlığının bozulmadığına
emin olmak için tutulan değer
Source Address: Gönderen noktayı gösterir.
Destination Address: Alıcı noktayı gösterir.
Options: IP, güvenlik gibi değişik seçenekleri destekler.
Data: Üst katmana verilecek veriyi tutar.
2.3. Taşıma Katmanı
Bu katman transparan bir şekilde verinin hosttan hosta taşınmasını sağlar. Akış kontrolünü ve hata
düzeltmeyi sağlar. Veri transferinin bittiğinden emin olur. TCP ve UDP protkolleri bu katmana
aittir. Ağ katmanı bağlantı yönelimli (connection oriented) bağlantı sağlamaz. Taşıma katmanı bunu
sağlar. Ağ katmanı ulaşan paketlerin, gönderildiği sırada ulaştığını da garanti etmez. Taşıma
katmanı her paketi numaralandırarak bunu basitçe çözer. Hata oluştuğu durumda paketi yeniden
ister. Böylece oluşabilecek hataların önüne kesilir.
Transmission Control Protocol (TCP): TCP, IP ortamında uçtan uca güvenli haberleşme sunan
bağlantı yönelimli(connection oriented) bir protokoldür. RFC 793'de tanımlanmıştır. Uygulama
katmanının hemen altında bulunur. Aynı zamanda süreçler arası haberleşme(interprocess
communication) prokolüdür. İki süreç arasında sanal bir devre oluşturur. Telnet, TCP kullanan
popüler uygulamalardan birisidir.
TCP, zarar görmüş, kaybolmuş veya sırası bozulmuş veriyi kurtarabilir. Aktarılan her sekizlik için
sıra numarası tutar ve alıcı noktadan olumlu ACK(Acknowledge-aldığını bildirmek) bekler. Eğer
ACK, bir zamanaşımı(timeout) süresi içerisinde gelmezse veri yeniden aktarılır. Alıcı taraf verileri
sıralı almamış veya geciken ACK'lerden dolayı birden fazla almış olabilir. TCP bunları düzeltir. Her
bir segmente bir kontrol toplamı(checksum) eklenerek alıcı tarafın aldığı verinin doğru olup
olmadığını denetlemesi sağlanır. TCP'nin diğer protokoller ile ilişkisi:
+------+ +-----+ +-----+ +-----+
|Telnet| | FTP | |Voice| ... | | Uygulama Seviyesi
+------+ +-----+ +-----+ +-----+
| | | |
+-----+ +-----+ +-----+
| TCP | | RTP | ... | | Host Seviyesi
+-----+ +-----+ +-----+
| | |
+-------------------------------+
| Internet Protocol & ICMP | Ağ Geçidi Seviyesi
+-------------------------------+
|
+---------------------------+
| Local Network Protocol | Ağ Seviyesi
+---------------------------+