OSI Modeli ve Ağ İletişimi Protokolleri İlişkisi


27

Çoğu ağ öğrencisi OSI modelini ilk kez öğrendiğinde, belirli bir protokolün hangi model katmanına uyduğunu bulmaya çalışırken çok fazla zaman harcarlar. Bu forumda OSI katmanları hakkında birçok soru alıyoruz ve bunlar genellikle:

  • IS-IS hangi OSI katmanında çalışmaktadır?
  • HTML bir sunum mu yoksa uygulama protokolü mü?
  • VPN tünelleri katman 2 veya 3 mü?

Bir öğrenci (veya bu konuda profesyonel), OSI modeli ile birlikte çalıştığı protokoller arasındaki ilişkiyi nasıl anlamalıdır?

Yanıtlar:


35

OSI modeli hakkında hatırlanması gereken iki önemli gerçek var:

  1. Bu kavramsal bir modeldir. Bu, idealize edilmiş, soyut, teorik bir ağ fonksiyonları grubunu tanımlar. Birisinin gerçekten inşa ettiği hiçbir şeyi tanımlamıyor (en azından bugün kullanımda olan hiçbir şeyi).

  2. Tek model bu değil. Şu anda kullanımda olanlara çok daha yakın olan, özellikle TCP / IP protokol paketi (RFC-1122 ve RFC-1123) olan başka modeller de var.

Biraz tarih: Muhtemelen hepiniz internetin öncüsü olan ARPANET de dahil olmak üzere paket ağının ilk günlerini duymuşsunuzdur. ABD Savunma Bakanlığı'nın ağ protokolleri oluşturma çabalarına ek olarak, diğer bazı gruplar ve şirketler de dahil oldu. Her grup yeni paket anahtarlama alanında kendi protokollerini geliştiriyordu. IBM ve telefon şirketleri kendi standartlarını geliştiriyorlardı. Fransa'da araştırmacılar Kiklad adında kendi ağ oluşturma projeleri üzerinde çalışıyorlardı.

OSI modeli üzerindeki çalışmalar 1970'lerin sonunda başlamış, çoğunlukla IBM, NCR, Burroughs, Honeywell (ve diğerleri) gibi büyük şirketlerin ve bunların özel protokol ve donanımlarının artan etkisine bir tepki olarak başlamıştır. Bunun arkasındaki fikir, farklı üreticiler arasında birlikte çalışabilirliği sağlayacak açık bir standart oluşturmaktı. Ancak ISO modelinin kapsamı uluslararası olduğundan, rekabet eden birçok politik, kültürel ve teknik çıkarları vardı. Mutabakata varmak ve standartları yayınlamak altı yıldan fazla sürdü.

Bu arada, TCP / IP modeli de geliştirilmiştir. Basitti, uygulaması kolaydı ve en önemlisi özgürdü. Bunun için bir yazılım oluşturmak için OSI standart özelliklerini satın almanız gerekiyordu. Tüm dikkat ve gelişim çabaları TCP / IP'ye yöneldi. Sonuç olarak, OSI modeli hiçbir zaman bir dizi protokol olarak uygulanmadı ve TCP / IP İnternet için standart oldu.

Mesele şu ki, bugün kullanılan tüm protokoller TCP / IP paketidir; RIP, OSPF ve BGP gibi yönlendirme protokolleri; ve Windows SMB ve Unix RPC gibi ana işletim sistemi protokolleri, OSI modeli göz önüne alınmadan geliştirilmiştir. Bazen buna benzerlik gösteriyorlar, ancak OSI standartları gelişimi sırasında asla izlenmedi. Bu yüzden bu protokolleri OSI'ya sığdırmaya çalışan bir aptal. Sadece tam olarak uymuyorlar.

Bu, modelin hiçbir değeri olmadığı anlamına gelmez; Genel kavramları anlamak için onu incelemek hala iyi bir fikirdir. OSI katmanları kavramı, ağ terminolojisine dokunarak, günlük ağ oluşturma konuşmasında 1., 2. ve 3. katmanlar hakkında konuşuyoruz. Katmanlar 1, 2 ve 3'ün tanımı, eğer biraz sıkarsanız, oldukça iyi anlaşırsınız. Sadece bu sebeple, bilmeye değer.

OSI (veya başka bir model) modeli hakkında anlaşılması gereken en önemli şeyler şunlardır:

  • Protokolleri katmanlara bölebiliriz
  • Katmanlar kapsülleme sağlar
  • Katmanlar soyutlama sağlar
  • Katmanlar decouple fonksiyonları diğerlerinden

Protokolleri katmanlara ayırmak farklı yönleriyle ayrı ayrı konuşmamızı sağlar. Protokollerin anlaşılmasını ve sorun gidermeyi daha kolay hale getirir. Belirli işlevleri kolayca izole edebilir ve bunları diğer protokollerin benzer işlevleri ile gruplandırabiliriz.

Her bir “işlev” (genel olarak konuşur) üstündeki katmanı kaplar. Ağ katmanı, üstündeki katmanları içine alır. Veri bağlantı katmanı ağ katmanını vb. İçine alır.

Katmanlar altındaki katmanları soyutlar. Web tarayıcınızın, ağ katmanında TCP / IP veya başka bir şey kullanıp kullanmadığınızı bilmesi gerekmez (başka bir şey varmış gibi). Tarayıcınıza, alt katmanlar sadece bir veri akışı sağlar. Bu akışın nasıl göründüğünü tarayıcıdan gizler. TCP / IP, Ethernet, kablo modem, T1 hattı veya uydu kullanıyorsanız bilmiyor (veya umursamıyor). Sadece paketleri işler. Tüm bunlarla ilgilenmesi gereken bir uygulama tasarlamanın ne kadar zor olduğunu hayal edin. Katmanlar alt katmanları soyutlar, böylece yazılım tasarımı ve çalışması çok daha basit hale gelir.

Dekuplaj: Teoride, aynı katmandaki belirli bir teknolojiyi diğeriyle değiştirebilirsiniz. Katman, bir üst ve alt kat ile aynı şekilde iletişim kurduğu sürece, nasıl uygulandığı önemli olmamalıdır. Örneğin, çok iyi bilinen katman 3 protokolünü, IP sürüm 4'ü kaldırabilir ve IP sürüm 6 ile değiştirebiliriz. Diğer her şey aynı şekilde çalışmalıdır. Tarayıcınıza veya kablolu modeminize farketmez.

TCP / IP modeli, TCP / IP protokol paketinin dayandığı şeydir (sürpriz!). Yalnızca dört katmana sahiptir ve taşıma üzerindeki her şey sadece “uygulama” dır. Anlamak daha kolaydır ve “Bu oturum katmanı mı yoksa sunum katmanı mı?” Gibi sonsuz soruları önler. t tünel protokolleri (GRE, MPLS, IPSec gibi) bunlara da çok iyi uymuyor.

Sonuçta, modeller adresler ve paketler ve bitler gibi görünmez soyut fikirleri temsil etmenin bir yoludur. Bunu aklınızda tuttuğunuz sürece, OSI veya TCP / IP modeli, ağı anlamada faydalı olabilir.


1
TCP / IP modeli, gerçekte tüm tasarıya daha iyi uyduğunda neden OSI modeline başvurduğumuzu hep merak etmişimdir.
Ryan Foley

5
@RyanFoley, birçok durumda doğru. Bununla birlikte, sorun gidermeye gelince (ve özellikle bunu öğretirken), her birindeki sorunları ayrı ayrı ele almak için ayrı fiziksel ve veri katmanlarına sahip olmak daha iyidir. Örneğin, bir Cisco cihazında yukarı / aşağı, biri yukarı / aşağı ve biri aşağı / aşağı olan bir arabirim arasındaki farkı bilmek iyidir.
YLearn

"Örneğin, çok iyi bilinen katman 3 protokolünü, IP sürüm 4'ü kaldırabilir ve IP sürüm 6 ile değiştirebiliriz. Diğer her şey aynı şekilde çalışmalıdır. Tarayıcınıza veya kablo modeminize farketmemelidir. " Ne yazık ki yok soyutlama sızdıran çünkü bir fark yaratır. Uygulamalar ve taşıma protokolleri, internet protokolü tarafından kullanılan adresleme hakkında bilgi sahibi olmalıdır.
Peter Green,

İşte bu yüzden modeller sadece model.
Ron Trunk,

1
joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions Altta yatan şeyin çirkin ayrıntılarını gizlemek için soyutlamalar yaparız , ancak altta yatan şeyin bazı detayları sızar ve sorunlara neden olur. Yığının en üstüne sızan böyle bir şey adresleme sistemidir.
Peter Green

2

Burada bazı karışıklıklar var. Sırf bir işlevin bir katmana sığmadığı gibi görünmediği anlamına gelmez. OSI esnektir ve pratik uygulamaların modele eşlendiği nesnelere ve alt katmanlara izin verir. Bir katmanın işlevlerinden bazıları, diğer katlarda da çoğaltılabilir. Ayrıca işleme, Uygulama katmanında olmak zorunda değildir. Son olarak, OSI bir modelden daha fazlasıydı, bütünüyle bazı üreticiler tarafından uygulandı. DEC projesinde çalıştım. Pratiklik, bugün OSI'nin yalnızca belirli bölümlerinin kullanılması anlamına geliyordu.


1

Tüm IGP (İç ağ geçidi protokolleri) yönlendirme protokolleri katman 3'te çalışır. Harici BGP katman 4'te, iç katman 3'te çalışır.

Fiziksel Katman - Donanım ağ aygıtları, yani dizüstü bilgisayarlar, cep telefonları, masaüstü bilgisayarlar ile ilgilidir. Katman 1, çarpışma alanı olarak bilinir, Katman 1 PDU (protokol veri birimi bit'dir).

Veri / bağlantı katmanı - Bu katman, katman 2 anahtarları, yayın alanları, VLANS, STP, VTP ile ilgilidir. Bu katmanın protokol veri birimine kare denir.

Ağ Katmanı - Yönlendirme gerçekleştiğinde, çoğu yönlendirme protokolü bu katmanda çalışır. Bu aynı zamanda VLANS'ın iletişim kurduğu IP katmanı olarak da bilinir. Bu katman için PDU, paketler olarak bilinir.

Taşıma katmanı - Taşıma katmanı, TCP ve UDP bağlantı noktalarıyla ilgilenir; bunlar, 3. katmandan gelen paketlerin hedef bağlantı noktalarına gönderildiği yerdir. TCP'nin bağlantı yönelimli bir protokol olduğunu ve UDP'nin bağlantısız yönelimli bir protokol olduğunu (verinin garantili olmayan şekilde teslim edildiğini) hatırlamak önemlidir. Bu katman için PDU datagramlardır.

Oturum katmanı - Oturum katmanı, paketlerin katman 3'ten kapsülden çıkarılmasından saklandığı yerdir. Bu katman, yazılım tabanlı uygulamalar oluşturabileceğiniz ve bunları dönüştürebileceğiniz çok sayıda sunucu tarafı programlama dili ile ilgilidir.

Sunum katmanı - Bu katman, web tarayıcınızda gördüğünüz müşteri tarafı kodları ile ilgili veya sağ tıklayıp kaynağı görüntülediğinizde, bunlar çoğunlukla görüntülemenizi sağlayan HTM / CSS / Javascript kodları ->

Uygulama katmanı - GUI'nin (Grafik kullanıcı arayüzü) HTML / CSS kodlarını 6. katmandan bu katmana çevirdiği yerdir. Web tarayıcınızda gördüğünüz ön uç GUI'dir. Katman 5,6,7 PDU'ya mesaj denir.

Umarım bunlar OSI ile ilgili tüm soruları yanıtlar.

IS-IS hangi OSI katmanında çalışmaktadır? - Katman 3
HTML bir sunum mu yoksa uygulama protokolü mü? - Sunum
VPN tünelleri katman 2 veya 3 mü? -> L2TP, katman 2'dir -> VPN tünelleri, genellikle IPSEC gibi katman3'te çalışır.


1
Bu OP'ye cevap vermiyor; Her bir katmanın ne yaptığını asla sormadı, temel kavramları hakkında birisinin ne anlaması gerektiğini sordu.
Ryan Foley

1
Bilgilendirici harika, ama bu bir sorun / çözüm sitesi. Eğer “OSI modelinin farklı katmanları nelerdir ve her biri ne yapar?” Sorusuysa cevabınız harika. . Soru, doğrudan OSI modelini değil, OSI modelini destekleyen temellerle ilgilidir. Büyük içgörü, ancak bu özel soru için kötü bir cevap.
Ryan Foley

5
Chris, cevaplarını takdir ediyorum ve büyük ölçüde haklısın. Ancak IŞİD IP üzerinden çalışır, bu katman 4'ü yapar mı? BGP'ye ne dersin? TCP üstünde çalışır. 5. tabaka mı? Demek istediğim, protokolleri katmanlara sıkıştırabilmenize rağmen, gerçekten uymuyorlar. OSI sunum katmanı özelliklerine bakacak olsaydınız, HTML'nin tam olarak nitelendirileceğini sanmıyorum. OSI bile 2. katmanın çok geniş olduğunu ve onu iki alt katmana bölmek zorunda kaldıklarını kabul etti.
Ron Trunk

2
OSI modeli sadece teorik bir modeldir. <Name here> yönlendirme protokolü (L2 | L3) paketlerini kullanıyor olsa da, aynı zamanda L7'nin bir parçasıdır, çünkü bir uygulamadır ve yönlendirme tablosunu ve aralarındaki aynı katmanı hesaplamak zorundadır. Her şey siyah ve beyaz değil.
mulaz

3
@Ron, ISIS yerel bir IP protokolü değil. OSPF. (Daha fazla karışıklık eklemek için. :-))
John Jensen

1

HTTP (HTML değil) hem sunum hem de uygulama katmanına sahiptir. VPN Tünelleri mevcut yığına bindirme katmanları ekler: Katman 2 veya Katman 3 türüne bağlı olarak olabilir. Ardından bu eklenen katmanları paketin içinde iki kez görebileceksiniz.


1
Uygun gördüğünüz şeyleri kesinlikle etiketleyebilirsiniz, ancak HTTP, OSI modeline bakılmaksızın geliştirilmiştir ve şartnamelere uygun değildir. Aynı şey VPN'ler için de geçerlidir - OSI standartları onları asla beklememiştir. Dolayısıyla, herhangi bir benzerlik, söyledikleri gibi, tamamen tesadüfidir.
Ron Trunk,

0

OSI modelinde yer alan çok az şeyden biri, X.509 sertifikaları ve X.500'den gelen büyük LDAP parçalarıdır. Diğer bir şey ise mesajlaşma için X.400, MS Exchange bunu daha sonra sürümlerin içerip içermediğinden emin değil.

Bu yüzden, OSI bir modeldir, ağ alanında TCP / IP'ye karşı yarışını kaybetti ve bunun neden hala öğrencilere öğretildiğini gerçekten anlamıyorum. Bu modele MPLS gibi şeyler koymaya çalışmak hiç mantıklı gelmiyor.

Daha derine inmek, standartları zorlamaya çalışan büyük kuruluşların acısını çekecek, ASN.1 ve BER gibi korkunç şeyleri ... her şeyi kontrol altına alacak.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.