Un protocolo de comunicación es un sistema de reglas que permite que dos o más entidades de un sistema de comunicaciones transmitan información a través de cualquier tipo de variación de una cantidad física . El protocolo define las reglas, la sintaxis , la semántica y la sincronización de la comunicación y los posibles métodos de recuperación de errores . Los protocolos pueden implementarse mediante hardware , software o una combinación de ambos. [1]
Los sistemas de comunicación utilizan formatos bien definidos para intercambiar varios mensajes. Cada mensaje tiene un significado exacto destinado a obtener una respuesta de una gama de posibles respuestas predeterminadas para esa situación particular. El comportamiento especificado suele ser independiente de cómo se implementará . Los protocolos de comunicación deben ser acordados por las partes involucradas. [2] Para llegar a un acuerdo, un protocolo puede convertirse en un estándar técnico . Un lenguaje de programación describe lo mismo para los cálculos, por lo que existe una estrecha analogía entre los protocolos y los lenguajes de programación: los protocolos son para la comunicación lo que los lenguajes de programación son para los cálculos . [3]Una formulación alternativa establece que los protocolos son para la comunicación lo que los algoritmos son para la computación . [4]
A menudo, varios protocolos describen diferentes aspectos de una única comunicación. Un grupo de protocolos diseñados para trabajar juntos se conoce como conjunto de protocolos; cuando se implementan en software, son una pila de protocolos .
Los protocolos de comunicación de Internet son publicados por Internet Engineering Task Force (IETF). El IEEE (Instituto de Ingenieros Eléctricos y Electrónicos) maneja las redes inalámbricas y alámbricas y la Organización Internacional para la Estandarización (ISO) maneja otros tipos. El UIT-T maneja protocolos y formatos de telecomunicaciones para la red telefónica pública conmutada (PSTN). A medida que la PSTN e Internet convergen , los estándares también se están orientando hacia la convergencia.
Uno de los primeros usos del término protocolo en un contexto de conmutación de datos ocurre en un memorando titulado A Protocol for Use in the NPL Data Communications Network escrito por Roger Scantlebury y Keith Bartlett en abril de 1967. [5] [6]
En ARPANET , el punto de partida para la comunicación de host a host en 1969 fue el protocolo 1822 , que definía la transmisión de mensajes a un IMP. [7] El Programa de control de red para ARPANET se implementó por primera vez en 1970. [8] La interfaz NCP permitió que el software de aplicación se conectara a través de ARPANET mediante la implementación de protocolos de comunicación de nivel superior, un ejemplo temprano del concepto de capas de protocolo . [9]