1. **OSI
**七层模型
开放式系统互联模型(Open System Interconnection Model,缩写为 OSI model,简称为 OSI 模型)
- 应用层 :为特定应用程序提供数据传输服务,例如 HTTP、DNS 等协议。数据单位为报文。
- 表示层 :数据压缩、加密以及数据描述,这使得应用程序不必关心在各台主机中数据内部格式不同的问题。
- 会话层 :建立及管理会话。
- 传输层 :为进程提供通用数据传输服务。由于应用层协议很多,定义通用的传输层协议就可以支持不断增多的应用层协议。
- 运输层包括两种协议:
- 传输控制协议 TCP,提供面向连接、可靠的数据传输服务,数据单位为报文段;
- 用户数据报协议 UDP,提供无连接、尽最大努力的数据传输服务,数据单位为用户数据报。
- TCP 主要提供完整性服务,UDP 主要提供及时性服务。
- 网络层 :为主机提供数据传输服务。而传输层协议是为主机中的进程提供数据传输服务。网络层把传输层传递下来的报文段或者用户数据报封装成分组。
- 数据链路层 :网络层针对的还是主机之间的数据传输服务,而主机之间可以有很多链路,链路层协议就是为同一链路的主机提供数据传输服务。数据链路层把网络层传下来的分组封装成帧。
- 物理层 :考虑的是怎样在传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的作用是尽可能屏蔽传输媒体和通信手段的差异,使数据链路层感觉不到这些差异。
2. TCP/IP
四层模型
OSI 模型是一个参考/逻辑模型,它旨在通过将通信过程分为更小、更简单的组件来描述通信系统的功能。TCP/IP 是 Transmission Control Protocol/Internet Protocol 协议的缩写,包含以下四层:
- 网络接口层 Network Interface。
- 网络层 Internet Layer。
- 传输层 Transport Layer / Host-to-Host。
- 应用层 Application Layer。
四层模型中没有表示层和会话层,同时把数据链路层和物理层合并为网络接口层,但四层模型中并没有定义网络接口层的实现。
3. TCP/IP
五层模型
五层模型没有表示层和会话层,而是将这些功能留给应用程序开发者处理。
五层模型是四层模型的演进。
虽然 OSI 模型由国际标准组织制定,但其实现过于复杂、制定周期过长,在其整套标准推出之前,TCP/IP 模型已经在全球范围内被广泛使用,因此,TCP/IP 模型才是事实上的标准。