Principios Clave de Redes y Sistemas: TCP, Email, Seguridad y Alta Disponibilidad

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,43 KB

TCP: Protocolo de Control de Transmisión

TCP es un protocolo fundamental que garantiza la entrega fiable y ordenada de datos. Sus características principales incluyen:

  • Fiabilidad

    Gestiona las pérdidas iniciando un temporizador al enviar un segmento. Si recibe un ACK, lo da por entregado; si no, lo reenvía. Gestiona el orden y la duplicación de segmentos usando números de secuencia en la cabecera del segmento. Esto también ayuda a detectar los paquetes duplicados (si se pierde el ACK, llegan duplicados) y el destino los descarta.

  • Entrega Inmediata

    Acumula la información en buffers, evitando el envío inmediato de segmentos muy pequeños que podrían introducir retardo. El servicio de entrega inmediata despacha el tráfico y lo entrega inmediatamente sin usar los buffers. Un indicador (bit de control) en la cabecera del segmento lo señala. Dentro de un segmento, un puntero indica un número de bytes importantes o prioritarios en la información transmitida.

  • Superposición para Ahorro de Consumo en ACKs

    Permite que los ACKs contengan información de aplicación, optimizando el uso de recursos.

  • Control de Flujo

    Mecanismo de ventana deslizante basado en créditos, controlado por el receptor. También se especifica en el encabezamiento, y el tamaño de la ventana se acuerda a priori.

  • Direccionamiento: Puertos TCP

    Identificadores numéricos utilizados por los sistemas operativos (SO) para identificar los programas que hacen uso de un protocolo de transporte. TCP los emplea para determinar el destino final en la máquina receptora del segmento. Tanto el puerto de destino como el de origen deben estar especificados y se incluyen en los segmentos TCP. Se pueden establecer de distintas formas: los programadores pueden usar un número de puerto determinado, o si no se indica ninguno, el extremo cliente utiliza uno libre asignado automáticamente por el SO. Esto permite que varios programas dentro de una misma máquina se comuniquen concurrentemente. TCP se encarga de multiplexar los datos entrantes de diferentes programas.

  • Servicio de Directorio

    Consulta a otra aplicación que mantiene una lista de los números de puerto consultados.

Correo Electrónico: Funcionamiento Básico

El proceso de envío de un correo electrónico implica varios pasos clave:

  1. Se analiza la dirección de correo electrónico para extraer el nombre de dominio (ej. @ejemplo.es).
  2. Se consulta al DNS para identificar el servidor de correo asociado a ese dominio, buscando registros específicos (MX) que permitan la entrega del mensaje.
  3. El programa intenta contactar con el primer servidor MX; si falla, prueba con el siguiente. Una vez que encuentra un servidor activo, inicia el protocolo SMTP. Si el servidor responde con un 'OK', este se encargará de procesar el mensaje.
  4. Es importante destacar que los registros MX no pueden contener directamente una dirección IP, sino un nombre de dominio. Para cada nombre de dominio, se asocia una dirección IP a través de los correspondientes registros A, que indican la ubicación del Agente de Transferencia de Correo (MTA).

Snooping: Amenazas y Contramedidas en Redes

Snooping consiste en engañar a los clientes para proporcionarles información falsa. Dos datos críticos en DHCP son la puerta de enlace y el servidor DNS. Si esta información es maliciosa, se puede facilitar un ataque de Man-in-the-Middle (MitM), ya que todo el tráfico pasaría a través del atacante.

En un switch, existen puertos trusted (confiables) y untrusted (no confiables). Los mensajes DHCP que ingresan por un puerto untrusted nunca son reenviados a otro puerto untrusted. El mensaje de descubrimiento broadcast que emite el cliente nunca llegaría a un servidor malicioso si entra por un puerto untrusted, ya que solo puede salir por uno trusted. La lógica de conmutación impide que el servidor malicioso responda. Todos los puertos se configuran como untrusted, excepto aquellos que conducen a un servidor DHCP legítimo.

Failover: Respaldo y Continuidad Operativa

Failover es un modo de funcionamiento de respaldo en el que las funciones de un componente principal del sistema (como un procesador, servidor, red o base de datos) son asumidas por componentes secundarios cuando el principal no está disponible, ya sea por una falla o por un tiempo de inactividad programado.

Para prevenir un failover no deseado, se recomienda el uso de líneas de Heartbeat redundantes. Estas son líneas paralelas desplegadas específicamente para la monitorización. Se implementan de forma redundante para que, si una de ellas falla, el sistema de respaldo no interprete erróneamente que el servidor principal ha caído.

Split Brain: Resolución de Conflictos en Sistemas Redundantes

Split Brain ocurre cuando dos servidores, el principal y el de respaldo, intentan asumir el control de un servicio simultáneamente debido a un fallo en las líneas de monitorización. Soluciones comunes incluyen la verificación de la IP principal o el uso de testigos en recursos compartidos.

Entradas relacionadas: