Un protocole est une méthode standard qui permet la communication entre deux processus. C'est un ensemble de règles et de procédures à réspecter pour émettre et recevoir des données sur un réseau. Il en existe plusieurs selon de ce que l'on attend de la communication. Ainsi, le protocole HTTP HyperText Transfer Protocol est le protocole le plus utilisé sur internet, il a été inventé par Tim Berners-Lee en 1996 et est devenu un standard en 1997. Le but du protocole HTTP est de permettre un transfert de fichiers (essentiellement au format HTML) grâce à une chaine de caractères appelée URL (Uniform Resource Locator) entre un navigateur (le client) et un serveur Web. Ainsi, si l'on va sur n'importe quel site internet notre navigateur a recours au protocole HTTP pour récuperer la page Web, les différentes images, feuilles de styles, etc.
Plusieurs versions ont été établies au cours des différentes années. Les versions 0.9 (1991) et 1.0 (1997) qui sont devenues obsolètes. La version HTTP/1 .1 est maintenant la plus utilisée, elle permet de transférer des messages avec des en-tetes décrivant le contenu du message en utilisant un codage spécifique. De plus, elle permet d'héberger plusieurs sites web sur un même serveur.
La communication entre le navigateur et le serveur se fait en deux temps :
-->Le Navigateur éffectue une requête HTTP
-->Le serveur traite la requête puis envoie une réponse HTTP