İnternet Nasıl Çalışır?

Hasan Erfenek
5 min readDec 30, 2020

--

İnternet, birbiriyle iletişim halindeki bilgisayar ağına verilen addır.

İnternetin tarihi biraz belirsiz. 1960’larda ABD Ordusu tarafından finanse edilen bir araştırma projesi olarak başladı ve daha sonra birçok devlet üniversitesinin ve özel şirketin desteğiyle 1980’lerde kamu altyapısına dönüştü. İnterneti destekleyen çeşitli teknolojiler zamanla gelişti, ancak çalışma şekli o kadar değişmedi: İnternet bilgisayarları birbirine bağlamanın ve ne olursa olsun, bağlantıda kalmanın bir yolunu bulan bir yoldur.
MDN Web Docs

Basit Ağ

İki bilgisayarın iletişim kurması gerektiğinde, fiziksel olarak (genellikle bir Ethernet kablosuyla) veya kablosuz olarak (örneğin WiFi veya Bluetooth sistemleriyle) bağlamanız gerekir.

Bu ağa 2 bilgisayar yerine 10 bilgisayar bağladığımızda aşağıdaki gibi bir ağ oluşur. Her bilgisayardan diğer bilgisayarlara bağlantı kurulur. Toplam 45 adet kablo kullanmamız gerekir.

Bu ağ şekilde görüldüğü üzere hem karmaşık hem de çok maliyetlidir. Bu problemi çözmek için router adını verdiğimiz özel bilgisayarlar kullanırız. Router’ın tek görevi üzerine gelen mesajı gerekli yere yönlendirmektir. Router ile ağın yeni hali aşağıdaki gibi olmaktadır.

Örneğin A bilgisayarından D bilgisayarına mesaj göndermek istediğimizde mesaj A’dan router’a iletilir ve router bu mesajı D bilgisayarına yönlendirir.

Ağların Ağı

Peki internetteki üstteki gibi sadece tek bir router’ın olduğu bir ağdan mı oluşmaktadır? Tabi ki hayır. Üstte belirtildiği üzere router’lar kendilerine gelen mesajı ilgili yere iletmek üzere özelleşmiş bilgisayarlardır. En başta 2 bilgisayarı birbirine bağladığımız gibi router’ları da birbirine bağlayabiliriz.

Bilgisayarları router’lara, ardından router’ları router’lara bağlayarak sayısız bilgisayarı birbirine bağlayabiliriz.

Son haliyle bu ağ internetin genel görünümüne oldukça benzedi ancak hala tam olarak interneti temsil etmiyor. Biz burada bilgisayarları kablolu veya kablosuz olarak birbirine router aracılığıyla bağladık. Peki başka mahallede, başka şehirde, başka ülkede yaşayan birine bu ağı eklemek için onun evinden kendi evinize kablo mu çekmeniz lazım? (Bildiğiniz üzere) Tabi ki hayır. Bu kablo altyapısı zaten telefon kablolarıyla evinize kadar döşenmiş oluyor. Bu kablo ağları sayesinde dünyanın öbür ucundaki kişilerle bile aynı ağa katılabilmiş oluyoruz. Tabi bu telefon hattından gelen sinyalleri internet olarak kullanabilmeniz için özel bir cihaza daha ihiyacımız var: Modem. Modemler internet ağına veri gönderebilmenizi ve gelen verileri alabilmenizi sağlar.

Şimdi bir telefon ağına bağlandık. Yapmamız gereken çok uzakta başka network’te bulunan bir bilgisayara mesaj göndermek. Bunu yapmamız için bir ISP’ye (Internet Service Provider) ihtiyacımız var. ISP’ler çok geniş router ağına sahip özel şirketlerdir. Türkiye’de en çok bilinenlere örnek olarak Türk Telekom, Vodafone, Kablonet, Türkcell verilebilir. Bu ISP’ler hem geniş bir ağa sahiptir, hem de diğer ISP’lerin ağlarıyla birbirine bağlıdır. Tüm bu ağların birbirine bağlanmasıyla internet ağı oluşmuş olur.

Son görselde ISP’ler ve router’lar aracılığıyla birbirine bağlı bilgisayar ağının yani internetin genel şemasını görüyorsunuz. Burada şu soru aklınıza gelebilir: “Benim bilgisayarım bir router’a bağlı değil direk olarak bir modeme bağlı, bu nasıl oluyor?” Günümüzde kullandığımız modemlerin çoğu hem modem hem router görevi görebilmektedir. Bu yüzden Ayrıca bir router cihazı alıp bağlamamıza gerek kalmıyor. Router görevi görebilen bir modeme bağlı her cihazla aslında local bir network oluşturmuş oluyoruz yani. Dolayısıyla modeme bağlı cihazlar arasında (internete bağlı olmasak bile) veri alışverişi yapabilmemiz mümkündür.

Peki internete bağlandık, karşı tarafa nasıl mesaj gönderiyoruz? Kafamıza göre istediğimiz gibi gönderebilir miyiz? Hayır. Bunun için belirlenmiş Internet Protocol (IP), the Transport Control Protocol (TCP) gibi protokoller vardır.

Protocol nedir?

Protocol, bilgisayarların bir ağ üzerinden birbirleriyle nasıl iletişim kurmaları gerektiğini belirleyen bir dizi kuraldır. Örneğin TCP (Transport Control Protocol) ile gönderilen bir mesaj karşı tarafa ulaşmış mı kontrol edilmesi gerektiğini sağlar. Bu sayede mesaj bir şekilde ağda kaybolduysa tekrar gönderilir. Ya da IP (Internet Protocol) sayesinde mesajların hangi adrese gönderileceği belirlenmişir.
İnternette kullanılan bir sürü protocol vardır. Bunlara UDP, TCP, HTTP, IP örnek olarak verilebilir. Bunlar ayrı yazıların konusu. O yüzden şimdilik internete kafamıza göre veri gönderemeyeceğimizi, bir dizi kurallara uymamız gerekiğini bilmemiz yeterli. Bu kurallara da protocol deniyor.

Packet nedir?

Üstteki yazılarda bir bilgisayardan diğerine “mesaj” gönderildiğini söylemiştim. Örneğin bir bilgisayardan diğer bilgisayara “Merhaba” yazısını göndermek istiyorsak bu mesajı olduğu gibi gönderemeyiz. Bu mesajı packet adındaki küçük parçalara ayırmamız gerekir. Bu packet’lar karşı tarafa gönderilir ve karşı taraftaki bilgisayarda birleştirilir. Böylece göndermek istediğimiz mesaj ulaşmış olur. Bu parçalama ve birleştirme işlemi için kurallar Internet Protocol’e göre yapılır.

Packet’lar gitmesi gereken yolu nasıl bulur?

Daha önceki yazılarda yönlendirme işlemini router’ların yaptığını söylemiştim. Peki router’lar bu packet’ları gerekli yerlere nasıl yönlendiriyor?
Her packet gitmesi gereken adresin IP adresini içerisinde barındırır. Örnek bir IP adresi olarak: 129.42.13.69 adresini ele alalım. Burada ilk 2 sayı hangi ağa gidilmesi gerektiğini, son 2 rakam da gidecek olan bilgisayarın adresini tanımlar. Bu sayede router’ların inernete bağlı olan milyarlarca IP adresini bilmesine gerek yoktur. Packet’ın hangi ağa gitmesi gerekiğini bilmesi yeterlidir. Bu da dünya genelindeki yaklaşık 1 milyon ağ adresini bilmesi anlamına geliyor. (Router için 1 milyon adresi bilmek çok zor bir işlem değildir )
Peki diyelim ki router kendisine gelen paketteki ağ adresini bilmiyor bu durumda ne olur? Router kendisine bağlı olan diğer router’lara bu adresi sorar. diğer router’lardan birisi bu adresi biliyorsa packet’ı ona yönlendirir. Bundan sonraki gelecek packet’lar için de bu ağ adresini kendi veritabanına ekler.

Biz internete bir mesaj gönderirken veya mesaj alırken (google.com’a girmek mesela) hiç IP adresi kullanmıyoruz. Bunun yerine google.com yazıyoruz ve otomatik giriyor, bu nasıl oluyor?
Her web sitesinin IP adresini ezberleyip bununla giriş yaptığımızı düşünün, hayat ne kadar zor olurdu. Bunun yerine onları daha kolay hafızada tutabileceğimiz domain name lere eşitliyoruz. Örneğin google.com bir domain name’dir. 172.217.22.14 bu IP adresi de googl.com’un IP adresidir. (Tarayıcınıza bu adresi yazıp gitmeye çalışın ) Buradaki örnekteki gibi internete bağlı her cihazın bir IP adresi vardır. Peki biz bilgisayara google.com (domain name) yazdığımızda neler olur? Öncelikle bilgisayar kendi cache’inde bu domain name’in IP adresi var mı buna bakar. Eğer bulamazsa ISP’nin sahip olduğu DNS’lere (Domain Name Server) google.com’u sorar. Eğer bu DNS’ler IP adresini biliyorsa bilgisayara IP adresini döner. Ve biz de aldığımız bu IP adresine istek atarız. Router’lar gerekli yere iletir vs. (Orada dönen senaryoyu biliyorsunuz artık) Eğer ISP’ye ait DNS’ler de bu domain name’i bilmiyorsa tüm dünyanın kullandığı ortak DNS’ler vardır. Buralara sorulur.

İnternet kısaca(!) bu şekilde çalışır. İnternet hakkında çok daha fazla anlatılacak şey var ancak bu yazının daha da uzamaması için burada genel konsepti anlattım. Umarım faydalı olmuştur.

referanslar:

https://developer.mozilla.org/tr/docs/Learn/Common_questions/How_does_the_Internet_work

https://medium.com/@User3141592/how-does-the-internet-work-edc2e22e7eb8

https://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm#:~:text=The%20information%20used%20to%20get,which%20IP%20addresses%20they%20us

--

--

Hasan Erfenek
Hasan Erfenek

No responses yet