软硬件架构分层总结

一、前言

软件系统很多架构图我们经常看到是这样的三段

就是这三段就可以演化出很多层

二、硬件架构分层

硬件层,基本是计算机硬件的体系结构,包括硬盘设备,cpu,内存,控制器,运算器,寄存器,存储单元,缓存,总线等。 

三、操作架构分层

操作系统层,主要由引导程序,进程管理程序,内存管理程序,异常中断处理程序,文件系统,指令集,系统对外API等组成。

四、应用软件架构分层

最常见的应用软件架构就是数据库,应用程序代码集,页面程序代码集组成。

五、网络架构分层

网络架构七层模型

  • 第一层:应用层。定义了用于在网络中进行通信和传输数据的接口;

  • 第二层:表示层。定义不同的系统中数据的传输格式,编码和解码规范等;

  • 第三层:会话层。管理用户的会话,控制用户间逻辑连接的建立和中断;

  • 第四层:传输层。管理着网络中的端到端的数据传输;

  • 第五层:网络层。定义网络设备间如何传输数据;

  • 第六层:链路层。将上面的网络层的数据包封装成数据帧,便于物理层传输;

  • 第七层:物理层。这一层主要就是传输这些二进制数据。

1、物理层:物理层的主要任务是透明地传输比特流。物理层不关心比特流的实际意义和结构,只是负责接收和传送比特流。物理层定义网络硬件的特性,包括使用什么样的传输介质以及与传输介质连接的接头等物理特性便于理解:(主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。)物理层的数据传输单元是比特。

2、数据链路层:主要将从物理层接收的数据进行MAC地址(网卡的地址)的封装与解封装,在两个相邻节点间的线路上无差错地传送,以帧(Frame)为单位的数据,并要产生和识别帧边界 。数据链路层还提供了差错控制与流量量控制的方法,保证在物理线路上传送的数据无差错。

3、网络层:(主要将从下层接收到的数据进行IP地址(例192.168.0.1)的封装与解封装)进行路由选择,以确保数据分组(Packet)从发送端到达接收端,并在数据分组发生阻塞时进行拥塞控制。网络层还要解决异构网络的互连问题,以实现数据分组在不同类型的网络中传输。网络层协议的代表有:IP、IPX、RIP、OSPF等。

4、传输层:(主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段)为上一层进行通信的两个进程之间提供一个可靠的端到端服务,使传输层以上的各层不再关心信息传输的问题。传输层从会话层接收数据,形成报文(Message),在必要时将其分成若干个分组,然后交给网络层进行传输。传输层协议的代表有:TCP、UDP、SPX等 

5、会话层:针对远程访问进行管理(比如断点续传), 包括会话管理理、传输同步以及数据交换管理理等。会话层负责维护两个会话主机之间连接的建立、管理和终止,以及数据的交换。通过传输层(端口号:传输端口与接收端口)建立数据传输的通路。(主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名)) 

6、表示层:用于处理在多个通信系统之间交换信息的表示方式,包括数据格式的转换、数据加密与解密、数据压缩与恢复等, 主要是进行对接收的数据进行解释、加密与解密、压缩与解压缩等(也就是把计算机能够识别的东西转换成人能够能识别的东西(如图片、声音等)。

7、应用层:为网络用户或应⽤用程序提供各种服务,如文件传输、电子邮件、网络管理和远程登录等, 主要是一些终端的应用,比如说FTP(各种文件下载),WEB(IE浏览),QQ之类的(可以把它理解成我们在电脑屏幕上可以看到的东西.就是终端应用)。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/103325.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【会议征稿通知】2024第四届神经网络、信息与通信工程国际学术会议(NNICE 2024)

2024第四届神经网络、信息与通信工程国际学术会议(NNICE 2024) 2024 4th International Conference on Neural Networks, Information and Communication Engineering 2024第四神经网络、信息与通信工程国际学术会议(NNICE 2024&#xff0…

Linux用户及文件权限管理

一、Linux 用户管理 Linux 是一个可以实现多用户登录的操作系统,比如“李雷”和“韩梅梅”都可以同时登录同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件。但实际上他们的文件都是放在同一…

javascript: Sorting Algorithms

/** * file Sort.js * ide:vscode JavaScript Sorting Algorithms * 插件:IntelliSense,JSDoc,CodeLens,Debugger for Chrome, 静态代码检查:ESLint,JSHint,Flow Langugae Support,StandardJS-JavaScript Standard Style, koroFileHeader(文件头注释), …

某网站互动数据采集

1,网址 aHR0cHM6Ly9uZXdzLmZ1dHVubi5jb20vcG9zdC8zMzE4MzE1OQ2,找到返回互动数的请求包 3,采集互动数据加密信息如下 4,察看抓到的包,不难发现futu-offline-csrf-v2和futu-x-csrf-token-v2这两个参数在首页的请求中有…

基于斑马优化的BP神经网络(分类应用) - 附代码

基于斑马优化的BP神经网络(分类应用) - 附代码 文章目录 基于斑马优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.斑马优化BP神经网络3.1 BP神经网络参数设置3.2 斑马算法应用 4.测试结果:5.M…

Python数据结构(树)

Python数据结构(树) 树的概念 树(英语: tree)是一种抽象数据类型ADT) 或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一…

mysql 数据库 表结构生成word文档

1、背景 我们在做项目时,表设计文档都是非常重要的,可以让开发人员快速了解表与业务的关系、表之间的关系。 产品在不停迭代的过程中,表的结构也会有相应的变化,我们需要将变化更新的表设计文档中。以前我们是人工方式更新文档&…

reactNative导入excel文件

组件内导入 import {TouchableOpacity,PermissionsAndroid} from react-native; import RNFS from react-native-fs; import XLSX from xlsx; import DocumentPicker from react-native-document-picker; import {Buffer} from buffer;// 需要安装一下三个,Buffer和react-nati…

TP4057替代DP4057 500mA线性锂离子电池充电器芯片

描述 DP4057是一款完整的单节锂离子电池带电池正负极反接保护采用恒定电流/恒定电压线性充电器。其SOT封装与较少的外部元件数目使得DP4057成为便携式应用的理想选择。DP4057 可以适合USB电源和适配器电源工作。 由于采用了内部PMOSFET架构,加.上防倒充电路&#xf…

隧道代理 vs 普通代理:哪种更适合您的爬虫应用?

前言 随着互联网的普及,爬虫技术在多个领域得到广泛应用。在进行爬虫开发时,代理服务器是不可或缺的工具之一。代理服务器可以隐藏客户端的真实 IP 地址和位置,从而保护客户端的隐私,同时通过代理可以绕过一些网络限制和安全机制…

【JavaEE】网络编程---TCP数据报套接字编程

一、TCP数据报套接字编程 1.1 ServerSocket API ServerSocket 是创建TCP服务端Socket的API ServerSocket 构造方法: ServerSocket 方法: 1.2 Socket API Socket 是客户端Socket,或服务端中接收到客户端建立连接(accept方法&…

好用的Visio绘图文件工具 VSD Viewer最新 for mac

VSD Viewer是一款可以查看Microsoft Visio绘图文件的工具,适用于Windows和macOS操作系统。它具有以下优点: 直观易用:VSD Viewer的用户界面非常简单直观,易于使用。支持多种文件格式:VSD Viewer支持多种Visio文件格式…

短视频矩阵系统搭建/源头----源码

一、智能剪辑、矩阵分发、无人直播、爆款文案于一体独立应用开发 抖去推----主要针对本地生活的----移动端(小程序软件系统,目前是全国源头独立开发),开发功能大拆解分享,功能大拆解: 7大模型剪辑法(数学阶乘&#xff…

HTML页面获取URL传递的参数值

如: // 查询url上链接的参数与参数值 function getQueryString(name) {var url window.location.search; // 获取URLvar pattern new RegExp("[\?\&]" name "([^\&])", "i"); // 正则匹配URLvar matcher pattern.exec(…

企业如何保护机密文件安全

企业如何保护机密文件安全,数据加密技术有哪些 随着公司业务的不断发展,公司机密文件的保护是一家公司不可忽视的问题。机密文件包含了企业的核心信息,如客户资料、产品方案、财务数据等。 安企神数据防泄密系统下载试用 企业数据一旦泄露…

HTTP响应

HTTP响应分为四个部分: 首行:HTTP/1.1(首行) 200(状态码) OK(状态码描述)header:空行:表示header的结束标记body:正文 HTTP状态码:…

MySQL-DML【数据操作语言】(图码结合)

目录 🚩DML的定义 👉DML-添加数据 🎓给指定的字段添加数据 🕶️查询表数据的方式 ❗疑惑点一【Affecter rows:行数】 ❗疑惑点二【字符集问题】 🎓给全部字段添加数据 🎓批量添加数据 &#x1f…

得帆北区总经理——湛颂:得帆云iPaaS平台是满足企业集成需求的利器

后ERP时代的IT变革 在过去的许多年里,企业的IT发展往往都是根据各业务部门的需求而引入大量系统。十年前,面对制造业的客户群体,当他们已经引入了ERP、CRM、WMS、MES、TMS、HR、LIMS等业务系统的时候,我就在讲一个话题——后ERP时…

YOLOv5算法改进(20)— 如何去写YOLOv5相关的论文(包括论文阅读+规律总结+写作方法)

前言:Hello大家好,我是小哥谈。最近一直在阅读关于YOLOv5的相关论文,读着读着我发现一条可以发论文的规律,特此简单总结一下,希望能够对同学们有所启迪!🌈 前期回顾: YOLOv5算法改进(1)— 如何去改进YOLOv5算法

GitHub commit时出现 无法访问443 Operation timed out的解决办法

GitHub commit时出现 无法访问443 Operation timed out的解决办法 1.问题描述2. 环境3.解决方法4.如果上述方法不行,那就再试一试下面这个方法4.1 首先确认自己的网页可以打开github4.2 按照如下配置http和https代理4.2.1 找端口号 5. 参考链接 1.问题描述 当使用g…