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�. 1 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. İ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. 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 2 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 3 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? İlk bak�şta "dosyalar� ve yaz�c�lar�". 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. Üzerindeki herhangi bir kaynağ� paylaşan bilgisayara sunucu(server), bu kaynağa erişen cihaza da istemci(client) ad� veriliyor. 4 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ü). Eğer bir sunucu yaz�l�m� çal�şt�ran bilgisayar, sunucu oluyorsa bir ağ üzerinde birden fazla sunucu olabilir mi? Evet. Peki bir bilgisayar üzerinde birden fazla sunucu yaz�l�m� çal�şt�rabilir mi? Evet Örneğin Windows 2000 veya Linux yüklü bir bilgisayar çok rahat 5-10 farkl� sunucu program�n� çal�şt�rabilir. Dosya sunucusu, e-mail, web, yaz�c�... Bir bilgisayar hem sunucu hem de istemci olabilir. Novell Netware hariç tüm işletim sistemleri (Windows, Unix/Linux ve Machintosh işletim sistemleri) bilgisayar�n hem sunucu hem de istemci olarak çal�şmas�n� sağlayabilir. Çoğu ofis ortam�nda bilgisayarlar hem sunucu hem de istemci olarak çal�ş�rlar. Üzerindeki yaz�c�y� paylaşt�rm�ş PC2 bilgisayar�, PC1 üzerindeki dosyalara erişirken, PC1'de PC2'nin yaz�c�s�n� kullan�yorsa, bu iki bilgisayarda hem sunucu hem de istemci olarak görev yap�yor demektir. Oysa PC3 sadece bu iki bilgisayar�n paylaşt�rd�ğ� kaynaklara erişiyor, kendi üzerinde paylaş�lm�ş bir kaynak yoksa, sadece istemci durumda demektir. 5 Kaynaklar kolayca kullan�labilir olmal� Sunucu paylaşt�r�yor, istemci de kullan�yor. Ancak istemci bilgisayar(ve onu kullanan kullan�c�) paylaş�lan kaynağ� gerçekte nas�l kullanacaklar. Yani bu karmaş�k yap� nas�l son kullan�c� için problemsizce hizmet edecek? Çözüm: Paylaş�lan kaynak, istemci üzerinde sanki istemci bilgisayara ait yerel bir cihaz gibi görülmeli, böylece istemci üzerinde çal�şan programlar�n her biri(yaz� editörü, dosya yönetisici-Word, Windows Explorer...) ağm�ş, sunucuymuş vs. uğraşmadan, sanki o bilgisayar�n kendi kaynağ�na erişiyor gibi bu cihaz� kullanabilmelidir. Tabii ki, bu paylaş�lan kaynak istemci üzerinde ufak bir farkla gözükmeli ki normal ayg�tlardan ayr�labilsin. Mesela farkl� bir ikonla.. Sonuç olarak... Bilgisayar ağlar�n�n amac� paylaş�md�r. Bilgisayar ağ� en az iki cihazdan oluşur. Kaynaklar�n� paylaşan cihaz sunucu, paylaş�lan kaynağ� kullanan cihaz ise istemci olarak adland�r�l�r. Bir bilgisayarda ayn� anda bir çok sunucu yaz�l�m� çal�şabilir. Bir bilgisayar hem sunucu hem de istemci olabilir. Bilgisayar Ağlar� Nas�l Çal�ş�r ? İsterseniz günümüzde hemen hemen her ofiste görebileceğiniz bir bilgisayar ağ�n� ele alarak, bilgisayar ağlar�n�n temel çal�şma prensiplerini inceleyelim. Firman�n ismi Ak Tic. olsun. Ofiste Windows 2000 yüklü bilgisayarlar var. Windows 2000 ağ özelliklerini sağlayan bir işletim sistemi, bu da onu OS(Operating Systemİşletim Sistemi) olman�n yan�s�ra bir de NOS (Network Operating System-Ağ İşletim Sistemi) yap�yor. Ak Tic.'in bilgisayar ağ� en popüler kablolama şekli olan Unshielded Twisted Pair (UTP) kullan�yor. Ancak bu bölümde anlat�lacaklar ne işletim sistemiyle ne de kablo tipiyle alakal� değil. Dünyada farkl� ağ işletim sistemleri ve kablolamalar mevcut. Bu yaz� sadece bir bilgisayar ağ�n� meydana getiren değişik yaz�l�m ve donan�m bileşenleri ve herbirinin işlevleri üzerinde genel bir görüş edinmenizi sağlayacak. Bu nedenle değişik ağlar değişik kablo tipleri veya işletim sistemleri kullansalar da, burada anlat�lacaklar prensip olarak tüm ağ sistemlerini kapsayacakt�r. 6 Yanda Selin Hn. ve Ayşe Hn.'� görüyorsunuz. Tahmin edebileceğiniz gibi onlar AK Tic. çal�şanlar�. Ayşe ve Selin'in işleri gereği s�k s�k birbirlerinin bilgisayar�ndaki dosyalar� kullanmalar� gerekiyor. Örneğin Ayşe Excel'de ayl�k sat�ş raporunu henüz bitirdi ve Selin'in de kontrol etmesini istiyor. Ayşe'nin yapabileceği ilk şey, klasik yöntemi kullanmak: Dosyay� diskete kopyala, ayağa kalk, disketi Selin'e ver. Ancak bilgisayar ağ� Selin'in yerinden kalkmadan Ayşe'nin bilgisayar�na erişmesini ve bu dosyay� kendi bilgisayar�na kopyalamas�n� sağl�yor. Şimdi nas�l oluyor bu işler ona bakal�m... Kablo Ağ ilk başta bilgisayarlar aras�nda fiziksel bir bağlant�ya ihtiyaç duyar. Böylece veri bitleri bilgisayarlar aras�nda aktar�labilir. Günümüzde bir çok ağ altta gördüğünüze benzer unshielded twisted pair-kaplamas�z dolanm�ş çift (UTP) kabloyu kullan�yor. Bu tip kablo 4 veya 8 telden oluşuyor ve bu teller birbirine dolanm�ş çiftler halinde. Unutmay�n farkl� kablo tipleri, hatta kablosuz teknolojiler de kullan�labilir, burada amac�m�z, ağ'�n çal�şabilmesi için veriyi aktaracak bir ortama ihtiyac� olduğunu kavraman�z. 7 Hub Bir diğer ağ bileşeni ise hub. Ağa bağl� her bilgisayardan hub'a bir kablo gidiyor. Hub bir uçtan gelen bilgiyi, gitmesi gereken uca yollam�yor, ancak tüm uçlara birden yolluyor(bu önemli bir bilgi, ilerde çok karş�m�za ç�kacak). Bu durumda her bilgisayar hub'dan gelen verinin kendine ait olup olmad�ğ�n� tespit etmek zorunda. Yanda bir hub görüyorsunuz. Bu huba kablolar bağl�. Kablolar değişik renklerde olabilir. En sağdaki data kablosu değildir bu kablo hub'�n çal�şmas�n� sağlayan elektik bağlant�s�, yani adaptörden geliyor. Hub'lar aktif cihazlard�r, yani çal�şmak için elektriğe ihtiyaç duyarlar. Burada hub kullanan bir ağ sistemini örnek ald�k, farkl� ağ sistemleri de mevcut. Ancak birazdan okuyacaklar�n�z hepsi için geçerli. Ağ kart� Ağ�n çal�şmas�n� sağlayan diğer bir bileşen ise Network Interface Card(NIC) - Ağ Kart�'d�r. S�k s�k ethernet kart� deriz, asl�nda ağ kart� demek daha doğru. Bu bir "generic name" haline gelmiş. Nas�l margarin yerine "sana yağ" diyorsak, ağ kartlar� içinde "ethernet" türü tart�şmas�z en yayg�n tür olduğu için, ağ kart� ethernet kart�na dönüşmüş. Ancak başka ağ teknolojilerinde çal�şmak üzere üretilmiş ağ kartlar� da mevcut. Sonuç olarak ağ kart� genel bir tan�m, ethernet ise bir alt tür, ama en yayg�n olan�. Ağ kartlar� çok değişik tipte olabilirler ama Ak Tic.'in kulland�klar� ve sizinde kullanacaklar�n�z mutemelen aşağ�dakine benzeyecektir. 8 Peki ağ kart�n�n görevi ne? Bilgisayarlar verileri ikilik say� sisteminde yani 1 ve 0'lar olarak işler ve saklarlar. Ağ kartlar� da say�sal(dijital) veriyi elektrik, �ş�k veya radyo sinyalleri olarak diğer sistemlere iletme görevini yerine getirir. Elektrik sinyallerini kullanan ağ kartlar� en yayg�n tip olduğu için bu ağ kartlar ile devam edeceğiz. Bilgisayar�n devre kartlar� üzerinde saniyede milyonlarca küçük elektrik ak�m� oluşur. Örneğin sabit diskten okuma yap�l�rken, sabit disk'ten ç�kan elektrik sinyalleri disk kablosundan ana karta girer. Oradan da CPU ve bellek modüllerine ulaş�r. Sinyaller bilgisayar�n kasas� içindeki devreler üzerinde nispeten problemsizce seyahat eder. Ancak bu sinyaller bilgisayar�n d�ş�na ç�kt�klar�nda ister istemez daha uzun mesafelerde yol almak zorundad�r. Bu asl�nda oldukça zor bir iştir. Çünkü yüksek frekanstaki zay�f elektrik sinyallari d�ş etkenlere karş� çok hassast�r. Ağ kartlar� işte bu verinin iletiminde oldukça iyi bir iş ç�kar�rlar ve sinyallerin bilgisayar�n veri yollar�ndan ağ kablosuna aktar�lmas�(veri gönderirken) ve kablodan tekrar bilgisayar�n veri yoluna aktar�lmas�(veri al�rken) işini görürler. Dolay�s� ile ağ kart�n�n ilk göze çarpan görevi bilgisayar�n veri yollar�ndaki veriyi d�ş dünyaya aktarmakt�r. Ancak ağ kartlar�n�n görevi bununla bitmez. Ağ kartlar� bilgisayar�n ağ üzerindeki kimliğini de temsil ederler. Kimlik ile ilgili şu örneği verebiliriz. İki bilgisayar� üzerlerindeki seri veya paralel port'lardan bağlad�ğ�m�z� düşünelim. İki bilgisayar� haberleştirmenin en basit yolu budur. Böyle bir bağlant�da sadece iki bilgisayar söz konusudur. Bir bilgisayar�n veri gönderim portu diğerinin al�m portuna bağl�d�r. Diğerinin gönderimi de ötekinin al�m portuna. Ve en basit yöntemlerle bir taraf gönderilecek veriyi gönderim portuna koyar, karş� tarafta al�m portundan bunu okur. Ancak ikiden fazla bilgisayar�n bağl� olduğu bir sistemde ister istemez şu soru akla gelir, bir taraf veriyi istediği bilgisayara nas�l ulaşt�racak? Değişik ağ sistemleri (ethernet, token-ring) bu soruya değişik cevap vermiştir. Örneğin Token-Ring ağlar�nda aradaki fiziksel bağlant� star olsa da, yani tüm makinalardan ç�kan birer kablo ortadaki bir hub'a girse de, sistem çal�ş�rken ağ üzerinde Token/Jeton ad� verilen bir sinyal dolaş�r. Bu sinyal s�rayla tüm terminalleri dolaş�r. İşte "Ring" buradan gelmektedir. Bir terminal veri göndermek istediğinde boş token sinyalinin kendine gelmesini bekler. Token gelince yollayacağ� veriyi token mesaj�na iliştirir. Mesaj üzerinde al�c� ve gönderen makinan�n ağ kart� adresi de bulunmaktad�r. Dolu token s�rayla terminalleri dolaşmaya devam eder. Her makina gelen dolu token'e bakar ancak sadece "al�c�" adresi kendi adresi ise veriyi al�r ve geriye onay mesaj�n� yollar. Token onay mesaj�n� gönderen makinaya ulaşt�rd�ğ�nda art�k veri gönderilmiştir. Token boşalm�şt�r ve ring yapmaya devam eder. Tabii bu işlem saniyede milyonlarca kez gerçekleşir. Bu sistemde diğer makinalar�n nas�l kendi s�ralar�n� beklediklerine dikkat ediniz. 9 Ethernet ise farkl� bir çözüm sunar. Ethernet ağ�nda ağ kart� veri göndermeden önce kabloyu kontrol eder, kimse kullanm�yorsa, al�c� ve gönderen makinan�n ağ kart� adresinin yaz�l� olduğu veriyi kabloya salar. Bu veri tüm terminaller taraf�ndan al�n�r. Ancak sadece "al�c�" adresi kendi adresi olan makina bu veriyi işler diğerleri göz ard� eder. Token-Ring ve Ethernetin kabloyu kullanma s�ras� ve verinin aktar�m yönteminde farkl�laşt�ğ�n� gördük. Ancak her iki sistemde de ağ kartlar�n�n, ağ üzerinde eşi benzeri olmayan, bir adrese sahip olduklar�na dikkat ediniz. Sistemler birbirini işte bu benzersiz kimlik ile birbirinden ay�r�yorlar. Ve bu adrese MAC adresi diyoruz. Not: Yukar�da Token-Ring ile ilgili bilgi konunun tam anlaş�lmas� için verilmiştir. Bu sayfan�n devam�nda ve diğer tüm sayfalarda anlat�lanlar, özellikle farkl� bir şey belirtilmediyse, ethernet için geçerlidir. MAC adresi Her ağ kart� içinde üretilirken kaydedilmiş ve dündaya bir eşi olmayan bir numara mevcuttur. Media access control address (MAC) olarak adland�r�lan bu adres 48 bit'tir. Ağ kartlar� bir diğer ağ kart�na veri yollarken al�c�y� diğerlerinden ay�rmak için bu MAC adresini kullan�r. Ağ kart� üreten firmalar, önce IEEE (Institue of Electrical and Electronics Engineers) isimli kuruma başvurur ve 24 bit'lik bir üretici kodu(her üreticiye farkl� kod veriliyor) al�rlar. Sonra ürettikleri her karta ilk 24 biti üretici kodu, son 24 biti ise her kartta farkl� olacak şekilde MAC adresini koyarlar. Bir ağ kart� MAC adresi şu şekilde olabilir: 10 MAC Adresi 110011110110111011101111 011101111011011101110001 Üretici kodu Kart seri numaras� Tabii bu şekilde ikili sistemdeki say�lar�n okunmas� insanlar için zor olduğundan MAC adresleri onalt�l� say� sistemine çevrilerek ifade edilir. Tipik bir MAC adresi 00-50-051A-00-AF şeklindedir. Hexadecimal (yani 16'l� say� sisteminde) olan bu adreste her bir rakam (mesela B) 4 bite karş�l�k gelir. Böylece 12x4=48'dir. Buna göre ilk 6 rakam yani 00-50-05 üretici kodu, son 6 rakam ise bu kart�n seri numaras�d�r. MAC adresi bütün olarak değerlendirildiğinde dünyada üretilen her ağ kart� farkl� bir MAC adresine sahip demektir. Ağ kartlar� istekte bulunan her yaz�l�ma MAC adreslerini bildirirler. Eğer Win9x kullan�yorsan�z Winipcfg program� ile ağ kart�n�z�n MAC adresini görebilirsiniz. Windows server 2003de MAC adresinin görünüşü. MAC adresi ağ kart�n� sat�n ald�ğ�n�za zaten kart�n üstündeki bir elektronik çipe kodlanm�ş haldedir. Bu adres normalde değiştirilemez(ancak son dönemde bu işi yapan programlar ortaya ç�kt�). Ancak MAC adresini değiştirmeniz, hatta ne olduğunu bilmeniz bile çoğu zaman gereksizdir. Veri paketleri(Frame) Ağ kartlar� veriyi kablo üzerinde sinyaller halinde iletiyor dedik, peki sinyaller dolay�s�yla veri, karş� tarafa nas�l ulaş�yor? 11 Karş�ya yollanacak veri, örneğin ağ üzerinden karş� makinaya kopyalanan bir World dosyas�, tek parça halinde gönderilmez. Sabit boyutta küçük parçalara bölünür ve bu parçaralara da baz� ek bilgiler eklenerek gönderilir. Bu veri bloklar� da veri paketi (frame veya ethernet frame) olarak adland�r�l�r. Veriler ağ üzerinden sabit yap�da paketler (frame) halinde iletilirler dedik, asl�nda bu paket aktar�lacak veriyi ve diğer gerekli bilgileri içeren bir sinyal bloğudur. Ağ kart� bu veri paketlerini oluşturur, yollar ve gelen paketleri al�p işler. İsterseniz ağ kart�n� aşağ�daki gibi bir karikatürle temsil edelim. Veri paketleri burada haz�rlan�p yollan�yor ve gelen paketler işleniyor. Ağ kart� içinde bu işleri yapan bir eleman�m�z da olsun. İşte MAC adresi bu paketler oluşturulurken önem kazan�r. Altta diğer yaz�l� kaynaklarda karş�n�za ç�kabilecek klasik bir paket tasviri görüyorsunuz. Her bir bölüm bir ve s�f�rlardan oluşuyor ve paketin(frame'in) bir parças�. Ağ kart� veri paketi (Frame) yap�s� 1110001011011 Al�c�n�n MAC adresi 11011011101100 110101101110110111101110001110111011 Göndrenin MAC adresi Veri 1101 CRC Frame'in tamam� asl�nda bir ve s�f�rlardan, yani elektrik sinyallerinden oluşuyor. Bu sinyaller dizesinin ilk bölümü frame'i almas� gereken bilgisayar�n MAC adresi, sonraki bölüm ise gönderen ağ kart�n�n kendi MAC adresidir. Daha sonra gönderilmeye çal�ş�lan esas veri bölümü geliyor. En sonda da CRC(Cyclic Redundancy Check) kodu bulunuyor. Peki CRC de ne oluyor derseniz, CRC al�c�n�n paketin yolda bozulup bozulmad�ğ�n� anlamas� için kulland�ğ� bir kod. Sistem kabaca şöyle çal�ş�yor; yollanacak veri yollanmadan önce gönderen ağ kart� taraf�ndan matematiksel bir işlemden geçiriliyor. 12 İşlemin sonucu CRC kodu olarak veri ile beraber yollan�yor. Al�c�, ald�ğ� veriyi ayn� matematiksel işlemden geçiriyor, elde ettiği sonuç CRC ile ayn� ise, paket yolda bir tek bit'i bile değişmeden al�c�ya ulaşm�ş demektir. Veri ağ kablosu üzerinden giderken çevredeki elektromanyetik alanlardan (motorlar, lambalar, m�knat�slar, elektrik kablolar� vs.) etkilenip, yola 1 olarak ç�kan baz� bitler 0, 0 olarak ç�kan baz� bit'lerde 1 olarak karş� tarafa ulaşabilir. Sonuçta bir bit'in bile yolda bozulmas� sizin "mekiğin iniş h�z�=250 km/s" olarak yolladğ�n�z verinin karş� tarafta "can�m yoğurtlu �spanak çekti" şeklinde anlaş�lmas�na neden olabilir. Eğer bir veri paketi bozuk olarak gelmişse, al�c� ayn� paketin tekrar yollanmas�n� isteyecektir. Ancak bu işlem ağ kart�nda değil, daha üst bir yaz�l�m katman�nda gerçekleşir(protokoller ile ilgili ilerleyen sayfalarda buna değineceğiz). Peki yollad�ğ�m�z veri nas�l bir şey? Doğrusu bu ne bizi ne de ağ kart�n� hiç ilgilendirmiyor. Yollanan veri bir word döküman�n�n karş�da yazd�r�lacak yaz�c� ç�kt�s� olabileceği gibi, herhangi bir resim dosyas� da olabilir. Ağ kart� bununla ilgilenmez, ağ kart�, işletim sisteminde çal�şan kendine ait sürücüsünün(driver) kendisine ilettiği veriyi gitmesi gereken sisteme yolar. Veri'nin ne olduğu veya karş� tarafa ulaş�nca ne yap�lacağ�, diğer programlar�n işidir. Her bir veri paketi belli boyutta veriyi aktarabilir. Değişik ağ sistemlerinin kulland�ğ� paket yap�lar� farkl� olabilir. Ancak ortalama olarak her bir paket 1500 Byte veri taş�r. O zaman hemen şu soru akla gelebilir: Peki yollanan veri (dosya, yaz�c� ç�kt�s�, e-mail her neyse...) 1500 Byte'tan büyükse ne olur? Bu durumda yollay�c� sistemin yaz�l�m� yollanacak veriyi paket boyutunda parçalara böler. Al�c� taraftaki yaz�l�m ise bu paketleri birleştirerek yollanan veriyi bütün olarak elde eder. Bu parçalama ve birleştirme işi ağ kart�na ait değildir. Gönderilecek veri ağ kart�na üst yaz�l�mlar taraf�ndan parçalanm�ş olarak gelir. Ağ kart�na gelen paket boyutundaki veri bloklar� birleştirirken kullan�lacak s�ralama bilgisini de içerdiğinden, al�c� taraftaki yaz�l�m kendi ağ kart�ndan gelen paketleri birleştirebilir. NOT: Değişik ağlar�n kulland�ğ� çeşitli frame tipleri vard�r. Ağ üzerindeki tüm ağ kartlar� ayn� frame tipini kullanacak şekilde ayarl� değillerse birbirleriyle haberleşemezler. Bununla beraber tüm modern ağ kartlar� art�k ağda kullan�lan frame tipini otomatik seçebilmektedirler. Ağ üzerine yollanan her paket tüm bilgisayarlara ulaş�r. Her bir ağ kart� kendisine gelen bu paketi kontrol eder. Al�c� MAC adresi eğer kendisinin MAC adresi ise "demek ki bu paket bana gelmiş" der ve işleme koyar. Ancak tersi söz konusu ise, bu paketi siler. Bu nokta çok önemli olduğu için tekrar etmek istiyorum(bu ilerde çok karş�m�za ç�kacak çünkü) ağ üzerinden yollanan (asl�nda ağ üzerine b�rak�lan demek daha doğru) her paket(frame) tüm bilgisayarlar�n ağ kart�na ulaş�r ama sadece gerçek al�c�s� taraf�ndan işlenir, diğerleri ise bu paketi kontrol edip kendilerine gelmediğini anlay�nca göz ard� ederler. Bu da demek oluyor ki ethernet ağlar�nda ayn� anda sadece bir makina veri gönderebilir. İleride bunu daha derin inceleyeceğiz. 13 Ad�m ad�m verinin aktar�m� Temel kavramlar� öğrendikten sonra isterseniz basit bir ağ iletişimi nas�l oluyor onu inceleyelim. Bir bilgisayar diğerine ulaşmak istediğinde elbette önce karş� taraf�n kim olduğunu bilmesi gerekir. Biz bilgisayar kullan�c�lar� olarak karş� bilgisayar�n ya ismini, ya da (eğer TCP/IP kullan�l�yorsa) IP adresini biliyoruz demektir. Veya ağ komşular�m'a girdiğimiz anda, "ağ üzerindeki tüm bilgisayarlar� bana göster" komutunu vererek "ağ komşular�m�z�" görürüz. Kullan�c� isterse belli bir IP adresiyle, isterse de bilgisayar ismi ile iletişime geçmek istesin, ağ kartlar� sadece MAC adresleriyle haberleşebilirler. Siz 192.168.0.56 IP'li bilgisayara bir dosya kopyalamak istediğinizde ne olur? Ağ kart� eğer daha önceden bu IP'ye sahip bilgisayar ile iletişim kurmuşsa zaten MAC de adresini biliyor demektir ve bunu kullan�r. Bilmiyorsa (örneğin bilgisayar�n�z ilk aç�ld�ğ� anda) ağa bir Broadcast(Genel yay�n) mesaj� yollar. Broadcast mesaj� şu şekildedir "Eğer IP adresin 192.168.0.56 ise bana MAC adresini bildir.". Bu mesaj ağdaki tüm sistemlere ulaş�r. Her bir sistem Broadcast mesaj�n� al�r ve inceler, eğer kendi IP adresi sorulan IP ise, MAC adresini Broadcast'i yollayan ağ kart�na bildirir. Art�k veri aktar�m�na geçilebilir. 1. Ağ kart� yollanacak veriyi işletim sisteminden al�r. Karş�ya yollanacak paketi oluşturur. CRC kodunu oluşturur. CRC kodunu ve veriyi pakete koyar. Kendi MAC adresi ve al�c�n�n MAC adresini pakete ekler. Paket yola ç�kmaya haz�rd�r. 2. Kabloda o anda başka bir veri aktar�m� olup olmad�ğ�n� kontrol eder, kablo boşsa paketi hub'a yollar. 3. Hub bu paketin kopyalar�n� oluşturur ve her bir portuna bağl� bilgisayarlara (yani ağ kartlar�na) yollar. 4. Tüm ağ kartlar� paketi al�r ve "al�c� MAC adresi" kendi MAC adresleri mi diye kontrol eder. Eğer paket kendisine gelmişse paketi işler, aksi halde paketi siler. 14 Veri ve CRC pakete ekleniyor. Pakete gönderen ve al�c� MAC adresleri yaz�l�yor. Ağ'� kullanan başka birisi var m� diye kontrol edildikten sonra paket yollan�yor. 15 Al�c� ağ kart� MAC gelen paketin MAC adresini kontrol ediyor, kendisine gelmişse işliyor, değilse siliyor. Al�c� ağ kart� paketin kendisine geldiğini anlay�nca önce CRC kodunu kullanarak veri yolda bozulmuş mu kontrol eder. Eğer problem yoksa, frame/paket bilgisini (MAC adresleri, CRC vs.) temizleyerek, saf veriyi işletim sistemine iletir. Protokol Ayn� hub'a bağl�, ayn� frame/paket tipini kullanan bilgisayarlar aras�nda veri aktar�m�n� gördük. Peki Selin Hn. Internete bağlanmak istediğinde ne olacak? Internete telefon hatt�n� kullanarak bağlanacak, oysa ne modem ne de telefon sistemi MAC adresi kullanmaz. Demek oluyor ki; MAC adresinin ötesinde her sisteme farkl� bir kimlik sağlayan, her tip ağ kart�, frame yap�s� ve donan�m ile çal�şabilecek bir yaz�l�ma/tan�mlamaya veya kimlik bilgisine ihtiyac�m�z var. Bu özel yaz�l�ma ağ protokolü diyoruz. Ağ protokolü her sisteme tekil bir kimlik sağlaman�n ötesinde, işlerin nas�l yürütüleceğini belirleyen bir kurallar dizesini de içerir. Bundan önce eğer yollanacak veri ağ paketinin boyutundan büyükse, işletim sisteminin veriyi parçalara ayr�lm�ş halde ağ kart�na yollad�ğ�n�, ağ kart�n�n verinin içeriği ve bütünlüğüyle hiç ilgilenmeden ne geliyorsa yollad�ğ�n� söylemiştik. İşte verinin paketlere bölünmesi ve al�c� tarafa da birleştirilmesi gibi bir çok iş de ağ protokolünün görevidir. 16 Değişik ağ sistemlerinin kulland�ğ� değişik protokol tipleri vard�r. Ancak ağ üzerindeki bilgisayarlarda ayn� tip protokolün yüklü olmas� gerektiği san�r�m gayet aç�k. Bu protokoller içinde öne ç�kan ve en yayg�n kullan�ma sahip olan� şüphesiz TCP/IP(Transmit Control Protocol/Internet Protocol)'dir. TCP/IP için "protokol" kelimesi yerine "bir protokoller grubudur" demek daha doğrudur. TCP/IP'nin IP bölümü şu an bizim ilgilendiğimiz ağ protolü görevini gören k�sm�d�r. TCP'ye sonra bakacağ�z. IP'nin görevi basitçe veri paketinin gitmesi gereken sisteme ulaşmas�n� sağlamakt�r (Peki MAC'de ayn� işe yaram�yor mu?). IP bunu ağa dahil her sisteme tekil bir adres vererek yapar. İşte bir IP adresi: 192.168.0.1 IP adresleri 0-255 aras� değerler alabilecek 4 bölümden oluşur. Bölümler aras�nda nokta işareti bulunur. Asl�nda bu dört bölümün her biri 8 bitlik bir say�d�r. Bilgisayarlar�n ikili say� sistemi ile, yani 1 ve 0'lar ile çal�şt�ğ�n� tekrar hat�rlay�n. Ağ üzerinde her cihaz farkl� bir IP adresine sahip olmak zorundad�r. IP sistemi ile, donan�m ve frame tipi ne olursa olsun sistemler aras�nda veri aktar�m� yap�labilir. Bu durumda karş�m�za gönderen ve al�c�n�n IP adreslerini içeren ikinci bir frame/paket ç�k�yor. Yani paket içinde paket olay�... NOT: Burada bir kavram kargaşas�n�n önüne geçmek ad�na bir not düşmemiz gerekiyor. Şu ana kadar gördüğümüz veri paketi kavram�n�n İngilizcesi "frame" dir. Biz bu yabanc� kelime yerine "paket" kelimesini kulland�k. S�k s�k da bu ikisini "paket/frame" diye yanyana yazarak belirttik. Şimdi karş�m�za IP paketi kavram� ç�kt�. Bunun da İngilizcesi "IP Packet". Şimdi elimizde iki paket var, biz bunlardan birine "ağ paketi" diğerine "IP paketi" diyeceğiz. Paket paket içinde... Ağ protokolü daha üst katmanlardan gelen veriyi ağ kart�na yollamadan önce veriyi kendi paketinin içine yerleştirir ve ağ kart�na yollar. Ağ kart� aç�s�ndan ağ protokolünden gelen bu IP paketi s�radan bir veriden farks�zd�r (hat�rlay�n: ağ kartlar� verinin içeriği ile ilgilenmezler). Ağ kart�da veriyi önceden anlat�ld�ğ� gibi kendi paketi içine yerleştirip yollar. Aşağ�da çok basit indirgenmiş bir IP paketi görüyorsunuz. VERİ TİPİ PAKET SAYISI ALICININ IP ADRESİ GÖNDERENİN IP ADRESİ VERİ 17 İsterseniz IP paketini bir zarf ile temsil edelim, ağ kart�n�n paketi eskisi gibi kals�n.. Ağ üzerinde her sistemin MAC ve IP adresi: 18 Şöyle bir soru akla gelebilir: paket içinde paket olay�na veya IP adreslerine ne gerek var, bilgisayarlar� birbirinden ay�rmak için MAC adresi yok mu zaten? Var olmas�na var ama bak�n neler oluyor... Hat�rlarsan�z Selin Hn. internete bağlanacakt�, bunu yapabilmek için AK Tic.'in bilgisayar ağ�n� internete bağlamam�z gerekiyor. Bu bağlant�y� sağlayacak cihaz�n ad� Router(Yönlendirici)'d�r. Yönlendiriciler fakl� "ağ paketi yap�s�" kullanan iki ağ� birbirine bağlamaya yararlar. Tipik bir yönlendiricinin iki bağlant� noktas� bulunur. Bu bağlant�lardan birisi yerel ağa yap�lacak bağlant�d�r. Bu bağlant� noktas� asl�nda yönlendirici içine yerleştirilmiş bildiğimiz bir ağ kart�d�r. Diğer bağlant� noktas� ise yönlendiriciyi telefon hatt�na bağlamaya yarar. Yani bu bağlant� noktas� da asl�nda yönlendirici içine gömülü bir modem'dir. NOT: Yönlendiriciler ile ilgili bu noktada söylenmesi gereken 2 şey var: 1. Baz� yönlendiriciler, yukar�da bahsedildiği gibi gömülü modem içermezler, ama modem'e bağlan�rlar. 2. Yönlendirici ayr� bir cihaz olmak zorunda değildir. İki ağ kart� veya bir ağ kart� ve bir modem'i olan her bilgisayar yönlendirici olarak görev yapabilir. 19 Yönlendiriciler fakl� "ağ paketi yap�s�" kullanan iki ağ� birbirine bağlamaya yararlar demiştik. Şimdi Selin Hn.'�n yerel ağ� ethernet sistemini kullan�yor. Oysa Selin Hn.'�n bilgisayar�ndan ç�kan veri paketi bu yerel ağ�n ötesine geçip, telefon hatlar�ndan internete ulaşmak zorunda. Oysa telefon hatlar� ve ötesindeki internet yap�s�nda MAC adresi veya ethernetin frame yap�s� geçerli değil. İşte bu noktada IP adresi devreye giriyor. Yönlendirici "ağ paketi" içinde bir "IP paketi" ald�ğ�nda, "ağ paketini" k�rpar(MAC adresleri CRC vs.). Geriye kalan IP paketini ise telefon şebekesinin kulland�ğ� paket yap�s� içine yerleştirir ve yollar. İşte bu noktada IP paketinin ve IP adresinin ne işe yarad�ğ�n� görüyoruz. Yönlendirici ağ paketi bilgilerini yok edince, veriyi yollayan ve alacak olan sistemleri tan�mlayacak ayr� bir bilgiye ihtiyaç duyulur, bu IP bilgisidir 20 Eğer internetle işimiz yoksa, basit bir yerel ağ kuracaksak TCP/IP kullanmak zorunda m�y�z? Hay�r. Kullanabileceğiniz farkl� protokoller var. Hatta baz� protokoller hiç bir ayar yapmadan her bilgisayara yüklediğiniz anda çal�ş�r (NETBeui protokolü mesela). Oysa TCP/IP kulland�ğ�m�zda en başta IP adreslerinin girilmesi gibi daha bir çok ayar yapmam�z gerekecektir. Diğer protokollerin tek problemleri internet üzerinde çal�şmamalar�d�r. Yani internet kullanacaksan�z (veya sadece yerel ağ üzerinde olsa bile IP ile çal�şan programlar kullanacaksan�z) TCP/IP'ye ihtiyac�n�z var demektir. Günümüzde hemen hemen her ağ'da internet bağlant�s� gerekiyor. Bu durumda ister istemez TCP/IP yükleniyor. Onu bir kere yükledikten sonra ikinci bir protokolü yüklemenin ise anlam� kalm�yor. NOT: MAC adresleriyle ilgili ilk bölüm sanki ağ sistemi protokol olmadan da çal�ş�rm�ş gibi bir izlenim b�rakmamal�. Her hangi bir ağ'�n çal�şabilmesi için en az bir protokolün, daha doğrusu ayn� protokolün, her bilgisayarda yüklü olmas� gerekiyor. Çünkü ağ kartlar� verinin paketlere ayr�lmas� ve tekrar birleştirilmesi gibi işleri yapmazlar. Bu işlemler için protokole ihtiyac�m�z var. Böl parçala yolla-TCP Ağ üzerinde yollanacak veri çoğu zaman bir ağ paketinin taş�yabileceğinden fazlad�r. Bu nedenle verinin yollanmadan önce parçalanmas� gerekir. Ağ protokolü daha üst katmanlardan kendisine gelen veriyi(bir dosya, web sayfas�, yazd�rma işi....) ağ paketi boyutunda parçalara böler, al�c�n�n tekrar birleştirebilmesi için parçalar� organize eder, yollar ve her bir paketin karş�ya hatas�z ulaş�p ulaşmad�ğ�n� kontrol eder. Al�c� sistemin protokolü gelen paket serisini alg�lar, paketleri birleştirerek esas veriyi tekrar elde eder. TCP/IP'nin TCP(Transmit control protocol-gönderim kontrol protokülü) bu işi yapar. Nas�l m� yapar, tabii ki IP paketinin içine başka bir paket koyarak.. Bir TCP paketi aşağ�daki bölümlerden oluşur. Kaynak Port Hedef Port S�ra Numaras� Onay Numaras� VERİ Al�c� sistem s�ra numaras�n� kullanarak paketleri doğru s�rada birleştirebilir(paketler yolda bozulma ve tekrar yollama sonucu farkl� s�rada gelmiş olsa bile). Ayn� anda birçok iş yapmak:Oturumlar Veri paketlerini bölme ve birleştirme işini yapan bir yaz�l�m olduğunu öğrendikten sonra s�ra geldi ağlar�n başka bir yönünü incelemeye. 21 Gördüğünüz gibi Ayşe'nin bilgisayar�na bir yaz�c� bağl� ve tüm kullan�lar taraf�ndan kullan�labiliyor. Selin Ayşe'nin Excel dosyas�na bakarken, Ali'de ayn� anda Ayşe'nin yaz�c�s�n� kullan�yor olabilir. Ayşe'nin sistemi gelen bu istekleri gerekli programlara veya donan�mlara ulaşt�rmak zorunda. Diğer taraftan istekte bulunan bilgisayarda önce karş� tarafa bağlan�p, isteğin yerine getirilip getirilemeyeceğini kontrol etmek zorunda. Bunlar� yapan katmana oturum(session) katman� diyoruz. Bu katman�n görevi bir bilgisayar�n ayn� anda birden fazla bilgisayarla iletişim içinde olmas�n� sağlamakt�r. Ortak veri biçimleri kullanal�m, dost kalal�m! Eskiden her program sadece ve ancak kendi oluşturduğu dosyay� kullanabiliyordu. Örneğin A firmas�nda X kelime işlemcisi kullan�l�yorsa, burada oluşturulmuş bir dosyay� B firmas�n�n kulland�ğ� Y kelime işlemcisinde açmak mümkün değildi. Yani MS Word'ün 4. versiyonu ile yaz�lm�ş bir yaz�, Corel'in kelime işlemcisi ile uyumlu değildi. Oysa bugün ister Microsoft Word kullanal�m, istersek Linux alt�nda çal�şan Open Office kullanal�m, eğer yaz�m�z� DOC format�nda kaydedersek karş� taraf kulland�ğ� kelime işlemci ve işletim sisteminden bağ�ms�z olarak bu dosyay� kullanabilir. Ayr�ca işletim sistemleri verileri kaydederken ve işlerken farkl� teknikler kullanabilirler. Örneğin DOS ve Windows 95,98,ME metinleri 8 bit olarak (ASCII) kaydeder. Ancak Windows 2000, NT ve XP 16 bit Unicode sistemini kullan�r. Buna göre bir Win9x makinas� A harfini 01000001 olarak kay�t edecektir. Windows 2000, NT veya 22 XP ise 0000000010000001 olarak kaydedecektir. Tabi ki bilgisayar� kullanan vatandaş sadece A harfiyle ilgilenir. İşte ağ'� oluşturan katmanlardan birisi olan sunum(presentation) katman� bu noktada devreye girer. Sunum katman�n�n görevi değişik sistemler aras�nda olabilecek bu gibi farkl�l�klar� ortadan kald�rmakt�r. Ağ üzerinde eriştiğiniz bilgisayar�n işletim sistemi, kulland�ğ� dosya yap�s� önemli değildir. Örneğin W9x ailesi NTFS dosya format�n� okuyamaz. W9x çal�şan bir makinaya NTFS formatl� ek bir disk taksan�z, windows içinden bu diske ulaşamazs�n�z. Oysa, bir W9x makinas� ağ üzerinden NTFS disk kullanan bir Windows 2000, NT veya XP makinas�n�n diskine ulaşabilir. Ağ programlar� Bir kullan�c� ağ üzerinde çal�ş�rken şimdiye kadar anlat�lanlar�n hiçbirisini görmez. Ağlar�n güzel yan�da budur zaten, bu kadar karmaş�k bir işlemi, bu kadar sessizce halledebilmek... Ancak bilgisayar kullan�c�s� ağ�n son parças�n� kesinlikle görür. Kulland�ğ� ağ program�n�. Ağ program� deyince "Allah Allah ben niye görmedim bunu şimdiye kadar" diye korkmay�n. Ağ program�na en basit örnek Windows Explorer'dir. Ya da nam� diğer "Bilgisayar�m". Bilgisayar�m'� aç�p, bir ağ sürücüsüne çift t�klad�ğ�n�zda ağ� kullanm�ş olmuyor musunuz? Ayn� şekilde Web'de sörf yaparken de IE veya Netscape kullan�yoruz. E-mail için farkl� bir program�m�z var. Sonuç olarak kullan�c�lar ağ'� bir program vas�tas�yla kullan�lar. Ağ� oluşturan en son bileşen bu programd�r. Ağ programlar� kendi içinde veri şifreleme, kullan�c� isminin kontrolü gibi özellikler bar�nd�rabilirler. Bir önceki başl�k alt�nda incelediğimiz sunum katman�n�n bir çok görevi bu programlar taraf�ndan da yap�labilir. Selin Ayşe'nin Excel dosyas�n� nas�l kendi bilgisayar�na kopyalad�? Bu noktaya kadar ad�m ad�m bir ağ� oluşturan değişik bileşenleri inceledik. İsterseniz şimdi Selin'in Ayşe'nin bilgisayar�ndan Excel dosyas�n� nas�l kendi bilgisayar�na kopyalad�ğ�n� ad�m ad�m görelim. Selin önce "Computers Near Me (yan�mdaki bilgisayarlar)" ile ağ üzerindeki diğer bilgisayarlar� gördü. 23 Selin ve Ayşe ayn� Excel versiyonunu kulland�klar� için uyumsuz dosya format� söz konusu değil. Bu ağda veri şifreleme yok ancak kullan�c� adlar� kontrol ediliyor. Selin Ayşe'nin bilgisayar�na çift t�klad�ğ� anda iki sistem haberleşmeye başl�yorlar. Ayşe'nin bilgisayar� kendi kullan�c� veritaban�n� kontrol ederek Selin kullan�c�s�n�n bu bilgisayar üzerinde ne gibi haklara sahip olduğunu kontrol ediyor. Bu esnada iki bilgisayar aras�nda ilk oturum aç�lm�ş oluyor. Selin dosyay� Ayşe'nin diski içinde buluyor ve sürükleyip kendi masaüstüne b�rakarak kopyalama işlemini başlat�yor. 24 Bu basit hareket arka planda bir çok işlemi tetikliyor. Önce Ayşe'nin ağ protokolü üst katmandan kendisine gelen bu dosyay� küçük parçalara ay�r�yor. Her parçaya da bir numara veriyor ki, Selin'in bilgisayar� bu parçalar� tekrar birleştirebilsin. Daha sonra her bir parçaya Selin'in ve Ayşe'nin IP adresi ekleniyor. 25 Paketler art�k Ayşe'nin ağ kart�na gitmeye haz�r. Ağ kart� bu IP paketlerini bu sefer kendi ağ paketinin içine koyuyor ve ağ paketinin üstüne de hem kendi MAC adresini, hem de Selin'in ağ kart�n�n MAC adresini ekliyor. Tabii CRC kodunu her paket için oluşturup pakete dahil etmeyi de unutmuyor. Ayşe'nin ağ kart� her bir paketi haz�r hale getirdiğinde o anda kabloyu bir kullanan var m�(ağ�n genelinde bir trafik var m�) diye kontrol ettikten sonra kablo boşta ise paketi hub'a yolluyor. Paket hub'a ordan da diğer tüm bilgisayarlara ulaş�yor. Ancak sadece Selin'in makinas� gelen paketi işleme al�yor. CRC kodunu kullanarak "paket sağl�kl� ulaşt� m�" diye kontrol ettikten sonra ağ paketini aç�p(yani MAC adresi ve CRC kodu gibi bilgileri temizleyip) içindeki veriyi (IP paketi) bir üst katmana yani ağ protokolüne yolluyor. 26 Bu bölümde TCP'nin çal�şt�ğ�n� san�r�m anlad�n�z. Excel döküman� bir bütün halinde al�nd�ktan sonra dosya gerekli yaz�l�ma aktar�l�yor. Burada da dosya kopyalarken Selin'in kulland�ğ� Windows Explorer'den bahsediyoruz("Computers Near Me" Windows Explorer'in bir bölümüdür). Dosya Selin'in masaüstünde belirdiği anda ağ bileşenleri bu işlem için aç�lan oturumu kapatarak bir sonraki işleme haz�rlan�yorlar. Tüm bu işlemler arka planda olurken, Selin'in dosyay� kopyalan�rken gördüğü tek şey havada uçan dosya animasyonu oluyor... Son söz Yaz�n�n baş�nda beri bu sayfada anlat�lanlar genel olarak tüm ağ sistemlerinde geçerlidir demiştik. Yaz� boyunca da katmanlardan, ad�m ad�m gelişen bir yap�dan bahsettik. Asl�nda tüm bu anlat�lanlar OSI Seven Layer Model (7 katmanl� OSI modeli)'den ibaret. 27