网络ISO模型

网络模型

  在计算机网络中有著名的OSI七层协议体系结构,概念清楚,理论完整,但是它既复杂又不实用。TCP/IP体系结构则不同,得到的广泛的应用。最终结合OSI和TCP/IP的优点,采用了一种只有五层协议的体系结构。

五层结构
网络结构

OSI体系结构TCP/IP体系结构五层体系结构
应用层应用层应用层
表示层
会话层
传输层传输层传输层
网络层网络层网络层
数据链路层数据链路层数据链路层
物理层物理层

解释

  有两张图瞅一眼:
各层及其作用

应用层

  应用层的任务是通过应用进程间的交互来完成特定的网络应用。
  应用层协议定义的是应用进程间通信和交互的规则。
  应用层是app访问网络、向用户显示接收到的信息的窗口。

表示层

  表示层也称为转换层,在表示层提取应用层的数据,并根据需要转换格式,以便通过网络传输。
  这一层可以做一些数据格式转换,加密解密,压缩等操作。

会话层

  会话层负责建立连接,维护会话、认证,并确保安全。

传输层

  为两个主机进程间的通信提供通用的数据传输服务。
  传输层从网络层获取服务,向应用层提供服务。
  只有主机的协议栈才有传输层,网络传输中的一些设备没有传输层,比如路由器。
  传输层提供应用进程间的逻辑通信,通信的真正端点是应用进程。
  传输层会将源端口号和目的端口号写入header中。

数据传输

  上面客户端与服务端之间的每一次的数据传输(这里指信息传递,包括三次握手与四次挥手)都要完整的走一遍下面的流程。

数据传输

  传输层主要使用两种协议:

  1. TCP:传输控制协议,提供面向连接的,可靠的数据传输服务。
  2. UDP:用户数据报协议,提供面向无连接的,尽最大努力交付。

网络层

  网络层为分组交换网上不同主机提供通信服务,网络层将传输层的报文封装成包和分组发送。
  将数据从一台主机传输到位于不同网络中的另一台主机。还负责分组路由,即从多条路线中选取路径最短的。
  网络层会将发送者,接收者的ip地址放入header中。

基本功能

  1. 路由
  2. 逻辑寻址

数据链路层

  两台主机间的数据传输,总是一段一段在数据链路上传送的,这就需要使用专门的链路层协议。在两个相邻节点间的链路上传送帧,每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)。
  数据链路层负责的是节点到节点的数据传输,负责确保在物理层上从一个节点到一个节点正确的传输数据。

基本功能:

  1. 封装成帧

  2. 物理寻址

  3. 错误控制

  4. 流控制

  5. 访问控制

      三个基本问题:封装成帧,透明传输,差错控制。
      通过ARP协议,可以获取拥有指定ip地址目标主机的mac地址。

物理层

  在物理层以比特流传输数据,其实就是二进制流,物理实现可能不同。
  OSI 参考模型最底层是物理层,物理层负责在设备和物理传输介质之间传输、接收非结构化数据。

基本功能:

  1. 比特同步
  2. 比特率控制
  3. 物理拓补
  4. 传输模式
    1. 单工
    2. 半双工
    3. 全双工

数据流转

数据流转

各层及其数据结构

数据结构

  我们在网络中发送传输数据的时候,数据总是从一台主机的应用层传输到了,另一条台主机的应用层,这其中会包含有很多过程。
  再分层结构中,数据总是在应用层产生(也有可能其他地方),在物理介质上传输。
  数据在层与层之间传递的时候总是会添加上特有的首部,比如传输层会将端口号写入TCP首部,网络层会将IP地址写入IP首部。


参考资料 & 鸣谢