客户端向服务端发起一个http请求(特殊之处,在head带了upgrade字段),告诉服务端,我想升级成websocket协议,服务端收到之后,给客户端一个握手确认(switching: 容许客户端向websocket协议转换),一旦完成这个协商,客户端与服务端底层的tcp协议是没有中断的,接下来,双方可以给对方发送基于websocket的消息了



注: message是我们使用websocket编程的一个基本单位


客户端

服务端:

握手之后,后续的通讯就是基于websocket通讯了,websocket的底层传输最小单位是frame

服务端不断发来心跳消息
