Lectura rápida
01 conjunto de protocolos TCP/IP
03 Proceso de transmisión de datos
① Procesamiento de solicitudes
② Procesamiento del módulo TCP
④ Procesamiento de la interfaz de red (controlador Ethernet)
⑤ Procesamiento de la interfaz de red (controlador Ethernet)
⑦ Procesamiento del módulo TCP
⑧ Procesamiento de solicitudes
TCP/IP (Protocolo de control de transmisión/Protocolo de Internet) es un conjunto de protocolos de comunicación utilizados para la comunicación de datos en Internet y muchas redes privadas. Es el conjunto central de protocolos de Internet que permite que diferentes tipos de computadoras y dispositivos de red se comuniquen entre sí en todo el mundo. Los siguientes son algunos conceptos y protocolos clave de TCP/IP:
TCP es un protocolo orientado a conexión responsable de establecer conexiones confiables de transmisión de datos en ambos extremos de la comunicación.
Garantiza que los datos lleguen al destino en el orden correcto y maneja paquetes perdidos, duplicados o dañados.
Las características de TCP incluyen control de flujo y control de congestión para garantizar una transmisión de datos eficiente en la red.
IP es un protocolo de capa de red responsable de enrutar paquetes de datos y entregarlos entre diferentes redes.
Utiliza direcciones IP para identificar de forma única cada dispositivo en la red para que los paquetes se puedan entregar correctamente.
Hay dos versiones principales de IP: IPv4 (Protocolo de Internet versión 4) e IPv6 (Protocolo de Internet versión 6), que utilizan diferentes formatos de dirección.
TCP/IP sigue una estructura en capas en la que cada capa realiza una tarea específica y es independiente entre sí.
El modelo por capas más común es el modelo OSI (Interconexión de sistemas abiertos), que tiene siete capas, mientras que el modelo TCP/IP suele simplificarse en cuatro capas: capa de aplicación, capa de transporte, capa de red y capa de enlace de datos.
Una dirección IP es un identificador único para cada dispositivo en la red. IPv4 utiliza direcciones de 32 bits, mientras que IPv6 utiliza direcciones de 128 bits.
Las direcciones IP generalmente se dividen en direcciones IP públicas (utilizadas en la Internet pública) y direcciones IP privadas (utilizadas dentro de una red de área local).
El protocolo TCP/IP no solo se refiere a los dos protocolos TCP e IP, sino que también se refiere a un grupo de protocolos compuesto por FTP, SMTP, TCP, UDP, IP y otros protocolos, simplemente porque el protocolo TCP y el protocolo IP en TCP/ Protocolo IP El más representativo, por eso se denomina protocolo TCP/IP.
Paquete, trama, paquete, segmento, mensaje.
Los cinco términos anteriores se utilizan para describir las unidades de datos y se distinguen aproximadamente de la siguiente manera:
① Se puede decir que Bao es un término de uso múltiple;
② La trama se utiliza para representar la unidad de paquetes en la capa de enlace de datos;
③ Los paquetes de datos son unidades de paquetes en capas por encima de la capa de red, como IP y UDP;
④ El segmento representa la información en el flujo de datos TCP;
⑤ Mensaje se refiere a la unidad de datos en el protocolo de aplicación.
En cada capa, se agrega un encabezado a los datos enviados, que contiene la información necesaria para la capa, como la dirección de destino e información relacionada con el protocolo. Normalmente, la información proporcionada por el protocolo es el encabezado del paquete y el contenido a enviar son los datos. Desde la perspectiva de la siguiente capa, todos los paquetes recibidos de la capa superior se consideran datos de esta capa.
Además, también necesita conocer la IP, MAC y el puerto.
Dirección IP: se utiliza para identificar hosts y enrutadores interconectados en una red TCP/IP.
MAC: Identifica diferentes ordenadores en un mismo enlace.
Puerto: Los números de puerto se utilizan para identificar diferentes aplicaciones que se comunican en la misma computadora. Por lo tanto, también se le llama dirección del programa.
El proceso de transmisión de datos en la pila de protocolos:
① Procesamiento de solicitudes
Primero, la aplicación realizará el procesamiento de codificación. Estas codificaciones son equivalentes a las funciones de la capa de presentación de OSI. Después de la conversión de codificación, es posible que el correo electrónico no se envíe inmediatamente. Esta función de administración de cuándo establecer una conexión de comunicación y cuándo enviar datos es equivalente a la sesión de la función de capa OSI.
② Procesamiento del módulo TCP
TCP se encarga de establecer conexiones, enviar datos y desconectarse según las instrucciones de la aplicación. TCP proporciona una transmisión confiable de datos enviados desde la capa de aplicación al par. Para lograr esta funcionalidad, es necesario agregar un encabezado TCP al extremo frontal de los datos de la capa de aplicación.
IP combina el encabezado TCP y los datos TCP transmitidos por TCP como sus propios datos y agrega su propio encabezado IP delante del encabezado TCP. Una vez generado el paquete IP, la ruta o el host que acepta el paquete IP se determina consultando la tabla de control de enrutamiento.
④ Procesamiento de la interfaz de red (controlador Ethernet)
Los paquetes IP transmitidos desde IP son datos a Ethernet. Se adjunta un encabezado Ethernet a estos datos y se envía para su procesamiento. El paquete de datos Ethernet generado se transmitirá al extremo receptor a través de la capa física.
⑤ Procesamiento de la interfaz de red (controlador Ethernet)
Después de que el host recibe el paquete Ethernet, primero busca la dirección MAC en el encabezado del paquete Ethernet para determinar si es un paquete enviado a sí mismo. De lo contrario, descarta los datos. Si el paquete se envía a sí mismo, el tipo de datos se determina a partir del tipo en el encabezado del paquete Ethernet y luego se pasa al módulo correspondiente, como IP, ARP, etc. El ejemplo aquí es IP.
El módulo IP también realiza un procesamiento similar después de recibir los datos. Determine si esta dirección IP coincide con su propia dirección IP del encabezado del paquete. Si coincide, los datos se enviarán al módulo correspondiente de acuerdo con el tipo de protocolo del encabezado, como TCP y UDP. El ejemplo aquí es TCP. Además, cuando hay un enrutador, la dirección de recepción a menudo no es su propia dirección. En este caso, debe utilizar la tabla de control de enrutamiento para investigar el host o enrutador al que se deben enviar los datos antes de reenviarlos.
⑦ Procesamiento del módulo TCP
En el módulo TCP, primero se calcula la suma de verificación para determinar si los datos están dañados. Luego verifique si los datos se reciben de acuerdo con el número de secuencia. Finalmente verifique el número de puerto para identificar la aplicación específica. Una vez recibidos por completo los datos, se pasan a la aplicación identificada por el número de puerto.
⑧ Procesamiento de solicitudes
La aplicación receptora recibirá directamente los datos enviados por el remitente. Al analizar los datos, se muestra el contenido correspondiente.
Hay dos protocolos de capa de transporte representativos en TCP/IP: TCP y UDP.
TCP es un protocolo de transmisión confiable y orientado a la conexión. Stream se refiere a una estructura de datos ininterrumpida. Cuando una aplicación usa TCP para enviar mensajes, aunque se puede garantizar el orden de envío, sigue siendo como un flujo de datos sin intervalos enviados al extremo receptor. Para proporcionar una transmisión confiable, TCP implementa un mecanismo de "control de secuencia" o "control de retransmisión". Además, también tiene muchas funciones como "control de flujo (control de tráfico)", "control de congestión" y mejora de la utilización de la red.
UDP es un protocolo de paquetes poco confiable. El procesamiento detallado se dejará en manos de la aplicación de la capa superior para que lo complete. En el caso de UDP, si bien se garantiza el tamaño del mensaje que se envía, no hay garantía de que el mensaje llegue. Por lo tanto, la aplicación a veces realiza el procesamiento de retransmisión según sus propias necesidades.
Las ventajas y desventajas de TCP y UDP no se pueden comparar de manera simple y absoluta: TCP se usa cuando es necesaria una transmisión confiable en la capa de transporte; por un lado, UDP se usa principalmente para aquellos que tienen altos requisitos de transmisión de alta velocidad y condiciones reales. - Tiempo de ejecución de comunicaciones o comunicaciones radiodifundidas. Se deben utilizar TCP y UDP según sea necesario según el propósito de la aplicación.
Identificación de comunicación a través de dirección IP, número de puerto y número de protocolo:
La comunicación entre ① y ② se realiza en dos ordenadores. Su número de puerto de destino es el mismo, ambos 80. Esto se puede distinguir según el número de puerto de origen.
El número de puerto de destino y el número de puerto de origen de ③ y ① son exactamente iguales, pero sus respectivas direcciones IP de origen son diferentes.
Además, cuando la dirección IP y el número de puerto son todos iguales, también podemos distinguirlos por el número de protocolo (TCP y UDP).