¿Por qué la capa IP es consciente de las capas superiores en la pila de red?

7

En el encabezado del paquete IP hay un campo de Protocolo de 8 bits (en el desplazamiento 9) que contiene el "protocolo de siguiente nivel", con números asignados en RFC 790. Por ejemplo, TCP es 6. Mi pregunta es, ¿por qué es IP? capa consciente de las capas superiores en la pila de red?

ingrese la descripción de la imagen aquí

IJ Kennedy
fuente
1
¿Alguna respuesta te ayudó? Si es así, debe aceptar la respuesta para que la pregunta no siga apareciendo para siempre, buscando una respuesta. Alternativamente, puede proporcionar y aceptar su propia respuesta.
Ron Maupin

Respuestas:

7

Cada "encabezado" tiene algún tipo de campo de identificación "Próximo protocolo". Esto es necesario porque en el cable, los datos no son más que una cadena de 1 y 0. El punto final receptor debe tener una forma de interpretar a qué se refieren los siguientes bits.

Si no fuera por ese campo que indica definitivamente cómo interpretar el siguiente conjunto de 1 y 0, no habría forma de determinar si los siguientes 32 bits eran un número de secuencia TCP o la dirección de origen IP (por ejemplo). Ambos campos son de hecho 32 bits, por lo que no hay forma de determinar mediante programación qué significan realmente esos 1 y 0, aparte de algún tipo de campo "Siguiente protocolo".

Eddie
fuente
Esto no es 100% correcto, no cada protocolo tiene esto, ciertamente no explícitamente. por ejemplo, en tcp / udp se deriva del protocolo y solo tiene un significado local. El puerto 17782 puede ser utilizado primero por un navegador para HTTP y la próxima vez por un cliente de descarga mediante FTP. Además, MPLS, por ejemplo, no tiene ese campo en absoluto, todo está definido por el contexto.
KillianDS
@KillianDS Veo tu punto. Se podría argumentar que, una vez que TCP / UDP ha llegado a su destino respectivo, en ese momento todo lo que queda es que la aplicación simplemente reciba / envíe el flujo de bits ... y en ese punto, depende de la Aplicación determinar si se requiere una mayor encapsulación / identificación de sesión. Y en cuanto a MPLS, es cierto, no está en el encabezado, pero las interfaces están configuradas para esperar explícitamente una etiqueta MPLS, por lo que lo vería más como una excepción que como una regla. Pero, no obstante, veo y reconozco su punto: siéntase libre de editar y mejorar mi respuesta.
Eddie
2

El campo de protocolo IPv4 permite que el punto final determine qué tipo de datos hay en el paquete. La capa IP del punto final utiliza el campo de protocolo para determinar a qué protocolo entregar el paquete.

Mike Pennington
fuente
0

De Wikipedia :

Capa 3: capa de red

La capa de red proporciona los medios funcionales y de procedimiento para transferir secuencias de datos de longitud variable (llamados datagramas) de un nodo a otro conectado a la misma red. Una red es un medio al que se pueden conectar muchos nodos, en el que cada nodo tiene una dirección y que permite que los nodos conectados a él transfieran mensajes a otros nodos conectados simplemente proporcionando el contenido de un mensaje y la dirección del destino nodo y dejar que la red encuentre la forma de entregar ("ruta") el mensaje al nodo de destino. Además del enrutamiento de mensajes, la red puede (o no) implementar la entrega de mensajes al dividir el mensaje en varios fragmentos, entregar cada fragmento por una ruta separada y volver a ensamblar los fragmentos, informar errores de entrega, etc.

No se garantiza que la entrega de datagramas en la capa de red sea confiable. Varios protocolos de gestión de capa, una función definida en el anexo de gestión, ISO 7498/4, pertenecen a la capa de red. Estos incluyen protocolos de enrutamiento, administración de grupos de multidifusión, información y error de la capa de red y asignación de direcciones de la capa de red. Es la función de la carga útil lo que los hace pertenecer a la capa de red, no el protocolo que los transporta.

Cada capa admite las capas que la rodean, así es como se diseña el modelo OSI.

ingrese la descripción de la imagen aquí

LAReid
fuente
66
Bienvenido a la comunidad de NE. Seguí y cité el contenido que parece que vino directamente de Wikipedia para ti. En los sitios de Stack Exchange, nos gusta asegurarnos de que el crédito se otorgue donde sea debido y evitar acusaciones de plagio. Está bien citar contenido de otros sitios, pero proporcione las referencias de las que se originó en el futuro.
YLearn
0

Los protocolos que pueden encapsular múltiples protocolos de capa superior necesitan alguna forma de indicar cuál es ese protocolo de capa superior. Ethernet utiliza un campo Ethertype, con 0x0800 que denota IP y 0x0806 que representa ARP. TCP utiliza números de puerto bien conocidos, por ejemplo, 80 representa HTTP. HTTP utiliza el tipo de contenido: campo de encabezado.

Wrolf
fuente