1. IOS 参考模型简述
- OSI(Open System Interconnection,开放系统互连参考模型),是 ISO(International Organization for Standardization,国际标准化组织)制定的一个用于计算机或通信系统间互联的标准体系。随着时代发展,OSI 已被 TCP/IP 4 层模型淘汰,在当今世界上并没有被大规模使用。
- 对于 OSI,人们按照功能、分工的不同,将其划分为一个七层的、抽象的模型体,不仅包括一系列抽象的术语和概念,也包括具体的协议,故也被称为七层模型。
- 应用层:应用层是 OSI 参考模型的最高层,作为需要联网的应用程序(微信、谷歌等)与网络之间的接口,使应用程序能够更快地使用网络协议,向用户提供服务。以微信为例,我们编辑的内容需要经过应用层这个接口才能利用网络发送出去。
- 表示层:这一层扮演着“翻译”的角色,将我们要发送的内容转化为计算机可以理解的二进制语言。此外,表示层还具备加密解密、压缩解压等其他功能。
- 会话层:确保端到端的数据传输是可行的,譬如看武林外传,想用腾讯视频是看不了的,因为二者没建立起良好的会话。
- 传输层:这一层更像是定义数据的传输方式,即 TCP 与 UDP 协议。TCP 能满足对数据完整性要求高的使用条件 ,但同时伴随着成本高、速度慢的缺点,可用于文件下载;对文件完整性要求低、实时性要求高的情况下就用 UDP,例如视频通话。由上 3 层传来的应用数据报文在这一层被加上端口号,因为目标设备可能同时运行了多个应用程序,端口号用于指示数据到底应该传给哪个 APP。该层传输的是数据段。
- 网络层:选择端到端数据传输的最佳路径。数据段在这一层加上 IP 地址(Internet 地址)【IP 地址与 MAC 地址存在一一对应关系】,成为数据包。IP 地址为每台设备定义了唯一的地址,路由器作为网络层的核心设备,它可以根据数据包中的目标 IP 地址,通过查找路由表来选择最佳传输路径。 路由表是存储在路由器中数据结构,它记录了目标网络地址与下一跳地址的映射关系。 当路由器接收到一个 IP 数据包时,它会根据数据包的目标地址在路由表中进行查找,找到对应的下一跳地址,然后将数据包转发给下一跳路由器。
- 数据链路层:实现节点到节点间的具体传输。数据包在这一层加上 MAC 地址(物理地址)形成数据帧,当交换机得知源节点与目标节点的实际 MAC 地址后,便能实现节点到节点间的精确传输。此外,考虑到物理层传输易受电磁干扰,这一层还有纠错功能;考虑到接收双方的传输能力不同,还具备流量控制的能力。
- 物理层:定义端与端之间的实际通讯方式,例如使用什么通讯媒介(光缆、电磁波)、接口什么形状的、尺寸大小是多少、引脚数目是多少、传输速率的大小、电压范围以及传输方式(半双工、全双工)等。
2. 网关、路由器与交换机
- 网关,能跨网传输数据的设备,若客户端与服务端不在同一网络下,就需要网关;
- 路由器,基于发送方与接收方的 IP 地址进行数据传输;
- 交换机,基于发送方与接收方的 MAC 地址进行数据传输。