La diferencia entre HTTP y WebSocket
Según el modelo de capas de red OSI, IP es un protocolo de capa de red, TCP es un protocolo de capa de transporte y HTTP es un protocolo de capa de aplicación. Entre los tres, SPDY y WebSocket son protocolos relacionados con HTTP, y TCP es el protocolo subyacente de HTTP.
WebSocket proporciona un mecanismo de comunicación bidireccional mediante una conexión TCP, incluidos protocolos de red y API, para reemplazar el mecanismo de comunicación bidireccional entre páginas web y servidores mediante sondeo HTTP.
Esencialmente, WebSocket no se limita al protocolo HTTP, sino que debido a la gran cantidad de infraestructura HTTP existente, servidores proxy, filtrado, autenticación, etc., WebSocket toma prestados puertos de HTTP y HTTPS.
Dado que se utiliza el puerto HTTP, el mensaje de protocolo de enlace después de establecer la conexión TCP se basa en HTTP y el servidor determina si es un protocolo HTTP o un protocolo WebSocket. Excepto por el apretón de manos al establecer y cerrar la conexión WebSocket, la transmisión de datos no tiene nada que ver con HTTP.
WebSocket también tiene su propio conjunto de protocolos de trama.