虚拟存储结构图
Ⅰ 【操作系统】01--存储器的层次结构
操作系统存储器,如何对存储器进行有效的管理,直接影响着存储器的利用率和系统性能。
1、存储器的层次结构
2、程序的装入和链接
3、连续分配存储管理方式
4、分页存储管理方式
5、分段存储管理方式
内部碎片和外部碎片
逻辑地址和物理地址
内存分配策略
分页的地址变换,页表的使用
分页和分段的优缺点
1、存储的层次结构
这个图不怎么看的清,总体是三个部分:存储器的层次结构、程序的装入和链接、连续分配存储管理方式
====================
(1)内存分配——为每个进程分配一定的内存空间
(2)地址映射——把程序中所用的相对地址转换成内存的物理地址
(3)内存保护——检查地址的合法性,防止越界访问
(4)内存扩充——解决“求大于供”的问题,采用虚拟存储技术
内存分配
内存分配的主要任务是:为每一道程序分配内存空间,使它们“各得其所”;当程序撤消时,则收回它占用的内存空间。分配时注意提高存储器的利用率。
地址映射
目标程序所访问的地址是逻辑地址集合的地址空间,而内存空间是内存中物理地址的集合,在多道程序环境下,这两者是不一致的,因此,存储管理必须提供地址映射功能,用于把程序地址空间中的逻辑地址转换为内存空间中对应的物理地址。
内存保护
内存保护的任务是确保每道程序都在自己的内存空间运行,互不干扰。保护系统程序区不被用户侵犯(有意或无意的),不允许用户程序读写不属于自己地址空间的数据(系统区地址空间,其他用户程序的地址空间)。
内存扩充
内存扩充的任务是从逻辑上来扩充内存容量,使用户认为系统所拥有的内存空间远比其实际的内存空间(硬件RAM)大的多。
【缓存都在其使用的工具之前,目的是为了减少访问次数】
2.1 主存储器
主存储器是计算机系统中的一个主要部件,用于保存进程运行时的程序和数据,CPU的控制部件只能从主存储器中取得指令和数据,数据能够从主存储器中读取并将他们装入到寄存器中,或者从寄存器存入到主存储器,CPU与外围设备交换的信息一般也依托于主存储器地址空间。但是,主存储器的访问速度远低于CPU执行指令的速度,于是引入了寄存机和告诉缓冲。
2.2 寄存器
寄存器访问速度最快,能与CPU协调工作,价格昂贵,容量不大,寄存器用于加速存储器的访问速度,如用寄存器存放操作数,或用作地址寄存器加快地址转换速度等。
2.3 高速缓存
高速缓存容量大于或远大于寄存器,但小于内存,访问速度高于主内存器,根据程序局部性原理,将主存中一些经常访问的信息存放在高速缓存中, 减少访问主存储器的次数 ,可大幅度提高程序执行速度。通常,进程的程序和数据存放在主存,每当使用时,被临时复制到高速缓存中,当CPU访问一组特定信息时,首先检查它是否在高速缓存中,如果已存在,则直接取出使用,否则,从主存中读取信息。有的计算机系统设置了两级或多级高速缓存,一级缓存速度最高,容量小,二级缓存容量稍大,速度稍慢。
2.4 磁盘缓存
磁盘的IO速度远低于对主存的访问速度,因此将频繁使用的一部分磁盘数据和信息暂时存放在磁盘缓存中, 可减少访问磁盘的次数, 磁盘缓存本身并不是一种实际存在的存储介质,它依托于固定磁盘,提供对主存储器空间的扩充,即利用主存中的存储空间,来暂存从磁盘中读出或写入的信息,主存可以看做是辅存的高速缓存,因为,辅存中的数据必须复制到主存方能使用,反之,数据也必须先存在主存中,才能输出到辅存。
主存储器简称 主存或内存 , 用于保存程序运行时的指令和数据.
寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和 地址 .
通常, 处理机从指存中读出数据放入指令寄存器, 这一时间段我们称之为取指周期; 处理机从数存中读取数据放入数据寄存器, 再流入运算器, 这一时间段我们称之为执行周期.
高速缓存和磁盘缓存:
高速缓冲存储器是介于寄存器和存储器之间的存储器, 主要用于备份主存中较常用的数据, 用来减少处理机对主存储器的访问次数, 提高运行效率.
磁盘缓存主要用于暂时存放频繁使用的一部分磁盘数据和信息, 以减少访问磁盘的次数.
Ⅱ 网络存储技术的工作原理是什么有图解释么
网络存储技术(Network Storage Technologies)是基于数据存储的一种通用网络术语。网络存储结构大致分为三种:直连式存储(DAS:Direct Attached Storage)、网络存储设备(NAS:Network Attached Storage)和存储网络(SAN:Storage Area Network)。
网络存储技术
直连式存储(DAS):这是一种直接与主机系统相连接的存储设备,如作为服务器的计算机内部硬件驱动。到目前为止,DAS 仍是计算机系统中最常用的数据存储方法。 DAS即直连方式存储,英文全称是Direct Attached Storage。中文翻译成“直接附加存储”。顾名思义,在这种方式中,存储设备是通过电缆(通常是SCSI接口电缆)直接到服务器的。I/O(输入/输入)请求直接发送到存储设备。DAS,也可称为SAS(Server-Attached Storage,服务器附加存储)。它依赖于服务器,其本身是硬件的堆叠,不带有任何存储操作系统。
DAS的适用环境为:
1) 服务器在地理分布上很分散,通过SAN(存储区域网络)或NAS(网络直接存储)在它们之间进行互连非常困难时(商店或银行的分支便是一个典型的例子); 2) 存储系统必须被直接连接到应用服务器(如Microsoft Cluster Server或某些数据库使用的“原始分区”)上时; 3) 包括许多数据库应用和应用服务器在内的应用,它们需要直接连接到存储器上,群件应用和一些邮件服务也包括在内。 典型DAS结构如图所示: 典型DAS结构如图所示
对于多个服务器或多台PC的环境,使用DAS方式设备的初始费用可能比较低,可是这种连接方式下,每台PC或服务器单独拥有自己的存储磁盘,容量的再分配困难;对于整个环境下的存储系统管理,工作烦琐而重复,没有集中管理解决方案。所以整体的拥有成本(TCO)较高。目前DAS基本被NAS所代替。下面是DAS与NAS的比较。 DAS与NAS的比较图
网络存储设备(NAS):NAS 是一种采用直接与网络介质相连的特殊设备实现数据存储的机制。由于这些设备都分配有 IP 地址,所以客户机通过充当数据网关的服务器可以对其进行存取访问,甚至在某些情况下,不需要任何中间介质客户机也可以直接访问这些设备。
NAS网络存储器
1. 最大存储容量
最存储大存储容量是指NAS存储设备所能存储数据容量的极限,通俗的讲,就是NAS设备能够支持的最大硬盘数量乘以单个硬盘容量就是最大存储容量。这个数值取决于NAS设备的硬件规格。不同的硬件级别,适用的范围不同,存储容量也就有所差别。通常,一般小型的NAS存储设备会支持几百GB的存储容量,适合中小型公司作为存储设备共享数据使用,而中高档的NAS设备应该支持T级别的容量(1T=1000G)。
2. 处理器
同普通电脑类似,NAS产品也都具有自己的处理器(CPU)系统,来协调控制整个系统的正常运行。其采用的处理器也常常与台式机或服务器的CPU大体相同。目前主要有以下几类。 (1)Intel系列处理器 (4)AMD系列处理器 (5)PA-RISC型处理器 (6)PowerPC处理器 (7)MIPS处理器 一般针对中小型公司使用NAS产品采用AMD的处理器或Intel PIII/PIV等处理器。而大规模应用的NAS产品则使用Intel Xeon处理器、或者RISC型处理器等。但是也不能一概而论,视具体应用和厂商规划而定。
3. 内存
NAS从结构上讲就是一台精简型的电脑,每台NAS设备都配备了一定数量的内存,而且大多用户以后可以扩充。在NAS设备中,常见的内存类型由SDRAM(同步内存)、FLASH(闪存)等。不同的NAS产品出厂时配备的内存容量不同,一般为几十兆到数GB(1GB=1000MB)容量不等,这取决于NAS产品的应用范围,一般来讲,应用在小规模的局域网当中的NAS,如果只是应付几台设备的访问,64M以下内存容量即可。如果是上百个节点以上的访问,就得需要上G容量的内存。当然,这不是绝对的因素,NAS产品的综合性能发挥还取决于它的处理器能力、硬盘速度及其网络实际环境等因素的制约。总之,选购NAS产品时,应该综合考虑各个方面的性能参数。
4. 接口
NAS产品的外部接口比较简单,由于只是通过内置网卡与外界通讯,所以一般只具有以太网络接口,通常是RJ45规格,而这种接口网卡一般都是100M网卡或1000M网卡。另外,也有部分NAS产品需要与SAN(存储区域网络)产品连接提供更为强大的功能,所以也可能会有FC(Fiber Channel光纤通道)接口。
5. 预置软件系统
预制操作系统是指NAS产品出厂时随机带的操作系统或者管理软件。目前NAS产品一般带有以下几种系统软件。 精简的WINDOWS2000系统 这类系统只是保留了WINDOWS2000 SERVER系统核心网络中最重要的部分,能够驱动NAS产品正常工作。我们可以把它理解为WINDOWS2000的“精简版”。 FreeBSD嵌入式系统 FreeBSD是类UNIX系统,在网络应用方面具备极其优异的性能。 Linux嵌入式系统 Linux系统类似于UNIX操组系统,但相比之下具有界面友好、内核升级迅速等特点。常常用来作为电器等产品的嵌入式控制系统。
6. 网络管理
网络管理,是指网络管理员通过网络管理程序对网络上的资源进行集中化管理的操作,包括配置管理、性能和记账管理、问题管理、操作管理和变化管理等。一台设备所支持的管理程度反映了该设备的可管理性及可操作性。 一般的网络满足SNMP MIB I / MIB II统计管理功能。常见的网络管理方式有以下几种: (1)SNMP管理技术 (2)RMON管理技术 (3)基于WEB的网络管理 SNMP是英文“Simple Network Management Protocol”的缩写,中文意思是“简单网络管理协议”。SNMP首先是由Internet工程任务组织(Internet Engineering Task Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。 SNMP是目前最常用的环境管理协议。SNMP被设计成与协议无关,所以它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。SNMP是一系列协议组和规范(见下表),它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。 目前,几乎所有的网络设备生产厂家都实现了对SNMP的支持。领导潮流的SNMP是一个从网络上的设备收集管理信息的公用通信协议。设备的管理者收集这些信息并记录在管理信息库(MIB)中。这些信息报告设备的特性、数据吞吐量、通信超载和错误等。MIB有公共的格式,所以来自多个厂商的SNMP管理工具可以收集MIB信息,在管理控制台上呈现给系统管理员。 通过将SNMP嵌入数据通信设备,如交换机或集线器中,就可以从一个中心站管理这些设备,并以图形方式查看信息。目前可获取的很多管理应用程序通常可在大多数当前使用的操作系统下运行,如Windows3.11、Windows95 、Windows NT和不同版本UNIX的等。 一个被管理的设备有一个管理代理,它负责向管理站请求信息和动作,代理还可以借助于陷阱为管理站提供站动提供的信息,因此,一些关键的网络设备(如集线器、路由器、交换机等)提供这一管理代理,又称SNMP代理,以便通过SNMP管理站进行管理。
7. 网络协议
网络协议即网络中(包括互联网)传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。 一台计算机只有在遵守网络协议的前提下,才能在网络上与其他计算机进行正常的通信。网络协议通常被分为几个层次,每层完成自己单独的功能。通信双方只有在共同的层次间才能相互联系。常见的协议有:TCP/IP协议、IPX/SPX协议、NetBEUI协议等。在局域网中用得的比较多的是IPX/SPX.。用户如果访问Internet,则必须在网络协议中添加TCP/IP协议。 TCP/IP是“transmission Control Protocol/Internet Protocol”的简写,中文译名为传输控制协议/互联网络协议)协议, TCP/IP(传输控制协议/网间协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。 对普通用户来说,并不需要了解网络协议的整个结构,仅需了解IP的地址格式,即可与世界各地进行网络通信。 IPX/SPX是基于施乐的XEROX’S Network System(XNS)协议,而SPX是基于施乐的XEROX’S SPP(Sequenced Packet Protocol:顺序包协议)协议,它们都是由novell公司开发出来应用于局域网的一种高速协议。它和TCP/IP的一个显着不同就是它不使用ip地址,而是使用网卡的物理地址即(MAC)地址。在实际使用中,它基本不需要什么设置,装上就可以使用了。由于其在网络普及初期发挥了巨大的作用,所以得到了很多厂商的支持,包括microsoft等,到现在很多软件和硬件也均支持这种协议。 NetBEUI即NetBios Enhanced User Interface ,或NetBios增强用户接口。它是NetBIOS协议的增强版本,曾被许多操作系统采用,例如Windows for Workgroup、Win 9x系列、Windows NT等。NETBEUI协议在许多情形下很有用,是WINDOWS98之前的操作系统的缺省协议。总之NetBEUI协议是一种短小精悍、通信效率高的广播型协议,安装后不需要进行设置,特别适合于在“网络邻居”传送数据。所以建议除了TCP/IP协议之外,局域网的计算机最好也安上NetBEUI协议。另外还有一点要注意,如果一台只装了TCP/IP协议的WINDOWS98机器要想加入到WINNT域,也必须安装NetBEUI协议。
8. 网络文件协议
网络文件系统是基于网络的分布式文件系统,其文件系统树的各节点可以存在于不同的联网计算机甚至不同的系统平台上,可以用来提供跨平台的信息存储与共享。 当今最主要的两大网络文件系统是Sun提出的NFS(Network File System)以及由微软、EMC和NetApp提出的CIFS(Common Internet File System),前者主要用于各种Unix平台,后者则主要用于Windows平台,我们熟悉的“网上邻居”的文件共享方式就是基于CIFS系统的。其他着名的网络文件系统还有Novell公司的NCP(网络控制协议)、Apple公司的AFP以及卡内基-梅隆大学的Coda等,NAS的主要功能之一便是通过各种网络文件系统提供存储服务。
9. 网络备份软件
目前在数据存储领域可以完成网络数据备份管理的软件产品主要有Legato公司的NetWorker、IBM公司 的Tivoli、Veritas公司 的NetBackup等。另外有些操作系统,诸如Unix的tar/cpio、Windows2000/NT的Windows Backup、Netware的Sbackup也可以作为NAS的备份软件。
NetBackup
NetBackup是Veritas公司推出的适用于中型和大型的存储系统的备份软件,可以广泛的支持各种开放平台。另外该公司还推出了适合低端的备份软件Backup Exec。
NetWorker
NetWorker是Legato公司推出的备份软件,它适用于大型的复杂网络环境,具有各种先进的备份技术机制,广泛的支持各种开放系统平台。值得一提的是, NetWorker中的Cellestra技术第一个在产品上实现了Serverless Backup(无服务器备份)的思想。
IBM Tivoli
IBM Tivoli是IBM公司推出的备份软件,与Veritas的NetBackup和Legato的NetWorker相比,Tivoli Storage Manager更多的适用于IBM主机为主的系统平台,其强大的网络备份功能可以胜任大规模的海量存储系统的备份需要。 此外,CA公司原来的备份软件ARCServe,在低端市场具有相当广泛的影响力。其新一代备份产品--BrightStor,定位直指中高端市场,也具有不错的性能。 选购备份软件时,应该根据不同的用户需要选择合适的产品,理想的网络备份软件系统应该具备以下功能:
集中式管理
网络存储备份管理系统对整个网络的数据进行管理。利用集中式管理工具的帮助,系统管理员可对全网的备份策略进行统一管理,备份服务器可以监控所有机器的备份作业,也可以修改备份策略,并可即时浏览所有目录。所有数据可以备份到同备份服务器或应用服务器相连的任意一台磁带库内。
全自动的备份
备份软件系统应该能够根据用户的实际需求,定义需要备份的数据,然后以图形界面方式根据需要设置备份时间表,备份系统将自动启动备份作业,无需人工干预。这个自动备份作业是可自定的,包括一次备份作业、每周的某几日、每月的第几天等项目。设定好计划后,备份作业就会按计划自动进行。
数据库备份和恢复
在许多人的观念里,数据库和文件还是一个概念。当然,如果你的数据库系统是基于文件系统的,当然可以用备份文件的方法备份数据库。但发展至今,数据库系统已经相当复杂和庞大,再用文件的备份方式来备份数据库已不适用。是否能够将需要的数据从庞大的数据库文件中抽取出来进行备份,是网络备份系统是否先进的标志之一。
在线式的索引
备份系统应为每天的备份在服务器中建立在线式的索引,当用户需要恢复时,只需点取在线式索引中需要恢复的文件或数据,该系统就会自动进行文件的恢复。
归档管理
用户可以按项目、时间定期对所有数据进行有效的归档处理。提供统一的Open Tape Format 数据存储格式从而保证所有的应用数据由一个统一的数据格式作为永久的保存,保证数据的永久可利用性。
有效的媒体管理
备份系统对每一个用于作备份的磁带自动加入一个电子标签,同时在软件中提供了识别标签的功能,如果磁带外面的标签脱落,只需执行这一功能,就会迅速知道该磁带的内容。
满足系统不断增加的需求
备份软件必须能支持多平台系统,当网络上连接上其它的应用服务器时,对于网络存储管理系统来说,只需在其上安装支持这种服务器的客户端软件即可将数据备份到磁带库或光盘库中。
10. 网站浏览器支持
网站浏览器支持是指能否够通过WEB(就是WWW,俗称互联网)手段对NAS产品进行管理,以及管理时使用的浏览器类型。绝大部分的NAS产品都支持WEB管理,这样的好处是管理方便,用户在任何地方只要能够上网就可以轻松的管理NAS设备。 目前NAS产品支持的常用浏览器有微软的IE(Internet Explorer)浏览器以及网景公司的Netscape浏览器。
11. 网络服务
网络服务是指NAS产品在运行时系统能够提供何种服务。典型的网络服务有DHCP、DNS、FTP、Telnet、WINS、SMTP等。
DHCP
DHCP的全名是“Dynamic Host Configuration Protocol”,即动态主机配置协议。在使用DHCP的网络里,用户的计算机可以从DHCP服务器那里获得上网的参数,几乎不需要做任何手工的配置就可以上网。 一般情况下,DHCP服务器会尽量保持每台计算机使用同一个IP地址上网。如果计算机长时间没有上网或配置为使用静态地址上网,DHCP服务器就会把这个地址分配给其他计算机。
WINS
WINS是“Windows Internet Name Service”的简称,中文为Windows网际命名服务,WINS服务器主要用于NetBIOS名字(计算机名称)服务,它处理的是NetBIOS计算机名(Computer Name),所以也被称为NetBIOS名字服务器(NBNS,NetBIOS Name Server)。WINS服务器可以登记WINS-enabled工作站(下面简称为“WINS工作站”)的计算机名、IP地址、DNS域名等数据,当工作站查询名字时,它又可以将这些数据提供给工作站。
DNS
DNS,Domain Name System或者Domain Name Service(域名系统或者余名服务)。域名系统为Internet上的主机分配域名地址和IP地址。用户使用域名地址,该系统就会自动把域名地址转为IP地址。域名服务是运行域名系统的Internet工具。执行域名服务的服务器称之为DNS服务器,通过DNS服务器来应答域名服务的查询。
FTP
文件传输协议FTP(File Transfer Protocol)是Internet传统的服务之一。FTP使用户能在两个联网的计算机之间传输文件,它是Internet传递文件最主要的方法。使用匿名(Anonymous)FTP, 用户可以免费获取Internet丰富的资源。除此之外,FTP还提供登录、目录查询、文件操作及其他会话控制功能。
SMTP
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,我们就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送邮件服务器,用来发送或中转你发出的电子邮件。
Telnet
有的时候我们需要运行一些很大的程序,而自己的PC又达不到运行这个程序所必须的配置,在这种情况下,我们可以通过网络连接上一台功能强大的计算机,并且把自己的PC模拟成那台计算机的终端,进而达到在该计算机上运行程序的目的。这种利用网络远程登录到其他计算机上,并且以虚拟终端方式遥控程序运行的做法就是TELNET。随着计算机硬件的发展,目前TELNET在一般网络用户中已经不是很普遍了,但是对于网络管理员来说,它仍然是个得力助手。
12. 网络安全
网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。 网络安全实际上包括两部分:网络的安全和主机系统的安全。网络安全主要通过设置防火墙来实现,也可以考虑在路由器上设置一些数据包过滤的方法防止来自Internet上的黑客的攻击。至于系统的安全则需根据不同的操作系统来修改相关的系统文件,合理设置用户权限和文件属性。 NAS产品的网络安全应具有以下四个方面的特征: 保密性:信息不泄露给非授权用户、实体或过程,或供其利用的特性。 完整性: 数据未经授权不能进行改变的特性。即信息在存储或传输过程中保持不被修 改、不被破坏和丢失的特性。 可用性:可被授权实体访问并按需求使用的特性。即当需要时能否存取所需的信息。例 如网络环境下拒绝服务、破坏网络和有关系统的正常运行等都属于对可用性的攻击; 可控性:对信息的传播及内容具有控制能力。
13. NAS
NAS是英文“Network Attached Storage”的缩写, 中文意思是“网络附加存储”。按字面简单说就是连接在网络上, 具备资料存储功能的装置,因此也称为“网络存储器”或者“网络磁盘阵列”。 从结构上讲,NAS是功能单一的精简型电脑,因此在架构上不像个人电脑那么复杂,在外观上就像家电产品,只需电源与简单的控制钮, 结构图如下: NAS是一种专业的网络文件存储及文件备份设备,它是基于LAN(局域网)的,按照TCP/IP协议进行通信,以文件的I/O(输入/输出)方式进行数据传输。在LAN环境下,NAS已经完全可以实现异构平台之间的数据级共享,比如NT、UNIX等平台的共享。 一个NAS系统包括处理器,文件服务管理模块和多个硬盘驱动器(用于数据的存储)。 NAS 可以应用在任何的网络环境当中。主服务器和客户端可以非常方便地在NAS上存取任意格式的文件,包括SMB格式(Windows)NFS格式(Unix, Linux)和CIFS(Common Internet File System)格式等等。典型的NAS的网络结构如下图所示: 存储网络(SAN):SAN 是指存储设备相互连接且与一台服务器或一个服务器群相连的网络。其中的服务器用作 SAN 的接入点。在有些配置中,SAN 也与网络相连。SAN 中将特殊交换机当作连接设备。它们看起来很像常规的以太网络交换机,是 SAN 中的连通点。SAN 使得在各自网络上实现相互通信成为可能,同时并带来了很多有利条件。 SAN英文全称:Storage Area Network,即存储区域网络。它是一种通过光纤集线器、光纤路由器、光纤交换机等连接设备将磁盘阵列、磁带等存储设备与相关服务器连接起来的高速专用子网。 SAN由三个基本的组件构成:接口(如SCSI、光纤通道、ESCON等)、连接设备(交换设备、网关、路由器、集线器等)和通信控制协议(如IP和SCSI等)。这三个组件再加上附加的存储设备和独立的SAN服务器,就构成一个SAN系统。SAN提供一个专用的、高可靠性的基于光通道的存储网络,SAN允许独立地增加它们的存储容量,也使得管理及集中控制(特别是对于全部存储设备都集群在一起的时候)更加简化。而且,光纤接口提供了10 km的连接长度,这使得物理上分离的远距离存储变得更容易.
Ⅲ 云存储的网络结构
相信大家对局域网、广域网和互联网都已经非常了解了。在常见的局域网系统中,我们为了能更好地使用局域网,一般来讲,使用者需要非常清楚地知道网络中每一个软硬件的型号和配置,比如采用什么型号交换机,有多少个端口,采用了什么路由器和防火墙,分别是如何设置的。系统中有多少个服务器,分别安装了什么操作系统和软件。各设备之间采用什么类型的连接线缆,分配了什么IP地址和子网掩码。
但当我们使用广域网和互联网时,我们只需要知道是什么样的接入网和用户名、密码就可以连接到广域网和互联网,并不需要知道广域网和互联网中到底有多少台交换机、路由器、防火墙和服务器,不需要知道数据是通过什么样的路由到达我们的电脑,也不需要知道网络中的服务器分别安装了什么软件,更不需要知道网络中各设备之间采用了什么样的连接线缆和端口。广域网和互联网对于具体的使用者是完全透明的,我们经常用一个云状的图形来表示广域网和互联网,如下图:
虽然这个云图中包含了许许多多的交换机、路由器、防火墙和服务器,但对具体的广域网、互联网用户来讲,这些都是不需要知道的。这个云状图形代表的是广域网和互联网带给大家的互联互通的网络服务,无论我们在任何地方,都可以通过一个网络接入线缆和一个用户、密码,就可以接入广域网和互联网,享受网络带给我们的服务。
参考云状的网络结构,创建一个新型的云状结构的存储系统,这个存储系统由多个存储设备组成,通过集群功能、分布式文件系统或类似网格计算等功能联合起来协同工作,并通过一定的应用软件或应用接口,对用户提供一定类型的存储服务和访问服务。
当我们使用某一个独立的存储设备时,我们必须非常清楚这个存储设备是什么型号,什么接口和传输协议,必须清楚地知道存储系统中有多少块磁盘,分别是什么型号、多大容量,必须清楚存储设备和服务器之间采用什么样的连接线缆。为了保证数据安全和业务的连续性,我们还需要建立相应的数据备份系统和容灾系统。除此之外,对存储设备进行定期地状态监控、维护、软硬件更新和升级也是必须的。如果采用云存储,那么上面所提到的一切对使用者来讲都不需要了。云状存储系统中的所有设备对使用者来讲都是完全透明的,任何地方的任何一个经过授权的使用者都可以通过一根接入线缆与云存储连接,对云存储进行数据访问。
云存储系统的结构模型由4层组成:
1.存储层
存储层是云存储最基础的部分。云存储中的存储设备往往数量庞大且分布多不同地域。彼此之间通过广域同、互联网或者FC光纤通道网络连接在一起。
存储设备之上是一个统一存储设备管理系统,可以实现存储设备的逻辑虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护。
2.基础管理层基础管理层是云存储最核心的部分,也是云存储中最难以实现的部分。基础管理层通过集群、分布式文件系统和网格计算等技术,实现云存储中多个存储设备之间的协同工作,使多个的存储设备可以对外提供同一种服务,并提供更大更强更好的数据访问性能。
CDN内容分发系统、数据加密技术保证云存储中的数据不会被未授权的用户所访问,同时,通过各种数据备份和容灾技术和措施可以保证云存储中的数据不会丢失,保证云存储自身的安全和稳定。
3.应用接口层
应用接口层是云存储最灵活多变的部分。不同的云存储运营单位可以根据实际业务类型,开发不同的应用服务接口,提供不同的应用服务。比如视频监控应用平台、IPTV和视频点播应用平台、网络硬盘引用平台,远程数据备份应用平台等。
4.访问层
任何一个授权用户都可以通过标准的公用应用接口来登录云存储系统,享受云存储服务。云存储运营单位不同,云存储提供的访问类型和访问手段也不同。
云存储不是存储,而是服务就如同云状的广域网和互联网一样,云存储对使用者来讲,不是指某一个具体的设备,而是指一个由许许多多个存储设备和服务器所构成的集合体。使用者使用云存储,并不是使用某一个存储设备,而是使用整个云存储系统带来的一种数据访问服务。所以严格来讲,云存储不是存储,而是一种服务。云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。 存储层是云存储最基础的部分。存储设备可以是FC光纤通道存储设备,可以是NAS和 iSCSI等IP存储设备,也可以是 SCSI或SAS等 DAS存储设备。云存储中的存储设备往往数量庞大且分布多不同地域,彼此之间通过广域网、互联网或者 FC光纤通道网络连接在一起。
存储设备之上是一个统一存储设备管理系统,可以实现存储设备的逻辑虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护。 任何一个授权用户都可以通过标准的公用应用接口来登录云存储系统,享受云存储服务。云存储运营单位不同,云存储提供的访问类型和访问手段也不同。
Ⅳ 三级存储系统构成工作原理
主存和Cache之间的数据调动是由硬件自动完成的,对所有程序员均是透明的;而主存和辅存之间的数据调动则是由硬件和操作系统共同完成的,对应用程序员是透明的。MDR和MAR逻辑上在主存中,实际上在CPU中;地址译码器在主存中。
三级缓存是为读取二级缓存后未命中的数据设计的—种缓存,在拥有三级缓存的CPU中,只有约5%的数据需要从内存中调用,这进一步提高了CPU的效率。
其运作原理在于使用较快速的储存装置保留一份从慢速储存装置中所读取数据且进行拷贝,当有需要再从较慢的储存体中读写数据时,缓存(cache)能够使得读写的动作先在快速的装置上完成,如此会使系统的响应较为快速。
Ⅳ 云存储的核心技术:虚拟化存储,究竟虚拟是怎样实现的
虚拟化改变了计算机使用存储的方式。就像物理机器抽象成虚拟机(VM:Virtual Machine)一样,物理存储设备也被抽象成虚拟磁盘(Virtual Disk)。今天我们就来聊聊虚拟化存储(Storage Virtualization)技术,究竟虚拟磁盘是怎样实现的?
虚拟磁盘的实现
我们知道,服务器扩展存储的手段主要有直连存储(DAS)、存储区域网络(SAN)和网络附加存储(NAS)这三种类型。那么哪种存储类型可以用来实现虚拟磁盘呢?
在虚拟化环境中,类似VMWare这样的虚拟机管理程序hypervisor,要同时给很多VM分配存储空间。这个过程中,我们需要先把物理存储资源重新划分成虚拟磁盘,然后再分配给VM。
显然我们不能用DAS方式把物理磁盘直连到VM上,如果这样,需要的物理磁盘就太多了。SAN是以逻辑单元(LUN:Logic Unit)的形式提供存储资源,但是虚拟环境中VM的数量是很大的,而且伦的数量不足以支持这么多虚拟磁盘。
更重要的是,虚拟磁盘是为大量VM共享的,由于VM需要随时创建、删除或迁移,所以需要在迁移VM时共享存储空间,只有原始数据不会丢失。DAS还是SAN,都不适合共享存储。
考虑到资源分配以及共享的问题,虚拟机管理程序以NAS的方式实现虚拟磁盘。VMware通常使用VMFS(虚拟机文件系统)或NFS协议实现虚拟磁盘,VMFS文件系统是专门针对虚拟机环境协议。
每一个虚拟机的数据实际上是一堆文件,及最重要的文件的虚拟磁盘文件(VMDK文件),也有交换分区文件(VSWP文件,等价交换),非易失性存储器(NVRAM的文件相当于BIOS),等等。每个VM对虚拟磁盘的IO操作实际上是对虚拟磁盘文件的读写操作。
设计、施工、和虚拟服务器环境和优化,允许多个虚拟机访问集成的集群存储池,从而大大提高了资源的利用率。使用和实现资源共享,管理员可以直接从更高的效率和存储利用率中获益。
那么我们如何在云计算中使用虚拟磁盘呢?
实例存储
最主要的一种使用虚拟磁盘的方式就是实例存储,每个VM都是虚拟机的一个实例,虚拟机管理程序在每个实例中提供一个仿真硬件环境,它包括CPU、内存和磁盘。这样,虚拟磁盘就是虚拟机实例的一部分,就像物质世界。删除VM后,虚拟磁盘也将被删除。
在这个实例存储模型中,虚拟磁盘与虚拟机之间的存储关系,事实上,它是DAS存储。但是虚拟磁盘的底层实现,我们说,它是以NAS的方式实现的。虚拟机管理程序的作用是存储VM层的存储模型,这是从实施协议分离(VMFS或NFS)的虚拟机的低层。
VMFS协议实现了存储资源的虚拟化,再分配各VMs
卷存储
实例存储有它的限制,开发人员通常希望分离实例数据,例如OS和安装的一些服务器应用程序和用户数据,这样重建VM的时候可以保留用户的数据。
这个需求衍生出另外一种存储模型:卷存储。卷是存储的主要单元,相当于虚拟磁盘分区。它不是虚拟机实例的一部分,它可以被认为是虚拟机的外部存储设备。
该卷可以从一个VM卸载,然后附加到另一个VM。通过这种方式,我们实现了实例数据与用户数据的分离。OpenStack的煤渣是一个体积存储的实现。
除了实例存储和卷存储之外,最后我们还提到另一种特殊的虚拟存储:对象存储。
对象存储
很多云应用需要在不同的VM之间共享数据,它常常需要跨越多个数据中心,而对象存储可以解决这个问题。在前一篇文章中的云计算IaaS管理平台的基本功能是什么?》中曾经提到过对象存储。
在对象存储模型中,数据存储在存储段(bucket)中,桶也可以被称为“水桶”,因为它字面意思。我们可以用硬盘来类推,对象像一个文件,而存储段就像一个文件夹(或目录)。可以通过统一资源标识符(URI:统一资源标识符)找到对象和存储段。
对象存储的核心设计思想实际上是虚拟化,它是文件的物理存储位置,如卷、目录、磁盘等,虚拟化是木桶,它将文件虚拟化为对象。对于应用层,简化了对数据访问的访问,屏蔽了底层存储技术的异构性和复杂性。
对象存储模型
NAS与对象存储各有所长
当然你也许会问,NAS存储技术也是一个可以解决数据共享的问题吗?由于对象存储的大小和成本优势,许多云环境使用对象存储而不是NAS。
因为对象存储将跨多个节点传播,最新数据并不总是可用的 因此,对象存储的数据一致性不强。如果有强一致性的要求,然后你可以使用NAS。目前,在云计算环境中,NAS和对象存储是共存的。
和NAS一样,对象存储也是软件体系结构,而不是硬件体系结构。应用程序通过REST API直接访问对象存储。公共对象存储包括:Amazon S3和OpenStack的Swift。
结语
在实际的云平台应用中,我们需要根据自己的实际情况来合理运用不同的虚拟化存储技术。
对于非结构化的静态数据文件,如音视频、图片等,我们一般使用对象存储。
对于系统镜像以及应用程序,我们需要使用云主机实例存储或者卷存储。
对于应用产生的动态数据,我们一般还需要利用云数据库来对数据进行管理。
Ⅵ 云存储架构分哪些层次,各自实现了什么功能
(1)存储层
云存储系统对外提供多种不同的存储服务,各种服务的数据统一存放在云存储系统中,形成一个海量数据池。从大多数网络服务后台数据组织方式来看,传统基于单服务器的数据组织难以满足广域网多用户条件下的吞吐性能和存储容量需求;基于P2P架构的数据组织需要庞大的节点数量和复杂编码算法保证数据可靠性。相比而言,基于多存储服务器的数据组织方法能够更好满足在线存储服务的应用需求,在用户规模较大时,构建分布式数据中心能够为不同地理区域的用户提供更好的服务质量。
云存储的存储层将不同类型的存储设备互连起来,实现海量数据的统一管理,同时实现对存储设备的集中管理、状态监控以及容量的动态扩展,实质是一种面向服务的分布式存储系统。
(2)基础管理层
云存储系统架构中的基础管理层为上层提供不同服务间公共管理的统一视图。通过设计统一的用户管理、安全管理、副本管理及策略管理等公共数据管理功能,将底层存储与上层应用无缝衔接起来,实现多存储设备之间的协同工作,以更好的性能对外提供多种服务。
(3)应用接口层
应用接口层是云存储平台中可以灵活扩展的、直接面向用户的部分。根据用户需求,可以开发出不同的应用接口,提供相应的服务。比如数据存储服务、空间租赁服务、公共资源服务、多用户数据共享服务、数据备份服务等。
(4)访问层
通过访问层,任何一个授权用户都可以在任何地方,使用一台联网的终端设备,按照标准的公用应用接口来登录云存储平台,享受云存储服务。
2云存储技术的优势
作为新兴的存储技术,与传统的购买存储设备和部署存储软件相比,云存储方式存在以下优点:
(1)成本低、见效快
传统的购买存储设备或软件定制方式下,企业根据信息化管理的需求,一次性投入大量资金购置硬件设备、搭建平台。软件开发则经过漫长的可行性分析、需求调研、软件设计、编码、测试这一过程。往往在软件开发完成以后,业务需求发生变化,不得不对软件进行返工,不仅影响质量,提高成本,更是延误了企业信息化进程,同时造成了企业之间的低水平重复投资以及企业内部周期性、高成本的技术升级。在云存储方式下,企业除了配置必要的终端设备接收存储服务外,不需要投入额外的资金来搭建平台。企业只需按用户数分期租用服务,规避了一次性投资的风险,降低了使用成本,而且对于选定的服务,可以立即投入使用,既方便又快捷。
(2)易于管理
传统方式下,企业需要配备专业的IT人员进行系统的维护,由此带来技术和资金成本。云存储模式下,维护工作以及系统的更新升级都由云存储服务提供商完成,企业能够以最低的成本享受到最新最专业的服务。
(3)方式灵活
传统的购买和定制模式下,一旦完成资金的一次性投入,系统无法在后续使用中动态调整。随着设备的更新换代,落后的硬件平台难以处置;随着业务需求的不断变化,软件需要不断地更新升级甚至重构来与之相适应,导致维护成本高昂,很容易发展到不可控的程度。而云存储方式一般按照客户数、使用时间、服务项目进行收费。企业可以根据业务需求变化、人员增减、资金承受能力,随时调整其租用服务方式,真正做到“按需使用”。
3云存储技术趋势
随着宽带网络的发展,集群技术、网格技术和分布式文件系统的拓展,CDN内容分发、P2P、数据压缩技术的广泛运用,以及存储虚拟化技术的完善,云存储在技术上已经趋于成熟,以“用户创造内容”和“分享”为精神的Web2.0推动了全网域用户对在线服务的认知。
Ⅶ 虚拟存储方式都有哪些
目前虚拟存储的发展尚无统一标准,从虚拟化存储的拓扑结构来讲主要有两种方式:即对称式与非对称式。对称式虚拟存储技术是指虚拟存储控制设备与存储软件系统、交换设备集成为一个整体,内嵌在网络数据传输路径中;非对称式虚拟存储技术是指虚拟存储控制设备独立于数据传输路径之外。从虚拟化存储的实现原理来讲也有两种方式;即数据块虚拟与虚拟文件系统。具体如下: 图1对称式虚拟存储解决方案的示意图
在图1所示的对称式虚拟存储结构图中,存储控制设备 High Speed Traffic Directors(HSTD)与存储池子系统Storage Pool集成在一起,组成SAN Appliance。可以看到在该方案中存储控制设备HSTD在主机与存储池数据交换的过程中起到核心作用。该方案的虚拟存储过程是这样的:由HSTD内嵌的存储管理系统将存储池中的物理硬盘虚拟为逻辑存储单元(LUN),并进行端口映射(指定某一个LUN能被哪些端口所见),主机端将各可见的存储单元映射为操作系统可识别的盘符。当主机向SAN Appliance写入数据时,用户只需要将数据写入位置指定为自己映射的盘符(LUN),数据经过HSTD的高速并行端口,先写入高速缓存,HSTD中的存储管理系统自动完成目标位置由LUN到物理硬盘的转换,在此过程中用户见到的只是虚拟逻辑单元,而不关心每个LUN的具体物理组织结构。该方案具有以下主要特点:
(1)采用大容量高速缓存,显着提高数据传输速度。
缓存是存储系统中广泛采用的位于主机与存储设备之间的I/O路径上的中间介质。当主机从存储设备中读取数据时,会把与当前数据存储位置相连的数据读到缓存中,并把多次调用的数据保留在缓存中;当主机读数据时,在很大几率上能够从缓存中找到所需要的数据。直接从缓存上读出。而从缓存读取数据时的速度只受到电信号传播速度的影响(等于光速),因此大大高于从硬盘读数据时盘片机械转动的速度。当主机向存储设备写入数据时,先把数据写入缓存中,待主机端写入动作停止,再从缓存中将数据写入硬盘,同样高于直接写入硬盘的速度
(2)多端口并行技术,消除了I/O瓶颈。
传统的FC存储设备中控制端口与逻辑盘之间是固定关系,访问一块硬盘只能通过控制它的控制器端口。在对称式虚拟存储设备中,SAN Appliance的存储端口与LUN的关系是虚拟的,也就是说多台主机可以通过多个存储端口(最多8个)并发访问同一个L
Ⅷ 存储虚拟化的SAN系统组成
SAN是计算机工作者们为了优化DAS而提出的另一种设计思想,它并没有试图在功能上将应用服务和存储服务完全解耦,而是希望服务器与存储设备之间通过专用光纤网络实现高速互连。如图1所示,一个SAN系统通常包括服务器连接器件、存储网络连接器件、存储设备和管理软件四部分组成,其中存储网络连接器件又可以细分为光纤通道集线器、光纤通道交换机和存储路由器等设备。
图1 SAN系统组成
从设计角度来看,只要购买一个NAS服务器通过标准网络协议加入网络,就可以享受文件级的存储服务了;但是如果打算采用SAN设计存储网络的话,不仅需要购买服务器连接器件、存储网络连接器件、存储设备和管理软件,还需要事先规划设计好存储网络的拓扑结构。从使用上来看,SAN采用专用的光纤网络实现数据存取,能够获得高性能;而NAS服务器与应用服务器共用一套网络,性能比拼上明显无法占据上风。
可以看出,NAS和SAN各有所长,各有所短,实际使用中应该根据实际情况选择合适自己的技术。近些年来,随着主流NAS厂商开始向其NAS设备增加类似SAN的光纤通道和iSCSI功能,NAS和SAN之间的界限已经越来越模糊,也许不久的将来两者将会迎来越来越多的重叠。
那么到底是哪种技术,哪家厂商的方案是最佳的呢?哪种方案会成为存储虚拟化大赛中的最终胜者呢?现在更多的专家认为,这场竞赛没有最后的赢家,越来越多人认为这三种技术应当结合使用。
如果我们把厂商和各自的虚拟化技术对号入座,那么三个虚拟化阵营都各自有一些代表厂商。虚拟化应用阵营的代表有SVC、StorAge、NetworkAppliance设备以及NSS SED (Service-Enabled Devices)飞康。而在磁盘阵列和光纤通道阵营里,HDS、Sun、hp以及Acopia提供了多样化的体系结构。交换机阵营则包括Invista、McData、Brocade、QLogic以及Cisco公司。
在虚拟化应用阵营中比较有代表性的厂商是飞康,飞康 NSS 是一款灵活的存储虚拟化解决方案,能够对整个企业内的存储资源进行高效、经济的供给和集中管理。飞康 NSS有助于最大化存储利用率,降低总存储成本和提高员工生产力。企业可以继续利用现有的存储投资,从而降低购置总成本 (TCO)。飞康 NSS 使 IT 管理员能够根据业务应用程序服务级别协议 (SLA) 定义适当的业务持续性策略,从而实现更加面向服务的应用程序方法和数据可用性。
对于另外两个阵营来说,由于McData,Brocade,Cisco等其他一些公司已经针对基于光纤通道虚拟化进行了一系列公司收购与合作,似乎不同类别方案之间的分界线已经变得模糊起来。其他两个阵营中的厂商中有些也正在慢慢跨越自身的领域,即使目前来说并没有真正完全的横跨界限。
由于虚拟化性能、应用程序灵活性以及虚拟化引擎等诸多方面的问题,早期的存储交换虚拟化和磁盘阵列虚拟化两个阵营的提倡者广受业界的质疑。最初执行虚拟存储的厂商依赖那些基于现有组件的分布式解决方案或是基于端口的处理引擎来提供所需功能,应用设备虚拟化方案被认为是最易于配置的,但其往往有应用限制。因此一些厂商更倾向于存储交换虚拟化,认为智能SAN虚拟化处理组件是下一代虚拟存储的典范。
同样,HDS针对应用虚拟化方案和网络交换虚拟化方案也作出了类似的批评。HDS认为他们的通用存储平台(USP)是把虚拟化部署在存储网络边缘的存储控制器,而不是部署在主机或是网络核心的交换机或应用设备,他们认为从性能和安全因素上说这是最佳位置。
而应用设备虚拟化的坚定支持者NetApp则认为通过应用设备在存储网络上实现虚拟化是最好方案。NetApp公司发言人解释:在选择磁盘阵列方案后,存储网络能给客户提供最大的灵活性,不至于像TagmaStore通用存储平台那样把客户锁定在磁盘阵列的解决方案,既不需要那么复杂,也不需要基于主机的虚拟化解决方案中客户代码带来的成本。在存储网络之内,应用设备可以灵活放置。
一个好的虚拟解决方案不要求对磁盘或存储网络基础架构进行任何改变。因此,需要和您的供应商进行讨论来决定进行哪些改变才能够测试和运行它们的虚拟解决方案。但是需要警惕的是一些解决方案要求企业购买新一代SAN交换机或新一代存储控制器,而这样做的目的仅仅是为了实现存储虚拟。