OSI七层网络模型

为了使不同计算机厂家生产的计算机能够相互通信,以便在更大的范围内建立计算机网络,国际标准化组织(ISO)在1978年提出了“开放系统互联参考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)。它将计算机网络体系结构的通信协议划分为七层,自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer)。其中第四层完成数据传送服务,上面三层面向用户。
5fd4e6b0771adbe2a33efedcf52a0fac.png

TCP/IP四层协议

除了标准的OSI七层模型以外,常见的网络层次划分还有TCP/IP四层协议以及TCP/IP五层协议,它们之间的对应关系如下图所示:
网络层次 - 图2

各层协议

OSI七层模型 TCP/IP四层模型 功能 TCP/IP协议簇
应用层 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP, HTTP, SNIP, FTP, SITP, DNS, Telnet
表示层 数据格式化,代码转换,数据加密 -
会话层 解除或建立与别的接点的联系 -
传输层 传输层 提供端对端的接口 TCP, UDP
网络层 网络层 为数据包选择路由 IP, ICMP, RIP, OSPF, BGP, ICIP
数据链路层 网络接口层 传输有地址的帧以及错误检测功能 SLIP, CSLIP, PPP, ARP, RARP, ITU
物理层 以二进制数据形式在物理媒体上传输数据 1S02110, IEEE802, IEEE802. 2

物理层

物理层(Physical Layer):激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传输数据的可靠的物理媒体。简单的说,物理层确保原始的数据可在各种物理媒体上传输。

  • 物理层的任务:透明地传输比特流
  • 物理层的功能:为数据段设备提供传送数据通路
  • 物理层传输单位:比特
  • 物理层实现的硬件:集线器中继器(Repeater,也叫放大器)

数据链路层

数据链路层(Data Link Layer):在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。为达到这一目的,数据链路必须具备一系列相应的功能,主要有:如何将数据组合成数据块,在数据链路层中称这种数据块为帧(frame),帧是数据链路层的传送单位;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。数据链路层在不可靠的物理介质上提供可靠的传输。

  • 数据链路层的任务:将网络层传输下来的IP数据报组装成帧物理地址寻址、流量控制、数据的检错、重发
  • 数据链路层的功能:
    • 链路连接的建立、拆除和分离
    • 帧定界和帧同步
    • 差错检测
  • 物理层传输单位:
  • 数据链路层实现的硬件:交换机网桥
  • 协议:PPP,HDLC、SDLC、STP、ARQ

网络层

网络层(Network Layer):目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。如果想用尽量少的词来记住网络层,那就是”路径选择、路由及逻辑寻址”
网络层中涉及众多的协议,其中包括最重要的协议,也是TCP/IP的核心协议——IP协议。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。

  • 网络层的任务:
    • 将传输层传下来的报文段封装成分组
    • 选择合适的路由,使得传输层传下来的分组能够交付到目的主机
  • 网络层的功能:
    • 为传输层提供服务
    • 组包和拆包
    • 路由选择
    • 拥塞控制
  • 网络层传输单位:数据段
  • 网络层实现的硬件:路由器
  • 协议:ICMP、ARP、RARP、IP、IGMP、OSPF

传输层

传输层(Transport Layer):负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。 传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。
传输层的作用包括:将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题等。
传输层重要的设备名称:网关

  • 传输层的任务:负责主机中两个进程(端到端)之间的通信
  • 传输层的功能:
    • 为端到端连接提供可靠的服务
    • 为端到端连接提供流量控制、差错控制、服务质量等管理服务
  • 传输层传输单位:报文段(TCP)或用户数据报(UDP)
  • 传输层实现的硬件:网关
  • 协议:TCP、UDP

会话层

会话层:会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。

  • 会话层的任务:不同主机上各进程间的对话
  • 会话层的功能:管理主机间的会话进程,包括建立、管理以及终止进程间的会话。是一种端到端的服务

表示层

表示层:表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。
负责处理在两个内部数据表示结构不同的通信系统之间交换信息的表示格式,为数据加密和解密以及为提高传输效率提供必需的数据压缩以及解压等功能。

应用层

应用层:为操作系统或网络应用程序提供访问网络服务的接口。

  • 应用层的任务:提供系统与用户的接口
  • 应用层的功能:
    • 文件传输
    • 访问和管理
    • 电子邮件服务
  • 协议:FTP、SMTP、POP3、HTTP、DNS、TELnet