
Computer Science
Computer Networking
TCP/IP 5 Katmanlı Ağ Modeli
2026'da TCP/IP 5 Katmanlı Ağ Modeli: Her Geliştiricinin İnternetin Aslında Nasıl Çalıştığını Bilmesi Neden Gerekli?
Bir butona tıklarsınız. Veri 10.000 mil yol kat eder ve milisaniyeler içinde ulaşır. Sayfa yüklenir. Bu sihir değil = TCP/IP modelinin tam da tasarlandığı gibi çalışmasıdır. Bunu anlamıyorsanız, bozulduğunda hatayı da ayıklayamazsınız.

Üretim Bozulana Kadar Kimsenin Sormadığı Soru
API'niz yerelde sorunsuz çalışıyor. Staging'e dağıtıyorsunuz. Her şey çalışıyor. Production'a geçiyorsunuz. Bir anda istekler zaman aşımına uğruyor. Kullanıcılar aralıklı hatalar bildiriyor. Veritabanı bağlantısı sürekli kopuyor. Mobil uygulama sunucuya ulaşamıyor. Log'larda işe yarar bir şey görünmüyor.
Şu an "connection refused," "timeout exceeded," "network unreachable" gibi hatalara bakıyorsunuz = ama bunların ne anlama geldiğini tam bilmiyorsunuz. DNS sorunu mu, trafiği engelleyen bir firewall kuralı mı, yanlış yapılandırılmış bir load balancer mı, yoksa TCP handshake hatası mı bilmiyorsunuz. API yazan bir backend geliştiricisiniz, ama veriyi taşıyan ağı anlamıyorsunuz.
TCP/IP modelinin kapattığı boşluk tam olarak bu. Çünkü OSI katmanlarını sınav için ezberlemeniz gerekmiyor; production bozulduğunda = ve bozulacaktır = sorunun hangi katmanda olduğunu bilmeniz gerekiyor. Kablo mu? Routing mi? Firewall mı? Kodunuz mu?
TCP/IP modeli, verinin dizüstü bilgisayarınızdan dünyanın öbür ucundaki bir sunucuya nasıl gittiğini gösteren haritadır. Ve 2026'da, her uygulama bulutlar, bölgeler ve kıtalar arasında dağıtılmışken, o haritayı anlamak artık isteğe bağlı değil.
TCP/IP Modeli Aslında Nedir
TCP/IP modeli (Internet Protocol Suite olarak da bilinir), verinin ağlar arasında nasıl hareket ettiğini açıklayan kavramsal bir çerçevedir. Ağ sürecini, her birinin belirli bir sorumluluğu olan beş ayrı katmana böler. Veri gönderilirken katmanlardan aşağı iner, alınırken yukarı çıkar.
Bunu fiziksel mektup göndermeye benzetin:
- Mektubu yazarsınız (Application layer = göndermek istediğiniz veri)
- Zarf içine koyup adres yazarsınız (Transport layer = teslim detaylarını ekler)
- Posta servisi onu şehirler arasında yönlendirir (Network layer = yolu bulur)
- Kamyonlar ve uçaklar fiziksel olarak taşır (Data Link & Physical layers = gerçek hareket)
- Alıcı zarfı açar ve mektubu okur (ters süreç)
Her katman yalnızca üstündeki ve altındaki katmanlarla konuşur. Uygulama katmanı kablolarla ilgilenmez. Fiziksel katman HTTP ile ilgilenmez. Bu soyutlama, interneti ölçeklenebilir yapan şeydir.
Beş Katman, Alttan Üste
Katman 1: Fiziksel Katman = Kablolar ve Sinyaller
Ne yapar: Ham bitleri (0 ve 1) fiziksel bir ortam üzerinden iletir = bakır kablolar, fiber optik kablolar veya radyo dalgaları (Wi-Fi).
Gerçek dünya örnekleri:
- Ethernet kabloları (Cat5e, Cat6)
- Deniz altı internet kablolarındaki fiber optik hatlar
- Wi-Fi radyo sinyalleri (2.4 GHz, 5 GHz)
- Bluetooth
Temel kavramlar:
- Saniyedeki bit sayısı (bandwidth)
- Sinyal voltaj seviyeleri
- Kablo özellikleri
- Fiziksel bağlantı uçları (RJ45, USB-C, vb.)
Burada işler bozulduğunda: "İnternet bağlantısı yok." Kelimenin tam anlamıyla = kablo takılı değildir, Wi-Fi sinyali zayıftır ya da ağ kartı bozulmuştur.
Katman 2: Veri Bağlantı Katmanı = Sinyalleri Anlamlandırma
Ne yapar: Fiziksel sinyalleri veri çerçeveleri (frame) olarak yorumlamayı tanımlar. Aynı yerel ağdaki cihazlar arasındaki iletişimi de yönetir (örneğin dizüstü bilgisayarınızın router ile konuşması).
Temel protokol: Ethernet (kablolu ağlar için), Wi-Fi (kablosuz için)
Temel kavram: MAC adresleri (Media Access Control adresleri) = her ağ cihazı için benzersiz donanım kimlikleri. Örnek:
00:1A:2B:3C:4D:5EDizüstü bilgisayarınız veriyi router'a gönderirken, data link katmanı onu "MAC adresi A'dan MAC adresi B'ye" diyen bir frame içine sarar.
Gerçek dünya benzetmesi: Fiziksel katman yol ise, veri bağlantı katmanı o yolda tek bir mahalle içinde hareket eden teslimat kamyonudur.
Burada işler bozulduğunda: "Wi-Fi'ye bağlı ama internet yok." Fiziksel bağlantı çalışıyordur, ancak data link katmanında bir şey bozulmuştur (yanlış ağ, DHCP lease yok, switch yapılandırma hatası).
Katman 3: Ağ Katmanı = İnternet Üzerinde Yönlendirme
Ne yapar: Veriyi farklı ağlar arasında yönlendirir. İnterneti gerçekten "inter"connected yapan katmandır = verinin Hindistan'daki ev ağınızdan Kaliforniya'daki bir sunucuya gitmesini sağlar.
Temel protokol: IP (Internet Protocol) = hem IPv4 hem IPv6
Temel kavram: IP adresleri = internetteki cihazları tanımlayan mantıksal adresler. Örnek:
192.168.1.100 (özel IP) veya 8.8.8.8 (Google'ın genel DNS sunucusu)İnternetteki her cihazın bir IP adresi vardır. Router'lar bu adresleri kullanarak veri paketlerini (data chunks) kaynaktan hedefe doğru, birçok ağ üzerinden atlayarak iletir.
Gerçek dünya benzetmesi: Bir mektubu şehirler arasında yönlendiren posta servisi. Her postane (router) hedef adresi okur ve mektubu hedefe daha yakın olan bir sonraki postaneye yollar.
Burada işler bozulduğunda: "Host unreachable." Ağ katmanı hedefe giden bir rota bulamaz. Bu bir DNS sorunu, trafiği engelleyen firewall veya routing table yanlış yapılandırması olabilir.
Hata ayıklama araçları:
ping, traceroute, dig, nslookupKatman 4: Taşıma Katmanı = Güvenilir Teslimat
Ne yapar: Uçtan uca uygulama iletişimini yönetir. Ağ katmanı veriyi bir makineden diğerine taşırken, taşıma katmanı onun o makinedeki doğru uygulamaya ulaşmasını ve güvenilir, sıralı şekilde varmasını sağlar =
Temel protokoller:
TCP (Transmission Control Protocol) = Güvenilir, bağlantı odaklı. Verinin sıralı ve hatasız ulaştığını garanti eder. HTTP, HTTPS, SSH, e-posta için kullanılır.
UDP (User Datagram Protocol) = Güvenilmez, bağlantısız. Daha hızlıdır ama teslimi veya sıralamayı garanti etmez. Video akışı, VoIP, çevrim içi oyunlar, DNS sorguları için kullanılır.
Temel kavramlar:
Portlar = Makinedeki belirli uygulamaları tanımlayan numaralar. Örnek:
- Port 80 → HTTP
- Port 443 → HTTPS
- Port 22 → SSH
- Port 3306 → MySQL
- Port 5432 → PostgreSQL
https://example.com adresine eriştiğinizde, aslında example.com:443 adresine bağlanıyorsunuz (IP adresi + port).TCP handshake (üç yönlü el sıkışma):
- Client SYN gönderir (synchronize)
- Server SYN-ACK ile yanıt verir (synchronize-acknowledge)
- Client ACK gönderir (acknowledge)
Artık bağlantı kurulmuştur ve veri akabilir.
Gerçek dünya benzetmesi: TCP, takip ve teslim onayı olan kayıtlı posta gibidir. UDP ise bir şişedeki mesajı okyanusa atmak gibidir = belki ulaşır, belki ulaşmaz, ama hızlıdır.
Burada işler bozulduğunda: "Connection timeout," "Connection refused." Sunucu o portta dinlemiyordur, firewall engelliyordur veya TCP handshake başarısız olmuştur.
Hata ayıklama araçları:
telnet, nc (netcat), curl, nmapKatman 5: Uygulama Katmanı = Gerçekte Kullandığınız Protokoller
Ne yapar: Uygulamaların iletişim kurmak için kullandığı üst seviye protokolleri tanımlar. HTTP, HTTPS, FTP, SMTP, DNS, SSH ve diğer tüm uygulama-özel protokoller burada yer alır.
Temel protokoller:
HTTP/HTTPS = Web. Tarayıcınız bir sayfa ister, sunucu geri gönderir. Port 80 (HTTP) veya 443 (HTTPS).
DNS = Domain Name System. İnsan okunabilir alan adlarını (
google.com) IP adreslerine çevirir (142.250.185.78). Port 53.SMTP/IMAP/POP3 = E-posta. SMTP e-posta gönderir, IMAP ve POP3 e-postayı alır.
FTP/SFTP = Dosya aktarımı.
SSH = Uzaktaki sunuculara güvenli erişim için secure shell. Port 22.
WebSockets = Gerçek zamanlı çift yönlü iletişim. Sohbet uygulamaları, canlı panolar, çok oyunculu oyunlar için kullanılır.
Gerçek dünya benzetmesi: Uygulama katmanı, gönderici ve alıcı arasında konuşulan dildir. Alt katmanlar sadece teslim mekanizmasıdır = e-posta mı gönderiyorsunuz, video mu akıtıyorsunuz umurlarında değildir.
Burada işler bozulduğunda: "404 Not Found," "500 Internal Server Error," "SSL certificate invalid." Bunlar uygulama katmanı hatalarıdır = ağ sağlamdır ama HTTP ya da TLS seviyesinde bir şey bozulmuştur.
Hepsi Gerçekte Nasıl Birlikte Çalışır: Gerçek Bir Örnek
Tarayıcınıza
https://example.com yazıp Enter'a basarsınız. Her katmanda neler olur:Uygulama Katmanı (Katman 5):
- Tarayıcı bir HTTP GET isteği oluşturur:
GET / HTTP/1.1 - TLS/SSL el sıkışması bağlantıyı şifreler (HTTPS)
Taşıma Katmanı (Katman 4):
- TCP, HTTP isteğini bir segment içine sarar
- Kaynak portu (54321 gibi rastgele yüksek sayı) ve hedef portu (HTTPS için 443) ekler
- Üç yönlü el sıkışma ile sunucuyla TCP bağlantısı kurar
Ağ Katmanı (Katman 3):
- DNS sorgusu: tarayıcı "example.com'un IP adresi nedir?" diye sorar →
93.184.216.34döner - IP, TCP segmentini bir paket içine sarar
- Kaynak IP'nizi ve hedef IP'yi (
93.184.216.34) ekler - Router'lar paketi internet üzerinden, birçok ağ arasında atlatarak hedefe iletir
Veri Bağlantı Katmanı (Katman 2):
- Ethernet veya Wi-Fi, IP paketini bir frame içine sarar
- Kaynak MAC adresini (cihazınız) ve hedef MAC adresini (router'ınız) ekler
- Yerel ağınız üzerinden gönderilir
Fiziksel Katman (Katman 1):
- Frame, elektrik sinyallerine (Ethernet) veya radyo dalgalarına (Wi-Fi) dönüştürülür
- Fiziksel ortam üzerinden iletilir
Sunucu sinyalleri alır ve süreç tersine işler = fiziksel → veri bağlantı → ağ → taşıma → uygulama. Sunucu HTTP isteğini işler, bir yanıt üretir ve aynı katmanlardan aşağı geri gönderir.
Tarayıcınız yanıtı alır, HTML'i ayrıştırır, sayfayı işler. Milisaniyeler geçmiştir. Bir web sitesi görüyorsunuz.
Backend Geliştiricilerin Bunu Neden Bilmesi Gerekir
Şunu düşünebilirsiniz: "Ben sadece Express ile API yazıyorum. MAC adreslerini neden umursayayım?"
İşte nedeni.
Production sorunlarını ayıklama. Dağıtılmış uygulamanız veritabanına bağlanamıyorsa, bu bir DNS sorunu mu (network layer), port 5432'yi engelleyen bir firewall mı (transport layer), yoksa kodunuzda yanlış connection string mi (application layer)? Katmanları anlamadan teşhis koyamazsınız.
Performansı optimize etme. TCP'nin congestion control mekanizması, API'nizin büyük yanıtları ne kadar hızlı gönderebileceğini etkiler. Bu, ne zaman HTTP/2 (multiplexing), WebSocket (kalıcı bağlantılar) veya CDN kullanmanız gerektiğini anlamanıza yardımcı olur.
Uygulamalarınızı güvenceye alma. Firewall'lar birden çok katmanda çalışır. TLS, taşıma/uygulama sınırında çalışır. Modeli anlamak, güvenliği doğru yapılandırmanıza yardımcı olur.
Bulut altyapısıyla çalışma. AWS VPC'ler, subnet'ler, security group'lar, load balancer'lar = bunların hepsi ağ katmanı kavramlarıdır. Trafiğin nasıl yönlendirildiğini anlamadan cloud platformlarını etkili kullanamazsınız.
Bir Geliştirici Olarak Ağları Öğrenmek
Ağlar, Archi's Academy içinde ayrı bir ders olarak öğretilmez = çünkü bu, tek başına duran bir beceri değildir. API'leri deploy ettiğiniz, sunucuları yapılandırdığınız, bağlantı sorunlarını ayıkladığınız ve veritabanlarıyla ağlar üzerinden çalıştığınız Backend Development track içine işlenmiştir.
TCP/IP'yi anlamak, sınav için katman ezberlemek değildir.
curl ile bir endpoint'i test etmeyi, network loglarını okumayı, CORS yapılandırmayı, 504 Gateway Timeout'u çözmeyi, SSL sertifikalarıyla HTTPS kurmayı, uzaktaki bir veritabanına güvenli bağlanmayı bilmektir.Öğrenme tam da burada olur = bağlam içinde, ihtiyaç duyduğunuz anda.
Yaparak Öğren. Yaparak Kanıtla. İş Bul.
Ağlar, backend development veya bağlantı sorunlarını ayıklama hakkında sorularınız mı var? Archi's Academy ekibi yardımcı olmak için burada = istediğiniz zaman ulaşın.
Çarşamba, May 20, 2026
