一、TCP/IP协议栈详解
1、TCP/IP协议栈分为4层:
(1)、网络层(IP):
(高速公路),只管建立通道。
(2)、传输层(TCP和UDP):
(卡车),只管传输数据。
(3)、应用层(HTTP和WebSocket)
(货物箱),管理传输的数据的具体格式,
利用tcp传输协议,在客户端和服务端之间传输封装好的数据。
(4)、抽象层(SOCKET)
(港口码头/车站),位于应用层和传输层之间,
利用socket操作复杂的传输层协议的功能,相当于提供的一组api,
可以让我们不直接操作传输层。
二、Websocket:
1、决了服务器与客户端全双向通信的问题。
也就是服务端和客户端之间都可以主动推送数据,读写数据。
2、WebSocket和Socket区别:
把WebSocket想象成HTTP(应用层),
HTTP和Socket什么关系,WebSocket和Socket就是什么关系。
WebSocket要通过Socket这个抽象层来操作tcp/ip协议族,来实现双向数据通信,
应用层的两个协议:
HTTP 协议有一个缺陷:
通信只能由客户端发起,做不到服务器主动向客户端推送信息。
而WebSocket可以做到