Sé que tanto TCP como UDP están construidos sobre IP, y sé las diferencias entre TCP y UDP, pero estoy confundido acerca de qué es exactamente "IP sin procesar". ¿Sería justo decir que TCP y UDP implementan IP, pero que la IP en sí misma no es capaz de transferir datos? ¿O es IP una forma de comunicación de muy bajo nivel, que TCP y UDP abstraen aún más?
18
Respuestas:
IP es un protocolo de capa 3 . TCP / UDP son protocolos de capa 4 . Cada uno tiene diferentes propósitos.
La capa 3 se encarga de la entrega de extremo a extremo . Su única función es agregar lo que sea necesario a un paquete para obtener un paquete de un host a otro.
La capa 4 se encarga de la entrega de servicio a servicio . Su única función es segregar flujos de datos. Su computadora puede tener múltiples programas en ejecución, cada uno de los cuales envía / recibe bits al cable. IE: podría tener múltiples pestañas del navegador ejecutándose, transmitiendo radio por Internet, ejecutando una descarga, ejecutando algunos torrents legales , utilizando una aplicación de chat, etc. Todos estos reciben 1s y 0s del cable, y la Capa 4 segrega cada flujo de datos al Aplicación única que los necesita. Aquí hay una ilustración:
IP no puede entregar un paquete al servicio / aplicación correcto. Y TCP / UDP no puede entregar un paquete de un extremo de Internet al otro.
Tanto TCP como IP trabajan juntos para permitirles a ambos alcanzar el "objetivo final" de la comunicación por Internet.
Los datos que deben pasar de un host a otro son generados por las capas superiores del modelo OSI.
Estos datos se pasan a L4, que agregará la información necesaria para entregar los datos de un servicio a otro, como un encabezado TCP con un puerto de origen y de destino. Los datos y el encabezado L4 ahora se denominan segmento.
Luego, el segmento se pasará a L3, que agregará la información necesaria para entregar el segmento de extremo a extremo, como un encabezado IP con una dirección IP de origen y de destino. El encabezado L3 y el segmento ahora se pueden denominar paquetes.
Este proceso se conoce como encapsulación y desencapsulación (o, a veces, decapsulación). Aquí hay una animación de cómo funciona:
Si esto no tiene sentido, sugiero leer más sobre el modelo OSI y cómo cada capa tiene diferentes responsabilidades que funcionan juntas para lograr mover un paquete a través de Internet .
fuente
inside an IP header is usually a TCP or UDP header
no es correcto, el encabezado TCP / UDP no está dentro del encabezado IP, está dentro de la porción de datos del paquete IP.IP puede transmitir datos bien, el problema es lo que sucede cuando esos datos llegan al otro extremo. La única información de identificación son las direcciones IP de los hosts y un número de protocolo. Ninguno de los dos proporciona ninguna forma de distinguir para qué socket son los datos.
Es posible que los programas usen IP directamente a través de lo que se conoce como "sockets sin procesar", pero la falta de un mecanismo adecuado para decidir a qué socket enviar datos genera problemas de seguridad y rendimiento (el núcleo debe enviar los datos a todos los sockets sin procesar) para un número de protocolo dado). Por esta razón, la capacidad de abrir "sockets sin procesar" generalmente está restringida a root (o el equivalente de su plataforma).
UDP es una capa bastante mínima sobre IP. Agrega números de puerto para identificar para qué socket son los datos y una suma de verificación (para rechazar paquetes corruptos). La aplicación sigue siendo responsable de lidiar con los paquetes perdidos, controlar la congestión y dividir los datos en paquetes de tamaño apropiado.
TCP es un protocolo más complejo que, además de proporcionar números de puerto y sumas de comprobación, divide los flujos de bytes en paquetes, los vuelve a ensamblar en su destino y proporciona control de congestión y funciones de recuperación.
fuente
IP es un protocolo OSI de capa 3, mientras que TCP y UDP son protocolos OSI de capa 4. Como protocolo de capa 3, IP puede transportar muchos protocolos de capa 4 diferentes. TCP y UDP son probablemente los más comunes, pero no son los únicos. Los protocolos de capa 4 son los que las aplicaciones usan como conexiones de extremo a extremo. IP transporta protocolos de capa 4 de red a red (host a host). Los protocolos de capa 2, como ethernet, transportan protocolos de capa 3 en una LAN.
Debe investigar el modelo OSI, pero tenga en cuenta que es un modelo conceptual y que el mundo real a menudo no coincide exactamente.
fuente