写在开头
阅读本文,需要您对tcp/ip协议簇
协议有一定的了解,本文旨在带你了解Socket到底是啥,他与tcp/ip协议簇
、WebSocket
、Http
等协议之间的关系
OSI 网络七层模型
- 第一层:应用层,定义了用于在网络中进行通信和传输数据的接口;(Http协议位于该层)
- 第二层:表示层,定义不同系统中数据的传输格式,编码和解码规范等;
- 第三层:会话层,管理用户的会话,控制用户间逻辑连接的建立和中断;
- 第四层:传输层,管理着网络中端到端的数据传输;(Tcp协议位于该层)
- 第五层:网络层,定义网络设备间如何传输数据;(IP位于该层)
- 链路层,将上面的网络层的数据包封装成数据帧,便于物理层传输;
- 物理层,这一层主要就是传输这些二进制数据。
TCP/UDP
网上有大量关于TCP协议的讲解,我这里只说一句,TCP协议已经是比较底层的协议,后面要讲的HTTP、WebSocket等基本都是基于这个协议的上层协议。在TCP协议中规定了连接之前需要三次握手等约定。
HTTP
HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用层