# OSI七层网络模型

OSI(Open System Interconnect)即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。互联网的本质就是一系列的网络协议,按照功能不同,分工不同,人为的分层七层。

每一层都运行不同的协议。每一层实现各自的功能和协议,并完成与相邻层的接口通信。OSI的服务定义详细说明了各层所提供的服务。某一层的服务就是该层及其下各层的一种能力,它通过接口提供给更高一层。各层所提供的服务与这些服务是怎么实现的无关。

实际上还有人把它划成五层、四层。

七层划分为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层

五层划分为:应用层、传输层、网络层、数据链路层、物理层

四层划分为:应用层、传输层、网络层、网络接口层

image-20201118223052486

# 简介

它们由低到高分别是物理层(Physical Layer),数据链路层(Data Link Layer),网络层(Network Layer),传输层(Transport Layer),会话层(Session Layer),表示层(Presentation Layer)和应用层(Application Layer)。

第一层到第三层属于OSI参考模型的低三层,负责创建网络通信连接的链路;第四层到第七层为OSI参考模型的高四层,具体负责端到端的数据通信。

每层完成一定的功能,每层都直接为其上层提供服务,并且所有层次都互相支持,而网络通信则可以自上而下(在发送端)或者自下而上(在接收端)双向进行。

# OSI划分层次的原则

  • 网络中各结点都有相同的层次
  • 不同结点相同层次具有相同的功能
  • 同一结点相邻层间通过接口通信
  • 每一层可以使用下层提供的服务,并向上层提供服务
  • 不同结点的同等层间通过协议来实现对等层间的通信

# 各层划分

image-20201118233801892

# 1. 物理层

物理层(PhysicalLayer)的主要作用是为通信提供传输媒介;中间的物理链接可以是光缆、电缆、双绞线、无线电波。中间传的是电信号,即 010101 这些二进制位。发送及接收都按照8位一组来划分.

主要设备:中继器、集线器。

# 2. 数据链路层

数据链路层(DataLinkLayer)在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,并进行各电路上的动作系列。

该层的作用包括物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。

数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。

数据链路层主要设备:二层交换机、网桥

早期的时候,数据链路层就是来对电信号来做分组的。以前每个公司都有自己的分组方式,非常的乱,后来形成了统一的标准,即以太网协议Ethernet。

Ethernet规定一组电信号称之为一个数据包,或者叫做一个, 每一数据帧分成报头head和数据data两部分.

Head(固定18个字节)

  • 发送者(源地址,6个字节)
  • 接收者(目标地址,6个字节)
  • 数据类型(6个字节)

# data

data包含数据包的具体内容(最短46字节,最长1500字节)

head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送。

# 3. 网络层

img

网络层(Network layer)通过IP寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。就是通常说的IP层。这一层就是我们经常说的IP协议层。IP协议是Internet的基础。

在这一层,数据的单位称为数据包(packet)。

网络层协议的代表:IP、IPX、RIP、OSPF等。

网络层主要功能:

  • 网络层为建立网络连接和为上层提供服务,应具备以下主要功能:

  • 路由选择和中继 激活,终止网络连接

  • 在一条数据链路上复用多条网络连接,多采取分时复用技术差错检测与恢复 排序,流量控制 服务选择 网络管理

网络层主要设备:路由器

# 4. 传输层(Transport layer)

传输层的由来:网络层的ip帮我们区分子网,以太网层的mac帮我们找到主机,然后大家使用的都是应用程序,你的电脑上可能同时开启qq,暴风影音,等多个应用程序,

那么我们通过ip和mac找到了一台特定的主机,如何标识这台主机上的应用程序,答案就是端口,端口即应用程序与网卡关联的编号。

传输层协议的代表:TCP、UDP、SPX等。

传输层功能:建立端口到端口的通信

# 补充内容

tcp协议

可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

image-20201118231639488

udp协议:

不可靠传输,”报头”部分一共只有8个字节,总长度不超过65,535字节,正好放进一个IP数据包。

image-20201118231704046

# 7. 应用层

是的你没有看错, 没有5, 6 层, 因为他不重要(未被实现或以合并的方式实现)见图1

应用层(Application layer)是OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。

我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。

上次更新时间: 2020/11/19 上午1:39:10