不惑之年的硬件牛人转到软件自学之netty框架(六)Netty的网络协议:WebSocket和UDP

由于近期开发一个中型的物联项目,带着十来个兄弟从底层硬件到无线局域通信到通用网关到netty高可用框架到spring cloud的后台开发到移动端APP开发到WEB前端的开发整体框架的搭建,虽然很辛苦,但我一直在给兄弟们说我们要三年内在物联行业占有一席之地,期待项目的成功。就因为这样,我写出了这个netty自学框架,虽然也是开始学习,我想通过项目的历练肯定对大家都有用,加油!

      今天是:2018年6月1日          主题:Netty的网络协议:WebSocket和UDP

      一、WebSocket协议

      WebSocket协议是完全重新设计的协议,旨在为Web上的双向数据传输问题提供一个切实可行的解决方案,使得客户端和服务器之间可以在任意时刻传输消息,因此,这也就要求它们异步低处理消息回执。下图是WebSocket的应用程序逻辑:

                            不惑之年的硬件牛人转到软件自学之netty框架(六)Netty的网络协议:WebSocket和UDP

        1、添加WebSocket支持

              我们的应用程序将采用下面的约定:如果被请求的URL以/ws结尾,那么我们将会把该协议升级为WebSocket;否则,        服务器将使用基本的HTTP/S。

                             不惑之年的硬件牛人转到软件自学之netty框架(六)Netty的网络协议:WebSocket和UDP

      2、处理WebSocket帧

                              不惑之年的硬件牛人转到软件自学之netty框架(六)Netty的网络协议:WebSocket和UDP

    二、UDP协议

      面向连接的传输(如TCP)管理了两个网络端点之间的连接的建立,在连接的生命周期内的有序和可靠的消息传输,以及最后 ,连接的有序终止。TCP连接就像打电话,其中一系列的有序消息将会在两方向上流动。相反,UDP则类似于往邮箱中投入一叠明信片。你无法知道它们将以何种顺序到达它们的目的地,或者它们是否所有的都能够到达它们的目的地。UDP[所有的握手以及消息管理机制的开销都已经被消除了,因此比TCP快很多,UDP很适合那些能够处理或者容忍消息丢失的应用程序,但不适合那些处理金融交易的应用程序。

     1、在广播中使用Netty的UDP相关类

                  不惑之年的硬件牛人转到软件自学之netty框架(六)Netty的网络协议:WebSocket和UDP