Modelo de OSI y relación de protocolos de red

27

Cuando la mayoría de los estudiantes de redes aprenden por primera vez sobre el modelo OSI, pasan mucho tiempo tratando de descubrir en qué capa del modelo se ajusta un protocolo en particular. Recibimos muchas preguntas sobre las capas OSI en este foro, y generalmente son como:

  • ¿En qué capa OSI opera IS-IS?
  • ¿Es HTML una presentación o un protocolo de aplicación?
  • ¿Son los túneles VPN de capa 2 o 3?

¿Cómo debe un estudiante (o profesional para el caso) entender la relación entre el modelo OSI y los protocolos con los que trabaja?

Ron Trunk
fuente

Respuestas:

35

Hay dos hechos importantes sobre el modelo OSI para recordar:

  1. Es un modelo conceptual. Eso significa que describe un grupo idealizado, abstracto y teórico de funciones de red. No describe nada que alguien haya construido realmente (al menos nada que esté en uso hoy).

  2. No es el único modelo. Existen otros modelos, sobre todo el conjunto de protocolos TCP / IP (RFC-1122 y RFC-1123), que está mucho más cerca de lo que está actualmente en uso.

Un poco de historia: probablemente todos hayan escuchado sobre los primeros días de la creación de redes de paquetes, incluido ARPANET, el predecesor de Internet. Además de los esfuerzos del Departamento de Defensa de EE. UU. Para crear protocolos de red, también participaron varios otros grupos y empresas. Cada grupo estaba desarrollando sus propios protocolos en el nuevo campo de conmutación de paquetes. IBM y las compañías telefónicas estaban desarrollando sus propios estándares. En Francia, los investigadores estaban trabajando en su propio proyecto de redes llamado Cícladas.

El trabajo en el modelo OSI comenzó a fines de la década de 1970, principalmente como una reacción a la creciente influencia de grandes empresas como IBM, NCR, Burroughs, Honeywell (y otras) y sus protocolos y hardware patentados. La idea detrás de esto era crear un estándar abierto que proporcionara interoperabilidad entre diferentes fabricantes. Pero debido a que el modelo ISO tenía un alcance internacional, tenía muchos intereses políticos, culturales y técnicos en competencia. Llevó más de seis años llegar a un consenso y publicar las normas.

Mientras tanto, también se desarrolló el modelo TCP / IP. Era simple, fácil de implementar y, lo más importante, era gratis. Debes comprar las especificaciones estándar de OSI para crear un software. Todos los esfuerzos de atención y desarrollo gravitaron hacia TCP / IP. Como resultado, el modelo OSI nunca se implementó como un conjunto de protocolos, y TCP / IP se convirtió en el estándar para Internet.

El punto es que, todos los protocolos en uso hoy en día, el conjunto TCP / IP; protocolos de enrutamiento como RIP, OSPF y BGP; y los protocolos del sistema operativo host como Windows SMB y Unix RPC, se desarrollaron sin el modelo OSI en mente. A veces tienen algo de parecido, pero los estándares OSI nunca se siguieron durante su desarrollo. Por lo tanto, es un error tonto tratar de ajustar estos protocolos en OSI. Simplemente no encajan exactamente.

Eso no significa que el modelo no tenga valor; Todavía es una buena idea estudiarlo para que pueda comprender los conceptos generales. El concepto de las capas OSI está tan entretejido en la terminología de la red, que hablamos de las capas 1, 2 y 3 en el discurso cotidiano de redes. La definición de las capas 1, 2 y 3 son, si entrecierras un poco, bastante bien acordadas. Solo por esa razón, vale la pena saberlo.

Las cosas más importantes que debe comprender sobre el modelo OSI (o cualquier otro) son:

  • Podemos dividir los protocolos en capas.
  • Las capas proporcionan encapsulación
  • Las capas proporcionan abstracción
  • Las capas desacoplan funciones de otros

Dividir los protocolos en capas nos permite hablar sobre sus diferentes aspectos por separado. Hace que los protocolos sean más fáciles de entender y más fáciles de solucionar. Podemos aislar funciones específicas fácilmente y agruparlas con funciones similares de otros protocolos.

Cada "función" (en términos generales) encapsula la capa (s) por encima de ella. La capa de red encapsula las capas por encima de ella. La capa de enlace de datos encapsula la capa de red, y así sucesivamente.

Las capas resumen las capas debajo de ella. Su navegador web no necesita saber si está utilizando TCP / IP o algo más en la capa de red (como si hubiera algo más). Para su navegador, las capas inferiores solo proporcionan una secuencia de datos. La forma en que se muestra esa transmisión está oculta en el navegador. TCP / IP no sabe (o no le importa) si está utilizando Ethernet, un cable módem, una línea T1 o satélite. Solo procesa paquetes. Imagine lo difícil que sería diseñar una aplicación que tuviera que lidiar con todo eso. Las capas abstraen las capas inferiores para que el diseño y la operación del software se vuelvan mucho más simples.

Desacoplamiento: en teoría, puede sustituir una tecnología específica por otra en la misma capa. Siempre que la capa se comunique con la de arriba y la de abajo de la misma manera, no debería importar cómo se implemente. Por ejemplo, podemos eliminar el muy conocido protocolo de capa 3, IP versión 4, y reemplazarlo con IP versión 6. Todo lo demás debería funcionar exactamente igual. Para su navegador o su módem de cable, no debería haber diferencia.

El modelo TCP / IP es en lo que se basa el conjunto de protocolos TCP / IP (¡sorpresa!). Solo tiene cuatro capas, y todo lo que está por encima del transporte es solo "aplicación". Es más fácil de entender y evita preguntas interminables como "¿Es esta capa de sesión o capa de presentación?" Pero también es solo un modelo, y algunas cosas no ' Tampoco encaja bien, como los protocolos de túnel (GRE, MPLS, IPSec, por nombrar algunos).

En última instancia, los modelos son una forma de representar ideas abstractas invisibles como direcciones, paquetes y bits. Siempre que lo tenga en cuenta, el modelo OSI o TCP / IP puede ser útil para comprender las redes.

Ron Trunk
fuente
1
Siempre me he preguntado por qué nos referimos al modelo OSI cuando, en realidad, el modelo TCP / IP se ajusta mejor a la factura.
Ryan Foley
55
@RyanFoley, cierto en muchos casos. Sin embargo, cuando se trata de solucionar problemas (y especialmente enseñarlo) es mejor tener capas físicas y de datos separadas para abordar los problemas en cada una por separado. Por ejemplo, es bueno saber la diferencia en un dispositivo Cisco entre una interfaz que está arriba / arriba, una que está arriba / abajo y otra que está abajo / abajo.
YLearn
"Por ejemplo, podemos eliminar el muy conocido protocolo de capa 3, IP versión 4, y reemplazarlo por IP versión 6. Todo lo demás debería funcionar exactamente igual. Para su navegador o su módem de cable, no debería haber diferencia. " Desafortunadamente, hace la diferencia porque las abstracciones son permeables. Las aplicaciones y los protocolos de transporte necesitan saber sobre el direccionamiento utilizado por el protocolo de internet.
Peter Green
Bueno, por eso los modelos son solo modelos.
Ron Trunk
1
joelonsoftware.com/2002/11/11/the-law-of-leaky-abstraction Creamos abstracciones para ocultar los detalles feos de lo subyacente, pero algunos detalles de lo subyacente se filtran y causan problemas. Una de esas cosas que se filtra hasta la parte superior de la pila es el sistema de direccionamiento.
Peter Green
2

Hay cierta confusión aquí. El hecho de que una función no parezca ajustarse a una capa no significa que no sea así. OSI es flexible y permite objetos y subcapas donde las implementaciones prácticas se asignan al modelo. Algunas de las funciones de una capa también pueden duplicarse en otras capas. Además, el procesamiento no tiene que suceder en la capa de aplicación. Finalmente, OSI era más que un modelo, algunos fabricantes lo implementaron en su totalidad. Trabajé en el proyecto DEC. La practicidad ha significado que solo ciertas partes de OSI se usan hoy en día.

FAUCES
fuente
1

Todos los protocolos de enrutamiento IGP (protocolos de puerta de enlace interior) funcionan en la capa 3. BGP externo funciona en la capa 4, mientras que el interno funciona en la capa 3.

Capa física: se ocupa de dispositivos de red de hardware, es decir, computadoras portátiles, teléfonos móviles, computadoras de escritorio. Se sabe que la capa 1 es un dominio de colisión, la PDU de capa 1 (la unidad de datos del protocolo es bits).

Capa de datos / enlace: esta capa se refiere a conmutadores de capa 2, dominios de difusión, VLAN, STP, VTP. La unidad de datos de protocolo de esta capa se denomina tramas.

Capa de red: esto es cuando ocurre el enrutamiento, la mayoría de los protocolos de enrutamiento funcionan en esta capa. Esto también se conoce como la capa IP, donde se comunican VLAN. La PDU para esta capa se conoce como paquetes.

Capa de transporte: la capa de transporte se ocupa de los puertos TCP y UDP, aquí es donde los paquetes de las capas 3 se envían a sus puertos de destino. Es importante recordar que TCP es un protocolo orientado a la conexión, mientras que UDP es un protocolo orientado sin conexión (entrega de datos sin garantía). La PDU para esta capa es datagramas.

Capa de sesión: la capa de sesión es donde se encapsulan los paquetes de la capa 3. Esta capa se ocupa de múltiples lenguajes de programación del lado del servidor donde puede crear aplicaciones basadas en software y convertirlas en ->

La capa Presentación: esta capa trata sobre los códigos del lado del cliente que ve en su navegador web, o cuando hace clic derecho y ve la fuente, estos son principalmente códigos HTM / CSS / Javascript que le permiten ver su ->

La capa de aplicación: aquí es donde la GUI (interfaz gráfica de usuario) traduce los códigos HTML / CSS de la capa 6 a esta capa. Lo que ves en tu navegador web es la interfaz gráfica de usuario. La capa 5,6,7 PDU se llama mensaje.

Espero que estos respondan todas las preguntas relacionadas con OSI.

¿En qué capa OSI opera IS-IS? - Capa 3
¿HTML es una presentación o un protocolo de aplicación? - Presentación
¿Son los túneles VPN de capa 2 o 3? -> L2TP es la capa 2 -> Los túneles VPN generalmente funcionan en la capa 3, como IPSEC.

Chris
fuente
1
Esto no responde al OP; nunca preguntó qué hacía cada capa, preguntó qué debería entender alguien sobre los conceptos subyacentes.
Ryan Foley
1
Informativo es genial, pero este es un sitio de problema / solución. Su respuesta es excelente si la pregunta era "¿Cuáles son las diferentes capas del modelo OSI y qué hace cada una?" . La pregunta es sobre los fundamentos que respaldan el modelo OSI, no el modelo OSI directamente. Gran conocimiento, pero mala respuesta para esta pregunta específica.
Ryan Foley
55
Chris, agradezco tus respuestas y, en gran medida, tienes razón. Pero ISIS se ejecuta sobre IP, ¿eso lo convierte en la capa 4? ¿Qué tal BGP? Se ejecuta sobre TCP. ¿Es la capa 5? Mi punto es que, aunque puede exprimir protocolos en las capas, realmente no encajan. Si tuviera que mirar la especificación de la capa de presentación de OSI, no creo que HTML califique. Incluso OSI admitió que la capa 2 era demasiado amplia y tuvieron que dividirla en dos subcapas.
Ron Trunk
2
El modelo OSI es solo un modelo teórico. Incluso si el protocolo de enrutamiento <nombre aquí> usa paquetes (L2 | L3), también es parte de L7, ya que es una aplicación, y tiene que calcular la tabla de enrutamiento, y tal vez la misma capa intermedia. No todo es blanco y negro.
mulaz
3
@Ron, ISIS no es un protocolo IP nativo. OSPF es. (Solo para agregar más confusión. :-))
John Jensen
1

HTTP (no HTML) tiene tanto la presentación como la capa de aplicación. Los túneles VPN agregan capas superpuestas a la pila existente: podría ser Layer 2 o Layer 3 dependiendo de su tipo. Entonces podrá ver estas capas agregadas dos veces en el paquete.

alexlev2004
fuente
1
Ciertamente puede etiquetar las cosas como mejor le parezca, pero HTTP se desarrolló sin tener en cuenta el modelo OSI, y no cumple con las especificaciones. Lo mismo ocurre con las VPN: los estándares OSI nunca las anticiparon. Por lo tanto, cualquier parecido es, como dicen, completamente casual.
Ron Trunk
0

Una de las pocas cosas que en realidad son del modelo OSI son los certificados X.509 y grandes fragmentos de LDAP que vienen de X.500. La otra cosa es X.400 para mensajería, MS Exchange tenía esto al menos en 5.5, no estoy seguro si las versiones posteriores lo incluyeron.

Entonces, OSI es un modelo, en el dominio de la red perdió la carrera contra TCP / IP y realmente no entiendo por qué esto todavía se enseña a los estudiantes. Intentar poner cosas como MPLS en este modelo no tiene ningún sentido.

Profundizar más allá lo llevará al dolor de las grandes organizaciones que intentan hacer cumplir estándares, cosas horribles como ASN.1 y BER ... sobreingeniería de todo.

TabTwo
fuente