İnternet iletişim kuralları dizisi

Vikipedi, özgür ansiklopedi
Şuraya atla: kullan, ara
İnternet iletişim kuralları dizisi

OSI Modeli

Katman İletişim kuralları
7. Uygulama katmanı HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ...
6. Sunum katmanı ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ...
5. Oturum katmanı NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ...
4. Ulaşım katmanı TCP, UDP, SCTP, DCCP, ...
3. Ağ katmanı IP, IPv4, IPv6, ICMP, ARP, IGMP, IPX,...
2. Veri bağlantısı katmanı Ethernet, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP...
1. Donanım katmanı ISDN, RS-232, EIA-422, RS-449, EIA-485, ...

İnternet protokol takımı, bilgisayarlar ve cihazları arasında iletişimi sağlamak amacıyla standart olarak kabul edilmiş kurallar dizisidir. Bu kurallar dizisi temel olarak verinin ağ üzerinden ne şekilde paketleneceğini ve iletilen veride hata olup olmadığının nasıl denetleneceğini belirlemektedir.

Ağ kavramının ortaya çıkmasından günümüze kadar geçen sürede farklı amaçlar için birçok protokol geliştirilmiştir. Bu protokoller ilk zamanlar belli bir standarda uygun olarak geliştirilmemiş, genelde bilgisayar donanımlarına bağlı kullanılacak şekilde tasarlanmışlardır. Bu dönemde ağ yapıları donanım üreticileri tarafından kendilerine has bir biçimde geliştirilmekteydi. Bu yapılara örnek olarak IBM 'in SNA ve DEC 'in DECnet ağları verilebilir. Bu şekilde tanımlanan protokoller ve donanımlar iletişimde bir ortak noktanın bulunması ve ağlar için yazılımların geliştirilmesinde sorun oluşturmuştur. Ortaya çıkan bu sorunun çözümü olarak 1978 yılında ISO (International Organization for Standardization - Uluslararası Standartlık Örgütü) tarafından, donanımdan ve ağ alt yapısından bağımsız olarak geliştirilmiş OSI (Open Systems Interconnection) başvuru modeli ortaya konmuştur. Bu yapısı ile OSI başvuru modeli bir standart olarak kabul görülmüş ve hızlı bir şekilde gelişme göstermiştir.

İnternet iletişim kuralları, internet ve benzeri bilgisayar ağları üzerinde kullanılan iletişim kuralları ve bilgisayar ağ modeli ve kümesidir. Genel olarak TCP/IP olarak bilinir çünkü bunlar; İletim Kontrol Protokolü (TCP) ve Internet Protokolü (IP) olarak bu standartta tanımlanmış ilk internet iletişim kurallarıdır. Bunun yanında bunlar, Amerika Birleşik Devletleri Savunma Bakanlığı’nın bir alt kolu olan DARPA’nın finanse ettiği ağ bağlantısının geliştirilmesi nedeniyle orijinal olarak DoD olarak bilinen internet modeli olarakta tanımlanır.

TCP / IP verinin, hedefe doğru nasıl paketlendiğini nasıl iletildiğini, hedefe nasıl yönlendirildiğini ve nasıl ulaştırıldığını alarak uçtan uca bağlantı sağlar. Bu işlevsellik ilişki ağlarının kapsamına göre, ilgili tüm protokolleri sıralamak için kullanılan dört soyutlama katmanları halinde düzenlenmiştir. En düşükten en yükseğe göre bu katmanlar, tek bir ağ kesimi (bağlantı) için iletişim teknolojilerini içeren, bağlantı katmanı; internetworking'i kurulması, bağımsız ağlar arasında ana bağlayan internet katmanı; taşıma katmanı taşıma host-to-host iletişimi ve süreçten sürece uygulama veri alışverişi sağlayan uygulama katmanıdır.

TCP / IP modeli ve ilgili iletişim kuralları modelleri Internet Engineering Task Force (IETF) tarafından yapılmaktadır.

Tarihi - Önceki Araştırmalar[değiştir | kaynağı değiştir]

İnternet protokol takımı 1960'ların sonunda İleri Araştırma Projeleri Savunma Ajansı (Defense Advanced Research Projects Agency) (DARPA) tarafından yapılan araştırma ve geliştirme sonucu ortaya çıkmıştır. 1969 yılında öncü olarak başlatılan ARPANET sonrasında DARPA diğer veri iletim teknolojileri bir dizi çalışma başlattı. 1972 yılında, Robert E. Kahn uydu paket ağları ve yer tabanlı paket telsiz ağları üzerine çalıştığı ve aynı zamanda genel olarak iletişim kurabilmenin değerininin farkına vardığı DARPA Bilgi İşleme Teknolojisi Ofisi’ne katıldı. 1973 baharında, Vinton Cerf, mevcut ARPANET Ağı Kontrol Programı (NCP) protokolünün geliştiricisi olan Kahn’a, ARPANET için bir sonraki nesil protokol tasarımı amacı ile açık mimari arabağlantı modelleri üzerinde çalışmak için katıldı.

1973 yazında, Kahn ve Cerf, ARPANET olarak, ana güvenilirlik için sorumlu olan ağ yerine, ağ protokolleri arasındaki farkları ortak internetwork protokolü kullanarak gizlenmiş olan temel formüle çalıştı. Cerf bu tasarıma olan önemli etkileri ile Hubert Zimmermann ve Louis Pouzin’i, CYCLADES ağının tasarımcısı olarak tanımlar.

Ağın tasarımı, bu ağın sadece bitiş düğümleri ile diğer tüm istihbarat ağlarının kenarında bulunan trafik yönlendirme fonksiyonlarını vermesi gerektiğini içerir. Basit bir örnek vermek gerekirse; Yerel özelliklere bakılmaksızın ARPANET’e neredeyse herhangi bir ağdan bağlanmak mümkün oldu. Bu şekilde Kahn’ın ilk problemi çözülmüş oldu. Bir popüler ifadesi ise TCP / IP, Cerf ve Kahn'ın çalışmalarının nihai ürününün, "İki teneke kutu ve bir dize." üzerinde çalışacak olmasıdır. (Yıllar sonra şaka olarak, Avian Carriers resmi protokol spesifikasyonu üzerinden IP oluşturulmuş ve başarıyla test edilmiştir.)

Bir yönlendirici olarak adlandırılan bir bilgisayar, her ağa bir arayüz ile sağlanır. Bu paketleri aralarında ileriye ve geriye iletir. Başlangıçta bir yönlendirici ağ geçidi olarak adlandırılan bu terim sonraki süreçte ağ geçitlerinin diğer türleri ile karışıklığı önlemek için değiştirildi.

Özellikler - Specfication[değiştir | kaynağı değiştir]

1973’ten 1974’e kadar Cerf’in Stanford’daki ağ araştırma grubu TCP’in ilk özelliklerinin ortaya çıkması ile sonuçlanan fikir üzerine çalıştı. O zamannın önemli bir teknik etkisi ise o zamanda ortaya çok kez çıkan ve PARC Evrensel Paket protokol paketi üreten Xerox PARC’taki ilk ağ çalışmalarıydı.

DARPA sonra farklı donanım platformları üzerinde protokolün operasyonel sürümlerini geliştirmek için BBN Technologies, Stanford Üniversitesi ve University College London ile sözleşti. Sonrasında ise dört sürüm geliştirilmiştir: TCP v1, v2 TCP, TCP v3 ve IP v3 ve TCP / IP v4. Son protokol bugün hala kullanımdadır.

1975 yılında, TCP / IP haberleşme testi için iki ağ Stanford ve University College London (UCL) arasında yapıldı. Kasım, 1977 yılında ise üç ağ TCP / IP testi ABD, İngiltere ve Norveç'te siteler arasında gerçekleştirilmiştir. Diğer birkaç TCP / IP prototipleri ise 1978 ve 1983 yılları arasında çok sayıda araştırma merkezlerinde geliştirilmiştir. ARPANET’ten TCP/IP’ye olan ağ geçişi ise yeni protokollerin kalıcı olarak aktive edildiği ve bayrak günü olarak kabul edilen 1 Ocak 1983 tarihinde tamamlanmıştır.

Uyarlama - Adoption[değiştir | kaynağı değiştir]

Mart 1982 yılında ABD Savunma Bakanlığı, TCP / IP ‘yi tüm askeri bilgisayarlar için standart ağı olarak ilan etti. 1985 yılında, Internet Danışma Kurulu protokolü teşvik ve artan ticari kullanım için önde gelen (daha sonra İnternet Mimarisi Kurulu olarak değiştirildi) 250 satıcı temsilcilerinin katıldığı bilgisayar endüstrisi için TCP / IP üzerinde üç günlük bir atölye çalışması düzenledi.

1985 yılında, ilk interop konferansı TCP / IP geniş kabulü ile ağ birlikte çalışabilirlik üzerinde yoğunlaştı. Konferans, ilk İnternet aktivistlerinden Dan Lynch tarafından kurulmuştur. Başından itibaren, IBM ve DEC gibi büyük şirketler, toplantıya katıldı. Daha sonra bu konferanslar her yıl tekrar düzenlendi. 1985’ten 1993’e kadar geçen her yıl, katılımcıların sayısı 3 katına yükseldi.

IBM, AT&T ve DEC gibi şirketler SNA, XNS vb,  büyük internet protokollerine sahip olmalarına rağmen TCP/IP’ye uyum sağlayan ilk şirketler oldu. 1984’ten sonra IBM’de Barry Appelman’ın grubu TCP/IP’yi geliştirdi. (Appelman sonra tüm kalkınma çabalarının başkanı olmak için AOL’a taşındı.) Bunlar çalışmalarına devam ederek MVS, VM ve OS / 2 dahil olmak üzere çeşitli IBM sistemlerinin, TCP / IP ürünlerinin akışı elde etmek için bir bağ kurdular. Aynı zamanda, FTP Yazılım ve Wollongong Grup gibi birkaç küçük şirket, DOS ve MS Windows için TCP / IP kümeleri sunmaya başladı. İlk VM / CMS TCP / IP kümesiWisconsin Üniversitesi'nden geldi.

O zamanlard  bu TCP / IP yığınlarının çoğu, birkaç yetenekli programcı tarafından yazılmıştır. Örneğin, FTP Yazılımcısı olan John Romkey MIT PC / IP paketinin yazarıdır. John Romkey’nin PC / IP uygulaması ilk IBM PC TCP / IP yığını olmuştur. Jay Elinsky ve IBM Araştırmacısı Oleg Vishnepolsky TCP / IP VM / CMS ve sırasıyla OS / 2 için kümeler yazmıştır.

TCP / IP yayılması, AT & T’nin kamusal alana UNIX için geliştirilen bir TCP / IP kodunu yerleştirmek için anlaştığı zaman olan haziran 1989 yılında daha da hızlandı. IBM dahil olmak üzere çeşitli sunucular, bu kodu kendi TCP / IP kümelerinin içerisine dahil etti. Birçok şirket Microsoft Windows 95 yerli TCP / IP kümesi yayınlayana kadar Windows için TCP / IP kümelerini sattı. Bu süreç internetin evrimine kadar biraz geç kalsa da diğer internet iletişim kurallarının yok olduğu gibi TCP/IP’nin sunuculuğuna eklenmiştir. Bu protokoller aynı zamanda IBM Systems Ağ Mimarisi (SNA), Açık Sistem Arabağlantı (OSI), Microsoft'un yerli NetBIOS ve Xerox Ağ Sistemleri’ni de içermektedir.(XNS)

Mimari Prensip Kuralları / Key Architectural Principles[değiştir | kaynağı değiştir]

İlk mimari belg olan RFC 1122, katman üzerinde mimari ilkeleri vurgular. End to End Principle; Bu prensip zamanla gelişmiştir. Orijinal açıklaması durumun devamlılığını sağlamak ve köşelerde bulunan bilginin bir uçtan bir uca transferii sağlamak, buna ek olarak internetin kenarlara hızını ve basitliğini etkilemeyecek bir şekilde bağlı olduğunu kabul etmektir. Dünya’nın bu prensipte güvenlik duvarları, ağ adresi çevirmenleri, web içeriği önbelleklerini ve benzeri zorunlu değişikliklerden dolayı ihtiyacı vardır.

Dayanıklılık Prensibi; “Genel anlamda bir uygulama göndericisine göre korunumlu ve alıcı tarafından özgür olmak zorundadır. Yani iyi biçimlenmiş datagram göndermek için dikkatli olmak gerekir, ama aynı zamanda yorumlayabileceği herhangi bir datagram kabul etmelidir. (teknik hatalardan dolayı açıklaması hala net değildir.) Ilkenin ikinci kısmı diğerleri kadar önemlidir: Diğer bilgisayarlar üzerindeki yazılım akılsızca yasal ama karanlık protokol özelliklerini istismar edebilecek eksiklikleri içerebilir.”

Soyutlama Katmanları / Abstraction Layers[değiştir | kaynağı değiştir]

İnternet protokol takımı protokolleri ve hizmetlerin soyutlama sağlamak için kapsülleme kullanır. Encapsulation genellikle genel işlevsellik katmanlarına, protokol paketinin bölümü ile uyumludur. Genel olarak, bir uygulama (modelin en üst düzeyi) her seviyede daha fazla kapsülleme olmak, katmanlar aşağı veri göndermek için bir protokol kümesi kullanır.

Protokol paketinin katmanları, alt kısımdaki katmanların veri transferine yakın olmasına rağmen, kullanıcı uygulamasına mantıksal olarak yakındır. Katmanları hizmeti sağlayan veya tüketen olarak görmek soyutlama yöntemi üzerinde bit iletilmesi ve ayrıntıları üst katman protokolleri ile izole etmektir. Örneğin Ethener ve çarpışma algılaması, alt tabakaların her ayrıntılarını ve her uygulama ve protokol bilmek zorunda olmasından kaçınmasıdır.

Katmanlar, çeşitli mimari belgeler incelendiğinde bile -ISO 7498, Açık Sistemler Bağlantısı (OSI) modu gibi tek mimari model var- OSI modelinin daha az veya daha az katı olarak tanımlanan katmanları ve bu nedenle dünya protokolleri için daha kolay bir uyum sağlar. Sık başvurulan başka bir belge ise, RFC 1958, tabakalar yığınını içermemesidir. Tabakaların vurgu eksikliği IETF ve OSI yaklaşımlar arasındaki önemli bir farkdır. Sadece bu üst tabakalar, genel olarak iletişim tabakasının varlığını ifade eder; Aslında bu belge 1996 yılının anlık mimarisi olarak düşünülmüştü. “İnternet ve mimarisi oldukça görkemli bir plandan ve daha mütevazı başlangıçtan evrimsel biçimde büyüdü. Evrim bu sürecin teknolojisinin başarısı için ana nedenlerinden biri iken yine de internet mimarisinin mevcut ilkelerin bir anlık kaydetmek için yararlı olacaktır.”

RFC 1122, Sunucu Gereksinimleri başlıklı, katmanlara atıfta olacak şekilde paragraflarda yapılandırılmıştır, ancak belge vurgulayan katmanlardan ziyade diğer pek çok mimari ilkelere hitap eder. Bahsi geçen RFC 1122 aşağıdaki gibi gevşek, katmanların sayılarını değil,  isimlerini, dört katmanlı bir model olarak tanımlar:

Uygulama katmanı uygulamaları kullanıcı verilerini oluşturmak ve başka diğer uygulamalar veya aynı ana bilgisayara bu verileri ileten bir katmandır. Uygulamalar veya işlemler, temel, alt tabakalar tarafından sağlanan hizmetlerin özellikle diğer işlemlere güvenilir veya güvenilmez komutları sağlayan taşıma katmanının kullanımını gerçekleştirir. Iletişim ortakları, istemci-sunucu modeli ve peer-to-peer network olarak, uygulama mimarisi ile karakterize edilebilir. Bu tür SMTP, FTP, SSH, HTTP gibi tüm yüksek seviyeli protokoller, faaliyet gösterdikleri tabakadır. Süreçler esas hizmeti temsil eden portlar üzerinden ele alınmaktadır.

Taşıma Katmanı ya aynı ya da farklı bilgisayarlar ve yerel ağ veya yönlendirici bulunan uzak ağlar ya da üzerinde host-to-host iletişimi gerçekleştirir Bu katman uygulamaların iletişim ihtiyaçları için bir kanal sağlar. UDP güvenilmez bir datagram hizmeti veren, basit bir temel taşıma katmanı protokolüdür. İletim Kontrol Protokolü akış kontrolü, bağlantı kurulması ve verilerin güvenilir biçimde iletilmesini sağlar.

Internet katmanı’nın ağ sınırları boyunca datagramları alışverişi görevi vardır. Bu temel ağ bağlantılarının gerçek topolojisini (düzenini) gizleyen bir üniforma ağ arabirimi sağlar. Bu nedenle, aynı zamanda internetworking'i kuran tabaka olarak adlandırılır. Aslında gerçekten de interneti kurar ve tanımlar. Bu katman, TCP / IP protokol takımı için kullanılan adresleme ve yönlendirme yapıları tanımlar. Bu kapsamda, öncelikli olan protokol IP adreslerini tanımlayan Internet Protokolü vardır. Bu protokolün amacı verileri final bağlantısına yönlendiren bir ağa sahip olan bir sonraki IP dağıtıcısına ulaştırmaktır.

Link katmanı iletişimin yerel ağ ağlantısı kapsamında ana yönlendiricilerin müdahale olmadığı ağ yöntemlerini tanımlar. Bu katman, yerel ağ topolojisini tanımlamak için kullanılan protokol ve sonraki komşu hosts internet tabakası datagramlarının iletimini gerçekleştirmek için gerekli arabirimler içerir.

İnternet İletişim kuralı ve katmanlı iletişim kuralları tasarımı OSI modeli kurulmadan önce kullanımdaydı. Bu süreçten beri TCP / IP modeli kitap ve dersliklerde, sonuç olarak karışıklık ile sonuçlanan OSI modeli ile karşılaştırılmıştır. Çünkü iki model de sıkı katman göreceli önemi de dahil olmak üzere farklı varsayımları ve amaçları kullanmaktaydı.

Bu soyutlama aynı zamanda alt tabakaların sağlayamadığı fakat üst katmanların sağladığı hizmetin sağlanmasına olanak tanır. Orijinal OSI modeli bağlantısız hizmetleri (OSI RM CL) kapsayacak şekilde genişletilmişken, IP güvenilir olarak tasarlanmamış fakat yine de en iyi veri teslimi için çaba gösteren bir protokoldür. Bu, tüm ulaşım katmanı uygulamalarının güvenirlik sağlayıp sağlayamayacağı yahut nasıl sağlayacağı konusunda seçim yapılması gerektiğini belirtir. UDP, sağlama yoluyla veri bütünlüğünü sağlar, ancak teslimini garanti etmez; bunun yanında TCP, alıcı paket alımını kabul edene kadar retransmitting üzerinde veri bütünlüğü ve dağıtım garantisini sağlar.

Bu model OSI modeli ve ilgili belgelerin formalizminden yoksundur ancak IETF bir model kullanmaz ve David D.Clark’ın bir yorumunda özetlediği gibi bunu bir sınırlama olarakta algılamaz” Bizler; kralları, başkanları ve oylamayı reddediyoruz. İnandığımız şey kabaca uzlaşma ve kod çalıştırmadır.” OSI modeline göre yapılan bu modelin eleştirisi, bu modele göre ISO’nun sonraki geliştirmelerini hesaba katmamıştır.

Adresleme sistemlerinin kendi multiaccess bağlantıları için (örneğin Ethernet) bir adres eşleme protokolü gereklidir. Bu protokoller IP’nin altında, ancak mevcut bağlantı sistemi üzerinde olarak kabul edilebilir. IETF teminolojiyi kullanmaz iken, bu durum ağ katmanı (IONL) iç organizasyonu olan OSI modeli bir uzantısına göre bir alt ağ bağımlı yakınsama kolaylığıdır.

ICMP & IGMP IP üstünde çalışır ancak UDP veya TCP gibi veri transferi gerçekleştirmez. Yine de, bu işlevselliği kendi Yönetim Çerçevesinde (OSIRM MF)[, OSI modeli katman yönetimi uzantıları olarak var eder.

SSL/TLS Kütüphanesi ise yukarıda belirtilen ve TCP kullanan taşıyıcı katmanlarını aşağıda belirtilen uygulama protokolleri kapsamında kullanır. Yine, OSI mimarisine uymak için, bu protokollerin tasarımlarının parçalarının hiçbir amacı yoktur.

Bağlantıya karşı kara kutuya benzer bir davranış sergilenir. IETF açık bir şekilde, OSI modeline nazaran daha az akademik fakat pratik bir alternatif olan iletim sistemlerini tartışmak niyetinde değildir.

Katmanlar / Layers[değiştir | kaynağı değiştir]

TCP/IP'de, yollanan veriler katmanlara göre paketlenerek yollanır ve alıcıda bu paketler teker teker açılıp veri ulaştırılır. Bu yöntem, yollanan veri, yollama şekli ve yollama yolunu birbirinden ayırarak birlikte çalışmayı kolaylaştırır: örneğin bir bilgisayarda bağlantı olarak Ethernet yerine Wi-fi kullanılması, üzerinde başka bir web tarayıcı kullanılmasını gerektirmez.

Katmanlar, bahsedilen standarda göre dört veya yedi şekilde açılabilir. TCP/IP'de genel olarak dört katmandan bahsedilir, bunlar:

  • Uygulama: Bu katmanda veriyi göndermek isteyen uygulama ve kullandığı dosya formatı bulunur. Örneğin "HTTP üzerinden HTML formatında yazılmış Wikipedia ana sayfası". OSI modelindeki gibi ağa erişmek için gerekli uygulama protokollerini içerir. OSI modelindeki uygulama katmanından farkı sunum ve oturum katmanlarının uygulama katmanı içerisinde yer almasıdır. SMTP ve FTP protokolleri bu katmanda bulunur.
  • Taşıma: Bu katmanda verinin ne şekilde gönderildiği gösterilir. Servis kalitesi(the quality of service), güvenli veri aktarımı,veri akış kontrolü (flow control), hata kontrolü (error control) gibi işlemlerin yapıldığı katmandır. TCP veya UDP gibi protokoller bu katmandadır. TCP bağlantılı (connection oriented) ve güvenilir iletişim sağlayan bir protokoldür. Bağlantılı olması; kaynak ve hedef arasında mantıksal bağlantı kurulmasıdır. Bu da iki bilgisayarın veri alışverişinde bulunmadan önce anlaşması demektir. Güvenilir olması; bağlantı üzerinden gönderilen verinin gönderildiği şekilde, veri kaybı olmadan ve sıralı biçimde iletimini garanti eder. UDP bağlantısız ve güvenilir olmayan bir iletişim sağlar. Bu nedenle UDP, TCP' ye göre daha hızlıdır.
  • : Bazen IP katmanı olarak da anılan bu katman, IP adreslerinin veriye eklendiği ve yönlendirmenin yapıldığı noktadır. Kaynak ağdan gelen veriyi hedef ağa gönderme yönlendirmedir. Paketin hedefe en iyi yoldan gönderilmesi de bu katmanın sorumluluğudur. Bu katmandaki uygulamalar IP veya IPv6 gibi iletişim protokolleri olabileceği gibi ICMP, IGMP veya ARP gibi durum bildirme ve katmanlar arası bağ protokolleri de olabilir.
  • Veri Bağlantı: Bu katmanda Ethernet, Wi-fi, token ring, ATM gibi protokoller bulunur.

Uygulama Katmanı / Application Layer[değiştir | kaynağı değiştir]

Uygulama Katmanı, bünyesinde ağ yönlendirici protokolleri ve sunucu düzenleme protokolleri gibi basit ağ destekli servisleri içeren fakat düşük seviyedeki katmanlar tarafından kurulan ağ bağlantıları üzerindeki uygulama verilerinin değişimini yahut kullanıcılara servis sağlayan protokoller içerir. Uygulama katmanı protokolleri örnekleri Hypertext Transfer Protocol [Köprü Metni Aktarım Protokolü] (HTTP), the File Transfer Protocol [Dosya Transferi Protokolü] (FTP), the Simple Mail Transfer Protocol [Basit Mail Transfer Protokolü] (SMTP) ve the Dynamic Host Configuration Protocol [Aktif Sunucu Düzenleme Protokolü] (DHCP)’dür. Veri, protokol birimler halinde kapsüllü bir biçimde uygulama katmanı protokollerine göre taşıma katmanı yani gerçek veri transferi gerçekleştirilmesi için alt katman protokolleri halinde kodlanmıştır.

IP modeli biçimlendirme ve veri sunma özelliklerini dikkate almaz ve OSI modeli (Sunum ve sezon katmanları) gibi uygulama ve ulaşım katmanları arasında ilave katmanları tanımlamaz. Bu tür işlevler ise kütüphane bölümleri ve uygulama programları arayüzleridir.

Uygulama Katmanı protokolleri taşıyıcı katmana veya daha altındaki katmanlara, taşıyıcı katmanların özelliklerinden olan çıkmaz IP adresleri ve port numaraları gibi uygulamalara rağmen iletişim kurmaya yarayan ağ bağlatıları sağlayan siyah kutulara davrandığı gibi davranır. Uygulama katman protokolleri genel olarak sunucu server uygulamaları ile bağdaştırılır ve Internet Assigned Numbers Authority (IANA) tarafından rezerve edilmiş iyi bilinen port numaraları gibi servis görür. Örneğin; the HyperText Transfer Protokolü 80 numaralı portu ve Telnet ise 23 numaralı portu kullanır. Bir servise bağlanmaya müşteriler ise genellikle bağlantı noktası numaralarının rastgele veya uygulama yapılandırılmış belirli bir mesafeden işlem süresince atanan kısa ömürlü bağlantı noktalarını kullanır. 

Taşıma katmanı ve alt düzey katmanları uygulama katmanı protokolleri özellikleri ile ilgisizdir. Yönlendiriciler ve anahtarlar genellikle kapsüllü trafiği incelemek yerine sadece bir kanal sağlarlar. Yine de, bazı güvenlik duvarı ve bant genişliği daraltma uygulamaları, uygulama verilerini yorumlamak zorundadır. Bunun bir örneği Kaynak Rezervasyon Protokolüdür (RSVP). Bu uygulama yükü, ayrıca ağ adresi çeviricisi (NAT) geçişi için bazen gereklidir.

TCP/IP modelindeki uygulama katmanı genel olarak Open System Interconnection (OSI) modelinin katmanları olarak beşinci kombinasyon olan seansa, altıncı sunuma, ve yedinci olarak uygulama katmanları ile eş olarak karşılaştırılır.

Ayrıca, TCP / IP referans modeli kullanıcı protokolleri ve destek protokolleri arasında çeşitlere ayrılır. Destek protokolleri sisteme servis sağlar. Kullanıcı protokolleri ise kullanıcı uygulamaları için kullanılır. Örneğin, FTP ibr kullanıcı protokolü ve DNS ise sistem protokolüdür.

Taşıma Katmanı / Transport Layer[değiştir | kaynağı değiştir]

Taşıma katmanı uygulama görevinin özel veri alışverişini kullanan bir temel veri kanalı kurar. Katman kullanıcı verisinin yapısından bağımsız olarak end-to-end servisinin sağlandığı ve herhangi belirli bir amaç için bilgi alışverişinin gerçekleştiği process-to-process bağlantısı kurar. Sorumluluğu kapsamında bağımsız temel ağın end-to-end mesaj transferini, hata kontrolünü, segmentasyonu, akış kontrolünü, tıkanma kontrolünü ve port numaraları ile birlikte uygulama adreslemesini içerir. Uçtan uca aktarım katmanındaki mesaj iletimi veya bağlantı uygulamaları bütün bunları ya TCP’de uygulanan bağlantı yönelimi ya da UDP’de uygulanan bağlantısız yönelimi olarak kategorize edebilir.

Uygulamalar için process-specific iletim kanallarını sağlamak amacıyla, katman port kavramını ortaya çıkarmıştır. Bu, bir uygulamanın ihtiyacı olan iletişim kanallarının her biri için özel olarak tahsis edilen bir numaralı bir mantıksal yapıdır. Birçok hizmetlerin türleri için ve kullanıcı bilgisayarlar bağlantı duyuruları yapmadan yahut rehberi servisleri kullanmadan özel servis server bilgisayarlarına yönlendirme yapabilsin diye bu port numaraları standardize edilmiştir.

Çünkü IP sadece en iyi çaba teslim sağladığından, bazı taşıma katmanı protokolleri güvenilirlik sunar. Yine de IP, High-Level Data Link Control (HDLC) gibi bir veri bağlantı protokolü üzerinden çalışabilir.

Örneğin, TCP güvenilir bir bayt akışı sağlayan sayısız güvenilirlik sorunlarını gideren bir bağlantı yönelimli protokoldür:

·       Veri bir düzen içerisinde ulaşır

·       Veride minimum düzeyde hata vardır (Örneğin; hata düzeltme)

·       Kopya veri atılmıştır

·       Kayıp veya atılan paketler yok edilmiştir.

·       Trafik sıkışıklığı kontrolü içerir

Yeni olan Bağlantı Transferi Kontrol Protokolü de aynı zamanda güvenilir, bağlantı yönelimli taşıma mekanizmasıdır. Bu protokol mesaj bağlantı odaklı – TCP gibi bit bağlantı odaklı değil- ve  tek bir bağlantı üzerinden çoklu bağlantılar sağlayabilir. Aynı zamanda bir bağlantının kopması durumunda diğer bağlantının  otomatik olarak devreye girdiği çoklu IP’nin başlangıcı ile son bulan farklı bir bağlantı olan multi-homing desteği de sağlar. Bu, ilk başta telefon uygulamaları için geliştirilsede (IP üzerinden SS7’i transfer etmek için), farklı uygulamalar tarafından da kullanılabilmiştir.

Kullanıcı Datagram Protokolü bir bağlantısız bir datagram protokolüdür. IP gibi, en iyi bir çabası, "güvenilmez" bir protokoldür. Güvenilirlik, zayıf sağlama algoritması kullanılarak hata tespiti yoluyla ele alınmaktadır. UDP tipik olarak akış ortamı gibi güvenilirlikten ziyade zamanında ulaşımın önemli olduğu ya da basit bir sorgu / DNS aramaları gibi güvenilir bağlantı kurma yükünün orantısızca fazla olduğu uygulamalar için kullanılır. (ses, video, IP üzerinden sesli iletişim vb.)  Real-time Transport Protocol (RTP) ise bu tür akışı ses ve video gibi gerçek zamanlı veriler için tasarlanmış bir datagram protokolüdür.

Herhangi bir ağ adresindeki uygulamalar kendi TCP veya UDP bağlantı noktası ile ayırt edilir. Geleneksel olarak belli bir şekilde tanınmış portlar özel uygulamalar ile ilişkilidir.

TCP / IP modelinin ulaşım ya da host-to-host katmanı aynı zamanda taşıma katmanı olarak bilinen Açık Sistemler Bağlantısı (OSI) modelindeki dördüncü tabakaya tekabül eder.

Ağ Katmanı / İnternet Layer[değiştir | kaynağı değiştir]

İnternet tabakasının,  potansiyel çoklu ağlar üzerinden paketleri gönderme sorumluluğu vardır. Internetworking hedef ağa kaynak ağdan veri göndermeyi gerektirir. Bu süreç yönlendirme işlemi olarak tanımlanır. Internet Protokolü iki temel işlevleri gerçekleştirir:

Host addressing and identification: Bu süreç hiyerarşik bir IP adresleme sistemi ile gerçekleştirilir

Paket Yönlendirme: Bu süreç veri paketlerinin kaynak üzerinden hedefe en yakın ağ yönlendiricisi üzerinden ulaştırılmasıdır.

İnternet katmanı sadece taşıma katmanında agnostik veri yapıları değil, bunun yanı sıra çeşitli ulaşım katmanı protokollerinin operasyonu arasında ayırım yapmaz. IP, farklı üst katman protokolleri için çeşitli veri taşır. Bu protokollerin her biri bünyesindeki benzersiz protokol sayısına göre tespit edilir. Örneğin; Internet Denetim İletisi Protokolü (ICMP) ve Internet Grup Yönetimi Protokolü (IGMP) sırasıyla 1 ve 2 numaralı iletişim kurallarıdır.

IP üzerinden taşınan bu protokollerin bazıları Tanı bilgilerini aktarmak için kullanılan ICMP gibi veya IP Multicast verileri yönetmek için kullanılan IGMP’dir. Bu, internet TCP / IP yığını ve OSI modelinin mimarisinde farklılıkları göstermektedir. TCP / IP modeli internet katmanı ağ katmanına hitap eden Açık Sistemler Bağlantısı (OSI)’nın üç katmanına tekabül eder.

Internet Katmanı potensiyel olarak aldığı verileri hedefine ulaştırmak üzere en yakınındaki yönlendiriciye gönderen ve  farklı IP’ler üzerinde yer alan sunucular arasında sadece güvenilmez bir datagram iletim tesisi sağlar. Bu işlevsellik ile internet katmanı temel olarak internet üzerine kurulu internetworking’i, farklı IP’ler üzerindeki internetworking’i mümkün kılar. Internet Protokolü İnternet katmanın başlıca bileşenidir ve ağ sunucuları bilgisayarlarını tanımlamak için iki adresleme sistemleri tanımlar ve onların ağ üzerindeki yerini belirler.  ARPANET’in orijinal adresleme sistemi ve onların arkasından gelenler ise; internet üzerindeki internet iletişim kuralları versiyon 4 (IPv4)’tür. 32 bit IP adresi kullandığından dolayı yaklaşık 4 milyar sunucuyu tanımlama kapasitesindedir. Bu sınırlama, 1998’te yayınlanan Internet Protokolü 6. sürüm standardizasyonu dahilinde elimine edildi ve 2006 yılında üretim çalışmaları başladı.

Veri Bağlantı Katmanı / Link Layer[değiştir | kaynağı değiştir]

Bağlantı katmanın, sunucunun bağlı olduğu yerel ağ bağlantısına ait bir ağ kapsamı vardır. Bu kapsama literatürde, TCP / IP bağlantısı denir. TCP / IP donanım bağımsız olacak şekilde tasarlandığından dolayı bu bağlantı internet protokolleri arasındaki en yavaş bağlantı olarak tanımlanır. Sonuç olarak TCP / IP hemen hemen herhangi bir donanım ağ teknolojisi ile birlikte uygulanabilir.

Bağlantı katmanı aynı linke iki farklı türdeki internet katman ara yüzleri arasındaki paketleri taşımak için kullanılır. Belirli bir bağlantıyı paketleri gönderme ve alma işlemleri hem ağ kartı için yazılım aygıt sürücüsünde hem de software veya özel yonga setinde kontrol edilebilir. Bunlar iletim için hazırlamak için bir paket başlığını ekleme sonrasında çerçeveyi fiziksel bir ortam üzerinde iletmek gibi veri bağlantısını çalıştırır. TCP/IP modeli,  İnternet iletişim kuralları kapsamındaki Media Access Control (MAC) gibi veri yönlendirme ağları içeren özellikler içermektedir. Bu düzeyin altındaki tüm diğer yönleri ise, örtülü bağlantı katmanı var varsayılır, fakat açıkça tanımlanmamıştır.

Bu da paketlerin bir sanal özel ağ ya da diğer ağ tüneli üzerinden gönderilmek üzere seçilebilir tabakadır. Bu senaryoda, bağlantı katmanı veri başka bir IP bağlantısı üzerinden iletimi ya da alımı için IP yığını başka örneğinin erişir uygulama verileri kabul edilebilir. Böyle bir bağlantı veya sanal bağlantı, protokol kümesinin bağlantı katmanında bir tünel olarak hizmet veren bir taşıma protokolü ya da bir uygulama kapsamı protokolü ile kurulabilir. Böylece, TCP / IP modeli sıkı bir hiyerarşik kapsülleme dizisi dikte etmez.

TCP / IP modelinin bağlantı katmanı fiziksel ve veri bağlantı katmanları olan Açık Sistemler- Interconnection (OSI) modeli, katmanlar tek ve OSI modeline tekabül etmektedir.

Örnek:[değiştir | kaynağı değiştir]

Bilgisayarınız Wikipedia ana sayfasını alırken işlemler şu şekilde gerçekleşir;

  • Wikipedia web sunucusu, HTML çıktısını yaratır ve üzerinde çalıştığı sisteme "şu veriyi şu adrese şu porttan(80-HTTP) yolla" komutu verir. Bu ilk veri, dördüncü katman olan uygulama katmanından gelen veridir.
  • Sistem, bu çıktıya öncelikle üçüncü katman olan taşıma katmanının bilgilerini iliştirir, yani paketin başına port bilgisini ve paket boyunu yazar.
  • Ardından, deminki pakete bu sefer de ağ katmanı bilgileri, başka bir deyişle yollayan bilgisayarın ve sizin bilgisayarınızın IP adresleri ve paketin toplam boyu, eklenir.
  • Son olarak, paket fiziksel katmanın eline geçer ve o katman da fiziksel adresleri ve paketin yeni boyunu da yazarak paketi gönderir.
  • Paket, dünya etrafında küçük bir tur attıktan sonra sizin bilgisayarınıza ulaşır. Yol boyunca değişik makineler paketi alır, açar, ihtiyaca ve ağ durumuna göre tekrar paketler. Paket sonunda sizin bilgisayarınıza ulaştığında sizin bilgisayarınız da önce fiziksel paketi, ardından ağ paketini, ardından taşıma paketini ve en son da uygulama paketini açar. Paketten çıkan veriyi web tarayıcınıza verir. Web tarayıcısı da size gösterir.

Katmanlama, her katmana özel donanımlar yapılmasına olanak sağlamıştır: fiziksel katmanda paket yönlendirmesi switch'ler, IP katmanında paket yönlendirmesi router'lar, taşıma katmanında paket yönlendirmesi ise NAT'lar tarafından yapılır. Bu sayede, basit donanımlarla yüksek TCP/IP performansları elde edilebilmektedir.

Katmanlama, uygulamalar arası uyumu kolaylaştırdığı gibi büyük bir dezavantaja da sahiptir: her katman veriye tekrarlanan (dolayısıyla gereksiz) veriler ekler. Örneğin her katman pakete ekstra bir boy bilgisi ekleyecektir. Çoğu katman verinin doğruluğundan emin olmak için muhtelif rakamlar da ekleyebilir. Bunun, dünya internet trafiğinin %15'ini oluşturduğu tahmin edilmektedir.

Katmanlama sistemindeki ilk üç katman (yani donanım, ağ ve taşıma katmanları) arasından:

  • Donanım katmanı, bilgisayarın üzerindeki ağ donanımını tanıyabilmek için bir ağ kartı numarası. Bu kart numarası ağ kartına yazılı gelir (yani değiştirilemez (aslında bu yöne yönelik programlarla MAC adresini de değiştirmek mümkündür)) ve MAC adresi olarak anılır.
  • Ağ katmanı, bilgisayara ulaşabilmesi için verilen IP adresini kullanır.
  • Taşıma katmanı ise, aynı bilgisayarda çalışan değişik yazılımların aynı anda internete ulaşabilmesi için her yazılıma bir port numarası verir.

Dolayısıyla bir bilgisayara ulaşabilmek için teoride IP adresi veya MAC adresi kullanılabilirdi. Ama, MAC adresleri karta yazılı olarak geldiği ve değiştirilemediği (dolayısıyla organize edilemediği) için kullanılmamakta, onun yerine ağın yöneticisi tarafından her kullanıcıya özgürce verilebilen IP adresleri kullanılmaktadır. Bunun avantajları şu şekildedir:

  • Ağlar, alt ağlara bölünebilir ve hangi makinenin hangi ağda olduğu hızlıca anlaşılabilir
  • Hangi makinenin hangi ağda olduğu kolayca anlaşılabildiği için paket yönlendirme kolaylaşır
  • Son olarak, alt ağlara bölünmedeki bazı standartlar sayesinde işletim sistemleri otomatik olarak diğer ağlara erişim için gerekli donanımlara ulaşabilir.

Günümüzde bir IP adresi, 32 bit'lik bir sayıdır (IPv6'de bu sayı 128 bit'lik olacaktır). IP'de iki cihaz aynı ağda olup olmadıklarını birbirlerinin IP adreslerinin ilk birkaç basamağına bakarak anlarlar. Bu basamağa IP maskesi (IP mask) denir. Örneğin IP maskesi 255.255.255.0 ise, ilk üç basamağı (yani ilk 24 bit'i) aynı olan iki makine aynı ağda demektir. Bu durumda, 192.168.0.1 ile 192.168.0.2 aynı ağda, 192.168.1.1 ise başka bir ağdadır.

Bazı IP adresleri ve maskeleri bazı kullanımlar için ayrılmıştır. Bunlar şu şekildedir:

  • Yerel ağlar için ayrılmış adresler:
    • 10.0.0.0 ile 10.255.255.255 arası adresler (yani maske olarak 255.0.0.0)
    • 172.16.0.0 ile 172.31.255.255 arası adresler (yani maske olarak 255.0.0.0)
    • 192.168.0.0 ile 192.168.255.255 arası adresler (yani maske olarak 255.255.0.0)
    • 169.254.0.0 ile 169.254.255.255 arası adresler (yani maske olarak 255.255.0.0)

Not: Bir IP adresi ya da protokol sınıfından bağımsız olarak bir subnet mask ile çalışıyor veya çalışabiliyorsa "classless" aksi duruma "classfull" denir.

  • Bir makinenin kendisine konuşması (loopback) için ayrılmış adresler:
    • 127.0.0.0 ile 127.255.255.255 arası adresler (yani maske olarak 255.0.0.0)

Bu sayede, bir ağdaki IP adreslerini mantıksal bir şekilde ve basitçe organize etmek mümkündür. Buna ek olarak, kullanıcılara IP adresi, ağ maskesi ve hatta varsayılan ağ geçidini otomatik atayabilmek için DHCP protokolü kullanılabilir. Bu sayede, örneğin taşınabilir bilgisayarıyla ücretsiz hizmet veren bir kablosuz ağa bağlanıldığında tüm bağlantı ayarları otomatik olarak düzenlenecektir.

TCP/IP ile mektup teknolojilerini karşılaştıracak olursak:

  • Mektubun gönderildiği kişi, mektubu içeriğine bakacak olan kişidir. Dolayısıyla, TCP/IP'de mektubun alıcısı bir uygulamadır (yani bir program). TCP/IP'de değişik uygulamalar değişik port numaraları ile temsil edilirler. TCP/IP'de 65536 uygulama aynı anda desteklenebilir.
  • Mektubun gönderildiği adres, mektubun ulaşacağı yerdir. TCP/IP'de bunun karşılığı IP adresidir. IP'nin günümüzdeki sürümünde dört milyara yakın IP adresi destelenmektedir, IP'nin bir sonraki sürümünde bu sayının 2128' (yani dört milyar üzeri dört) çıkartılması planlanmaktadır.
  • Mektubu göndermek için bir posta idaresi ve bir postahane gerekmektedir. TCP/IP'de postahaneler ağ geçidi (İngilizce gateway) olarak adlandırılır.

Genelde bilgisayarlar tek bir ağ geçidine bağlı oldukları için paket göndermek ve almak için karmaşık işlemler yapmazlar (bir TCP/IP yöneticisi, sadece hangi portu hangi programın dinlediğini aklında tutmak zorundadır). Öte yandan, ağ geçitleri değişik ağlar arasındaki bağlantıyı sağladıkları için paket yönlendirme konusunda dikkatli davranmaları gerekmektedir:

  • Öncelikle, bir önceki bölümde bahsedildiği gibi bir cihaz başka bir cihazla aynı ağda olup olmadığını kendi IP adresi ve diğer IP adresini kendi ağ maskesini kullanarak karşılaştırarak anlar. Demin değinildiği gibi, ağ maskesi 255.255.255.0 ise 192.168.0.1 ile 192.168.0.2 aynı ağdadır, 192.168.1.1 ise başka bir ağdadır. Bir cihazın başka bir ağda olması, arada bir ağ geçidi (ağ geçidi bir switch, router, NAT veya bridge olabilir) kullanılması gerektiğine işarettir...
  • Bir ağ geçidi, tüm fiziksel çıkışlarının hangi ağda olduğu bilgisini tutar (buna IP yönlendirme tablosu denir). Ağ geçidine bir paket ulaşınca, geçit hangi ağa hangi çıkıştan ulaşacağına bu tablodan bakarak karar verir. Tablo, elle girilebilir veya RIP / OSPF gibi protokollerle otomatik olarak oluşturulabilir.
  • Öte yandan, her ağ geçidi dünyadaki tüm ağ geçitlerinin nerede olduğunu tabii ki aklında tutmaz. Dolayısıyla, çoğu ağ geçidinin bir de varsayılan geçit (yani "paket nereye gidiyor bilmediğinde pakedin verileceği yer") girdisi bulunur. Örneğin sizin evinizdeki bir kişisel ağda çok yüksek ihtimalle varsayılan geçit olarak TTnet kullanılıyor olacaktır.

Bir ağ geçidi, bağlı olduğu bir cihaza verdiği bir pakedin yerine ulaşıp ulaşmadığını kontrol etmediği için IP'nin bir sonraki yöne kadar yönlendirme (İngilizce next hop routing) yaptığı söylenir...

Bazı TCP/IP protokolleri[değiştir | kaynağı değiştir]

Ağ katmanındaki protokoller[değiştir | kaynağı değiştir]

  • ARP (Address Resolution Protocol, yani Adres Çözümleme Protokolü) bir IP adresinin hangi ağ kartına (yani MAC adresine) ait olduğunu bulmaya yarar. TCP/IP'de veri gönderilecek bilgisayarın hangisi olduğunu bulmak için kullanılır. Ayrıca IP adresini yeni almış olan bir RARP, yani Ters ARP) protokolü ARP'ın tersi işlemi yapar, yani hangi MAC adresinin hangi IP adresini kullandığını bulur. Bir TCP/IP ağında RARP'ın çalışacağı garanti değildir, zira RARP bir RARP sunucusuna ihtiyaç duyar.

IP katmanındaki protokoller[değiştir | kaynağı değiştir]

  • ICMP (Internet Control Message Protocol, yani Internet Yönetim Mesajlaşması Protokolü), hata ve türlü bilgi mesajlarını ileten protokoldür. Örneğin, ping programı ICMP'yi kullanır.
  • RIP (Router Information Protocol, yani Router Bilgi Protokolü) router'ların yönlendirme tablolarını otomatik olarak üretebilmesi için yaratılmıştır.
  • OSPF (Open Shortest Path First, yani İlk Açık Yöne Öncelik) aynı RIP gibi router'ların yönlendirme tablolarını otomatik olarak üretebilmesine yarar. OSPF, RIP'ten daha gelişmiş bir protokoldür.
  • IGMP, (Internet Group Messaging Protocol, yani Internet Grup Mesajlaşma Protokolü) bir sistemin internet yayınlarına (multicast) abone olmasına ve aboneliği durdurmasına yarar. Bu yayınlar, UDP üzerinden yapılır ve genelde çoklu ortam (radyo veya video) içerikli olurlar.
  • DHCP (Dynamic Host Configuration Protocol, yani Dinamik Cihaz Ayar Protokolü) bir TCP/IP ağına bağlanan bir cihaza otomatik olarak IP adresi, ağ maskesi, ağ geçidi ve DNS sunucusu atanmasına yarar.

Taşıma katmanındaki protokoller[değiştir | kaynağı değiştir]

  • UDP (User Datagram Protocol, yani Kullanıcı Veri Protokolü), IP üzerinden veri yollamaya yarar. Verilerin ulaşacağını garanti etmez ve UDP paketlerinin maksimum boy sınırları vardır. Öte yandan, UDP son derece basit ve bağlantı gerektirmeyen (connectionless) bir protokoldür.
  • TCP (Transmission Control Protocol, yani Gönderim Kontrol Protokolü), IP üzerinden ulaşma garantili ve herhangi bir boyda veri gönderilmesine imkân tanıyan bir protokoldür. UDP'den farklı olarak, TCP'de iki cihazın iletişim kurabilmesi için önce birbirlerine bağlanmaları gerekmektedir.

Uygulama katmanındaki protokoller[değiştir | kaynağı değiştir]

  • DNS (Domain Name System, yani Alan Adı Sistemi) alan adı verilen isimler (mesela www.wikipedia.org) ile IP adreslerini birbirine bağlayan sistemdir. Paylaştırılmış bir veritabanı olarak çalışır. UDP veya TCP üzerinden çalışabilir.
  • HTTP (HyperText Transfer Protocol, yani HiperMetin Yollama Protokolü) ilk başta HTML sayfaları yollamak için yaratılmış olan bir protokol olup günümüzde her türlü verinin gönderimi için kullanılır. TCP üzerinden çalışır.
  • HTTPS (Secure HTTP yani Güvenli HTTP) HTTP'nin RSA şifrelemesi ile güçlendirilmiş halidir. TCP üzerinden çalışır.
  • POP3 (Post Office Protocol 3, yani Postahane Protokolü 3) e-posta almak için kullanılan bir protokoldür. TCP üzerinden çalışır.
  • SMTP (Simple Mail Transfer Protocol, yani Basit Mektup Gönderme Protokolü) e-posta göndermek için kullanılır. TCP üzerinden çalışır.
  • FTP (File Transfer Protocol, yani Dosya Gönderme Protokolü) dosya göndermek ve almak için kullanılır. HTTP'den değişik olarak kullanıcının illa ki sisteme giriş yapmasını gerektirir. Veri ve komut alış verişi için iki ayrı port kullanır. TCP üzerinden çalışır.
  • SFTP veya FTPS (Secure FTP, yani Güvenli FTP), FTP'nin RSA ile güçlendirilmiş halidir. TCP üzerinden çalışır.

Tüm bu protokoller (ve dahası) sayesinde TCP/IP her geçen gün daha da popülerleşen bir protokol olmuştur.

TCP/IP ve OSI Katmanlama Karşılaştırılması / Comparison of TCP/IP and OSI Layering[değiştir | kaynağı değiştir]

OSI modelinde zirvedeki 3 katman ki bunlar; uygulama katmanı, sunucu katmanı ve seans katmanı, taşıcıyı katmanı üzerinde sadece uygulama katmanı bulunan TCP/IP gibi ayrı ayrı çeşitlenmez. OSI uygulama protokollerini birbirine bağlayan X.400 gibi, TCP/IP’de, taşıyıcı katmanı üzerinde kurulu monolitik mimariyi impoze etmeyi gerektirecek bir zorunluluk yoktur. Örneğin, NFS uygulama protokolleri Remote Procedure Call (RPC) gibi bir protokol çalıştıran External Data Representation (XDR) sunucu protokolleri üzerinde çalışır. RPC güvenilir kayıt iletimini sağlar ve en iyi eforu verecek UDP taşıyıcısını güvenlice kullanabilir.

Değişik yazarlar TCP/IP’yi farklı bir şekilde yorumlamıştır ve bağlantı katmanının yahut tüm TCP/IP modelinin OSI 1. Katmanını kapsayıp kapsamadığının yahut donanım katmanının bağlantı katmanı altında farzedilip edilmediği konusujnda anlaşamamışlardır.

Birkaç yazar, OSI modelinin katmanlarının 1 yahut 2’sini modern standartlara atfettiğinden dolayı  TCP/IP modelinde birleştirmeye çalışmıştır. (Örneğin; IEEE ve ITU). Bu da ağlardan birinin OSI Modeli’nin katmanlarından 1 ve 2 ye bağlı 5 katmanlı bir modelin ortaya çıkması ile sonuçlanmıştır.

IETF protokol geliştirme çabası sıkı katman ile ilgili değildir. Bazı protokolleri, OSI’nin katman numaralarını kullansa ve RFC bazen buna atfetse bile, OSI modele uyum sağlayamayabilir. IETF defalarca Internet protokolü ve mimari gelişimini değil OSI ile uyumlu olmasını amaçladığını ifade etmiştir. RFC 3439 Internet mimarisini şu şekilde başlıklı bir bölüm içerir. “Zararlı olarak değerlendirildiğinde Katmanlama”

Örneğin, OSI paketinin oturumu ve sunum katmanları, TCP / IP paketinin uygulama katmanına dahil olarak kabul edilirler.  Bu oturumun katman işlevselliği HTTP ve SMTP gibi protokollerde bulunabilir ve Telnet ve Oturum Başlatma Protokolü (SIP) gibi protokollerden daha belirgindir. Oturum katmanı işlevselliği TCP ve UDP protokolleri, TCP/IP modelinin taşıyıcı katmanını kaplayan port numaralandırma ile gerçekleştirilmektedir. TCP / IP uygulamalarındaki Sunum katmanı fonksiyonları MIME standartındaki veri alışverişi ile gerçekleştirilmektedir.

Orijinal OSI modelinde ISO 7498/4 Management Framework yahut ISO 8648 Internal Organization of the Network layer (IONL) gibi ekler bu model için göz önüne alınmadığonda özellikle ISO7498’de çatışmalar daha belirgindir. IONL ve Management Framework belgeleri dikkate alındığında, ICMP ve IGMP, ağ katmanı için katman yönetimi protokolleri olarak tanımlanırlar. Benzer şekilde, ARP ve RARP gibi IONL ekleri  "alt ağ bağımlı yakınsama imkanları" için bir yapı sunmaktadır.

Generic Routing Encapsulation (GRE) gibi tünel protokolleri tarafından gösterildiği için IETF protokolleri ardışık bir şekilde sarmalanabilir. GRE,  OSI’nin ağ katmanında tünel için kullandığı aynı mekanizmayı kullanır.

Uygulamalar / Implementations[değiştir | kaynağı değiştir]

İnternet iletişim kuralları herhangi bir donanım veya yazılım ortamı varsaymaz. Sadece bilgisayar ağı üzerinde gönderme ve alma kapasitesine sahip olan donanım ve yazılım katmanlarına gerek duymaktadır. En küçük TCP/IP uygulamaları şunları içermektedir: Internet Protocol (IP), Address Resolution Protocol (ARP), Internet Control Message Protocol (ICMP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), ve IGMP. IP ye ek olarak ICMP, CP, UDP, Internet Protocol versiyon 6 Neighbour Discovery Protocol (NDP), ICMPv6 ve IGMPv’ ye ihtiyaç duyar ve genellikle entegre edilmiş IPSec koruma katmanı tarafından eşlik edilir.

Alt katmanlar yönetici sistemindeki sıkışmış TCP/IP tarafından desteklenirken, uygulama programcıları genellikle taşıma katmanında yalnızca uygulama katmanında arayüzleri ile ilgilidir. IP’lerin çoğu soketler ve API gibi programlar sayesinde ulaşılabilirdir.

Benzersiz uygulamalar, gömülü sistemler için tasarlanmış açık kaynak yığını olan Lightweight TCP/IP ve amatör paket radyo sistemleri ve seri hatlar üzerinden bağlanan kişisel bilgisayarlar ile ilgili protokollere sahip olan KA9Q NOS içerir.

Ağ adaptöründeki mikro kontrolcü işletim sistemindeki sürücü yazılım tarafından desteklenerek yazılım üzerinde tipik olarak bağlantı sorunları ile ilgilenir. Programlanamaz analog ve dijital elektronikler tipik olarak herbir ağ arayüzü veya fiziksel standart için yongaseti olarak application-specific integrated circuit (ASIC)’i kullanarak, normal olarak bağlantı katmanının altındaki fiziksel parçalardan sorumludur. Yüksek performanslı yönlendiriciler büyük ölçüde bağlantı düzeyi geçişini ortaya koyan ve programlanamayan hızlı dijital elektronik üzerine kuruludur.

Kaynakça[değiştir | kaynağı değiştir]

Bilgisayar Ağları ve İletişim - Abdullah Kuzu

Requirements for Internet Hosts – Communication Layers, R. Braden (October 1989)

Computer Networks, Vinton G. Cerf and Edward Cain (1983)

Specification of Internet Transmission Control Protocol, V. Cerf et al. (December 1974)