Open Systems Interconnection(OSI)定义了一个网络框架:其以层为单位实现了各种协议,同时会将控制权逐层传递。

目前OSI主要作为教学工具被使用,其在概念上将计算机网络结构按逻辑顺序划分为7层。

1、较低层处理电信号二进制数据块以及路由这些数据以便在网络中的穿梭;

2、从用户的角度来看,更高的层次包括网络请求响应数据的表示和网络协议。

路由(routing):是指分组从源到目的地时,决定端到端路径的网络范围的进程;

OSI模型最初被认为是构建网络系统的标准体系结构,今天许多流行的网络技术都可以看出OSI的分层设计。

路由工作在OSI参考模型第三层——网络层数据包转发设备

 一、物理层(Physical Layer):比特流

物理层是OSI模型的第一层,其职责在于通过网络通信媒介将比特流数据从发送(源)设备的物理层传输到接收(终)设备的物理层。

第一层技术的例子包括以太网电缆集线器。此外,集线器和其他中继器是在物理层起作用的标准网络设备,电缆连接器也是如此。

在物理层,数据通过物理介质支持的以下信号类型进行传输:

  • 电压
  • 无线电频率
  • 红外脉冲
  • 普通光

二、数据链路层(Data Link Layer):数据帧

当从物理层获取数据时,数据链路层会检查物理传输错误,并将比特数据打包成数据帧。数据链路层还管理着物理寻址方案,

例如以太网的MAC地址,用于控制网络设备对物理介质的访问。

因为数据链路层是 OSI 模型中最复杂的一层,所以它通常被分成两部分: 媒体访问控制子层和逻辑链路控制子层。

三、网络层(Network Layer)

网络层在数据链路层之上增加了路由的概念。每当数据抵达网络层时,就会检查每个帧中包含的源地址和目标地址,

以确定数据是否已到达其最终目的地。如果数据已经到达最终目的地,第3层就会将数据格式化并打包为数据包交付给运输层,

否则网络层会更新目的地址并将帧推送到下层。

为了支持路由,网络层需要一个维护逻辑地址,比如网络设备的IP地址。网络层还管理着这些逻辑地址和物理地址之间的映射,

IPv4网络中,这种映射通过地址解析协议(ARP)完成,IPv6使用邻居发现协议(NDP)。

 

四、传输层(Transport Layer)

传输层通过网络连接传输数据。TCP (传输控制协议)和 `UDP (用户数据报协议)是传输层比较常见且有代表性的协议。

不同的传输协议可能支持一系列可选功能,包括错误恢复、流控制和支持重新传输。

五、会话层(Session Layer)

会话层位于第五层,其管理着网络连接事件顺序和流程的启动和关闭。它支持多种类型的连接,这些连接可以动态地创建并在单个网络上运行。

六、表示层(Presentation Layer)

表示层位于第六层,就功能相对来说是OSI模型各层中最简单的。其着力于消息数据的语法处理,

如格式转换和支持其上一层(应用层)所需的加密/解密。

七、应用层(Application Layer)

应用层为终端用户使用的应用提供网络服务(处理用户数据的协议)。举个例子,在Web浏览器应用程序中,

应用层协议HTTP打包发送和接收网页内容所需的数据。同时应用层也会向表示层提供或获取数据

本文来自:https://www.howie6879.cn/p/%E7%AE%80%E5%8D%95%E5%9B%BE%E8%A7%A3osi%E4%B8%83%E5%B1%82%E7%BD%91%E7%BB%9C%E6%A8%A1%E5%9E%8B/

简单图解OSI七层网络模型的更多相关文章

  1. OSI七层网络模型浅析

    OSI七层网络模型(从下往上): 物理层(Physical):设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的 环境.可以理解为网络传输的物理媒体部分,比如网卡,网线,集线器,中继器,调 ...

  2. OSI七层网络模型与TCP/IP四层模型介绍

    目录 OSI七层网络模型与TCP/IP四层模型介绍 1.OSI七层网络模型介绍 2.TCP/IP四层网络模型介绍 3.各层对应的协议 4.OSI七层和TCP/IP四层的区别 5.交换机工作在OSI的哪 ...

  3. 计算机网络基础——OSI七层网络模型

    计算机网络基础——OSI七层网络模型 OSI的是什么: 开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称 ...

  4. java面试题之osi七层网络模型,五层网络模型,每层分别有哪些协议(阿里面试题)

    OSI七层网络模型 TCP/IP五层网络模型 对应网络协议 应用层 应用层 HTTP.TFTP.FTP.NFS.WAIS.SMTP 表示层 应用层 Telnet.Rlogin.SNMP.Gopher ...

  5. OSI七层网络模型与TCP/IP四层模型

    1.OSI七层结构图: 2.TCP/IP四层结构图: 3.各层对应的协议 4.OSI七层和TCP/IP四层的区别 OSI网络模型和TCP/IP网络模型对应关系: 5.交换机工作在OSI的哪一层 如果有 ...

  6. osi七层网络模型(一)

    在网络中OSI分为七层网络模型,怎么理解七层模型呢?简单理解我们的手机都有手机壳.屏幕.摄像头.电池.芯片等很多原件,每个原件都是由不同的 厂家生产,最终组装成了一部功能完整的手机,同样,在网络中,也 ...

  7. OSI七层网络模型与TCP/IP四层网络模型

    1.OSI网络7层模型 网络协议设计者不应当设计一个单一.巨大的协议来为所有形式的通信规定完整的细节,而应把通信问题划分成多个小问题,然后为每一个小问题设计一个单独的协议.这样做使得每个协议的设计.分 ...

  8. 图说OSI七层网络模型

    开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称为OSI模型(OSI model),一种概念模型,由国际 ...

  9. 互联网基础知识------OSI七层网络模型梗概

    OSI七层模型 七层网络结构: 应用层.表示层.会话层.传输层.网络层.数据链路层.物理层 一般也作五层 应用层.传输层.网络层.数据链路层.物理层(实体层) 引申问题:TCP/IP协议与http协议 ...

随机推荐

  1. 面试官:给我讲讲SpringBoot的依赖管理和自动配置?

    1.前言 从Spring转到SpringBoot的xdm应该都有这个感受,以前整合Spring + MyBatis + SpringMVC我们需要写一大堆的配置文件,堪称配置文件地狱,我们还要在pom ...

  2. robotframework用户关键字创建过程

    robotframework是一个关键字驱动框架,核心在于关键字的应用.系统本身通过各种库自带了大量关键字,同时支持用户自定义关键字.关键字可以简单理解为各种处理数据的方法. 关键字区别与用户参数. ...

  3. SQL 查询语句总是先执行 SELECT?你们都错了

    很多 SQL 查询都是以 SELECT 开始的.不过,最近我跟别人解释什么是窗口函数,我在网上搜索"是否可以对窗口函数返回的结果进行过滤"这个问题,得出的结论是"窗口函数 ...

  4. Python变量小秘密

    变量全都是引用 跟其他编程语言不同,Python的变量不是盒子,不会存储数据,它们只是引用,就像标签一样,贴在对象上面. 比如: >>> a = [1, 2, 3] >> ...

  5. 如何把excel中的行转为列?

    步骤:选择复制要转行的内容--->新建一张表格---->右键选择性粘贴---->转置----->成功把行转为列(具体操作看下图) 选择复制这些内容

  6. 一起来聊聊 IP 地址、局域网、广域网、IPV4 和 IPV6

    背景 谁都知道 IP 地址是干嘛的,但是它出现的前因后果你真的知道吗? 我觉得很有必要重新复习下计算机网络基础知识,实在太太太重要了 本篇文章素材均来自:https://www.bilibili.co ...

  7. Java-学习日记(Atomic,Volatile)

    很早之前在公司就看到了atomicInteger,atomicLong这些变量了,一直不明白是什么意思,今天花了点时间了解下. volatile: 先从volatile开始讲起,volatile是多线 ...

  8. 浏览器中js怎么将图片下载而不是直接打开

    网上找了好多方法都是不能用的,经过试验在Chrome中都是直接打开. 经过自己的摸索,找到了一套能用的解决方案 var database = "data:image/jpg;base64,& ...

  9. 通过RenderDoc真机抓取数据来落地验证和解决特效性能的问题

    前言 需求是来自于我在为我司的一个线上RPG游戏做特效的性能优化的过程中,需要验证对特效的一个改动是否能够提高性能,当然这个改动是在不影响美术效果的前提. 特效性能问题 技能特效 主角的一个大招(技能 ...

  10. UI自动化学习笔记- Selenium一些特殊操作的处理

    一.特殊操作处理 1. 下拉选择框操作 1.1 如何操作下拉选择框 实现方式一 思路:先定位到要操作的option元素,然后执行点击操作 driver.find_element_by_css_sele ...