¿Qué es una red?
Cómo el cliente y el servidor intercambian datos
Los artículos escritos en este blog fueron creados con el objetivo de enseñar. Además, la información del artículo puede ser incorrecta, así que tenga cuidado.
Una red es una estructura en la que computadoras remotas intercambian datos de acuerdo con reglas establecidas. Los juegos en línea, los navegadores web y los programas de chat también comienzan básicamente con el proceso de enviar datos y recibir una respuesta.
Encuentre un programa por dirección y puerto
Una dirección IP es una dirección utilizada para encontrar una computadora en una red. El número de puerto identifica qué programa se comunicará con la computadora.
192.168.0.10:7777
└─ Dirección IP └─ Puerto
El servidor espera una solicitud en un puerto específico y el cliente intenta conectarse a la dirección y al puerto del servidor. Después de la conexión, ambas partes intercambian mensajes en el formato prometido.
Los protocolos son las reglas para el intercambio de datos.
Con solo mirar los bytes enviados, no se puede saber si se trata de una solicitud de inicio de sesión o de la ubicación de un carácter. Por lo tanto, el tipo de mensaje, la longitud y el orden de los valores se determinan de antemano.
[Tipo de mensaje][Longitud de los datos][Datos reales]
[MOVE ][12 ][x, y, z]
Esta promesa se llama protocolo. Si el servidor y el cliente no utilizan las mismas reglas, no se pueden interpretar correctamente.
TCP y UDP
TCP garantiza que los datos lleguen en orden y los reenvía si se pierden. Es bueno para tareas en las que la precisión es importante, como transferir archivos, iniciar sesión y chatear.
UDP tiene una gestión sencilla de conexión y retransmisión, lo que facilita la reducción de retrasos. En cambio, los datos pueden desaparecer o cambiar de orden, por lo que el programa debe determinar qué manejo de confiabilidad se necesita.
TCP: prioriza la entrega precisa.
UDP: bueno para priorizar la entrega rápida y el estado actualizado.
Los juegos en línea deben ocultar el retraso
Los datos de la red no llegan inmediatamente. La predicción y la interpolación se utilizan para que la pantalla del cliente sea fluida y, a menudo, las decisiones importantes se toman en una estructura donde el servidor toma la decisión final.
El comienzo de la programación de redes no es una sincronización complicada. Es una buena idea comenzar con un pequeño programa Echo donde un cliente envía una cadena y el servidor devuelve la misma cadena, verificando conexiones, mensajes y manejo de errores.