WebSocket协议是一种在客户端和服务器之间进行双向通信的网络协议。相比于传统的HTTP协议,它可以实现实时通信,而不需要客户端不停地轮询服务器。
底层原理是在建立连接时,客户端和服务器会通过HTTP请求和响应交换一些数据,然后在服务器和客户端之间建立一条持久连接。在连接建立之后,客户端和服务器之间可以通过该连接进行双向通信。
WebSocket协议可以通过标准的HTTP端口(80和443)进行通信,并且支持加密和非加密连接。在客户端和服务器之间的通信中,WebSocket使用了类似TCP的传输机制,具有较低的延迟和较高的效率。除了支持文本和二进制数据之外,WebSocket还支持分片传输,可以分割大数据块为多个小的数据块来进行传输。