OSI模型
OSI模型的历史
OSI模型是尝试简化网络协议或建立通信标准的模型. 协议可通过网络在计算机之间进行通信, 协议是一组规则和限制, 用于定义数据如何通过网络介质传输. 实际上OSI协议从未被广泛采用, 单OSI协议和OSI模型背后的理论很容易被接受. OSI模型用作协议描述了理想硬件上运行的理想抽象框架或理论模型. 因此OSI模型已成为一个共同参考.
OSI功能
OSI模型将网络任务分为七个不同的层. 每层负责执行特定任务或操作, 以支持在两台计算机之间交换数据(即网络通信). 每一层都按特定顺序排列, 以表明信息如何通过不同层次交流传递. 每一层直接与上面的层以及下面的层通信, 也与通信系统的对等层通信.
| 层 | 序号 |
|---|---|
| 应用层 | 7 |
| 表示层 | 6 |
| 会话层 | 5 |
| 传输层 | 4 |
| 网络层 | 3 |
| 数据链路层 | 2 |
| 物理层 | 1 |
ISO模型的每一层通过逻辑信道与另一台计算机上的对等层进行通信. 这使得基于OSI模型的协议能通过识别远程通信实体以及验证所接收数据的来源来支持一种身份验证.
封装/解封
基于OSI模型的协议采用封装机制, 封装是将每个层从上面的层传递奥下面的层之前为每个层接收的数据添加头部, 也可能添加尾部. 当消息被封装在每一层时, 前一层的头和有效载荷组成当前层的有效载荷. 当数据通过OSI模型层从应用层下移到物理层时发生封装. 数据从物理层到应用层向上移动时的你操作称为解封.
发送协议栈第七层的信息被称为数据流. 它保留数据流的标签, 知道它到达传输层, 在那里被称为段(TCP)或数据包(UDP). 在网络层(第3层)中, 它被称为数据包. 在数据链路层(第2层)中, 它被称为帧. 在物理层(第1层)中, 数据已被转换为比特, 以通过物理链接介质传输.
OSI模型层次
物理层
物理层包含设备驱动程序, 它告诉协议如何使用硬件来传输和接收比特. 位于物理层的电气规范, 协议和接口的标准如下:
- EIA/TIA-232 和 EIA/TIA-449
- X.21
- 高速串行接口(HSSI)
- 同步光纤网络(SONET)
- V.24 和 V.35
物理层通过设备驱动程序和这些标准来控制吞吐率, 处理同步, 管理线路噪声和介质访问, 并确定是采用数字信号, 模拟信号还是光脉冲通过物理硬件接口传输或接收数据.
在第1层(物理层)运行的网络硬件设备时网卡(NIC), 集线器, 中继器, 集中器和放大器. 这些设备执行基于硬件的信号操作, 例如从一个连接端口向所有其他端口(集线器)发送信号或放大信号以支持更大的传输距离(中继器).
数据链路层
数据链路层(第二层)负责将来自网络层的数据包格式化为适当的传输格式. 正确格式由网络硬件和技术决定, 如以太网(IEEE 802.3), 异步传输模式(ATM), 光纤分布式数据接口(FDDI)和铜线分布式数据接口(CDDI). 但是, 只有以太网仍是现代网络中常用的数据链路层技术. 在数据链路层中, 存在基于特定技术的协议, 这些协议将数据包转换为格式正确的帧. 格式化帧后, 将其发送到物理层进行传输. 常见数据链路层协议:
- 串行线路互联网协议(Serial Line Internet Protocol, SLIP)
- 点对点协议(Point-to-Point Protocol, PPP)
- 地址解析协议(Address Resolution Protocol, ARP)
- 第二层转发(Layer 2 Forwarding, L2F)
- 第二层隧道协议(Layer 2 Tunneling Protocol, L2TP)
- 点对点隧道协议(Point-to-Point Tunneling Protocol, PPTP)
- 综合业务数字网(Integrated Services Digital Network, ISDN)
在数据链路层协议中, 应该要熟悉地址解析协议(ARP), ARP用于将IP地址解析为MAC地址. 使用MAC地址将网段上的流量从其原系统定向到目标系统.
数据链路层运行的网络硬件设备是交换机和网桥. 这些设备支持基于MAC的流量路由. 交换机在一个端口上接收帧, 并根据目标MAC地址将其发送到另一个端口. MAC地址目的地用于确定帧是否通过网桥从一个网络传输到另一个网络.
网络层
网络层负责给数据添加路由和寻址信息. 网络层接受来自传输层的段, 并向其添加信息以创建数据包. 该数据包包括源和目标IP地址.
路由协议位于此层, 包括以下内容:
- 互联网控制消息协议(Internet Control Message Protocol, ICMP)
- 路由信息协议(Routing Information Protocol, RIP)
- 开放最短路径优先(Open Shortest Path First, OSPF)
- 边界网关协议(Border Gateway Protocol, BGP)
- 互联网组管理协议(Internet Group Management Protocol, IGMP)
- 互联网协议(Internet Potocol, IP)
- 互联网协议安全(Internet Protocol Security, IPsec)
- 网络数据包交换(Internetwork Packet Exchange, IPX)
- 网络地址转换(Internetwork Packet Exchange, NAT)
- IP简单密钥管理(Simple Key Management for Internet Protocols, SKIP)
网络层负责提供路由或传递信息, 但它不负责验证信息是否传递成功(这是传输层的责任). 网络层还管理错误检测和节点数据流量(即流量控制).
路由器和桥接路由器(brouter)属于网络层运行的网络硬件设备. 路由器根据速率, 跳数, 首选项等确定数据包传输的最佳路径. 路由器使用目标IP地址来指导数据包的传输. 桥接路由器主要在第3层工作, 但必要时也可以在第2层工作, 会首先尝试路由, 如果路由失败则默认为桥接.
路由协议
路由协议有两大类: 距离矢量和链路状态. 距离矢量路由协议维护目标网络的列表, 以及条跳数度量的方向和距离度量(即到达目的地的路由器数量). 链路状态路由协议维护所有连接网络的拓扑图, 并以此映射来确定到目的地的最短路径. 距离矢量路由协议的常见示例是RIP, 而链路状态路由协议的常见示例是OSPF.
传输层
传输层负责管理连接的完整性并控制会话, 它接受PDU(可指代协议数据单元, 分组数据单元或有效载荷单元数据 -- 即在网络层之间传递的信息或数据的容器),来自会话层的PDU被转换为段. 传输层控制如何寻址或引用网络上的设备, 在节点(也成为设备)之间建立通信连接并定义会话规则. 会话规则指每个段可包含多少数据, 如何验证传输的数据的完整性, 以及如何确定数据是否丢失. 会话规则是通过握手过程建立的, 因此通信设备都遵循该规则.
传输层在两个设备之间建立逻辑链接, 并提供端到端传输以确保数据传输. 该层包括用于分段, 排序, 错误检查, 控制数据流, 纠错, 多路复用和网络服务优化的机制. 以下协议在传输层中运行:
- 传输控制协议(Transmission Control Protocol, TCP)
- 用户数据报协议(User Datagram Protocol, UDP)
- 顺序数据包交换(Sequenced Packet Exchange, SPX)
- 安全套接字层(Secure Sockets Layer, SSL)
- 传输层安全(Transport Layer Security, TLS)
会话层
会话层负责建立, 维护和终止两台计算机之间的通信会话. 它管理对话规则或对话控制(单工, 半双工, 全双工), 建立分组和回复的检查点, 并重传自上次验证检查点以来失败或丢失的PDU. 以下协议在会话层内运行:
- 网络文件系统(Network File System, NFS)
- 结构化查询语言(Structured Query Language, SQL)
- 远程过程调用(Remote Procedure Call, RPC)
- 通信会话可以按以下三种不同的控制模式之一运行:
- 单工 单向通信
- 半双工 双向通信, 但一次只能有一个方向发送数据
- 全双工 双向通信, 可以同事向两个方向发送数据
表示层
表示层负责将从应用层接受的数据转换为遵循OSI模型的任何系统都能理解的格式. 他对数据强化了通用或标准的结构和格式规则. 表示层还负责加密和压缩. 因此, 他充当网络和应用程序之间的接口. 该层允许各种应用程序通过网络进行交互, 并通过确保两个系统都支持的数据格式来实现. 大多数文件或数据格式在此层运行, 包括图像, 视频, 剩余, 文档, 电子邮件, 网页, 控制会话等格式. 下面列出表示层中的一些格式标准:
- 美国信息交换标准码(American Standard Code for Information Interchange, ASCII)
- 拓展二进制编码十进制交换模式(Extended Binary-Coded Decimal Interchange Mode, EBCDICM)
- 标签图像文件格式(Tagged Image File Format, TIFF)
- 联合图像专家组(Joint Photographic Experts Group, JPEG)
- 动态图像专家组(Moving Piccture Experts Group, MPEG)
- 乐器数字接口(Musical Instrument Digital Interface, MIDI)
应用层
应用层负责将用户应用程序, 网络服务或操作系统与协议栈连接. 它允许应用程序与协议栈通信. 应用层确定远程通信伙伴是否可用且可访问, 还确保有足够资源来支持所请求的通信.
应用程序不在次层内, 相反, 这里可以找到传输文件, 交换消息, 连接到远程中断等所需的协议和服务. 在该层中可找到许多特定应用程序的协议, 例如:
- 超文本传输协议(Hypertext Transfer Protocol, HTTP)
- 文件传输协议(File Transfer Protocol, FTP)
- 行打印后台程序(Line Print Daemon, LPD)
- 简单邮件传输协议(Simple Mail Transfer Protocol, SMTP)
- 远程登陆(Telnet)
- 普通文件传输协议(Trivial File Transfer Protocol, TFTP)
- 电子数据交换(Electronic Data Interchange, EDI)
- 邮局协议版本3(Post Office Protocol version 3, POP3)
- Internet 消息访问协议(Internet Message Access Protocol, IMAP)
- 简单网络管理协议(Simple Network Management Protocol, SNMP)
- 网络新闻传输协议(Network News Transport Protocol, NNTP)
- 安全远程过程调用(Secure Remote Procedure Call, S-RPC)
- 安全电子教以(Secure Electronic Transaction, SET)
在一个应用层工作的工作的网络设备或服务, 即网关. 但应用层网关是特定类型的组件, 充当协议转换工具. 例如, IP到IPX网关从TCP/IP获取入站通信, 并将它们转换为IPX/SPX以进行出站传输. 应用层防火墙也在此层运行. 其他网络设备或过滤软件可观察或修改该层的流量.
浙公网安备 33010602011771号