按照OSI網絡分層模型,IP是網絡層協議,TCP是傳輸層協議,而HTTP是應用層的協議。在這三者之間,SPDY和WebSocket都是與HTTP相關的協議,而TCP是HTTP底層的協議。
WebSocket則提供使用一個TCP連接進行雙向通訊的機制,包括網絡協議和API,以取代網頁和服務器采用HTTP輪詢進行雙向通訊的機制。
本質上來說,WebSocket是不限於HTTP協議的,但是由於現存大量的HTTP基礎設施,代理,過濾,身份認證等等,WebSocket借用HTTP和HTTPS的端口。
由於使用HTTP的端口,因此TCP連接建立后的握手消息是基於HTTP的,由服務器判斷這是一個HTTP協議,還是WebSocket協議。 WebSocket連接除了建立和關閉時的握手,數據傳輸和HTTP沒丁點關系了。
WebSocket也有自己一套幀協議。