webSocket简单介绍和应用

简单介绍

1、webSocket是HTML5下不同于http的一种新协议(本质上也是基于tcp协议),实现了浏览器和服务器的全双工通信,是一个持久化的协议

  • WebSocket是一种双向通信协议。在建立连接后,WebSocket服务器端和客户端都能主动向对方发送或接收数据,就像Socket一样;

  • WebSocket需要像TCP一样,先建立连接,连接成功后才能相互通信。

原理:

websocket为应用层协议,其定义在TCP/IP协议栈之上通过握手机制,在客户端和服务器之间建立了一个类似TCP的长连接,从而方便他们之间的双向通信

数据收发的三个过程

  1)TCP协议的三次握手四次挥手的过程必然存在   2)websocket协议本身的握手环节   3)websocket协议握手成功之后的收发数据环节

webSocket和http协议的区别:

相同点:1、都是基于tcp的可靠性传输协议

2、都属于应用层协议

不同点:1、webSocket是双向通信协议,模拟Socket协议,可以双向发送或者接受信息,而HTTP是单向的。

2、webSocket是需要浏览器和服务器握手建立连接的

3、http是由浏览器发起向服务器的连接,服务器预先并不知道这个连接。

两者联系:webSocket在建立握手时,数据是通过HTTP传输的。但是建立之后,在真正传输时候是不需要HTTP协 议的。

webSocket发送数据的总体过程

1、首先,客户端发起HTTP请求,经过TCP的三次握手后,建立TCP连接;在HTTP请求中存放WebSocket支持的版本信息等,如:Upgrade,connection,webSocket-Version等

2、服务器在收到客户端握手的信息请求后,同样产用HTTP协议回馈数据

3、最后,客户端收到连接成功的消息后,开始借助于TCP传输信道进行全双工通信

注意:

最初握手阶段是http协议,握手完成后就切换到了webSocket协议,并完全与http协议脱离了

建立通

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值