当前位置: 首页 > news >正文

计算机网络之---OSI七层模型

为什么会有七层模型

OSI七层模型的出现源于计算机网络技术的发展需求,主要解决以下几个问题:

  1. 标准化与互操作性
    随着计算机网络的快速发展,不同厂商、不同技术之间的设备和系统需要能够无缝通信。而不同厂商在网络硬件、软件、协议等方面存在差异,导致不同系统之间的互操作性问题。OSI七层模型提供了一个统一的框架,确保不同设备和系统可以按照标准化的方式进行通信和互操作。

  2. 简化网络设计与管理
    在没有明确分层的情况下,网络协议和技术的发展会变得越来越复杂。将网络通信过程分为不同的层次,每一层独立负责特定的任务,简化了设计和开发过程。每一层的功能都可以独立发展和更新,互不干扰,提高了灵活性和可维护性。

  3. 层次化的故障排除与问题定位
    分层的模型使得网络故障排除变得更加清晰和系统化。在网络发生问题时,可以通过逐层排查,确定是物理层、传输层、应用层等哪一层出现问题,从而快速定位并解决问题。

  4. 促进技术和协议的独立发展
    OSI七层模型允许不同层次的技术和协议独立发展和演化。例如,物理层可以根据不同的物理介质(如光纤、铜线、无线等)设计,而不需要影响上层的协议。传输层可以独立设计,如TCP和UDP的区别。这样的分层设计提高了协议的灵活性和可扩展性。

  5. 提高网络通信的兼容性
    OSI模型让不同网络协议和技术能够通过标准化接口和方法互相兼容。例如,基于不同协议的应用程序能够通过标准接口与网络通信,应用层协议(如HTTP)与传输层协议(如TCP)可以通过标准化的方式进行交互,而无需关心底层实现细节。

七层模型都是什么

1. 物理层(Physical Layer)

物理层负责数据在物理介质上的传输。它定义了设备之间的电气、机械、流程和功能特性。其主要任务是将比特流(0和1)从发送端传输到接收端。

主要内容:
  • 电气特性:例如电压、电流、信号的频率等。
  • 物理介质:如双绞线、光纤、电缆、无线电波等。
  • 连接器和接口:如RJ-45接口、USB接口、光纤接口等。
  • 传输速率:数据传输的速率,例如100Mbps、1Gbps等。
协议与标准:
  • Ethernet(以太网)
  • IEEE 802.3
  • Wi-Fi(无线局域网)

2. 数据链路层(Data Link Layer)

数据链路层负责将物理层传输过来的原始比特流打包成数据帧,并通过链路的可靠传输来确保数据正确传递。它还负责错误检测和纠正、帧同步、流量控制等。

主要内容:
  • 帧的构建与解构:将数据包封装成帧,包含源地址、目的地址、校验信息等。
  • 错误检测与纠正:例如通过校验和(CRC)检测和纠正传输中的错误。
  • 访问控制:确保多个设备在共享媒介上能够有序地发送数据,例如Ethernet中的CSMA/CD(载波侦听多路访问/碰撞检测)。
协议与标准:
  • Ethernet(以太网)
  • PPP(点对点协议)
  • HDLC(高级数据链路控制)
  • ATM(异步传输模式)

3. 网络层(Network Layer)

网络层负责在不同网络之间进行数据包转发,提供逻辑地址(如IP地址)与路由功能。它确保数据能够从源设备传输到目标设备,可能经过多个中转节点(如路由器)。

主要内容:
  • 路由选择:选择数据传输的最佳路径,使用路由算法进行路径选择。
  • IP地址分配与寻址:每个设备需要一个唯一的IP地址,网络层通过IP地址来识别和定位设备。
  • 数据包分段与重组:如果数据包过大,网络层会进行分段,接收端则会进行重组。
协议与标准:
  • IP(互联网协议)
  • ICMP(Internet Control Message Protocol)
  • ARP(Address Resolution Protocol)
  • RIP、OSPF、BGP(路由协议)

4. 传输层(Transport Layer)

传输层负责提供端到端的通信,确保数据的可靠传输。它处理数据的流量控制、错误检测与重传等问题,确保应用层的数据完整性和顺序。

主要内容:
  • 端到端的通信:从源设备到目标设备的通信,确保两个应用程序之间的数据交换可靠、顺序。
  • 流量控制:控制数据的传输速率,避免网络拥堵。
  • 错误检测与纠正:通过校验和等技术确保数据的完整性。
  • 连接管理:如连接的建立、维护和断开。
协议与标准:
  • TCP(Transmission Control Protocol):面向连接、可靠的数据传输协议。
  • UDP(User Datagram Protocol):无连接、不可靠的传输协议,适用于实时应用。

5. 会话层(Session Layer)

会话层负责建立、管理和终止会话(通信会话)。它控制对话的开始、持续和结束。该层还负责数据的同步、恢复等功能。

主要内容:
  • 会话管理:如建立、管理和终止会话连接。
  • 对话控制:全双工、半双工或单工通信的控制。
  • 数据同步:确保数据交换的顺利进行,适时恢复会话中的断开部分。
协议与标准:
  • NetBIOS(网络基本输入输出系统)
  • RPC(远程过程调用)
  • SMB(服务器消息块)

6. 表示层(Presentation Layer)

表示层负责数据格式的转换和加密、解密。它确保应用层的数据以标准化的方式进行传输,处理不同计算机间数据表示的兼容问题。

主要内容:
  • 数据格式转换:如ASCII与EBCDIC之间的转换、图像格式转换(JPEG、PNG、GIF等)。
  • 数据压缩:减少数据传输的大小。
  • 加密与解密:提供数据加密和解密功能,以保障数据传输的安全性。
协议与标准:
  • SSL/TLS(安全套接字层/传输层安全协议)
  • JPEG、GIF、PNG(图像格式)
  • MPEG(视频格式)

7. 应用层(Application Layer)

应用层是OSI模型的最上层,负责为用户提供网络服务和应用程序接口。它直接与用户的应用程序交互,提供各种服务,如文件传输、电子邮件、网页浏览等。

主要内容:
  • 用户接口:应用程序与用户交互的界面。
  • 协议服务:提供特定应用所需的协议支持,如HTTP、FTP、SMTP等。
  • 数据处理与展示:将传输的数据处理成用户可理解的形式。
协议与标准:
  • HTTP(超文本传输协议)
  • FTP(文件传输协议)
  • SMTP(简单邮件传输协议)
  • DNS(域名系统)

相关文章:

计算机网络之---OSI七层模型

为什么会有七层模型 OSI七层模型的出现源于计算机网络技术的发展需求,主要解决以下几个问题: 标准化与互操作性 随着计算机网络的快速发展,不同厂商、不同技术之间的设备和系统需要能够无缝通信。而不同厂商在网络硬件、软件、协议等方面存在…...

mysql的mvcc理解

人阅读 一、说到mvcc就少不了事务隔离级别(大白话解释) 序列化(SERIALIZABLE):事务之间完全隔离,当成一个序列,一个一个执行。 1 可重复读(REPEATABLE READ)&#xff…...

leetcode 面试经典 150 题:两数之和

链接两数之和题序号1题型数组解题方法1. 哈希表,2. 暴力法难度简单熟练度✅✅✅✅✅ 题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输…...

nexus搭建maven私服

说到maven私服每个公司都有,比如我上一篇文章介绍的自定义日志starter,就可以上传到maven私服供大家使用,每次更新只需deploy一下就行,以下就是本人搭建私服的步骤 使用docker安装nexus #拉取镜像 docker pull sonatype/nexus3:…...

理解 Tomcat 架构

前言 Tomcat 是一个轻量级的 Web 容器,被广泛应用于 Java Web 开发中。通过它,我们可以轻松地部署和运行 Web 应用。在本文中,我们将深入分析 Tomcat 的核心架构,同时结合一段代码,手动实现一个简化的 Tomcat 服务&am…...

python3GUI--大屏可视化-传染病督导平台 By:PyQt5

文章目录 一.前言二.预览三.软件组成&开发心得1.样式&使用方法2.左侧表格实现3.设计4.学习5.体验效果 四.代码分享1.环形渐变进度组件2.自定义图片的背景组件 五.总结 大小:60.9 M,软件…...

如何选择适合的证件照制作软件,让您的照片制作更轻松

在当今数字化的时代,制作证件照不再需要专门前往照相馆。选择一款合适的证件照制作软件,您可以在家中轻松完成标准证件照的拍摄与制作。然而,面对市面上琳琅满目的软件,找到最适合您需求的软件并不简单。本文将为您详细介绍选择证…...

工作效率提升:使用Anaconda Prompt 创建虚拟环境总结

目录 完整顺序命令流程(直接照着改就行)详细步骤解析(想要详细解析的看过来)1. 创建一个用于存储 Conda 环境的目录(可选)2. 创建新的 Conda 虚拟环境并指定路径3. 激活新创建的环境4. 安装 Jupyter Notebo…...

Python自动化实战 —— 使用Selenium进行Web自动化

为了完成一项重复的任务,你需要在网站上进行大量的点击和操作,每次都要浪费大量的时间和精力。Python的Selenium库就可以自动化完成这些任务。 在本篇文章中,我们将会介绍如何使用Python的Selenium库进行Web自动化,以及如何将它应…...

【前端】【HTML】入门基础知识

参考视频&#xff1a;【狂神说Java】HTML5完整教学通俗易懂_哔哩哔哩_bilibili 一、基本结构 二、基本标签 <h1>&#xff1a;一级标题&#xff0c;通常用于页面的主标题&#xff0c;字体较大且醒目。 <h2>&#xff1a;二级标题&#xff0c;用于副标题或主要章节标…...

PHP获取局域网ip(192.168)

有时候&#xff0c;程序中&#xff0c;需要获取本机内网ip的情况&#xff0c;经过各种资料查找&#xff0c;最终确定一下代码&#xff1a; //获取内网ipfunction getLocalIP() {exec("ipconfig /all",$arr);$res mb_convert_encoding($arr, UTF-8, GBK);$ip ;fore…...

点击底部的 tabBar 属于 wx.switchTab 跳转方式,目标页面的 onLoad 不会触发(除非是第一次加载)

文章目录 1. tabBar 的跳转方式2. tabBar 跳转的特点3. 你的配置分析4. 生命周期触发情况5. 总结 很多人不明白什么是第一次加载&#xff0c;两种情况讨论&#xff0c;第一种情况假设我是开发者&#xff0c;第一次加载就是指点击微信开发者工具上边的编译按钮&#xff0c;每点击…...

基于PLC的酒店热水供应控制系统设计

摘 要 酒店的热水量需求比较大,热水加热消耗能源比较多,为了实现清洁能源加热实现热水供应,系统设计以太阳能作为主要能源来源,以电加热作为辅助能源来源进行系统的设计.通过集热器、储水箱、循环泵等设备组成酒店热水供水系统。通过控制温度传感器的信号&#xff0c;实现恒温…...

博客内所有项目均可在面包多平台进行购买

本人已入住面包多平台&#xff1a;我的 - 面包多 已有资料&#xff1a;...

《Mcal》--MCU模块

一、MCU模块的主要功能 控制系统时钟的产生。控制系统通用模块&#xff0c;该模块会涉及到Adc、Ftm等外设的配置。控制外设时钟。控制MCU运行的模式。初始化定义RAM Section。 比较重要的是时钟的配置。 二、系统时钟的配置 1、芯片时钟树 要想弄明白时钟配置&#xff0c;需…...

C语言:枚举类型

一、枚举类型的声明 枚举顾名思义就是一一列举。我们可以把可能的取值一一列举。比如我们现实生活中&#xff1a; 星期一到星期日是有限的7天&#xff0c;可以一一列举 &#xff1b;性别有&#xff1a;男、女、保密&#xff0c;也可以一一列举 &#xff1b;月份有12个月&#x…...

spring boot 多数据源集成mysql、postgresql、phoenix、doris等

如何搭建多数据源项目只要以下简单几步; 一. 创建核心在config.datasource文件夹里 二. 引入相对应的jar包 三. 创建数据库连接配置 四. 写逻辑代码进行验证 1.DataSource package com.irootech.config.datasource;import java.lang.annotation.*;Target({ElementType.MET…...

USB基础 -- USB 控制传输(Control Transfer)的重传机制

USB 控制传输&#xff08;Control Transfer&#xff09;的重传机制 1. 控制传输的事务结构 控制传输分为三个阶段&#xff0c;每个阶段都有自己的事务&#xff0c;并可能触发重传机制&#xff1a; 设置阶段&#xff08;Setup Stage&#xff09;&#xff1a;主机发送 8 字节的…...

云计算基础,虚拟化原理

文章目录 一、虚拟化1.1 什么是虚拟化1.2 虚拟化类型 二 、存储虚拟化2.1 存储指标2.2 存储类型2.3 存储协议2.4 RAID 三、内存 i/O虚拟化3.1 内存虚拟化基本概念地址空间转换原理内存共享与隔离原理 3.2 I/O 虚拟化基本概念模拟&#xff08;Emulation&#xff09;方式半虚拟化…...

浮点数在C语言开发中为什么不精确?

在C语言开发中&#xff0c;浮点数的精度问题是一个常见的陷阱&#xff0c;尤其是对于刚接触编程的开发者来说&#xff0c;可能会对浮点数的行为感到困惑。为什么0.1 0.2不等于0.3&#xff1f;为什么浮点数计算会出现微小误差&#xff1f;本文将从计算机底层原理出发&#xff0…...

ChatGPT网络错误如何解决

在当今的信息化社会&#xff0c;网络技术已无处不在。无论是日常生活中的在线购物&#xff0c;还是工作中的远程会议&#xff0c;网络的稳定性和可靠性成为了我们无时无刻不在关注的重要问题。而在智能技术的快速发展中&#xff0c;像ChatGPT这样的人工智能模型&#xff0c;因其…...

Vue3初学之插槽(slot)使用

在 Vue 3 中&#xff0c;插槽&#xff08;Slots&#xff09;是一种强大的内容分发机制&#xff0c;允许你在组件中定义可替换的内容区域&#xff0c;从而使组件更加通用和灵活。以下是 Vue 3 中插槽的几种常见用法&#xff1a; 默认插槽 默认插槽是最基本的插槽类型&#xff0…...

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统 这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。 通过PVE后台上传操作系统ISO镜像。 然后在PVE上【创建虚拟机】&#xff0c;选定上传的龙蜥操作系统镜像进行系统安装。 注意&#xff1a;在安装过程中&#xff0c;要设定语言、时区、超管用户root的密码、普…...

带格式 pdf 翻译

支持 openAI 接口&#xff0c;国内 deepseek 接口兼容 openAI 接口&#xff0c; deepseek api 又非常便宜 https://pdf2zh.com/ https://github.com/Byaidu/PDFMathTranslate...

【C++】C++11(一)

目录 一、C11简介二、统一的列表初始化2.1 &#xff5b;&#xff5d;初始化2.2 std::initializer_list 三、声明3.1 auto3.2 decltype3.3 nullptr 四、范围for五、智能指针六、STL中一些变化七、右值引用和移动语义7.1 左值引用和右值引用7.2 左值引用与右值引用比较7.3 右值引…...

初学stm32 --- ADC单通道采集

目录 ADC寄存器介绍&#xff08;F1&#xff09; ADC控制寄存器 1(ADC_CR1) ADC控制寄存器 2(ADC_CR2) ADC采样时间寄存器1(ADC_SMPR1) ADC采样时间寄存器2(ADC_SMPR2) ADC规则序列寄存器 1(ADC_SQR1) ADC规则序列寄存器 2(ADC_SQR2) ADC规则序列寄存器 3(ADC_SQR3) AD…...

【动态规划篇】欣赏概率论与镜像法融合下,别出心裁探索解答括号序列问题

本篇鸡汤&#xff1a;没有人能替你承受痛苦&#xff0c;也没有人能拿走你的坚强. 欢迎拜访&#xff1a;羑悻的小杀马特.-CSDN博客 本篇主题&#xff1a;带你解答洛谷的括号序列问题&#xff08;绝对巧解&#xff09; 制作日期&#xff1a;2025.01.10 隶属专栏&#xff1a;C/C题…...

Java(day7)

字符串练习 生成验证码 package day6; /*生成验证码 内容&#xff1a;可以是小写字母&#xff0c;也可以是大写字&#xff0c;还可以是数字 规则&#xff1a; 长度为5 内容中是四位字母&#xff0c;1位数字。 其中数字只有1位&#xff0c;但是可以出现在任意的位置。*/ impor…...

Word 转成pdf及打印的开源方案支持xp

Word转成pdf、打印的方案几乎没有免费开源的方案&#xff0c;现在提供一个通过LibreOffice实现的方案 操作依赖LibreOffice需要安装&#xff0c;点此下载老版本 5.4.7.2是最后一个支持xp的 版本如需xp要请安装此版本 LibreOffice官方介绍 LibreOffice 是一款开放源代码的自…...

LabVIEW软件侵权分析与应对

问&#xff1a;如果涉及到LabVIEW软件的仿制或模仿&#xff0c;特别是在功能、界面等方面&#xff0c;如何判断是否构成侵权&#xff1f;该如何应对&#xff1f; 答&#xff1a;LabVIEW软件的侵权问题&#xff0c;尤其是在涉及到仿制或模仿其功能、界面、设计等方面&#xff0…...