> [TOC] # 1、Websocket解决什么问题? ## 1.1、如何即使获取更新? ![image-20220813182212662](assets/image-20220813182212662.png) ## 1.2、如何分析Websocket ![image-20220813182649381](assets/image-20220813182649381.png) ## 1.3、定义 ![image-20220813182958124](assets/image-20220813182958124.png) # 2、Websocket的约束 ## 2.1、Websocket的成本 ![image-20220813183539131](assets/image-20220813183539131.png) ![image-20220813184000955](assets/image-20220813184000955.png) ![image-20220813184052353](assets/image-20220813184052353.png) ## 2.2、设计哲学 ![image-20220813184115532](assets/image-20220813184115532.png) # 3、Websocket协议格式 ![image-20220813184344064](assets/image-20220813184344064.png) ![image-20220813184959440](assets/image-20220813184959440.png) ![image-20220813185012044](assets/image-20220813185012044.png) ![image-20220813185146477](assets/image-20220813185146477.png) # 4、Websocket协议如何从HTTP升级? ## 4.1、提供的消息 ![image-20220813185305956](assets/image-20220813185305956.png) ## 4.2、建立握手 ![image-20220813185636652](assets/image-20220813185636652.png) ## 4.3、如何验证成功连接? ![image-20220813185841585](assets/image-20220813185841585.png) # 5、传递消息的编码格式 ## 5.1、定义 ![image-20220813190052971](assets/image-20220813190052971.png) ![image-20220813191402368](assets/image-20220813191402368.png) ## 5.2、帧的长度 ![image-20220813191624615](assets/image-20220813191624615.png) ## 5.3、发送消息 ![image-20220813192052277](assets/image-20220813192052277.png) # 6、掩码处理 ## 6.1、为什么? ![image-20220813192251313](assets/image-20220813192251313.png) ## 6.2、定义 ![image-20220813194103292](assets/image-20220813194103292.png) ## 6.3、原理 ![image-20220813194123218](assets/image-20220813194123218.png) # 7、如何维护会话? ![image-20220813194409362](assets/image-20220813194409362.png) # 8、如何关闭会话? ![image-20220813194608277](assets/image-20220813194608277.png) ![image-20220813194616116](assets/image-20220813194616116.png) ![image-20220813194622025](assets/image-20220813194622025.png)