相同点
- 都是一样基于 TCP 的,都是可靠性传输协议。
- 都是应用层协议。
不同点
- WebSocket 是双向通信协议,模拟 Socket 协议,可以双向发送或接受信息。HTTP 是单向的。
- WebSocket 是需要握手进行建立连接的。
联系
WebSocket 在建立握手时,数据是通过 HTTP 传输的。但是建立之后,在真正传输时候是不需要 HTTP 协议的。
WebSocket 与 Socket 的关系
Socket 其实并不是一个协议,而是为了方便使用 TCP 或 UDP 而抽象出来的一层,是位于应用层和传输控制层之间的一组接口。
Socket 是传输控制层接口,WebSocket 是应用层协议。
WebSocket 同 HTTP 一样也是应用层的协议,但是它是一种双向通信协议,是建立在 TCP 之上的。