Todos los protocolos de red comunes explicados

El protocolo de red es un conjunto de reglas que utilizan los dispositivos para comunicarse entre sí a través de una red.

Es similar a cómo las personas siguen ciertos comportamientos y procedimientos cuando hablan entre sí.

Especifican cosas como cómo se deben estructurar los paquetes de datos, cómo se deben identificar los dispositivos y cómo se deben manejar los errores y conflictos.

Los protocolos de red se pueden clasificar en estos tres tipos principales: comunicación, seguridad y gestión.

#1. Protocolos de comunicación

Estos protocolos se centran en permitir el intercambio de datos e información entre dispositivos en una red. Determinan cómo se formatean, transmiten y reciben los datos, lo que garantiza una comunicación eficaz. Algunos ejemplos son HTTP/HTTPS, FTP, TCP y UDP.

#2. Protocolos de seguridad

Los protocolos de seguridad están diseñados para proteger la confidencialidad y autenticidad de los datos mientras atraviesan una red. Establecen canales seguros de comunicación y se aseguran de que la información confidencial no sea vulnerable a la interceptación o manipulación.

Los ejemplos incluyen SSL/TLS para cifrado, SSH para acceso remoto seguro y variantes seguras de protocolos de correo electrónico como SMTPS y POP3S.

#3. Protocolos de gestión

Los protocolos de gestión se utilizan para la administración, monitoreo y control de dispositivos/recursos de red. Ayudan a los administradores de red a configurar y solucionar problemas de componentes de red de manera eficiente.

Algunos ejemplos son DHCP para la asignación dinámica de direcciones IP, SNMP para la administración de dispositivos de red, ICMP para fines de diagnóstico y BGP para información de enrutamiento y accesibilidad.

Analicemos algunos protocolos comunes de cada categoría.

Protocolos de comunicación

HTTP

HTTP significa Protocolo de transferencia de hipertexto.

Es un protocolo fundamental utilizado para la comunicación entre un navegador web y un servidor.

Es un protocolo de capa de aplicación que opera sobre el modelo OSI.

Cuando ingresa una URL en su navegador web y presiona Intro, envía una solicitud HTTP a un servidor web que luego procesa la solicitud y devuelve una respuesta HTTP que contiene la información solicitada.

Podría ser una página web, una imagen, un vídeo o cualquier otro recurso alojado en el servidor.

HTTP es un protocolo sin estado. Significa que cada solicitud de un cliente a un servidor se trata como una transacción independiente y aislada.

El servidor no mantiene ninguna información sobre solicitudes anteriores del mismo cliente. Esta simplicidad es una de las razones por las que HTTP se utiliza tan ampliamente.

HTTP define varios métodos de solicitud, incluidos GET (recuperar datos), POST (enviar datos para procesar), PUT (actualizar un recurso), DELETE (eliminar un recurso) y otros. Estos métodos determinan el tipo de operación que el cliente desea realizar en el servidor.

Generalmente, las respuestas HTTP incluyen un código de estado que indica el resultado de la solicitud.

Por ejemplo: un código de estado de 200 indica una solicitud exitosa, mientras que 404 indica que no se encontró el recurso solicitado.

Y HTTP ha tenido varias versiones a lo largo de los años, siendo HTTP/1.1 una de las versiones más utilizadas durante mucho tiempo.

HTTP/2 y HTTP/3 (también conocido como QUIC) se desarrollaron para mejorar el rendimiento.

HTTPS

HTTPS significa Protocolo seguro de transferencia de hipertexto.

Es una extensión del protocolo HTTP utilizado para la comunicación segura a través de redes informáticas.

Agrega una capa de seguridad al HTTP estándar al cifrar los datos intercambiados entre un navegador y un servidor web mediante protocolos criptográficos como SSL/TLS. Incluso si alguien intercepta los datos que se transmiten, no podrá leerlos ni descifrarlos fácilmente.

HTTPS incluye una forma de autenticación del servidor.

Cuando un navegador se conecta a un sitio web a través de HTTPS, el sitio web presenta un certificado digital emitido por una autoridad de certificación (CA) confiable.

Este certificado verifica la identidad del sitio web, lo que garantiza que el cliente se esté conectando al servidor deseado y no a uno malicioso.

Los sitios web que utilizan HTTPS se identifican con «https://» al principio de sus URL. El uso de este prefijo indica que el sitio web utiliza una conexión segura.

HTTPS generalmente usa el puerto 443 para la comunicación, mientras que HTTP usa el puerto 80. Los servidores web pueden diferenciar fácilmente entre conexiones seguras y no seguras usando esta distinción.

Los motores de búsqueda como Google dan prioridad a los sitios web que utilizan HTTPS en sus rankings de búsqueda.

Los navegadores también pueden advertir a los usuarios cuando una página web HTTPS segura contiene elementos (imágenes o scripts) servidos a través de una conexión HTTP no segura. Esto se conoce como «contenido mixto» y puede comprometer la seguridad.

Aquí hay un artículo detallado sobre cómo obtener un certificado SSL para un sitio web. No dudes en visitar esta página.

ftp

El Protocolo de transferencia de archivos (FTP) es un protocolo de red estándar que se utiliza para transferir archivos entre un cliente y un servidor en una red informática.

FTP opera en el modelo cliente-servidor. Eso significa que el cliente inicia una conexión a otra computadora (el servidor) para solicitar y transferir archivos.

FTP utiliza dos puertos para la comunicación y puede funcionar en dos modos: modo activo y modo pasivo.

El puerto 21 se utiliza para la conexión de control donde se envían comandos y respuestas entre el cliente y el servidor.

El modo activo es el modo tradicional que funciona según el principio del modelo cliente-servidor. Aquí se abre un puerto adicional (normalmente en el rango de 1024-65535) para la transferencia de datos.

Por otro lado, el modo pasivo se utiliza a menudo cuando el cliente está detrás de un firewall o dispositivo NAT y el servidor abre un puerto aleatorio con un número alto para la transferencia de datos.

FTP generalmente requiere autenticación para acceder a los archivos en el servidor. Los usuarios deben proporcionar un nombre de usuario y contraseña para iniciar sesión.

Algunos servidores FTP también admiten acceso anónimo. Por lo tanto, los usuarios pueden iniciar sesión con un nombre de usuario genérico como «anónimo» o «FTP» y utilizar su dirección de correo electrónico como contraseña.

FTP admite dos modos de transferencia de datos: modo ASCII y modo binario.

El modo ASCII se usa para archivos de texto y el modo binario se usa para archivos que no son de texto, como imágenes y ejecutables. El modo se establece según el tipo de archivo que se transfiere.

El FTP tradicional no es un protocolo seguro ya que transmite datos, incluidos nombres de usuario y contraseñas, en texto sin formato.

Secure FTP (SFTP) y FTP sobre SSL/TLS (FTPS) son alternativas más seguras que cifran la transferencia de datos para proteger la información confidencial.

Aquí hay un artículo detallado sobre SFTP vs FTPS y qué protocolo usar.

tcp

El Protocolo de control de transmisión (TCP) es uno de los principales protocolos de capa de transporte del conjunto de IP.

Desempeña un papel importante al proporcionar una transmisión de datos confiable y ordenada entre dispositivos a través de redes IP.

TCP establece una conexión entre el remitente y el receptor antes de que comience cualquier transferencia de datos. Esta configuración de conexión implica un protocolo de enlace de tres vías (SYN, SYN-ACK, ACK) y un proceso de terminación de la conexión cuando se completa el intercambio de datos.

También admite comunicación full-duplex que permite enviar y recibir datos simultáneamente en ambas direcciones dentro de la conexión establecida.

Generalmente, TCP monitorea las condiciones de la red y ajusta su velocidad de transmisión para evitar la congestión de la red.

Este protocolo incluye mecanismos de verificación de errores para detectar y corregir la corrupción de datos durante la transmisión. Si se descubre que un segmento de datos está dañado, el receptor solicita la retransmisión.

TCP utiliza números de puerto para identificar servicios o aplicaciones específicas en un dispositivo. Los números de puerto ayudan a enrutar los datos entrantes a la aplicación correcta.

El receptor en una conexión TCP envía acuses de recibo (ACK) para confirmar la recepción de segmentos de datos. Si el remitente no recibe un ACK dentro de un tiempo determinado, retransmite el segmento de datos.

TCP mantiene información sobre el estado de la conexión tanto en el lado del remitente como en el del receptor. Esta información ayuda a realizar un seguimiento de la secuencia de segmentos de datos y administrar la conexión.

IP

IP significa Protocolo de Internet.

Es un protocolo central que permite la comunicación y el intercambio de datos en redes informáticas, incluida la red global que conocemos como Internet.

IP utiliza un sistema de direccionamiento numérico para identificar dispositivos en una red. Estas direcciones numéricas se denominan direcciones IP y pueden ser IPv4 o IPv6.

Las direcciones IPv4 suelen tener la forma de cuatro conjuntos de números decimales (por ejemplo, 192.168.1.1), mientras que las direcciones IPv6 son más largas y utilizan notación hexadecimal.

IP enruta los paquetes de datos entre dispositivos en diferentes redes.

Los enrutadores y conmutadores desempeñan un papel importante a la hora de dirigir estos paquetes a sus destinos previstos en función de sus direcciones IP.

Generalmente, IP utiliza una metodología de conmutación de paquetes. Eso significa que los datos se dividen en paquetes más pequeños para su transmisión a través de la red. Cada paquete contiene una dirección IP de origen y destino que permite a los enrutadores tomar decisiones de reenvío.

IP se considera un protocolo sin conexión. No establece una conexión dedicada entre el remitente y el receptor antes de transmitir datos.

Cada paquete se trata de forma independiente y puede tomar diferentes rutas para llegar a su destino.

UDP

UDP significa Protocolo de datagramas de usuario.

Es un protocolo liviano y sin conexión que proporciona una forma de enviar datos a través de una red sin establecer una conexión formal.

A diferencia del protocolo TCP, UDP no establece una conexión antes de enviar datos. Simplemente empaqueta los datos en datagramas y los envía al destino.

No garantiza la entrega de datos y no implementa mecanismos de detección y corrección de errores. Si un paquete se pierde o llega desordenado, corresponde a la capa de aplicación encargarse de ello.

UDP tiene menos gastos generales que TCP porque no incluye funciones como control de flujo, corrección de errores o reconocimientos. Esto lo hace más rápido pero menos confiable.

Tampoco tiene mecanismos de control de congestión incorporados, por lo que es posible inundar una red con tráfico UDP, lo que potencialmente causa congestión.

UDP se utiliza comúnmente en situaciones donde la baja latencia y la transmisión de datos de alta velocidad son más críticas que la entrega garantizada. Algunos ejemplos comunes son la transmisión de audio y vídeo en tiempo real, los juegos en línea, DNS y algunas aplicaciones de IoT.

Lo mejor de UDP es su función de multiplexación. Permite que varias aplicaciones en el mismo dispositivo utilicen el mismo puerto UDP, lo que diferencia los flujos de datos mediante números de puerto.

Entendamos UDP con un ejemplo simple.

Imagina que quieres enviar un mensaje a tu amigo a través de un patio de juegos ruidoso usando una pelota que rebota. Decides utilizar UDP, que es como lanzar la pelota sin ninguna conversación formal. Así es como funciona:

  • Escribes tu mensaje en una hoja de papel y la envuelves alrededor de la pelota.
  • Lanzas la pelota en dirección a tu amigo. No esperas a que tu amigo lo capte ni reconozca que lo recibió; simplemente lo tiras y esperas que lo atrapen.
  • La pelota rebota y llega a tu amigo, que intenta atraparla. Pero a veces, debido al ruido, puede rebotar en sus manos o llegar estropeado.
  • Tu amigo lee el mensaje en el papel y, si atrapa la pelota con éxito, recibe el mensaje. De lo contrario, es posible que se lo pierdan y usted no lo sabrá porque no tenía forma de comprobarlo.

Entonces, en este ejemplo:

La bola representa el protocolo UDP que envía datos sin establecer una conexión formal.

Enviar la pelota sin esperar una respuesta es como si UDP no tuviera conexión y no garantizara la entrega.

La posibilidad de que la pelota rebote o se pierda simboliza la falta de confiabilidad en la UDP.

Su amigo que lee el mensaje es como la capa de aplicación que maneja los datos recibidos a través de UDP, que posiblemente se ocupa de los datos faltantes.

Protocolos de seguridad

SSH

SSH significa Secure Shell.

Es un protocolo de red que se utiliza para la comunicación segura entre un cliente y un servidor a través de una red no segura. Proporciona una forma de acceder y administrar dispositivos de forma remota a través de una interfaz de línea de comandos con un alto nivel de seguridad.

SSH utiliza técnicas criptográficas para autenticar tanto al cliente como al servidor. Esto garantiza que se esté conectando al servidor correcto y que el servidor pueda verificar su identidad antes de permitir el acceso.

Todos los datos transmitidos a través de una conexión SSH están cifrados, lo que dificulta que cualquiera que intercepte la comunicación escuche a escondidas los datos que se intercambian.

Fuente de imagen: Desbordamiento de pila

SSH utiliza un par de claves para la autenticación. El par de claves consta de una clave pública (que se comparte con el servidor) y una clave privada (que se mantiene en secreto).

Aquí hay un artículo sobre cómo funciona: inicio de sesión sin contraseña SSH

Cuando se conecta a un servidor SSH, su cliente utiliza su clave privada para demostrar su identidad.

Además de esto, también admite la autenticación tradicional de nombre de usuario y contraseña. Sin embargo, esto es menos seguro y, a menudo, no se recomienda, especialmente en el caso de servidores con acceso a Internet.

SSH utiliza el puerto 22 para la comunicación de forma predeterminada, pero esto se puede cambiar por razones de seguridad. Cambiar el número de puerto puede ayudar a reducir los ataques automatizados.

SSH se usa comúnmente para la administración remota de servidores, la transferencia de archivos (con herramientas como SCP y SFTP) y el acceso seguro a interfaces de línea de comandos remotas.

Es ampliamente utilizado en la administración de sistemas operativos tipo Unix y también está disponible en Windows a través de varias soluciones de software.

SMTP

SMTP significa Protocolo simple de transferencia de correo.

Es un protocolo estándar responsable de enviar mensajes de correo electrónico salientes desde un cliente o servidor de correo electrónico a un servidor de correo electrónico del lado del destinatario.

SMTP es una parte fundamental de la comunicación por correo electrónico y funciona junto con otros protocolos de correo electrónico como IMAP/POP3 para permitir el ciclo de vida completo del correo electrónico, incluido el envío, la recepción y el almacenamiento de mensajes de correo electrónico.

Cuando redacta un correo electrónico y hace clic en «enviar» en su cliente de correo electrónico, utiliza SMTP para transmitir el mensaje al servidor de su proveedor de correo electrónico.

Utiliza el puerto 25 para comunicación no cifrada y el puerto 587 para comunicación cifrada (usando STARTTLS). El puerto 465 también se utilizó para la comunicación SMTP cifrada, pero es menos común.

Muchos servidores SMTP requieren autenticación para enviar correos electrónicos y evitar el uso no autorizado. Se utilizan métodos de autenticación como nombre de usuario y contraseña o métodos más seguros como OAuth.

Estos servidores SMTP se utilizan a menudo como retransmisiones, lo que significa que aceptan correos electrónicos salientes de clientes (por ejemplo, su aplicación de correo electrónico) y los reenvían al servidor de correo electrónico del destinatario. Esto ayuda a enrutar los correos electrónicos a través de Internet.

La comunicación se puede proteger mediante cifrado mediante TLS o SSL, especialmente al enviar información sensible o confidencial por correo electrónico.

Protocolos de gestión

POP3

POP3 significa Protocolo de oficina postal versión 3.

Es uno de los protocolos de recuperación de correo electrónico más comunes que se utilizan para recuperar mensajes de correo electrónico desde un servidor de correo a una aplicación cliente de correo electrónico.

POP3 está diseñado para funcionar en forma de «almacenamiento y reenvío». Recupera correos electrónicos del servidor y luego, normalmente, los elimina del servidor después de almacenar una copia en el dispositivo del cliente.

Algunos clientes de correo electrónico ofrecen la opción de dejar una copia del correo electrónico en el servidor, pero este no es el comportamiento predeterminado.

Utiliza el puerto 110 para comunicación no cifrada. El puerto 995 se utiliza comúnmente para comunicación POP3 segura mediante TLS/SSL.

POP3 es un protocolo sin estado. Eso significa que no realiza un seguimiento de los correos electrónicos que ya has descargado. Cada vez que se conecta al servidor, recupera todos los mensajes no leídos. Esto puede provocar problemas de sincronización si accede a su correo electrónico desde varios dispositivos.

POP3 está diseñado principalmente para recuperar correos electrónicos de la bandeja de entrada. Es posible que no admita la recuperación de correos electrónicos de otras carpetas del servidor, como elementos enviados o borradores.

Dado que POP3 no sincroniza las carpetas de correo electrónico entre el servidor y el cliente, las acciones realizadas en un dispositivo (por ejemplo, eliminar un correo electrónico) no se reflejarán en otros dispositivos.

Se recomienda utilizar la versión segura de POP3 (POP3S o POP3 sobre SSL/TLS), que cifra la comunicación entre el cliente de correo electrónico y el servidor para mejorar la seguridad.

POP3 se usa con menos frecuencia hoy en día en comparación con IMAP (Protocolo de acceso a mensajes de Internet). Proporciona funciones más avanzadas, como sincronización de carpetas, y permite que varios dispositivos administren el mismo buzón de manera más efectiva.

BGP

BGP significa Protocolo de puerta de enlace fronteriza.

Es un protocolo de puerta de enlace exterior estandarizado que se utiliza en redes para intercambiar información de enrutamiento y accesibilidad entre sistemas autónomos (AS).

Un sistema autónomo es un conjunto de redes IP y enrutadores bajo el control de una única organización que presenta una política de enrutamiento común a Internet.

BGP es un protocolo de vector de ruta. Eso significa que realiza un seguimiento del camino (lista de sistemas autónomos) que siguen los paquetes de datos para llegar a su destino. Esta información ayuda a los enrutadores BGP a tomar decisiones de enrutamiento basadas en políticas y atributos de ruta.

Se utiliza principalmente para determinar la mejor ruta para que los datos atraviesen cuando cruzan múltiples redes operadas por diferentes organizaciones o ISP.

También admite la agregación de rutas que ayuda a reducir el tamaño de la tabla de enrutamiento global al resumir múltiples prefijos de IP en un solo anuncio de ruta.

El protocolo BGP utiliza varios mecanismos para evitar bucles de enrutamiento, incluido el uso del atributo de ruta AS y el horizonte dividido regla.

Se utiliza tanto en Internet pública como en redes privadas.

En la Internet pública, se utiliza para intercambiar información de enrutamiento entre ISP y redes grandes. En redes privadas, se utiliza para enrutamiento interno y conexión a Internet a través de un enrutador fronterizo.

DHCP

DHCP significa Protocolo de configuración dinámica de host.

Se utiliza para asignar automáticamente direcciones IP y otros ajustes de configuración de red a dispositivos en una red TCP/IP.

El proceso DHCP generalmente consta de cuatro etapas principales:

DHCP descubrir

Cuando un dispositivo se une a una red, envía un mensaje de difusión DHCP Discover para encontrar servidores DHCP disponibles.

Oferta DHCP

Los servidores DHCP de la red responden al mensaje DHCP Discover con una oferta DHCP. Cada servidor proporciona una dirección IP y opciones de configuración relacionadas.

Solicitud DHCP

El dispositivo selecciona una de las ofertas DHCP y envía un mensaje de solicitud DHCP al servidor elegido que solicita la dirección IP ofrecida.

Confirmación de DHCP

El servidor DHCP reconoce la solicitud enviando un mensaje de confirmación de DHCP que confirma la asignación de la dirección IP.

Entendamos el principio de funcionamiento de DHCP con un ejemplo sencillo.

Imagine que tiene una red Wi-Fi doméstica y desea que sus dispositivos (como teléfonos y computadoras portátiles) se conecten a ella sin configurar manualmente la configuración de red de cada dispositivo. Ahí es donde entra en juego DHCP:

  • Digamos que su teléfono inteligente acaba de unirse a la red Wi-Fi de su hogar.
  • El teléfono inteligente envía un mensaje que dice: “Oye, soy nuevo aquí. ¿Alguien puede darme una dirección IP y otros detalles de la red?
  • Su enrutador Wi-Fi que actúa como servidor DHCP escucha la solicitud. Dice: «Claro, tengo una dirección IP disponible y aquí están las otras configuraciones de red que necesita, como la máscara de subred, la puerta de enlace predeterminada y el servidor DNS».
  • El teléfono inteligente recibe esta información y se configura automáticamente con la dirección IP y la configuración de red proporcionadas.

El teléfono inteligente ahora está listo para usar Internet y comunicarse con otros dispositivos en su red doméstica.

ICMP

El Protocolo de mensajes de control de Internet (ICMP) es un protocolo de capa de red que se utiliza en el conjunto de IP para permitir la comunicación y proporcionar comentarios sobre el estado de las operaciones de la red.

ICMP se utiliza principalmente para informar errores y proporcionar información de diagnóstico relacionada con el procesamiento de paquetes IP.

Por ejemplo, si un enrutador encuentra un problema al reenviar un paquete IP, genera un mensaje de error ICMP y lo envía de regreso al origen del paquete.

Los mensajes de error comunes de ICMP incluyen «Destino inalcanzable», «Tiempo excedido» y «Problema de parámetros».

Uno de los usos más conocidos de ICMP es el comando «ping» (utilizado para comprobar la accesibilidad de un host).

Este comando ping envía mensajes de solicitud de eco ICMP a un host de destino y, si se puede acceder al host, debe responder con un mensaje de respuesta de eco ICMP. Esta es una forma sencilla de probar la conectividad de la red.

ICMP también se utiliza para el descubrimiento de la unidad de transmisión máxima de ruta (PMTU). PMTU es el tamaño máximo de un paquete IP que se puede transmitir sin fragmentación a lo largo de una ruta.

Los mensajes ICMP como «Fragmentación necesaria» y «Paquete demasiado grande» se utilizan para determinar la MTU adecuada para una ruta determinada, lo que ayuda a evitar la fragmentación y optimizar la transferencia de datos.

Además, estos mensajes se pueden utilizar para realizar un seguimiento del tiempo que tardan los paquetes en viajar desde el origen hasta el destino y viceversa. Para este propósito se utiliza el mensaje “Tiempo excedido”.

SNMP

SNMP significa Protocolo simple de administración de red.

Es un protocolo de capa de aplicación para gestionar y monitorear dispositivos/sistemas de red.

SNMP opera utilizando un modelo administrador-agente. Hay dos componentes principales.

Administrador SNMP

El administrador es responsable de realizar solicitudes y recopilar información de los agentes SNMP. También puede establecer parámetros de configuración en los agentes.

Agente SNMP

El agente es un módulo o proceso de software que se ejecuta en dispositivos de red. Almacena información sobre la configuración y el rendimiento del dispositivo. El agente responde a las solicitudes de los administradores SNMP.

MIB (Management Information Base) es una base de datos jerárquica que define la estructura y organización de los objetos administrados en un dispositivo de red. Sirve como referencia tanto para los administradores como para los agentes SNMP, lo que garantiza que comprendan los datos de los demás.

Hay tres versiones de SNMP que se utilizan ampliamente.

SNMPv1: la versión original de SNMP que utiliza cadenas de comunidad para la autenticación. Carece de funciones de seguridad y se considera menos seguro.

SNMPv2c: una mejora con respecto a SNMPv1 con soporte para tipos de datos adicionales y manejo de errores mejorado.

SNMPv3: La versión más segura de SNMP, que ofrece cifrado, autenticación y control de acceso. Aborda muchos de los problemas de seguridad de versiones anteriores.

SNMP se utiliza para diversas tareas de administración de red, como monitorear la utilización del ancho de banda, rastrear el tiempo de actividad del dispositivo, configurar dispositivos de red de forma remota y recibir alertas cuando ocurren eventos específicos (por ejemplo, fallas del sistema o violaciones de umbrales).

Conclusión✍️

Espero que este artículo le haya resultado muy útil para aprender sobre los distintos protocolos de red. Quizás también te interese aprender sobre la segmentación de redes y cómo implementarla.