İNTERNET 20 Temmuz 2018
153b OKUNMA     1220 PAYLAŞIM

İnternete Nasıl Bağlandığımızı Çözemeyenler İçin Konunun Sade Bir Özeti

İnternet nedir? İnternete nasıl giriyoruz? Bağlandığımız şey tam olarak nedir? Nedir bu ağlar, http'ler? Bunlar ve bunlara benzer pek çok sorunun cevabını içeriğimizde bulabilirsiniz.


internet, temel olarak dev bir bilgisayar ağıdır

ilk olarak 1969'da amerikan savunma ileri araştırma projeleri ajansı arpa -ki şimdilerde darpa oldu- tarafından birkaç üniversite arasında "geniş bant" olarak kuruldu. kurulan ağı şöyle düşünebiliriz: pentagon ile bazı şehirler arasında, sadece bilgisayardan bilgisayara bir bağlantı. hatta lojik haritası şurada mevcut:


peki arpanet neden kuruldu? 

stabil ve sürekli bir bağlantı mevcudiyetini sağlamak için. kullanıcıdan kullanıcıya her türlü iletişimi sağlayan, yapılan hesaplamaların/bilimsel çalışmaların/proje ve bilgilerin bilgisayar ortamında gönderilip alınabilmesi, ortak çalışmaların yürütülebilmesi için.

arpanet kurulmadan önce yapılan çalışmalar elbette vardı; paket değişimi ile çalışan küçük ağlarda teoride ve belki pratikte kullanılıyordu ancak dedicated (sadece ağ için seçilmiş iki bilgisayar arasında kullanılan) bir hattın varlığı zorunluydu. yani -örneğin- google.com'a bağlanmak için sizin bilgisayarınızdan google ana sunucusuna özel bir hat olmalıydı. şimdi dünya üzerindeki sunucu ve bilgisayar sayısını düşünün. bunun pratikte uygulanabilir bir fikir olmadığını görebiliyorsunuz değil mi?

böylesine büyük bir ağı (o zaman ölçeğinde) kuracak olan mühendislerin önündeki en büyük problem, sıradan telefon hattıyla birbirine bağlı olan onlarca bilgisayarı birbirine bağladıklarında, hattı gerektiği zaman kullanıp gerektiği zaman bırakabilecek; aynı zamanda hangi bilgisayara gideceğini bilecek bir protokolün eksikliğiydi. elbette cefakar elektrik-elektronik mühendisleri ve bilim insanları bu soruna "babana gel" yaklaşımıyla saldırıp muhteşem bir çözüm buldular: tcp/ip. elbette o zamanlar osi gibi protokoller teoride mevcuttu, fakat tcp/ip'nin kolay uygulanabilirliğine sahip değildi kendileri.


peki nedir şimdi de kullanıyor olduğumuz bu tcp/ip? 

şudur: diyelim ki farklı şehirlerde on bilgisayarınız var ve bunları bir ağ ile birbirlerine bağlamak istiyorsunuz. kabloları çektiniz, bilgisayarları açtınız. ne güzel yaptınız. mesela ben, ankara'daki bilgisayarımla, o on bilgisayarlık ağ içinden kars'taki bilgisayara nasıl ulaşacağım? ona nasıl bir dosya göndereceğim?

işte tcp/ip (transmission control protocol/internet protocol) bu işi yapan bir protokol yığınıdır. içinde barındırdığı -hemen bakıyorum- dört katmanda çeşitli başka protokollerin ortak çalışmasıyla vuku bulur. şimdi o katmanların içlerinde ne yapıldığını anlatmaya gerek yok; fakat basitçe (çok basitçe) şöyle bahsedebilirim: mesela google'dan "sevimli kedi resimleri" yazıp enter'a bastınız. öncelikle şunu bilmeniz gerekiyor. internet servis sağlayıcınız (türk telekom, uydunet, superonline vs.) sizin evinizin bulunduğu bölgeye belirli ip numaraları atar. eğer statik ip sahibi bir kullanıcı değilseniz -ki sürekli internete bağlı olmaz zorunda değilseniz- ya da internet aboneliği alırken "ben pahalısından istiyorum aga, ne işe yaradığını bilmesem de" demediyseniz statik ip'niz yoktur. dolayısıyla servis sağlayıcının atadığı ip adreslerinden, modeminiz -bilgisayarınız- aktive olduğu anda uygun olanı size atar. buna dinamik ip denir.

dediğim gibi, işten çıktınız ve eve geldiniz. canınız fena halde sevimli kedi fotoğrafı bakmak istiyor. olabilir. yani. neyse, açtınız bilgisayarınız, internete bağlandınız. ip adresiniz aldınız. google.com'a "sevimli kedi resimleri" yazıp bastınız enter'a. siz o enter'a bastığınız anda bilgisayarınız bir veri paketi hazırlıyor. tcp protokolü bu verinin sağına soluna bakıyor, eksik ya da kayıp kontrolü yapıyor. ki tcp'nin en önemli özelliği data kayıplarına karşı yüksek etkiye sahip olmasıdır. yolun ortasında kayıp/kaçak olursa, veride herhangi bir arıza meydana gelirse tcp bunu algılayarak "hacı şunu bir daha göndersene" der muhatap olduğu bilgisayar/sunucuya.


sorgunuzu içeren veri paketi hazırlanırken en önemli sorun "soruyoruz da nereye soruyoruz hocam?" problemidir. yani siz bir veri istiyorsunuz, fakat nereden istiyorsunuz?

işte burada devreye internetin esas çalışma prensiplerinden bir diğeri olan http protokolü ve dns giriyor. 80'li yılların sonunda, ağ işi iyice gemi azıya aldığında bir cern çalışanı abimiz, "özel ağlar tamam da, herkesin kullanabileceği dünya çapında bir ağ yapsak nasıl olur acaba?" diye düşünerekten ilk internet sitesi kodlama dili olan html'yi geliştirdi. buradaki amacı "açık duran bilgisayarlar üzerinde siteler oluşturarak onlar üzerinde veri paylaşımında bulunmak" idi. sunucu mantığına hoş geldiniz. mesela ekşi sözlük. ne kadar sunucu kapasitesine/bant genişliğine haiz bilmiyorum, fakat şöyle düşünelim: burada yazılmış olan her karakter, sunucular üzerinde saklanıyor. siz bir başlığa girip "ne yazmış bu liseliler?" diye sorgularken sizin gram haberiniz yokken tcp/ip ve http cefakarları devreye girerek istediğiniz datayı bilgisayarınıza çeker. peki ekşi sözlük'ün ip adresini nereden biliyor bilgisayarınız? aslında bilmiyor. siz arama çubuğuna eksisozluk.com yazdığınız zaman bu alan adı veritabanı üzerinde aranıyor, bulunduğu anda ip adresi sizin makinanıza bildiriliyor ve tcp/ip protokolü sayesinde nereye gideceğinizi anlıyorsunuz. sonra http devreye girerek size ilgili sayfayı gösteriyor. ergenler bilmeyebilir, internetin yavaş olduğu zamanlarda siz arama çubuğuna eksisozluk.com yazdığınızda sol altta, başlık çubuğunun hemen üzerinde yazılar çıkar idi. sırasıyla şöyle: "www.eksisozluk.com aranıyor" (burada dns veritabanından sözlüğün ip adresini arıyor) "192.168.1.1 -örnek- adresine bağlanıyor" (ip'yi buldu, istek gönderdi) "www.eksisozluk.com bekleniyor" handshake (el sıkışma) için onay bekliyor. gibi gibi.

bazen ekşisözlük çöküyor ya hani? sunuculardan kaynaklanan bir hatadan olur o da işte. belki memleketin tüm elektrikleri kesilmiş, tüm ups'lerin enerjisi tükenmiş, tüm jeneratörlerin mazotu bitmiş olabilir. işte bu ahval ve şerait içinde ekşi sözlük çöker. çünkü saklandığı sunucular kapalıdır. kapalı bir bilgisayardan görüntü alamazsınız değil mi? evet.

kedi resimlerine de böyle bakıyorsunuz işte. hazırlanan sorgu paketiniz google'ın dilediği sunucusuna yönlendiriliyor. ha, bu arada sizin tcp/ip paketinizin içine (dns yardımıyla) destinasyon (nereye gidecek la bu paket) ve orijin (nereden geliyor la bu paket) dataları eklenir. yani siz kedi resimleri isterken, istediğiniz paketin içine kendi adresinizi yazıyorsunuz. "hacım bak cevabı buraya gönder he mi? öperim gözlerinden. yengeye selam." dercesine. iadeli taahhütlü yani. eğer cevap veremiyorsa sunucu, onu da görürsünüz zaten. (bkz: 404 not found)


peki hükümetimiz sevimli kedi resimlerini yasakladı. nasıl oluyor ya o? 

şöyle oluyor: btk ilgili sitenin domain name system'deki ismine yasak çekiyor. siz arama çubuğuna www.sevimlikediler.com yazdığınızda, hükümet de oraya dns ban çektiyse, veritabanındaki isim/ip karşılık araması sonucu olarak ilgili mahkeme/btk kararını görüyorsunuz. ama yine de çok istiyorsunuz sevimli kedilere bakmayı. yanıyorsunuz kedi diye. hehe. o zaman vpn (sanal özel ağ) kullanma zamanınız geldi de geçiyor demektir. nedir bu vpn? şudur: ülkenizde kedilere bakmak yasaksa, siz hotspot, tunnel bear gibi özel programlar kullanırsınız. bu özel programlar aktif oldukları sürece sizden çıkan tüm paketleri özel bir ağa yönlendirirler. bu ağ yurt dışında olur. mesela ingiltere. sizin çıkan verileriniz ilk olarak ingiltere'deki bir sunucuya iletildiğinden, çıkışınız da oradan yapılmış gibi görünür. dolayısıyla dns (isim) aramasını da oradan yapmış olursunuz, orada kedilere bakmak yasak olmadığı için gecelerden sabahlara boğuşan kedileri izleyebilirsiniz.

buralara kadar her şey tamam. peki, sunucular, ülkeler ve hatta kıtalar arasındaki bu bağlantı nasıl sağlanıyor?

çok zor değil. diyeceğim de inanmayın. esas zor olan bu altyapının kurulması zaten. kelimeler kifayetsiz kaldığı için size dünyanın fiber optik haritasıyla baş başa bırakıyorum:


evet. denizlerin altında fersahlarca kablo var. evet. onların hepsi fiber-optik. onları nasıl mı döşüyorlar? gemiyle. baya, bildiğin gemiden kabloyu salarak gidiyorlar. peki nasıl iletişiyoruz? burası karışık işte. lazerle. fiber-optik kablo varsa ortamda, biliniz ki uçlarında lazerler vardır. bu lazerler, ekseri -en azından o zaman öyleydi- manchester code kullanarak sizin istediğiniz verileri 1 ve 0'lar halinde, bitler olarak kıtalararası gönderirler. yani siz kedi resmi bakacağım derken lazerler kullanılıyor hayvan herifler. az bakın biraz. eheh. elbette bu işin uydu iletişimi kısmı da var, fakat hem hiç bilmiyorum, hem de -duyduğum kadarıyla- feci karışık. o yüzden pas geçiyorum.

bu denizler altında fersahlarca giden kabloların başına bir alay iş geliyor. balıklar kemiriyor mesela. (şaka değil) o durumlarda uçtaki lazerlerden ping -ışık- gönderiyorlar, ışık hasarın olduğu noktadan kırılıp geri geliyor. ışığın geri gelme süresinden (mesela 1000 km'lik mesafede arıza olursa ışığın dönüş süresi yaklaşık olarak saniyenin binde altısı?) mesafeyi bulup o noktaya müdahale ediyorlar. şaka gibi değil mi? değil. insanlar uğraşıyor bununla. hepsi siz kedilerin boğuşmasını izleyebilesiniz diye. sinirlendim bak. ahah.

elbette hangi data kime gidecek, girişimle gönderilen ışıklar nasıl ayrılacak? çok sıkıntılı işler bunlar. mach-zehnder interferometer diye bir alet var misalen. gelen birbirine geçmiş lazer ışınlarını faz farkına dayanarak ayıran. aynı anda terabayt terabayt veri akıyor oradan. kolay mı?

bu lazerlerin kapasitesini artırmak için güçlerini artırmak gerekiyor mesela. örneğin 10 terabit/sn kapasitesinde bir lazeriniz var; bunun kapasitesini iki katına çıkarmak istiyorsunuz, kablonuzun maksimum bant genişliği de bu artırıma cevaz veriyor. bunu yapabilmek için lazerinizin gücünü doğrudan iki katına çıkarıyorsunuz. yani oradaki lazeri yerinden çıkarıp, oraya iki katı gücünde yeni bir lazer koyuyorsunuz. sonra da sadece soğutmayı sağlayabilmek için oraya nükleer reaktör... şaka şaka. ama soğutma fena bela bir iş. amazon, facebook neden kutup dairesinin içine sunucu çiftlikleri kuruyor zannediyorsunuz?

not: kedinin neyi temsil ettiğini anlamayanlar olabilir. kedidir kedi.

Dünyadaki İnternetin %99'unu Karşılayan Retro Mucize: Okyanus Altı İletişim Kabloları