OSI
模型(Open System Interconnection model)是一个由国际标准化组织提出的概念模型,试图供一个使各种不同的计算机和网络在世界范围内实现互联的标准框架。
它将计算机网络体系结构划分为七层,每层都可以供抽象良好的接口。了解OSI
模型有助于理解实际上互联网络的工业标准——TCP/IP
协议。
七层模型介绍
物理层
物理层负责最后将信息编码成电流脉冲或其它信号用于网上传输;
数据链路层
数据链路层通过物理网络链路供数据传输。不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、数据帧序列以及流控;
网络层
网络层负责在源和终点之间建立连接;
传输层
传输层向高层提供可靠的端到端的网络数据流服务。
会话层
会话层建立、管理和终止表示层与实体之间的通信会话;
表示层
表示层供多种功能用于应用层据编码和转化,以确保以一个系统应用层发送的信息可以被另一个系统应用层识别;
应用层
OSI
的应用层协议包括文件的传输、访问及管理协议(FTAM
),以及文件虚拟终端协议(VIP
)和公用管理系统信息(CMIP
)等;
常见的应用层协议:
TCP/IP协议
TCP/IP
的设计,是吸取了分层模型的精华思想——封装。每层对上一层供服务的时候,上一层的数据结构是黑盒,直接作为本层的数据,而不需要关心上一层协议的任何细节。
TCP/IP 分层模型的分层以以太网上传输 UDP 数据包如图所示;
数据包
宽泛意义的数据包:每一个数据包都包含”标头”和”数据”两个部分.”标头”包含本数据包的一些说明.”数据”则是本数据包的内容.
细分数据包:
- 应用程序数据包
- 标头部分规定应用程序的数据格式
- 数据部分传输具体的数据内容
- 对应上图中的数据
- TCP/UDP数据包:标头部分包含双方的发出端口和接收端口.
- UDP数据包
- ‘标头’长度:8个字节
- “数据包”总长度最大为65535字节,正好放进一个IP数据包.
- TCP数据包
- 理论上没有长度限制,但是,为了保证网络传输效率,通常不会超过IP数据长度,确保单个包不会被分割
- 对应上图中的UDP数据
- UDP数据包
- IP数据包
- 标头部分包含通信双方的IP地址,协议版本,长度等信息
- ‘标头’长度:20~60字节
- “数据包”总长度最大为65535字
- 对应上图中的IP数据
- 以太网数据包
- 最基础的数据包
- 标头部分包含了通信双方的MAC地址,数据类型等
- ‘标头’长度:18字节
- ‘数据’部分长度:46~1500字节
- 对应上图中的以太网数据
四层模型
- 网络接口层
- 网间层
- 传输层
- 应用层