Bilgisayar Ağlarının Temel İlkeleri
Bilgisayar dünyasında yeni teknolojileri daha iyi kavramanın yolu
çoğu zaman bu teknolojinin, teknolojiyi geliştiren şirketin tarihine
bakmaktan geçiyor. Teknolojiyi geliştirmekteki amaç neydi, nasıl bir
ürün ortaya kondu, piyasada ne kadar tutuldu ve devamında ne var soruları
netlikle cevaplanırsa teknolojiyi satın alırken ve uygularken yanlış
kararlar verilmesinin önüne geçilir.
İsterseniz bizde önce bilgisayar ağlarının tarihsel gelişimine bir
göz atalım.
Bilgisayar ağları nasıl doğdu
Bilgisayarların gerçek manada kullanılmaya başladığı 60'lı yıllarda,
bilgisayar dendiğinde akla gelebilecek tek şey büyük mainframe'lerdi.
İsmindeki haşmete rağmen, bu mainframe'ler bugün hepimizin masasında
duran kişisel bilgisayarlara göre çok daha yavaş çalışan makinalardı.
Sakın aklınıza bugünküne benzer bir bilgisayar getirmeyin, bu cihazlar
klavyesi ve monitörü olmayan, dev dosya dolapları gibi aletlerdi.
 |
Yanda Londra Bilim Müzesinde sergilenen bir mainframe'in
açıklama kartı var.
İş dünyasında kullanılan ilk bilgisayarlardan birisidir. Sınırlı
sayıda üretilen bu makinalardan birisi büyük bir sigorta şirketince
kullanıldı ve bu cihaz da 1984 yılında müzeye devredildi. |
 |
Günümüz bilgisayarlarından biraz!! farklı. |
 |
1950 yılında maden yorgunluğundan bir çok uçağın düşmesi sonucu, bu bilgisayarlardan
40 tanesi çok fazla matematiksel işlem gerektiren stres hesaplamarında
kullanıldı, aralarından Sidney Opera binasının da bulunduğu
bir çok bina ve köprünün yapımında bu bilgisayarlardan faydalanıldı.
1955 yılında, bilgisayarların üreticisi Ferranti şirketi, bilgisayarlardan
birini herkesin (daha çok bilim adamları ve matematikçiler tabii
ki) hizmetine sundu. Böylece elle yapılması yıllar sürebilecek
hesaplamalar gerektiren bilimsel veya teknik çalışmalar bu firmaya
getiriliyor, hesaplamalar bilgisayarda yapıldıktan sonra sonucu
kişiye teslim ediliyordu. |
 |
Monitör, klavye hak getire...
|
İlk başlarda klavye ve monitörü olmayan bu cihazlar bir veya daha
fazla operatör tarafından programlanıyor ve çalışmaları sağlanıyordu.
Bir süre sonra ekran ve klavyeler kullanılmaya başlandı. Bir mainframe'e
birden fazla klavye ve monitör bağlanılabiliyor aynı anda birden fazla
kişi bu makina üzerinde program yazabiliyordu. Böylece eskiden olduğu
gibi bu cihazları kullanmak için bugün git-yarın gel dönemi kapanmıştı.
Dikkat ederseniz program yazmaktan bahsettim, öyle hazır programı
alıp kullanmak yok, bir programa ihtiyacın varsa oturup yazıyordun.
Ancak bu sistemlere "ağ" diyemeyiz, çünkü bu klavye ve
monitörler sadece veri giriş-çıkış aygıtıydılar. Belki aptal terminal
terimini duymuşsunuzdur, işte kendi üzerlerinde CPU'su olmayan bu
cihazlar Dumb terminal-Aptal terminal olarak adladırılıyordu.
Zaman içinde mainframe'ler geliştiler, hard diskler kullanılmaya
başlandı. Kullanıcılar, mainframe üzerindeki veriye erişebiliyorlardı.
Ancak ulaşılan veri hala aynı bilgisayar üzerindeydi.
Mainframe'ler arasında veri paylaşımı fikri çok geçmeden ortaya çıktı.
Ancak mainframe'ler genellikle birbirinden binlerce kilometre uzaktaydılar.
Aynı bina içinde bulunan mainframe'ler ise çoğu zaman farklı üreticilerin
cihazlarıydı ki, bu birbirlerinden çok farklı yapıda oldukları anlamına
geliyordu.
 |
Gerçek networkler varolmadan çok önce, bilim adamları farklı iki
sistemin verilerini nasıl paylaşabileceklerini tasarlamaya başlamışlardı.
Bir çok insan pratik manada ilk bilgisayar ağının ARPANET olduğunda
birleşir. ARPANET Advanced Research Agency(ARPA) isimli kurum tarafından
kuruldu. ARPA 1958 yılında kurulan ve Amerikan devleti için yüksek
teknoloji projeleri üreten bir kurumdur . 1972 yılında ismi DARPA(Defence
Advanced Research Agency) olarak değişti, 1993'te tekrar ARPA, 1996'da
ise tekrar DARPA oldu. DARPA bilgisayar ağları ile ilgili dağınık
haldeki yüzlerce projeyi bir araya toplayan ve bir form kazanmasını
sağlayan kuruluştur. Bu kurum sayesinde ilk bilgisayar ağı projesi
ve sonradan internet'in temelini oluşturacak TCP/IP ve benzeri teknolojiler
geliştirildi.
Peki mainframe'lere ne oldu sorusu akla gelebilir. Aslında hiçbirşey
olmadı ancak, 80'li yıllarla ortaya atılan "insanların evlerine
ve küçük/orta ölçekli iş yerlerine bilgisayar alması fikri" ilk
başta bazılarına "çılgınca" geldiyse de, IBM'in Personal
Computer (PC) adıyla piyasaya sürdüğü "cihaz" yeni bir çığır
açtı. Kısa zamanda çok değişik üreticiler IBM'in bu cihazının aynısı
bilgisayarlar ürettiler. Bu bilgisayarları sıradan insanların da kullanabilmesi
hatta üzerinde program yazılabilmesi için işletim sistemleri (DOS,
Windows vs.) üretildi. Bu bilgisayarlarda kullanılan işlemci, disk,
bellek ve diğer tüm bileşenler inanılmaz hızda gelişti ve yaygınlaştı.
Sonuçta PC veya mini-computer olarak anılan bu bilgisayarlar dünya
üzerinde milyonlarca-milyarlarca adede ulaştı. Bu arada mainframeler
de teknolojideki bu gelişmelerden nasiplerini aldılar ve ilk başta
üretildikleri amaca hizmet etmeye devam ettiler ve hala ediyorlar.
Belli bir kapasitenin üzerinde veri işleme ihtiyacı duyan firmalar
hala veritabanlarını IBM'in As400 makinalarında veya benzeri mainframe
sistemleri üzerinde tutuyorlar. Bunun yanında üniversitelerde ve araştırma
kurumlarında kullanılan "süper bilgisayarları" da unutmamak
gerekir.
PC'lerin çok yaygınlaşması sonucu, mainframe alamayacak/ihtiyaç duymayacak
firmalara ağ imkanlarını sağlamak amacıyla mini-computer/PC ağ işletim
sistemleri üretildi. Novell'in Netware işletim sistemi, Microsoft'un
NT'si ve devamı olan Windows 2000 buna örnek verilebilir. PC'lerin
CPU gücünün tavana vurması ve Windows 2000 gibi güçlü işletim sistemleri
günün birinde belki mainframe'lerin sonu olabilir, tabii olmayabilir
de :)
Bilgisayar ağlarının amacı nedir
Bilgisayar ağlarını anlamanın ilk adımı en basit bir ağın bile çok
kompleks bir yapıya sahip oduğunun kavranmasıdır. Bilgisayar ağlarının
amacı genellikle söylendiği gibi veri paylaşımı değildir. Ancak paylaşım
bilgisayar ağları için anahtar kelimedir.
Binlerce terminali olan bir mainframe düşünün, evet tüm bu terminaller
mainframe'e ve üzerindeki dataya erişiyorlar, ancak veri hala tek
bir bilgisayarın üstünde tutuluyor. Dolayısı ile buna ağ diyemeyiz.
Çünkü bir bilgisayar ağı en az iki bilgisayardan oluşur.
Neyi paylaşacağız
Günümüzdeki normal bir ofis kullanıcısı için cevap hazır, "dosyaları
ve yazıcıları, hımm..., bir de internete bağlanıyoruz biz ofiste...".
Oysa 60'lı yıllarda bilgisayar ağlarının tasarımı yapanlarlar için
bu o kadar da açık değildi. Elbette veri paylaşımını istiyorlardı
ama zaman içinde geliştirilecek yeni teknolojilere de uyum sağlayabilecek
bir yapı kurmaları gerektiğini biliyorlardı. O zamanlar kimse WWW'i
hayal bile edemezdi, ancak yarattıkları ağ teknolojisi, bugün bizim
WWW'yi kullanmamızı sağlıyor.
Bilgisayar ağları, bilgisayarların kaynaklarını(resources)
paylaşmalarını sağlar.
Bir kaynak bir cihazın diğerleriyle paylaşmak isteyebileceği
herhangi bir şeydir. Kaynaklar'a örnek olarak hemen
dosyalar, dizinler ve yazıcılar verilebilir. Ancak örneğin e-mail
mesajların iletilmesine yarayan bir kaynaktır. İnternet paylaşımında
bir bilgisayarın internet bağlantısını paylaşıyoruz değil mi?
Sonuç olarak bilgisayar ağlarının amacı paylaşımdır. Ancak paylaşım
sadece dosya ve yazıcılarla sınırlı değildir.
Sunucu - istemci (Server - client)
Paylaşım konusunu biraz açıkladıktan sonra, peki kim paylaşıyor,
kim bu paylaşımı kullanıyor sorusu akla gelebilir. En azından benim
aklıma geldi, neyse, üzerindeki herhangi bir kaynağı paylaşan bilgisayara
sunucu(server), bu kaynağa erişen cihaza da istemci(client)
adı veriliyor.
Bir dakika, sunucu dediğin şey şu kapalı kapılar arkasında duran,
milyon megabayt diski, zilyon megabayt belleği olan bilgisayarlar
değil mi? Evet, bu tip bilgisayarlar sunucu olarak anılıyor ve muhtemelende
öyleler. Ancak bir bilgisayarı sunucu yapan şey,
üzerindeki donanım miktarı, hatta özel bir donanım olup olmaması değil,
üzerindeki bir kaynağı paylaştırmasıdır. Doğal olarak üzerindeki kaynağı
paylaştıran ve bir çok kullanıcının hizmetine sunan bir bilgisayar,
talebi karşılamak için daha "güçlü" olmalıdır. Ancak akılda
tutulması gereken şey şudur; sunucu'yu sunucu yapan üzerindeki donanım
değil, kaynaklarını paylaştırmasını sağlayan yazılımdır (çoğunlukla
işletim sistemi veya işletim sistemi içindeki bir yazılım modülü).