Ağ Protokolleri Nelerdir?
1. OSi Katmanlari
1.1 Fiziksel Katman: Fiziksel katmanlar elektriksel baglantilar ve sinyallemeden olusur. Daha sonra gelen katmanlar fiziksel katman araciligiyla konusur. Dolanmis-cift tel* fiber-optik kablo ve es eksenli kablo fiziksel katmanin parcalaridirlar. Fiziksel katmandaki en yaygin standart RS-232C'dir. Bir kablo ve sinyalleme standardidir ve konnektorlerdeki her ignenin gorevinin ne oldugunu aciklar. Fiziksel katman ustundeki butun katmanlar icin sinyalleri tasir.
1.2 Veri-Hatti Katmani: Veri-hatti katmani karakterleri bir dizi halinde birlestirip mesajlar haline getirir ve daha sonra yola koymadan once kontrol eder. Goderdikten sonra karsi taraftan "duzgun sekilde geldi" diye bir mesaj gelebilir veya veri dogru gitmediyse yeniden olusturabilir. PC tabanli iletisim sistemlerinde* arabirim kartlarinin uzerindeki ozel devreler veri-hatti katmaninin fonksiyonlarini yerine getirirler.
1.3 Ag Katmani: Genis alan aglar* bir karakterler dizisini bir cografik noktadan digerine tasimak icin birkac yontem sunar. OSi'nin ucuncu katmani olan ag katmani* agin durumuna servisin onceligine ve diger faktorlere gore verinin hangi fiziksel yola iletilecegine karar verir.
1.4 Tasima Katmani: Tasima katmani OSi modelinin dorduncu katmanidir ve ag katmaninin yaptigi isleri yapar. Farki bu isleri yerel olarak yapar. Ag yazilimindaki suruculer tasima katmaninin gorevlerini yerine getirirler. Agda bir ariza oldugu zaman* tasima katmani yazilimi alternatif guzergahlari arar veya gonderilecek veriyi ag baglantisi yeniden kurulasiya kadar bekletir* alinan verilerin dogru bicimde ve sirada olup olmadigini kontrol eder. Bu bicimlendirme ve siralama yetenekleri* tasima-katmani programlari farkli bilgisayarlar arasinda baglanti kurduklari zaman onem kazanir.
1.5 Oturum Katmani: Besinci katman olan oturum katmani ekseriya PC-tabanli sistemlerde cok onemlidir. Agda iki uygulamanin haberlesmesini saglar. Guvenlik* isim tanima* yonetme ve diger benzeri fonksiyonlari yerine getirir.
1.6 Sunma Katmani: Ekranda yanip sonen karakterler* ozel veri-giris bicimleri* grafikler ve diger seyler gordugunuz an sunma katmanindasiniz demektir. Bu katman ayni zamanda* sifreleme ve ozel dosya bicimlendirme islemlerini de yapar. Ekranlari ve dosyalari programcilarin istedigi sekilde bicimlendirebilir.
1.7 Uygulama Katmani: En ust katman olan uygulama katmani kullaniciya hizmet verir. Ag isletim sistemi ve uygulama programlarinin bulundugu katmandir. Dosya paylasimindan yazilacak is birikimine* elektronik postadan veritabani yonetimine kadar olan her sey burada bulunur.
Ag protokolleri verilerin nasil paketlenecegini* kullanilacagini ve agdan iletilecegini belirten anlasmadir. Saticilar ve endustriyel komiteler bu anlasmalari gelistirirler ve firmalar bunlara uyan yazilimlar yazmaya calisirlar. Aglar heterojen oldukca* degisik sistemlerin kontrolu ve yonetimi daha zor olur. Denenmis ve dogrulanmis standartlarin olmasina ragmen* boyle karma aglari yonetmek hala karmasik bir istir.
Aglar verileri guvenilir sekilde kullanmak icin protokollere ihtiyac duyarlar. Ag protokolleri kullanicilara gorunmese de* protokol mimarisi bir LAN veya WAN planlanirken ve kurarken secmemiz gereken en onemli parcalardan biridir.
1. SPX/iPX Protokolu
SPX/iPX diger ag iletisim protokolleri gibi tek bir protokol degildir* fakat bilgisayarlari birbirine baglayan bir standart prosedurler takimidir. Pratikte* her protokol seti mesaji* veya paketi* adresleme* alindi veya yonlendirme bilgisi gibi belirli bir yapida bicimlendirir. Paketler genelde uc dort katman derinlikte yuvarlanirlar* boylece her birinin belirli bir fonksiyonu olan paketler ic ice bulunabilir.
Protokolun iPX bolumu NetWare dugumleri arasinda paketlerin adreslenmesinden sorumludur* fakat onlar icin herhangi bir sayma ya da hesaplama yapmaz. Kullanildiginda* SPX iPX paketlerini kapsuller ve varis noktasindaki verileri kabul eder. Ag dosya transferi veya elektronik posta gibi garantili teslimat isteyen bazi uygulamalar veri bloklarini SPX araciligiyla adresleyebilirler. Kendi iletisimlerini takip edebilen uygulamalar basta olmak uzere bir cok uygulama iPX'i kullanir cunku daha verimlidir ve aga daha az asiri yuk iletir.
Novell'in iPX'i genelde DOS veya Windows uygulamalari tarafindan istenen nispeten kucuk veri paketleri icin (512 byte'a kadar) hizli ve verimlidir. Fakat kucuk veri paketleri daha yavas ve pahali ag-ici hatlara sahip genis alan aglarda arzu edilmez cunku asiri yuk ekler. Yerel aglarda iPX TCP/iP'den daha verimlidir. SPX/iPX kisiler tarafindan tayin edilen bagimsiz ag adreslerine bel baglamaz ve yuklenmesi ve kullanmasi TCP/iP'den daha kolaydir. (Frank J.* Network Sistemleri ve Bilgisayar baglanti kilavuzu*s. 55* 56* 57* 58* 172* 173* 174)
2. TCP/iP Protokolu
TCP/iP* birbirinden farkli yapida aglarin iletisimini saglayan* ayni zamanda internet'te kullanilan en yaygin protokoldur. TCP/iP ismini icinde yer alan en onemli iki alt protokolden alir. TCP (Transmission Control Protocol ) ve iP (internet Protocol). (internet)
TCP/iP protokolu A.B.D.'de Department Defense (DoD) tarafindan binlerce farkli bilgisayari birbirine baglamak icin gelistirilmis acik bir standarttir. SPX/iPX gibi TCP/iP de bir tek protokol degildir* fakat iletisim hizmetlerini kontrol etmek uzere tasarlanmis bir protokoller takimidir. SPX/iPX'in aksine TCP/iP gercek anlamda heterojen aglarda degisik tipte bilgisayarlar arasinda iletisimi saglamak icin tasarlanmistir.
TCP (Transmission Control Protocol )* gonderilen bilgilerin yerine ulasmasindan sorumludur. iP (internet Protocol)* iP paketlerinin (datagram) olusturulmasi ve adres bilgilerinin yerlestirilmesi ile ilgilenir* hata kontrolu ve duzeltilmesi gibi islemleri TCP'ye birakmistir. Bunun yaninda datagramlarin yonlendirilmesinden sorumludur. (internet)
TCP/iP'nin iP bolumu ag dugumleri arasinda adreslemeyi ele alir. iPX ve iP'nin her ikisi de verinin gonderilme alinma mekanizmalarini saglar. iPX gibi iP'de verinin teslimatini garanti etmez. iP'nin basit ama cok onemli bir faydasi ag-ici bir hatta buyuk veri bloklarini verimli bir sekilde tasiyabilmesidir. Bir iP paketi 65.535 byte'a kadar cikabilir ve bu da bir iPX paketinin yuz katindan fazladir.
Bir iP paketinde (Datagram) gonderilecek bilginin yani sira* o paketin uzunlugu ve gidecegi noktanin 32bit'ten olusan iP adresi yer alir. iP adresleri 8 bitlik 4 kisima ayrilir ve bu 8 bit 0-255 arasi bir sayi ile gosterilir. ornek iP adresi olarak 192.168.10.1 verilebilir. Bu iP adresleme sistemi iP v4 olarak adlandirilir. iP adresleri Class A* Class B ve Class C olarak adlandirilan uc sinifa ayrilmistir. Class A sinifi adresler* 0.0.0.0 ile 127.255.255.255 arasinda degisir. Bu adresler 65534'den fazla kullanicili aglar icin kullanilir. Class B sinifi adresler* 128.000 ile 191.255.255.255 arasinda degisir ve 255 ile 65534 kullanici arasinda degisen aglar icin kullanilirlar. Class C sinifi adresler 255'ten az sayida kullanicili aglar icin ayrilmistir ve 192.0.0.0 ile 223.255.255.255 arasinda degisir.
Her iP adresinin bir de Netmask Adresi bulunur. Genelde Class C sinifi icin kullanilan Netmask Adresi 255.255.255.0 dir. 10-15 kullanicili aglar icin bir Class C sinifi adres vermek diger adreslerin bosa gitmesi anlamina gelmektedir. Netmask Adresleri degistirilerek Class C sinifi adresler bolunmekte ve zaten kisitli olan iP adresleme sistemi daha verimli olarak kullanilabilmektedir. Bu isleme Subnetting adi verilir. iP ve adreslerin tukenmesi durumunda iP v6 adi verilen yeni bir adresleme sistemi gundemdedir. (internet)
TCP/iP protokolu iP paketlerini kapsuller ve iletisim hizmetlerine baglanmayi saglarlar. TCP ayni zamanda iP de olmayan teslim etme garantisini de saglar. FTP* Telnet ve SMTP gibi diger TCP/iP hizmet ve yardimci programlarinin hepsi veri tasimak icin isteklerini TCP'ye bildirir. Netware LAN'larda cok az kullanilan SPX'in aksine* TCP TCP/iP ortaminda cogu uygulamalar tarafindan kullanilir cunku onlarin yaraticilari daha az guvenilir baglantilarda calismayi beklemislerdir.
TCP/iP'nin en onemli noktalarindan biri de yonlendirme islemidir. Router'lar bunyelerinde bulunan adres tablolarindaki adresler ile kendilerine gelen iP paketindeki adres arasinda karsilastirma yapar. Bu adres yerel bir kullaniciya ait ise yonlendirme yapilmaz* farkli bir aga ait ise o aga yonlendirilir. Eger adres tablosunda yer almiyorsa Default Gateway adi verilen adrese yonlendirilir. ornek olarak; internet'te* bir adres internet Router'inin adres tablosunda yoksa default gateway olarak tanimlanan daha buyuk adres tablosuna sahip bir Router'a yonlendirilir. Bu zincir tum internet'e bagli adreslerin tutuldugu omurga Router'lara kadar gidebilmektedir.(internet)
TCP pencereleme adli bir teknikle verimliligi artirir. Bununla butun paketlerin alindi-bildirimini pencerede izlerken belirli sayida paket iletebilir. Penceredeki paketlerin sayisi iletisimin basari derecesine gore degisir. Netware ayni genel prensibi kullanan paket patlama adli benzer bir ozellik icerir; bununla beraber paket patlama yuksek seviyeli Netware Core Portokolunun bir parcasidir* SPX veya iPX'in degil.
TCP/iP'nin SPX/iPX'e gore en belirgin avantaji milyonlarca farkli bilgisayari bir kuresel ag uzerinden birlestirebilme yetenegidir. Yaklasik uc milyon bilgisayarin birbirine bagli oldugu internet TCP/iP'nin gucunu gosteren en iyi ornektir. Agdaki bilgisayarlarin ve hizmetlerin takibini yayin teknigi ile yapan SPX/iPX'ten farkli olarak * TCP/iP bir dizi esi olmayan 32-bit adres kullanir. Bir TCP/iP aginda her dugumun tek bir adresi olmalidir ve organizasyonda bir kisi tayin edilen bu adresleri takip etmelidir.
Pratikte* SPX/iPX yuksek hizda* guvenilir iletisim cihazlari ile baglanmis PC-tabanli LAN'lar veya WAN'lar icin kendini kanitlamis bir standarttir. TCP/iP daha dusuk islem gucu ve guvenirligi olan genisletilmis aglar uzerinden farkli bilgisayar sistemlerinin baglanilmasinda tercih edilir. TCP/iP'nin en cazip tarafi sistemleri birbirine baglama yetenegidir.
TCP/iP protokolunde tum bilgisayarlar 32 bitlik "ozgun" bir iP numarasina sahip olacak sekide adreslenirler (buradan cikarilabilecek teorik bir sonuc ise internete ayni anda bagli olabilecek bilgisayar sayisinin en fazla 232 = 4*294*967*296 olabilecegidir) Bunu bir ornekle ele alirsak* internet uzerinde 3*559*735*316 sayisi ile adreslenmis bir bilgisayar dusunelim. Bu sayinin heksadesimal karsiliginin D42D4014 oldugunu kolaylikla hesaplayabiliriz. Bu sekilde bir gosterimin hemen hic kimseye birsey ifade etmeyecegi sanirim oldukca acik bir sekilde gorulmektedir. Bu yuzden su sekilde bir yol izlenir* bu 32 bitlik adres 8 bitlik adresler halinde 4'e ayrilip (D4 2D 40 14 seklinde)* daha alisildik bir sayi sistemiyle calisabilmek icin desimale cevrilirler (0xD4 = 212* 0x2D = 45* 0x40 = 64 ve 0x14=20). Bu gosterim son olarak aralara konan bir nokta ile birlestirilir ve sonuc olarak iP numarasi olarak tanimlanan notasyona ulasilir* yani internet uzerinde 3*559*735*316 sayisi ile adreslenmis bilgisayar 212.45.64.20 iP nolu bilgisayardir. Benzer bir yaklasimi tersten izleyecek olursak A.B.C.D iP nosuna sahip oldugu bilinen bir bigisayarin gercek adresi* A * 224 + B * 216 + C * 28 + D sekline hesaplanir.
ornegimizden yola cikarsak 212.45.64.20 icin gercek adres 212 * 224 + 45 * 216 + 64 * 28 + 20 = 3*559*735*316 'dir.
iP numarasinin bu sekildeki gosterilimi aslinda internet trafiginin yonunun nasil bulundugu konusunda hicbirsey ifade etmez elbette* bir yigin halinde bulunan 4 milyarin uzerindeki adresin bir kisim gruplara ayrilmasi zorunludur. Trafigin yonunun belirlenmesi ancak paketlerin belli iP gruplarindan gelmesi ve belli gruplara yonelmesi ile mumkun olabilecektir. Bu durumda her iP paketi* kendi numarasinin bagli oldugu gruplar icin tanimlanmis kurallara gore hareket eder. Yapilan gruplama islemine ise subnetting adi verilir. Bu islem sirasinda iP adresi ait oldugu grubu ve bu grubun uyeleri arasinda kacinci sirada oldugunu belirtmek uzere iki kisma ayrilir. ilk kisma network numarasi* ikinci kisma ise uc
Adresin adi verilir ve islem su sekilde gerceklesir.
Tum internet iP blogunu 255 kisma ayirmayi istedigimizi dusunelim* bu gruplama sonucunda ortaya cikacak iP numaralarinin 1.x.y.z* 2.x.y.z* ……*255.x.y.z seklinde olacagi kolay bir akil yurutme ile gorulebilmektedir. Bu tanimlamada elde edilen iP numaralarinin olusturdugu bloklarin her birine subnet veya network adi verilmektedir ve 1.0.0.0 networku* 2.0.0.0 network'u vs seklinde telaffuz edilmektedir. Bu durumda ornegin 2 ile baslayan butun iP numaralarinin (2.x.y.z) 2.0.0.0 networku'nun parcasi oldugu kolayca anlasilabilir. Dikkati cekmesi gereken bir nokta elde edilen bloklarin hala devasa boyularda olduklaridir (224 = 16*777*216) ve bu bloklar kendi iclerinde daha fazla bolunmeye tabi tutulabilirler* ornegin 1.0.0.0 networku'nu 1.0.0.0* 1.1.0.0* ….. 1.254.0.0* 1.255.0.0 seklinde 255 ayri networke ayirmak da mumkundur* ayni sekilde 1.1.0.0 networku'nu de 1.1.1.0* 1.1.2.0*…..1.1.255.0 vs seklinde daha da kucultmek mumkundur* bu isleme her blokta 2 hatta 1 iP kalincaya kadar devam edilebilir. Burada onemli nokta bu blok buyuklerinin ihtiyaca gore belirlenmesi geregi ve her blogun bir ust blogun alt kumesi olmasidir. Daha detayli aciklarsak* 1.0.0.0 networkunden bahsediyor iseniz otomatik olarak 1.1.0.0 networkunden ve 1.10.5.0
networkunden de bahsediyorunuz demektir.
iP numarasini network numarasi ve uc adresi olarak ikiye boldugumuzu yukarida soylemistik* bunlari orneklerle aciklaylim* test amaciyla sectigimiz 212.45.64.20 iP numarasindan yola cikarsak* bu iP'nin hem 212.0.0.0 hem 212.45.0.0 hem de 212.45.64.0 networklerinde yer alan bir iP oldugu soylenebilir. Burada kritik nokta network numarasi olarak hangisinin alinacagi (212* 212.45* 212.45.64) daha da onemlisi buna nasil karar verilecegidir. Acikca gorulen odur ki bunu bilmek yalnizca iP numarasi ile mumkun olmamaktadir. Bu nedenle iP numarasinin hangi bitlerinin network numarasinini temsil ettigini* hangilerinin ise uc adresini olusturdugunu tanimlayacak baska bir bilgiye ihtiyac duyulmaktadir. Buna "subnet mask" adi verilmektedir. cogu zaman kullanicilarin kafasini karistirmakla beraber aslinda anlami ve kullanimi son derece aciktir.
Subnet mask'i network numarasinin bulundugu bit pozisyonlarinda 1* kalan pozisyonlarda 0 bulunduran bir sayi olarak tarif edebiliriz.
ornegin 212.45.64.20 iP'sini alt bolumlemeye gitmeden 212.0.0.0 blogunun bir parcasi olarak gormek istiyorsak* network adresini yalnizca ilk 8 bitin olusturdugunu soyluyoruz demektir. Bu durumda subnet maskimiz 8 tane 1 ve 24 tane 0 'dan olusacaktir (toplam 32'yi verecek sekilde).
Subnet mask (binary) : 11111111 00000000 000000000 0000000
Subnet mask (desimal) : 255 0 0 0
Subnet mask : 255.0.0.0
Ya da 212.45.0.0 blogunun bir parcasi olmasini istiyorsak* bu kez network adresini ilk 16 biti ile tanimlamamiz gerekecektir* bu durumda subnet mask 16 tane 1 ve 16 tane 0'dan olusacaktir.
Subnet mask (binary) : 11111111 11111111 000000000 0000000
Subnet mask (desimal) : 255 255 0 ; 0
Subnet mask : 255.255.0.0
Son olarak* 212.45.64.0 blogu icin ayni hesaplamayi yaparsak* network adresi ilk 24 bitte bulunacaktir. Subnet mask ise 24 tane 1 ve 8 tane 0'dan olusacaktir.
Subnet mask (binary) : 11111111 11111111 11111111 0000000
Subnet mask (desimal) : 255 255 255 0
Subnet mask : 255.255.255.0
Burada subnet mask'i belitrmek icin kullanilan farkli bir yontemden bahsetmek gerekir* bu da "/" ayraci ile iP numarasina ya da network numarasina eklenen bir sayidir (212.45.64.20/25 veya 212.45.64.0/19 gibi). Burada verilen sayi subnet maskta ilk kac bitin 1 oldugunu gosterir. ornegin /8* 8 tane 1* 24 tane 0 anlatir* bu da 255.0.0.0 netmaskinin esdegeridir* yine benzer sekilde /16* 16 tane 1* 16 tane sifiri tanimladigi icin 255.255.0.0'in* /24 de 255.255.255.0'in esdeger gosterimleridir. (internet)
2.1 TCP/iP Katmanlari
TCP/iP katmanlardan olusan bir protokoller kumesidir. Her katman degisik gorevlere sahip olup altindaki ve ustundeki katmanlar ile gerekli bilgi alisverisini saglamakla yukumludur. Asagidaki sekilde bu katmanlar bir blok sema halinde gosterilmektedir.
TCP/iP katmanlarinin tam olarak ne oldugu* nasil calistigi konusunda bir fikir sahibi olabilmek icin bir ornek uzerinde inceleyelim:
TCP/iP nin kullanildigi en onemli servislerden birisi elektronik postadir (e-posta). E- posta servisi icin bir uygulama protokolu belirlenmistir (SMTP). Bu protokol e- posta'nin bir bilgisayardan bir baska bilgisayara nasil iletilecegini belirler. Yani e- postayi gonderen ve alan kisinin adreslerinin belirlenmesi* mektup iceriginin hazirlanmasi vs. gibi. Ancak e-posta servisi bu mektubun bilgisayarlar arasinda nasil iletilecegi ile ilgilenmez* iki bilgisayar arasinda bir iletisimin oldugunu varsayarak mektubun yollanmasi gorevini TCP ve iP katmanlarina birakir. TCP katmani komutlarin karsi tarafa ulastirilmasindan sorumludur. Karsi tarafa ne yollandigi ve hatali yollanan mesajlarin tekrar yollanmasinin kayitlarini tutarak gerekli kontrolleri yapar. Eger gonderilecek mesaj bir kerede gonderilemeyecek kadar buyuk ise (ornegin uzunca bir e-posta gonderiliyorsa) TCP onu uygun boydaki segment'lere (TCP katmanlarinin iletisim icin kullandiklari birim bilgi miktari) boler ve bu segment'lerin karsi tarafa dogru sirada* hatasiz olarak ulasmalarini saglar. internet uzerindeki tek servis e-posta olmadigi icin ve segment'lerin karsi tarafa hatasiz ulastirilmasini saglayan iletisim yontemine tum diger servisler de ihtiyac duydugu icin TCP ayri bir katman olarak calismakta ve tum diger servisler onun uzerinde yer almaktadir. Boylece yeni bir takim uygulamalar da daha kolay gelistirilebilmektedir. ust seviye uygulama protokollerinin TCP katmanini cagirmalari gibi benzer sekilde TCP de iP katmanini cagirmaktadir. Ayrica bazi servisler TCP katmanina ihtiyac duymamakta ve bunlar direk olarak iP katmani ile gorusmektedirler. Boyle belirli gorevler icin belirli hazir yordamlar olusturulmasi ve protokol seviyeleri insa edilmesi stratejisine 'katmanlasma' adi verilir. Yukarida verilen ornekteki e- posta servisi (SMTP)* TCP ve iP ayri katmanlardir ve her katman altindaki diger katman ile konusmakta diger bir deyisle onu cagirmakta ya da onun sundugu servisleri kullanmaktadir. En genel haliyle TCP/iP uygulamalari 4 ayri katman kullanir. Bunlar:
- Bir uygulama protokolu* mesela e-posta
- ust seviye uygulama protokollerinin gereksinim duydugu TCP gibi bir protokol katmani
- iP katmani. Gonderilen bilginin istenilen adrese yollanmasini saglar.
- Belirli bir fiziksel ortami saglayan protokol katmani. ornegin Ethernet* seri hat* X.25 vs.
2.1.1 TCP katmani
TCP'nin ("transmission control protocol-iletisim kontrol protokolu") temel islevi* ust katmandan (uygulama katmani) gelen bilginin segmentler haline donusturulmesi* iletisim ortaminda kaybolan bilginin tekrar yollanmasi ve ayri siralar halinde gelebilen bilginin dogru sirada siralanmasidir. iP ("internet protocol") ise tek* tek datagramlarin yonlendirilmesinden sorumludur. Bu acidan bakildiginda TCP katmaninin hemen* hemen tum isi ustlendigi gorulmekle beraber (kucuk aglar icin bu dogrudur) buyuk ve karmasik aglarda iP katmani en onemli gorevi ustlenmektedir. Bu gibi durumlarda degisik fiziksel katmanlardan gecmek* dogru yolu bulmak cok karmasik bir is halini almaktadir.
Birden fazla kisinin ayni sisteme ulasmak istemesi durumunda neler olacak? Dogal olarak bir segment'i dogru varis noktasina ulastirmak tek basina yeterli degildir. TCP bu segment'in kime ait oldugunu da bilmek zorundadir. "Demultiplexing" bu soruna care bulan yontemdir. TCP/iP 'de degisik seviyelerde "demultiplexing" yapilir. Bu islem icin gerekli bilgi bir seri "baslik" (header) icinde bulunmaktadir. Baslik* datagram'a eklenen basit bir kac octet'den olusan bir bilgiden ibarettir. Yollanmak istenen mesaji bir mektuba benzetecek olursak baslik o mektubun zarfi ve zarf uzerindeki adres bilgisidir. Her katman kendi zarfini ve adres bilgisini yazip bir alt katmana iletmekte ve o alt katmanda onu daha buyuk bir zarfin icine koyup uzerine adres yazip diger katmana iletmektedir. Benzer islem varis noktasinda bu sefer ters sirada takip edilmektedir.
Bir ornek vererek aciklamaya calisirsak: Asagidaki noktalar ile gosterilen satir bir noktadan diger bir noktaya gidecek olan bir dosyayi temsil etsin*
ooooooooooooooo
TCP katmani bu dosyayi tasinabilecek buyuklukteki parcalara ayirir:
ooo ooo ooo ooo ooo
Her segment'in basina TCP bir baslik koyar. Bu baslik bilgisinin en onemlileri 'port numarasi' ve 'sira numarasi' dir. Port numarasi* ornegin birden fazla kisinin ayni anda dosya yollamasi veya karsidaki bilgisayara baglanmasi durumunda TCP'nin herkese verdigi farkli bir numaradir. uc kisi ayni anda dosya transferine baslamissa TCP* 1000* 1001 ve 1002 "kaynak" port numaralarini bu uc kisiye verir boylece herkesin paketi birbirinden ayrilmis olur. Ayni zamanda varis noktasindaki TCP de ayrica bir "varis" port numarasi verir. Kaynak noktasindaki TCP nin varis port numarasini bilmesi gereklidir ve bunu iletisim kuruldugu anda TCP karsi taraftan ogrenir. Bu bilgiler basliktaki "kaynak" ve "varis" port numaralari olarak belirlenmis olur. Ayrica her segment bir "sira" numarasina sahiptir. Bu numara ile karsi taraf dogru sayidaki segmenti eksiksiz alip almadigini anlayabilir. Aslinda TCP segmentleri degil octet leri numaralar. Diyelim ki her datagram icinde 500 octet bilgi varsa ilk datagram numarasi 0* ikinci datagram numarasi 500* ucuncusu 1000 seklinde verilir. Baslik icinde bulunan ucuncu onemli bilgi ise "kontrol toplami" (Checksum) sayisidir. Bu sayi segment icindeki tum octet ler toplanarak hesaplanir ve sonuc basligin icine konur. Karsi noktadaki TCP kontrol toplami hesabini tekrar yapar. Eger bilgi yolda bozulmamissa kaynak noktasindaki hesaplanan sayi ile varis noktasindaki hesaplanan sayi ayni cikar. Aksi takdirde segment yolda bozulmustur bu durumda bu datagram kaynak noktasindan tekrar istenir.
2.1.2 iP katmani
TCP katmanina gelen bilgi segmentlere ayrildiktan sonra iP katmanina yollanir. iP katmani* kendisine gelen TCP segmenti icinde ne oldugu ile ilgilenmez. Sadece kendisine verilen bu bilgiyi ilgili iP adresine yollamak amacindadir. iP katmaninin gorevi bu segment icin ulasilmak istenen noktaya gidecek bir "yol" (route) bulmaktir. Arada gecilecek sistemler ve gecis yollarinin bu paketi dogru yere gecirmesi icin kendi baslik bilgisini TCP katmanindan gelen segment'e ekler. TCP katmanindan gelen segmentlere iP basliginin eklenmesi ile olusturulan iP paket birimlerine datagram adi verilir. iP basligi eklenmis bir datagram asagidaki cizimde gosterilmekted
iP Datagram
iP basligini "i" ile gosterecek olursak iP katmanindan cikan ve TCP verisi tasiyan bir datagram su hale gelir:
iT...iT...iT...iT...iT...
Basliktaki "Yasam suresi" (Time to Live) alani iP paketinin yolculugu esnasinda gecilen her sistemde bir azaltilir ve sifir oldugunda bu paket yok edilir. Bu sayede olusmasi muhtemel sonsuz donguler ortadan kaldirilmis olur. iP katmaninda artik baska baslik eklenmez ve iletilecek bilgi fiziksel iletisim ortami uzerinden yollanmak uzere alt katmana (bu Ethernet* X.25* telefon hatti vs. olabilir) yollanir.
2.1.3 Fiziksel katman
Ethernet kendine has bir adresleme kullanir. Ethernet tasarlanirken dunya uzerinde herhangi bir yerde kullanilan bir Ethernet kartinin tum diger kartlardan ayrilmasini saglayan bir mantik izlenmistir. Ayrica* kullanicinin Ethernet adresinin ne oldugunu dusunmemesi icin her Ethernet karti fabrika cikisinda kendisine has bir adresle piyasaya verilmektedir. Her Ethernet kartinin kendine has numarasi olmasini saglayan tasarim 48 bitlik fiziksel adres yapisidir. Ethernet kart ureticisi firmalar merkezi bir otoriteden uretecekleri kartlar icin belirli buyuklukte numara bloklari alir ve uretimlerinde bu numaralari kullanirlar. Boylece baska bir ureticinin karti ile bir cakisma meydana gelmez. Ethernet teknoloji olarak yayin teknolojisini (broadcast medium) kullanir. Yani bir istasyondan Ethernet ortamina yollanan bir paketi o Ethernet agindaki tum istasyonlar gorur. Ancak dogru varis noktasinin kim oldugunu* o ag'a bagli makinalar Ethernet basligindan anlarlar. Her Ethernet paketi 14 octet'lik bir basliga sahiptir. Bu baslikta kaynak ve varis Ethernet adresi ve bir tip kodu vardir. Dolayisiyla ag uzerindeki her makina bir paketin kendine ait olup olmadigini bu basliktaki varis noktasi bilgisine bakarak anlar (Bu Ethernet teknolojisindeki en onemli guvenlik bosluklarindan birisidir). Bu noktada Ethernet adresleri ile internet adresleri arasinda bir baglanti olmadigini belirtmekte yarar var. Her makina hangi Ethernet adresinin hangi internet adresine karsilik geldigini tutan bir tablo tutmak durumundadir (Bu tablonun nasil yaratildigi ilerde aciklanacaktir). Tip kodu alani ayni ag uzerinde farkli protokollerin kullanilmasini saglar. Dolayisiyla ayni anda TCP/iP* DECnet* iPX/SPX gibi protokoller ayni ag uzerinde calisabilir.
Her protokol basliktaki tip alanina kendine has numarasini koyar. Kontrol toplami (Checksum) alanindaki deger ile komple paket kontrol edilir. Alici ve vericinin hesapladigi degerler birbirine uymuyorsa paket yok edilir. Ancak burada kontrol toplami basligin icine degil de paketin sonuna konulur. Ethernet katmaninda islenip gonderilen mesaj ya da bilginin (Bu bilgi paketlerine frame adi verilir) son hali asagidaki duruma gelir:
Ethernet Paketi
Ethernet basligini "E" ile ve Kontrol toplamini "C" ile gosterirsek yolladigimiz dosya su sekli alir:
EiT...C EiT...C EiT...C EiT...C EiT...C
Bu paketler (frame) varis noktasinda alindiginda butun basliklar uygun katmanlarca atilir. Ethernet arayuzu Ethernet baslik ve kontrol toplamini atar. Tip koduna bakarak protokol tipini belirler ve Ethernet cihaz surucusu (device driver) bu datagram'i iP katmanina gecirir. iP katmani kendisi ile ilgili katmani atar ve protokol alanina bakar* protokol alaninda TCP oldugu icin segmenti TCP katmanina gecirir. TCP sira numarasina bakar* bu bilgiyi ve diger bilgileri iletilen dosyayi orijinal durumuna getirmek icin kullanir. Sonucta bir bilgisayar diger bir bilgisayar ile iletisimi tamamlar. (internet)
ozet Olarak bu protokol UNiX isletim sisteminin on tanimli protokoludur. iki protokolden olusur. TCP(Transmission Control Protocol) ve iP(internet Protocol). Bunlardan TCP tasinacak paketin nasil tasinacagindan* buyuklugunden ve guvenliginden sorumludur. iP ise paketin nereye ve hangi yollardan tasinacagindan sorumludur. Bu protokollerin ozelliklerini soyle siralayabiliriz:
1.Dunyada en cok kabul goren ve genellikle internet uygulamalarinda kullanilan bir protokoldur.
2.Sunucu/istemci mantigina en yakin protokoldur.
3.Paketlerin kucuk olmasi nedeniyle yerel agda pek tercih edilmeyen bir protokoldur.
4.Yonlendirilebilir bir protokoldur.
5.Yapilandirilmasi oldukca zordur.
6.Paketlerin tasinmasinda meydana gelebilecek bozukluklari anlayip* bozulan kismi sunucudan tekrar isteyebilmesi* guvenli bir protokol olmasini saglar.
7.Diger protokolleri tasiyabilmesi* cok amacli bir protokol olma ozelligi katar.(Teknik Egitim Ders notlari)
3. Ethernet encapsulation: ARP
internet adresi ile iletisime gecmek icin hangi Ethernet adresine ulasmamiz gerektigini belirlemek amaciyla kullanilan protokol ARP'dir ("Address Resolution Protocol"). ARP aslinda bir iP protokolu degildir ve dolayisiyla ARP datagramlari iP basligina sahip degildir. Varsayalim ki bilgisayariniz 128.6.4.194 iP adresine sahip ve siz de 128.6.4.7 ile iletisime gecmek istiyorsunuz. Sizin sisteminizin ilk kontrol edecegi nokta 128.6.4.7 ile ayni ag uzerinde olup olmadiginizdir. Ayni ag uzerinde yer aliyorsaniz* bu Ethernet uzerinden direk olarak haberlesebileceksiniz anlamina gelir. Ardindan 128.6.4.7 adresinin ARP tablosunda olup olmadigi ve Ethernet adresini bilip bilmedigi kontrol edilir. Eger tabloda bu adresler varsa Ethernet basligina eklenir ve paket yollanir. Fakat tabloda adres yoksa paketi yollamak icin bir yol yoktur. Dolayisiyla burada ARP devreye girer. Bir ARP istek paketi ag uzerine yollanir ve bu paket icinde "128.6.4.7" adresinin Ethernet adresi nedir sorgusu vardir. Ag uzerindeki tum sistemler ARP istegini dinlerler bu istegi cevaplandirmasi gereken istasyona bu istek ulastiginda cevap ag uzerine yollanir. 128.6.4.7 istegi gorur ve bir ARP cevabi ile "128.6.4.7 nin Ethernet adresi 8:0
1:56:34" bilgisini istek yapan istasyona yollar. Bu bilgi* alici noktada ARP tablosuna islenir ve daha sonra benzer sorgulama yapilmaksizin iletisim mumkun kilinir. Ag uzerindeki bazi istasyonlar surekli agi dinleyerek ARP sorgularini alip kendi tablolarini da guncelleyebilirler.
4. TCP disindaki diger protokoller: UDP ve iCMP
Yukarida sadece TCP katmanini kullanan bir iletisim turunu acikladik. TCP gordugumuz gibi mesaji segment'lere bolen ve bunlari birlestiren bir katmandi. Fakat bazi uygulamalarda yollanan mesajlar tek bir datagram'in icine girebilecek buyukluktedirler. Bu cins mesajlara en guzel ornek adres kontroludur (name lookup). internet uzerindeki bir bilgisayara ulasmak icin kullanicilar internet adresi yerine o bilgisayarin adini kullanirlar. Bilgisayar sistemi baglanti kurmak icin calismaya baslamadan once bu ismi internet adresine cevirmek durumundadir. internet adreslerinin isimlerle karsilik tablolari belirli bilgisayarlar uzerinde tutuldugu icin kullanicinin sistemi bu bilgisayardan bu adresi sorgulayip ogrenmek durumundadir. Bu sorgulama cok kisa bir islemdir ve tek bir segment icine sigar. Dolayisiyla bu is icin TCP katmaninin kullanilmasi gereksizdir. Cevap paketinin yolda kaybolmasi durumunda en kotu ihtimalle bu sorgulama tekrar yapilir. Bu cins kullanimlar icin TCP nin alternatifi protokoller vardir. Boyle amaclar icin en cok kullanilan protokol ise UDP'dir(User Datagram Protocol).
UDP datagramlarin belirli siralara konmasinin gerekli olmadigi uygulamalarda kullanilmak uzere dizayn edilmistir. TCP'de oldugu gibi UDP'de de bir baslik vardir. Ag yazilimi bu UDP basligini iletilecek bilginin basina koyar. Ardindan UDP bu bilgiyi iP katmanina yollar. iP katmani kendi baslik bilgisini ve protokol numarasini yerlestirir (bu sefer protokol numarasi alanina UDP'ye ait deger yazilir). Fakat UDP TCP'nin yaptiklarinin hepsini yapmaz. Bilgi burada datagramlara bolunmez ve yollanan paketlerin kayidi tutulmaz. UDP'nin tek sagladigi port numarasidir. Boylece pek cok program UDP'yi kullanabilir. Daha az bilgi icerdigi icin dogal olarak UDP basligi TCP basligina gore daha kisadir. Baslik* kaynak ve varis port numaralari ile kontrol toplamini iceren tum bilgidir.
Diger bir protokol ise iCMP'dir ("internet Control Message Protocol"). iCMP* hata mesajlari ve TCP/iP yaziliminin bir takim kendi mesaj trafigi amaclari icin kullanilir. Mesela bir bilgisayara baglanmak istediginizde sisteminiz size "host unreachable" iCMP mesaji ile geri donebilir. iCMP ag hakkinda bazi bilgileri toplamak amaci ile de kullanilir. iCMP yapi olarak UDP'ye benzer bir protokoldur. iCMP de mesajlarini sadece bir datagram icine koyar. Bununla beraber UDP'ye gore daha basit bir yapidadir. Baslik bilgisinde port numarasi bulundurmaz. Butun iCMP mesajlari ag yaziliminin kendisince yorumlanir* iCMP mesajinin nereye gidecegi ile ilgili bir port numarasina gerek yoktur. iCMP 'yi kullanan en populer internet uygulamasi PiNG komutudur. Bu komut yardimi ile internet kullanicilari ulasmak istedikleri herhangi bir bilgisayarin acik olup olmadigini* hatlardaki sorunlari aninda test etmek imkanina sahiptirler. su ana kadar gordugumuz katmanlari ve bilgi akisinin nasil oldugunu asagidaki sekilde daha acik izleyebiliriz. (internet)
Katmanlar arasi bilgi akisi
5. NETBEUi Protokolu
iBM tarafindan gelistirilmis ve Microsoft'un yerel aglar icin tercih ettigi bir protokoldur. Bazi ozellikleri sunlardir:
1.20-30 bilgisayardan olusmus kucuk LAN'lar icin gelistirilmistir.
2.Yonlendirilemeyen protokoldur.
3.istemci/sunucu mantigina uymaz.
4.Buyuk paketlerin tasinmasi* yerel aglarda tercih edilmesine yol acar.
5.Yapilandirilmasi oldukca kolaydir.(Teknik egitim Ders notlari)
Bu protokol 20-200bilgisayardan olusan kucuk LAN'lar icin gelistirilmis bir protokoldur. Gateway'ler (gecit) araciligiyla diger LAN segmentlerine ve mainframe'lere baglanir. Ancak NetBEUi protokolu routable (yonlendirilebilir) degildir. Bu nedenle NetBEUi kullanan iki bilgisayar birbirine routing'le degil* bridging'le baglanir.
6.NWLink Protokolu
Nowell iPX/SPX protokolunun NDiS uyumlu olanidir. ozellikle Netware ile olan baglantida kullanilir. NWLink sadece bir protokoldur. Netware server'de bulunan bir dosyaya ya da yaziciya dogrudan ulasimi saglamaz. NWLink yaygin olarak kullanilir. Buyuk alanlarda ve cok sayida istemciye kapsayabilir. (cubukcu* Her yonuyle Windows NT*s.339)