Un protocole est une méthode standard qui permet la communication entre des processus (s'exécutant éventuellement sur différentes machines), c'est-à-dire un ensemble de règles et de procédures à respecter pour émettre et recevoir des données sur un réseau. Il en existe plusieurs selon ce que l'on attend de la communication. Certains protocoles seront par exemple spécialisés dans l'échange de fichiers (le FTP), d'autres pourront servir à gérer simplement l'état de la transmission et des erreurs (c'est le cas du protocole ICMP), ...
Sur Internet, les protocoles utilisés font partie d'une suite de protocoles, c'est-à-dire
un ensemble de protocoles reliés entre-eux. Cette suite de protocole s'appelle TCP/IP.
Elle contient, entre autres, les protocoles suivants:
On classe généralement les protocoles en deux catégories selon le niveau de contrôle des données que l'on désire:
Un protocole définit uniquement la façon de laquelle les machines doivent communiquer, c'est-à-dire la forme et la séquence des données à échanger. Un protocole ne définit par contre pas la manière de programmer un logiciel de telle manière à ce qu'il soit compatible avec le protocole. On appelle ainsi implémentation la traduction d'un protocole en une application informatique.
Les spécifications des protocoles ne sont jamais exhaustives, aussi il est courant que les implémentations soient l'objet d'une certaine interprétation des spécifications, ce qui conduit parfois à des spécificités de certaines implémentations ou pire : à des incompatibilités !