L'Hyper Text Transport Protocol (HTTP) è il protocollo client-server fondamentale utilizzato per il Web e il più compatibile con l'infrastruttura di rete esistente.
La versione più diffusa è HTTP/1.1.
Il client invia un messaggio di richiesta HTTP e il server restituisce un messaggio di risposta, contenente la risorsa richiesta nel caso in cui la richiesta sia stata accettata.
Recentemente, HTTP è stato associato a REST, dove le operazioni CRUD su una risorsa sono mappate ai metodi HTTP POST, GET, PUT e DELETE.
HTTP utilizza il protocollo TCP, che crea problemi in ambienti con risorse limitate.
I nodi vincolati (a livello di risorse) inviano per la maggior parte del tempo piccole quantità di dati in modo sporadico e la creazione di una connessione TCP richiede tempo e produce un overhead non necessario.
Per quanto riguarda la QoS, l'HTTP non fornisce opzioni aggiuntive, ma si affida al TCP, che garantisce il successo della consegna finché la connessione non viene interrotta.
Sebbene in generale l'HTTP rappresenti una delle opzioni di protocollo più stabili, ci sono ancora alcuni problemi che hanno portato all'esplorazione di soluzioni di protocollo alternative, a causa di: