IBM Cloud Docs
Visión general de los protocolos de comunicación de internet

Visión general de los protocolos de comunicación de internet

En términos generales, un protocolo de comunicación es un sistema de reglas que permiten que dos o más entidades de un sistema de comunicaciones transmitan información. Internet tiene una extensa suite de protocolos para cubrir muchas situaciones. Al crear aplicaciones basadas en web e interfaces de programación, los desarrolladores de software suelen utilizar tres de estos protocolos de comunicación para describir el estado de la red y las formas en que se mueven los paquetes de datos a través de la red:

  • ICMP, Internet Control Message Protocol, parte de la suite de protocolos de Internet definida en RFC 792.
  • TCP, Transmission Control Protocol
  • UDP, User Datagram Protocol

Los protocolos que se utilizan para una implementación determinada de, por ejemplo, una llamada de API, pueden influir en el comportamiento general de la red. Así que vale la pena entender las diferencias básicas entre ellos. Si necesita más, hay muchos buenos artículos disponibles en Internet con descripciones detalladas de los protocolos.

ICMP

ICMP es un protocolo de control, lo que significa que está diseñado para transmitir información de estado de la propia red. Es básicamente un protocolo de notificación y control de errores de capa de red (capa 3 de OSI) de la red. Los ejemplos más conocidos de ICMP en la práctica son los programas de utilidad ping y traceroute . El programa de utilidad ping utiliza ICMP para sondear hosts remotos para comprobar la capacidad de respuesta y el tiempo total de ida y vuelta de los mensajes de sondeo. El programa de utilidad traceroute utiliza ICMP para descubrir y rastrear las rutas de red que toman los paquetes ICMP cuando viajan a su destino.

Lo que los desarrolladores necesitan saber es que los paquetes ICMP no tienen números de puerto TCP o UDP asociados a ellos porque los números de puerto son una construcción de capa 4 (capa de transporte).

TCP y UDP

Tanto TCP (Transmission Control Protocol) como UDP (User Datagram Protocol) son protocolos de transporte OSI de capa 4. Estos protocolos se utilizan para pasar los datos reales. La principal diferencia entre TCP y UDP, desde la perspectiva de un desarrollador, es cómo manejan el orden de paquetes.

TCP es un protocolo orientado a la conexión, que garantiza que todos los paquetes enviados alcanzarán el destino en el orden correcto.

Como alternativa, UDP es un protocolo sin conexión. La comunicación está orientada a datagramas, por lo que la integridad se garantiza solo dentro de cada datagrama. Los datagramas llegan a un destino y pueden llegar desordenados, o posiblemente no llegar en absoluto.

Normalmente, UDP se utiliza para la comunicación en tiempo real, en que se prefiere un pequeño porcentaje de la tasa de pérdida de paquetes a la sobrecarga de una conexión TCP.