¿Qué es exactamente un protocolo en informática?

Los protocolos son conjuntos de reglas predeterminadas entre los participantes de la comunicación para que la comunicación sea exitosa y eficiente. Estas reglas a menudo se organizan en capas.

Por ejemplo, vamos a examinar una red de área local cableada que estoy usando ahora mismo para publicar esta respuesta.

Hay 4 pares de cables dentro de un cable LAN. Un protocolo define para qué se utiliza cada cable, qué voltajes utilizan las señales, qué alternancias de voltaje en los cables significan qué, etc. Ambas partes tienen que cumplirlo. Esa es la capa física que define cómo la electricidad corre a través de los cables.

Encima de eso hay reglas que definen cómo comienza una transmisión, qué datos contiene y qué significa y cómo termina la transmisión. Esa es la capa de enlace de datos.

Hay otra capa con otro protocolo por encima de esta. ¿Cómo se identifican los diferentes dispositivos y se distinguen unos de otros? Necesitan tener nombres únicos para poder establecer una comunicación punto a punto. Esa es la capa de red.

Estas son sólo 3 de una lista de 6-7 capas que establecen las reglas de comunicación entre aplicaciones. Así es como una pieza de software se comunica con otra pieza de software sin que tengan en cuenta lo que ocurre en las capas inferiores.

Ahora estoy escribiendo este trozo de texto dentro de mi aplicación de navegador y cuando hago clic en "Enviar" este texto necesita ser almacenado en una aplicación de servidor de base de datos remota. Estas aplicaciones existen en las capas superiores, pero se las arreglan para comunicarse con éxito sobre la base de un estricto conjunto de reglas que permiten a las capas de abajo para comunicarse entre sí en cada lado. Los protocolos son las reglas que nosotros definimos en cada capa para que estos sistemas logren esta comunicación.