zoukankan      html  css  js  c++  java
  • 浅谈WebSocket协议、WS协议和WSS协议原理及关系

    转载:https://baijiahao.baidu.com/s?id=1640111115607714629&wfr=spider&for=pc

    WebSocket协议是html5的一种通信协议,该协议兼容我们常用的浏览器。例如Chrome、 Firefox、IE等。

    它可以使客户端和服务端双向数据传输更加简单快捷,并且在TCP连接进行一次握手后,就可以持久性连接,同时允许服务端对客户端推送数据。

    外加传统模式的协议一般HTTP请求可能会包含较长的头部,但真正有效的可能只有小部分,从而就占用了很多资源和带宽。

    因此WebSocket协议不仅可以实时通讯,支持扩展;也可以压缩节省服务器资源和带宽。

     WS协议和WSS协议两个均是WebSocket协议的SCHEM,两者一个是非安全的,一个是安全的。也是统一的资源标志符。

    就好比HTTP协议和HTTPS协议的差别。非安全的没有证书,安全的需要SSL证书。

    (SSL是Netscape所研发,用来保障网络中数据传输的安全性,主要是运用数据加密的技术,能够避免数据在传输过程被不被窃取或者监听。)

    其中WSS表示在TLS之上的WebSocket。

    WS一般默认是80端口,而WSS默认是443端口,大多数网站用的就是80和433端口。(在高防防护过程中,80和433端口的网站是需要备案才可以接入国内的。)

    当然网站也会有别的端口,这种如果做高防是方案是可以用海外高防的。

    WS和WSS的体现形式分别是TCP+WS AS WS ,TCP+TLS+WS AS WSS。

    服务器网址就是 URL。

    最后墨者安全再说下WebSocket协议的特点:

    • 建立在 TCP 协议之上,服务端实现容易;
    • 与 HTTP 协议有良好的兼容性,握手时不容易被屏蔽,可以通过各种 HTTP 代理服务器;
    • 数据轻量,实时通讯;
    • 可以发送文本和二进制数据。
    • 不限制同源,客户端可以与任意服务器端进行通讯。

    因此WebSocket协议的出现,为很多人解决了关于扩展以及兼容性协议的烦恼问题。

  • 相关阅读:
    MQTT TLS 加密传输
    python多进程并发redis
    各种消息队列的特点
    mqtt异步publish方法
    Numpy API Analysis
    Karma install steps for unit test of Angular JS app
    reinstall bower command
    Simulate getter in JavaScript by valueOf and toString method
    How to: Raise and Consume Events
    获取对象的类型信息 (JavaScript)
  • 原文地址:https://www.cnblogs.com/orange-CC/p/14736364.html
Copyright © 2011-2022 走看看