Swoole的TCP/IP HTTP WebSocket关系

1.网络分层层级

 

2.ws的由来

我们知道HTTP是为了规范HTML页面的发布、接收而提出的。

为了规范HTML5,WebSocket协议提出了。

3.长轮训短轮询

短轮询的方式是:页面定时向服务器发送请求,看有没有更新的数据。
 
而长轮询的方式是,页面向服务器发起一个请求,服务器一直保持 TCP连接打开,知道有数据可发送。发送完
数据后,页面关闭该连接,随即又发起一个新的服务器请求,在这一过程中循环。
 
短轮询和长轮询的区别是:短轮询中服务器对请求立即响应,而长轮询中服务器等待新的数据到来才响应,因
此实现了服务器向页面推送实时,并减少了页面的请求次数。

4.HTTP与WS

相同点
1)都是一样基于 TCP 的,都是可靠性传输协议。
2)都是应用层协议。
 
不同点
1)WebSocket 是双向通信协议,模拟 Socket 协议,可以双向发送或接受信息。HTTP 是半双工的。
2)WebSocket 是需要握手进行建立连接的(需要借助HTTP)。

5.Socket和TCP/IP

Socket 是应用层与 TCP/IP 协议族通信的中间软件抽象层,它是一组接口,提供一套调用 TCP/IP 或UDP协议的 API。

在设计模式中,Socket 其实就是一个门面模式,它把复杂的 TCP/IP 协议族隐藏在 Socket 接口后面,对用户来说,一组简单的接口就是全部,让 Socket 去组织数据,以符合指定的协议。2

6.WebSocket 与 Socket 的关系

WebSocket是一个应用层的协议,而Socket是介于应用层和传输层的一个接口。

 

posted @ 2022-06-23 11:10  快乐的在一起  阅读(115)  评论(0编辑  收藏  举报