¿Por qué se clasifica ICMP como un protocolo de capa 3? [cerrado]

11

ICMP se clasifica como un protocolo de capa 3 en el modelo OSI, pero por lo que puedo decir, no cumple con la definición de un protocolo de capa de red.

No proporciona direccionamiento o enrutamiento de paquetes (usa IP para esto), por lo que todo lo que hace es enviar información de un nodo a otro nodo, como un protocolo de transporte. Entonces, dado que, ¿por qué ICMP se clasifica como un protocolo de capa 3?

Robbie Mckennie
fuente
También puede decirle en qué dirección va el tráfico, confirmar la existencia de hosts, informar al remitente de los problemas y, sobre todo, para trabajar, necesita una dirección IP
NickW
Creo que todas las cosas que mencionaste son meras formas de trasladar información. Estoy de acuerdo en que necesita IP, pero seguramente esta es una razón para que se coloque en una capa por encima de IP en la pila.
Robbie Mckennie
1
De todos modos, hay demasiadas capas :)
NickW
1
Supongo que me equivoqué cuando dije que DEBERÍA estar en la capa de transporte. Quise decir que parece estar fuera de lugar en la capa de red, entonces, ¿cuál es la explicación que dice allí? Por supuesto, supongo que todo tiene una razón, a veces me equivoco.
Robbie Mckennie
77
Es importante que se dé cuenta de que Internet no se ajusta a la limpieza en el modelo OSI. De hecho, los RFC (3439 2.4) mencionan que consideran que las capas son dañinas cuando las personas intentan ser demasiado estrictas al respecto. Básicamente, se requiere ICMP para IP, por lo que se podría argumentar que pertenece como parte de IP. ICMP es básicamente la función de notificación de errores de IP. TCP / UDP usa IP para mensajes de error (puerto inalcanzable). PMTU es realizado por ICMP. Entonces, ICMP ciertamente reduce el TCP / UDP. Simplemente debe aceptar que en TCP / IP no hay bordes rígidos entre las capas . Solo importa que algo funcione.
Zoredache

Respuestas:

15

ICMP está realmente en la "parte superior" de la capa 3. Utiliza el protocolo IP para entregar datos a un host remoto. En otras palabras, los mensajes ICMP deben estar encapsulados en paquetes IP.

Considérelo como similar a ARP, que podría considerarse "en la parte superior" de la capa 2, mientras usa el protocolo Ethernet para enviar paquetes.

ICMP se implementa como parte de la capa de IP, por lo que el procesamiento de ICMP puede verse como un proceso paralelo o como parte del procesamiento de IP. Por lo tanto, en el tema sobre la red en capas basada en TCP / IP, ICMP se muestra como un protocolo de capa 3.

@Robbie Mckennie

A qué capa pertenece ICMP es un tema de feroz debate. El encabezado ICMP está en la capa 4, al igual que TCP y UDP, por lo que las personas argumentan que pertenece a la capa 4. Sin embargo, otros argumentan que ICMP es un protocolo de capa 3, ya que ayuda a IP y no tiene ningún concepto de puertos.

Para mí, la clasificación de un protocolo como perteneciente a una determinada capa en el modelo OSI depende de cómo funciona el protocolo. Un ejemplo:

BGP se utiliza para enrutar en la capa 3, pero el propio BGP es transportado por TCP (y, por supuesto, IP)

Cuonglm
fuente
Entonces, ¿estás diciendo que está clasificado como un protocolo de capa 3 por la forma en que se procesa en la pila, no por lo que hace?
Robbie Mckennie
3
No, funciona en la capa 3. Por todo lo que hace, está en la capa 3. Lo importante que debes preguntarte a ti mismo,What is the "data unit of layer 4 protocol"?
cuonglm
Ni siquiera sé qué significa esa pregunta. Estaba pensando en las líneas de las definiciones que he leído para las diferentes capas, tal vez mi idea de cómo funciona el modelo de capa osi es incorrecta
Robbie Mckennie
1
Ops, solo una pista. data unit of layer 1 is bits, data unit of layer 2 is frames, data unit of layer 3 is packets. ¿Qué hay de la capa 4?
Cuonglm
Para responder cuonglm: la PDU de la capa 4 es un "segmento"
lobi
6

ICMP (e ICMPv6, IGMP, etc.) administran todas las conexiones de la capa de red. No son (típicamente) utilizados por los usuarios finales, sino por el sistema operativo. Por esa razón, pertenece a la Capa 3 (Red) a pesar de que depende de IP para el direccionamiento y la determinación de ruta (enrutamiento).

El modelo OSI está escrito en gran medida a partir de la posibilidad de conectar usuarios (personas reales o servidores de aplicaciones). Todos los protocolos de administración y demás aún no se ajustan al modelo OSI, pero no parecen coincidir exactamente con el idioma porque (normalmente) no sirven a los usuarios directamente.

Chris S
fuente