基于对象的网络存储

2024-06-22

基于对象的网络存储(精选9篇)

基于对象的网络存储 第1篇

现有基于对象文件系统的客户端一般都是在Linux下实现, 对于Windows下的应用通过架设Samba服务器来实现, 不能够充分发挥对象存储的优势。开发Windows下的对象存储系统客户端能够使存储系统适应各种不同的应用。目录管理模块主要处理与目录有关的请求, 如打开一个目录等。当系统调用ReadDirectoryChangesW、FindNextVolumeMountPoint等函数时, 该模块被调用。该模块通过调用基于客户端的元数据管理模块, 读取对应的元数据信息, 用于本地的目录显示等。

本文在HIFS驱动程序的结构和HIFS的总体框架的基础上, 结合目录管理处理流程, 进行目录管理的设计与实现。

1 目录管理处理流程

目录管理模块的处理流程如图1所示。当文件系统驱动有目录显示的请求时, 它将生成对应的IRP, 由驱动程序入口函数调用对应的目录管理模块。目录管理模块收到对应的IRP时, 先进行目录请求类型的分析, 接着从IRP提取相应目录名和缓冲区首地址。目录名用于对应元数据的查找, 缓冲区用于进行目录下文件/目录的信息存放, 用来显示对应的文件/目录。根据提取的目录名, 调用元数据管理模块, 找到对应目录下的元数据信息。如果是对应目录的第一次IRP请求时, 找不到对应的元数据时说明不存在该目录, 返回STATUS_NO_SUCH_FILE。若不为对应目录的第一次IRP请求时, 说明在以前已有相应的IRP处理, 该目录下没有更多的元数据, 返回STATUS_NO_MORE_FILES。如果是对应目录第一次元数据IRP请求, 文件系统会要求返回此目录下的第一个元数据并存放到对应的缓存, 此后返回STATUS_SUCCESS。当缓冲区满或者对应的目录下的文件/目录的属性都已被存放在IRP缓存中时, 返回STATUS_SUCCESS。

从目录管理的处理流程可以看出, 对于某目录显示, 如果成功的话, 至少需要3次IRP操作。收到第一个IRP后, 把对应目录下的第一个文件/数据的属性填充到IRP的缓存中, 并返回STATUS_SUCCESS;收到对二个IRP时, 把对应目录下的除第一个外其它的文件/数据的属性填充到IRP的缓存中, 并返回STATUS_SUCCESS;收到第三个IRP时, 直接返回STA-TUS_NO_MORE_FILES。

2 目录管理相关的IRP类型

对应于目录管理的IRP目录请求类型主要有:FILE_DI-RECTORY_INFORMATION、FILE_FULL_DIR_INFORMATION、FILE_ID_FULL_DIR_INFORMATION、FILE_BOTH_DIR_INA F-ORMTION、FILE_NAMES_INFORMA-TION4种类型。

FILE_DIRECTORY_INFORMATION类型请求用于显示最一般的目录请求, 显示对应目录下的文件等的文件名等属性。相应的缓存填充:NextEntryOffset、Filelndex、CreationTime、LastAccessTime、LastWriteTime、ChangeTime、AllocationSize、File Att ributes、FileNameLength、FileName。NextEntryOffset表示下一个文件的FILE_DIRECTORY_INFORMATION信息在缓存中存放的位置对于当前FILE_DIRECTORY_INFORMATION信息存放位置的偏移;Filelndex表示本文件对应的元数据在目录中的索引;CreationTime、LastAccessTime、LastWriteTime、ChangeTime分别表示对应的文件/目录被创建的时间, 最后被访问时间, 最后被写的时间和被修改的时间;AllocationSize表示文件对应的分配存储空间大小;FileAttributes用来标识对应的元数据是文件还是目录, 是否为只读等;FileNameLength表示文件名的长度;FileName为文件名, 采用宽字符串。

FILE_FULL_DIR_INFORMATION类型请求与FILE_DI-RECTORY_INFORMATION相类似, 但它在前者的基础上它包含了附加属性的长度EaSize, 对于大部分的三方通讯的文件系统, 值设为0。FILE_BOTH_DIR_INFORMATION请求类型是FILE_FULL_DIR_INFORMATION的一个超集。该类型请求能够显示短名字格式的文件, 如采用8.3格式的文件名的文件。FILE_NAMES_INFORMA TION类型要求使用最小的信息。只包含下一个文件的FILE_NAMES_INFORMA TION信息的偏移, 文件对应的元数据在目录中的索引、文件名、文件名长度。

3 目录管理的实现

根据目录管理的处理流程和目录管理模块IRP请求的类型进行目录管理的设计与实现。下面主要介绍目录管理功能模块和目录管理模块下的主要函数Directory_Control的算法流程。

(1) 功能介绍。处理一个Directory_Control类的IRP, 填充IRP相对应的BUFFER以所要求的目录文件信息。

(2) 输入参数。Device_Object, Irp分别表示对应的驱动程序和输入的IRP指针。

(3) 输出参数。返回值:NTSTATUS, STATUS_NO_MORE_FILES表示目录下没有更多的ENTRY;STATUS_NO_SUCH_FI LE表示没有此文件/目录;STATUS_SUCCESS返回成功。

(4) 上层接口函数:DriverEntry。

(5) 下层接口函数, 算法流程:

4 结束语

目录管理是操作系统中非常重要的课题, 本文根据目录管理的处理流程和目录管理模块IRP请求的类型, 就Windows下基于对象存储系统的HIFS目录管理的设计进行了探讨。

参考文献

[1]F.SCHMIDT.SCSI总线和IDE接口:协议、应用和编程 (第2版) [M].精英科技译.北京:中国电力出版社, 2001.

[2]张江陵, 冯丹.海量信息存储[M].北京:科学出版社, 2003.

网络和存储协议的选择 第2篇

关键词:10Gb以太网;网络协议;存储协议;FCoE

在面对一个IT网络存储项目时,到底是该采用全新的架构搭建,还是在现有架构上进行升级呢?这个问题我曾经很多次从理论角度进行权衡。很多人也许会觉得,搭建一套全新的架构可能并不困难,因为没有任何已有架构作为障碍或局限,而且IT管理员对新架构一般也不会反对。

而事实上,决定采用新架构是很艰难的决策。因为如今可供选择的网络和存储协议数量众多,与之相关的是选择网络和存储产品。而当我们讨论网络和存储协议这个话题时,经常会涉及到很重要的一个内容,即以太网光纤通道(Fibre Channel over Ethernet,FCoE)。有关FCoE标准的讨论一直就没有中断过。而目前市面上也只有一两家厂商的产品可供选择。但是我们应该意识到,FCoE绝不是一个完美的选择,为了达到我们的快速存储网络架构要求,将来可能还需要进一步对其进行升级和改进。

我想说的是,在如今的存储和网络市场上,可供选择的方案很多。我完全可以选择一些技术来实现一个标准的10GB以太网,而不是通过某种方案适应已有的光纤网。在10GB可选方案中,我会选择iSCSI+NFS的方式应对大部分需求。另外,在10 Gigabit市场上,除了传统的高成本的光纤通道SAN外,ATA-over-Etherenet(AoE)也是一个很值得选择的解决方案。

对我来说采用标准的10GB以太网架构之所以吸引我,是因为相同类型的架构也可以实现服务器网络。与其他方案相比,它更容易与传统的千兆以太网环境结合。

当然,在考虑选择哪种网络和存储架构时,另一个不得不考虑的因素就是IT预算。

基于对象的网络存储 第3篇

目前, 信息建设的一个核心是云计算[1], 在存储领域中, 则会涉及一个最常见和最重要的企业应用—云存储[2]。当企业发展到一定规模后, 对于高可靠性存储管理将具有更加迫切的要求, 既要求存储的容量能够随着企业应用的扩展逐年按需增长, 又要求对不断增长的数据进行完全可靠的备份和便捷管理。云存储是目前最能够适应这一需求的方式, 但公有云的特性导致很多企业, 特别是对数据相对敏感的企业, 对于云存储的应用是否适用企业存在疑虑。相应地, 私有云[3]为此提供了企业自掌控的选择项。但私有云的搭建又成为企业面临的又一道难题。

本研究通过云存储模式建设实践过程中获得的经验来说明私有云存储的技术原理, 并通过统一管理、高可用性等具体云存储技术的实现原理来说明存储网关如何支撑企业的私有云存储需求[4]。

事实上, 本研究将私有云存储的构建限定在了网络存储的框架范围内, 原因不仅因为网络存储是目前主流的存储选项, 而且还因为基于网络存储的私有云模式的建设是目前最为可行、也是最易实现的体系结构。其原理相对简洁明了, 对存储的各项管理需求能够比较充分地予以考虑并实现, 还可以避免一些复杂的存储环节影响企业云存储的建设[5]。因此, 对于涉及多种存储设备的企业或单位而言, 本研究给的建议是将其中网络存储的部分从原有存储系统中剥离出来搭建基于网络存储的私有云体系, 而其余的存储暂时不纳入这一体系, 直到基于网络存储的限制被取消或者被替代。毕竟, 云存储体系最大的特点是逐步扩展[6,7,8], 这不仅适用于容量的扩展要求, 同样也适用于技术的发展要求。

因此, 本研究所提的云存储体系可以被视为私有云存储模式构建的第一阶段, 随着技术的发展, 该私有云将具备更大的适用面, 并能够包括更多的存储设备和存储模式。而其存储管理的原理上却不需要作任何的调整, 只需要有更强的设备兼容性。

1 基于网络存储的私有云构建原理

目前, 企业的存储管理大致可以按存储扩展方式分为两大类, 一类是坚持大存储管理, 一类是小存储扩展管理。前者通常是一次性购置若干大型存储设备, 可以保证支撑企业3~5年的存储需要, 每隔3~5年重新确定方案升级现有的存储模式, 进行大规模的数据迁移。后者则采用逐年小存储扩展的模式来进行, 每年根据需要购置少量存储用于替代或者扩充企业的存储, 不需要进行大规模的数据迁移。很多企业可能会倾向于前一类, 这种模式能够由较大的企业进行存储的技术支撑和服务, 而且不需要每年考虑存储的扩展问题。但这一模式忽略了一个重要的事实, 即所谓的大存储都是建立在叠加的小存储设备上的。换言之, 现有系统中的所有的大容量存储设备其实都是由一些小存储设备通过优化模板搭建起来的, 例如通过RAID技术进行数据的保护等。而存储设备等IT产品逐年价格的递减是不争的事实, 与其提前若干年高价购置存储, 不如利用云存储技术[9]小规模的扩展存储, 不仅解决了数据存储的可靠性问题, 还可以获得经济上的便宜, 这才是企业存储管理的必由之路。

云存储的原理图如图1所示。服务器与物理存储通过云存储核心进行数据管理。在图1中, 虚拟存储器通常也称为存储池, 是所有物理存储器的逻辑映射集合。一般意义上的网关是指协议转换器, 往往是在传输层上实际网络互连;而存储网关是最近比较新颖的概念, 它是指利用服务器等设备实现不同存储之间的协议转换, 以便能够通过这一设备实现对多个品牌、类型的存储的访问。也就是说, 原有的存储模式是将购置的存储设备直接通过局域网络连接到服务器上, 通常为一个服务器所管理利用。而在云存储环境中, 存储设备是通过局域网连接到存储网关上, 所有的服务器通过部署相应的软件, 利用存储网关实现对存储设备的访问, 即存储设备与服务器不再是一一对应的关系, 也不是一对多的关系, 而是多对多的关系。多个不同的服务器可以同时访问这些由存储网关管理的存储设备。

存储网关的介入, 解决了存储管理中的一个显著的瓶颈[10], 即不同的服务器管理着不同的存储设备, 这些存储设备的共用会成为整个企业应用的一个难题。从这张简单的原理图可以看出, 存储网关的主要功能是支持不同网络存储设备的协议要求, 并将所有的存储设备进行统一的管理。因此, 本研究在存储网关中引入了存储池的概念, 它将所有物理的存储设备映射到一个虚拟的存储池中, 所有服务器或者应用需要访问的存储都将从这一存储池中获取。这里面最关键的问题是原来需要安装部署在服务器上的存储设备都被迁移到了存储网关上, 这也解释了为什么本研究一再强调基于网络存储的原因。也只有网络存储才适用于通过存储网关不断扩展的需求, 如果是直连的存储设备, 不是不能体现在这种架构中, 而是其数量与存储网关的个数、数据接口数相关, 并不能很随意地增加扩充, 因此不能讲是真正意义上的云存储。更重要的是, 存储网关不仅解决了存储设备的连接问题, 还解决了存储设备的存储I/O请求问题, 而相对而言, 直连设备的I/O请求方式与机制跟基于IP模式的存储设备还是有本质上的区别。

从图1中可以看出, 目前这种基于网络存储的私有云存储体系可以涵盖FC架构、SAN网络、NAS[11]等网络存储方式。

图1其实并没有将私有云和公有云进行区分, 但私有云和公有云存储的主要区别在于对存储的访问是在防火墙内还是外, 因此这里也就不必要进行此细节的说明。

存储网关这一系统的引入是基于网络存储的私有云存储体系的关键。存储网关不仅仅承担存储的设备连接任务, 还承载着对存储的I/O请求的处理任务。其主要软件功能包括I/O请求包的获取与转发、虚拟存储池的管理与映射逻辑管理、高可用性等其他数据保障技术支持等。由此可见, 存储网关的功能特点中, 并不需要对存储设备进行存储模式的改变, 当然这并不意味着不能对存储模式进行改变, 如果有更好的存储模式、更有效的存储管理功能、而存储设备中又不存在需要迁移或只有极少量的数据需要迁移的话, 对其存储模式进行改变就是一个不错的选择。存储网关的存储I/O请求, 其主要的任务事实上是转发, 即将服务器针对存储池中的虚拟设备的I/O请求转换成对物理存储设备的I/O请求。由于存储池的存在, 存储池中的虚拟设备与实际的存储物理设备间有某种映射关系存在, 存储网关的主要作用就是将这种映射关系清晰的定义出来, 并将服务器的I/O请求转换为对物理设备的I/O请求。更有意思的是, 虚拟存储设备的I/O请求可以完全与服务器对实际物理存储设备的I/O请求一致, 这样, 存储网关的主要作用将变成简单的I/O请求包的转发及对存储池的管理了。

本研究将就具体的云存储涉及的几个关键性技术进行原理性的阐述, 说明存储网关在实现私有云存储技术中应考虑的主要关键技术。

2 云存储关键技术实现

统一管理的存储需求。私有云存储体系中, 各种存储设备逐年按需采购, 并不保证所有的产品之间具有兼容性, 因此数据管理的统一性就变得十分的迫切。在实际操作中, 研究者将所有的存储设备都部署在相应的存储网关中, 以便存储网关可以直接访问它们。当有服务器需要对这些存储设备进行访问时, 将向存储网关提出请求。当然, 提出的请求是以存储网关的虚拟设备为访问对象的。存储网关收到这些I/O请求后, 可以稍作变动, 通过一定的策略, 将对这些虚拟存储设备的I/O请求转换为对实际物理存储设备的I/O请求。这里的关键不是I/O请求包的转发, 而是存储映射的策略。研究者可以在该策略中实现对存储的负载均衡管理、对数据存储的冗余性管理及对数据进行快照等技术响应。

I/O请求被转发的示意图如图2所示。在图2中, 虚拟存储设备的地址范围可以由存储网关自行定义和展现。其空间的大小既可以是实际的物理存储的真实反映, 也可以是动态的逻辑数值。这样的处理模式可以解决存储分配和存储访问请求之间的不对称问题。简而言之, 就是将应用的存储需求分为两种, 一种是对空间的分配需求, 一种是对空间的访问需求。只有对空间的访问需求才需要直接映射到物理存储设备上, 而对空间的分配需求完全可以不考虑物理存储设备的现状, 可以等到发生真正的访问需求时才实际分配物理存储设备到相应的虚拟存储设备。这也是云存储模式的优势之一。

如图2所示, 当服务器中有应用试图访问虚拟存储设备192.1681.1.10时, 存储网关根据一定的策略选择了物理存储设备10.12.1.124, 并将访问的数据通过存储网关返回给服务器。这里面, 存储网关除了在选择相应的物理存储设备时可以制定策略外, 在返回数据前也可以通过一定的策略来进行, 以便在实时响应和网络流量间取得平衡。图2没有表示出来的内容更为丰富, 例如在策略选择中, 虚拟存储设备不仅可以映射到一个物理存储设备上也可以映射到多个物理存储设备。相应地, 如果有多个虚拟存储设备映射到同一个物理存储设备上, 也不是件复杂的事, 这完全可以交由存储网关根据访问的负载均衡或者存储的负载均衡策略, 甚至是安全的负载均衡来决定。

存储网关对外提供了存储统一管理界面和存储分配模式。所有的网络存储设备可以通过IP网络或者其他如FC形式与存储网关进行连接, 并由它向外提供存储服务。这样一来, 所有物理存储设备的管理将集中到存储网关中。这里面唯一的问题, 其实也是最让企业担心的问题是, 如果存储网关故障, 那么数据的访问将会是怎样的情况呢?实践中, 像这样的存储网关通常是成对出现的, 即通过存储网关的冗余来实现存储访问的高可用性。由此可见, 在云存储模式下, 数据的高可用性是可以由3层不同的管理体系来保障的。第1层是存储设备的供应商提供的基于存储介质的数据保障, 如RAID级别等。第2层是基于存储网关软件的数据保障, 如不同物理设备间的互为备份等。第3层是基于存储网关系统的数据保障, 即通过对存储网关的冗余部署来实现整个云存储体系下的数据保障。

在实践中, 研究者还需要考虑数据保障问题, 因为存储网关的介质故障并不损害物理存储的介质与数据, 即使不通过冗余存储网关的模式提高数据的高可用性, 也可以通过延时机制, 即重新部署新的存储网关来恢复对数据的可用性。本研究担心的问题是如果一旦决定从现有的云存储机制还原到原有的服务器直接访问物理存储设备时, 应该如何操作, 如何确保数据、设备的可用。虽然有实验证明确实可以还原, 但是, 在比较极端的条件下, 这个还原过程还是比较复杂和费时的。首先是确定还原的物理存储设备上有哪些数据需要剥离出来, 其次是确定哪些数据需要迁移到还原设备上, 最后才是通过费时的数据迁移过程实现对原还物理设备的数据还原, 并重新将其部署到指定的服务环境中。之所以工作如此复杂和麻烦, 原因是存储网关的负载均衡机制可以非常灵活, 因此任何一台物理存储设备都有可能被分割成较小的若干存储模块, 并担任不同层面的存储任务, 从而导致实际物理设备上的数据本身并没有简洁的规律可寻, 这最终造成了存储设备数据还原的复杂性。

基于存储网关软件的数据安全保障模式, 即将一个针对虚拟存储设备的I/O请求分解为同时针对两个物理存储设备的I/O请求, 并根据两个I/O操作的返回来确定服务器应用的返回状态。由于两个物理设备采用的是IP网络存储, 对存储网关而言, 只是简单地将一个I/O请求同时分发给两个物理存储设备并处理返回结果而已。如果需要, 可以将请求同时分发给更多的设备, 也可以稍加改进, 将I/O的请求简化为日志 (LOG) 分发到不同的存储设备上, 从而减少I/O操作和数据冗余, 这特别适用于存储用作数据库的情形。这样, 如果要两个完全互备的数据库, 只需要作两个数据库的日志互备, 简单有效。当然, 如果是基于文件系统的话, 存储网关需要有自己的日志管理功能, 以便最大程度降低I/O操作带来的速度和带宽问题。

而这种存储的热备机制不仅保障了数据, 也在一定意义上提供了存储的高可用性。由于存储网关不仅担负着数据分发的任务, 同时也担负着侦测物理存储设备的运行状态的任务, 因此当其中某台物理存储设备宕机时, 存储网关可以实时的监测到并适时地切换到另一台存储设备, 这个过程可以完全地自动化进行, 不需要人工干预。但对于物理设备的恢复而言, 人工干预可以促进存储网关重新进入热备机制, 而不至于在撤换损伤的设备后一直处于单副本的危险境地。所以, 私有云存储的高可用性实际上是通过两个或多个存储网关之间的配置来实现的。

实践中, 这种存储网关的存储高可用性也可在应用的高可用性上得到一定的体现。由于无论应用本身还是应用所依赖的数据都是某种形式存储在设备上的, 研究者可以将应用部署到相应的存储中, 并通过恢复存储来达到恢复应用的目的。虽然这种情形受到部署、人工干预等的限制, 但确实在实践中具有朴素的高可用性特质。

在构建异地容灾的存储模式时, 研究者也可以通过存储网关的异地部署来实现。如果10.12.1.123与10.12.1.124两台物理存储设备是分置在不同物理地点[12]的话, 这个实例也就在某种意义上提供了异地容灾的管理模式。由于I/O请求是一致分发的, 理论上不存在两个异地的物理存储需要同步的问题, 可以确保彼此间的数据的一致性。不过实践中, 由于网络原因, 无法保证两边的所有操作都会被完整地、及时地传输到指定的存储设备上并被正确地执行, 因此两个物理设备间会有一个小的时间差, 这就需要在两个物理存储间形成一个同步的机制。而这个同步的机制不需要这两个物理存储设备来直接保障, 仍然可以通过存储网关来进行, 如果在两处物理位置中分别部署一台存储网关, 这个同步机制就可以通过两个存储网关来协调进行。

3 结束语

本研究就是从基于网络存储的设备入手, 引入存储网关, 从而解决多存储设备分别由不同的服务器控制无法充分共享的问题, 达到了统一管理的目标, 也避免了云存储架构下多种异构存储设备的连接方式、访问方式差异导致的云存储体系搭建难题。笔者将这些相对次要的问题留待稍后去解决, 不仅能够解决实践的存储统一管理、逐年增长的问题, 也符合云存储体系中逐步扩展的核心理念。实际上, 研究者可将存储的问题也分为几种不同层次、不同阶段的解决方案, 通过逐步实验, 逐步解决, 最终解决所有兼容问题的模式来构建企业自属的私有云存储方案。

参考文献

[1]周平, 张超.云计算及云存储的管理技术[J].上海电力学院学报, 2010, 26 (5) :498-501.

[2]周可, 王桦, 李春花.云存储技术及其应用[J].中兴通讯技术, 2010, 16 (4) :24-27.

[3]曾赛峰, 朱立谷, 李强, 等.企业级私有云中的虚拟化实现[J].计算机工程与应用, 2010, 46 (36) :70-73.

[4]朱光磊.云存储技术的发展应用趋势探析[J].电脑知识与技术, 2011, 7 (11) :2561-2562.

[5]边根庆, 高松, 邵必林.面向分散式存储的云存储安全架构[J].西安交通大学学报:自然科学版, 2011, 45 (4) :41-45.

[6]刘琨, 董龙江.云数据存储与管理[J].计算机系统应用, 2011, 20 (6) :232-237.

[7]李煜民, 章才能, 谢杰.云计算环境下的数据存储[J].电脑知识与技术, 2010, 6 (5) :1032-1034.

[8]张洪娜.云计算平台中数据存储与文件管理的研究[D].广州:广东工业大学计算机学院, 2011.

[9]李隽.详细解析云存储技术架构[EB/OL].[2010-09-26].http://www.topoint.com.cn/html/colud/cloud store/2010/09/301609.html.

[10]郭涛.弥补云存储管理的空白[N].中国计算机报, 2011-08-01 (032) .

[11]张东升.NAS:云存储的未来之路IT世界网[EB/OL].[2010-10-08].http://www.edu.cn/nas-9796/20101008/t20 101008-526814.shtml.

网络存储 性能不俗 第4篇

希捷GoFlex Home是单槽位单网口的入门级网络存储产品,不过其设计倒是与寻常NAS不同。GoFlex Home采用了立式设计,由GoFlex移动硬盘和底座两个部分组成,底座前方是一绿一白两个指示灯,背部则是电源按键、千兆网络端口和一个USB 2.0接口。GoFlex Home采用外接电源适配器设计,电源插头是可更换的模块化设计,不过原配提供的选择不多。至于GoFlex Home的硬盘部分就是一个标准的3.5英寸 GoFlex移动硬盘,虽然无法继续拆解,不过用户可以整体更换,因为接口是标准的SATA,因此用户使用其他的硬盘也是可能的。

GoFlex Home的安装使用比较简单。装配好硬件并开机之后,通过配套光盘的Seagate Dashboard软件可以检测、识别GoFlex Home设备,并可以直接进行备份等一些列操作。有趣的是,Seagate Dashboard也支持GoFlex等移动硬盘。在安装完GoFlex Home之后,系统会自动生成三个网络映射盘,分别对应GoFlex Home的Public、Backup、Personal共享文件夹,平时可以像本地硬盘一样通过资源管理器进行直接访问。

浅析基于IPSAN的存储网络架构 第5篇

传统的存储专用网络 (SAN-Storage Area Network) 一般采用FC SAN (Fiber Channel Storage Area Network) , FC SAN价格昂贵, 性能优越。但由于光纤的距离限制, 意味着在远距离存储时FC SAN不是一个很好的选择。例如一个公司有两个分部, 相距500km, 那么则难以采用FC SAN布局。同时一般中小型企业对于FC SAN昂贵的基础设施依然望尘莫及。

IP SAN (Internet Protocol Storage Area Network) 由此应运而生。IP SAN可以充分利用已有的网络基础设施, 在IP网络的两端采用光纤连接的SAN, 通过IP网络进行数据的传输。使用IP网络进行传输有很多优点。首先IP的管理更加简单, IP网络技术相当成熟, IP SAN减少了配置、维护、管理的复杂度。企业现有的网络管理人员就可以完成日常的管理与维护工作。其次IP的兼容性更好, 不同厂商之间的产品具有互操作性。而且IP网络已经由很多健壮, 成熟的机制。传统的IP网络传输时基于文件级别 (file-level) 的, 而IP SAN提供通过已有的IP网络基于块级别 (block-level) 的传输。基于IP的块级存储 (Block storage over IP) 有多种不同的方法, 目前最常用的三种协议是:i SCSI (Internet Small Computer System Interface) , FCIP (Fiber Channel over IP) , i FCP (Internet Fiber Channel Protocol) 。

(二) IP SAN的拓扑结构

IP SAN的基本拓扑结构是两个或者更多FC SAN岛 (FC SAN island) 之间用IP网络相连 (如图1) 。FC SAN岛之间依然采用传统FC SAN的架构, 有光纤连接存储 (storage) 和服务器 (servers) 。

图1是外展 (Extension) 拓扑结构, 这是一种最具代表性的拓扑结构, 也是在实际中运用最多的拓扑结构。当一个岛 (island) 发出传递数据请求时, FC数据必须通过i FCP或者FCIP协议封装, 到达另一端岛 (island) 时再解除封装。这种拓扑结构妥善解决了FC SAN不能克服的远距离传输问题。实际应用中IP SAN有多种灵活多变的拓扑结构, 还有较常用的本地 (Native) 拓扑, 桥 (Bridging) 拓扑。

本地 (Native) 拓扑结构类似图1, 只是存储和服务器之间全部采用以太网连接, 没有光纤设备。传输采用i SCSI (Internet SCSI) 协议, i SCSI协议以太网进行数据的传输, 发起者 (Initiators) 可能直接连接到i SCSI目标 (i SCSI Targets) , 也可能通过标准以太网的路由器 (routers) 和交换器 (switchs) 连接。

桥 (Briding) 拓扑的服务器群和存储部分分开, 服务器端个服务器之间以以太网连接, 没有FC设备, 而存储部分则用光纤连接, 数据传输较快。两端用网桥连接起来, 服务器端的请求通过网桥设备到达存储端, 存储端的数据通过某种协议封装后通过IP网络传输。这种拓扑结构使用于已存在一个IP网络环境的部门去访问该部门用FC连接大型存储设备。如图2。

(三) 基于块级别的存储

不同于传统IP网络传输, IP SAN和FC SAN, 直连存储 (DAS-Directly Attached Storage) 一样, 是基于块级别 (Block-level) 的网络存储。下面的小节将简单介绍最常用的三种协议:i SCSI, FCIP和i FCP。每一种协议都对IP进行了扩充, 并使得服务器与外部存储之间的连接更加便捷。

1.i SCSI (SCSI over IP)

i SCSI提供了一种在TCP/IP上传输SCSI数据和指令的方法, 通过将SCSI命令封装在IP网络上传输。封装工作在主机的总线适配器 (HBA-Host Bus Adapter) 完成。这就要求主机必须配置一块i SCSI HBA卡。基于主机封装的i SCSI I/O一般用一块以太网卡进行封装。因为i SCSI数据和指令基于IP传输, 因此可以通过路由技术或交换技术传送到标准的以太网设备。

2.FCIP (FC over IP)

通过IP网络的隧道 (Tunneling) 技术, 将FC数据帧封装在IP包进行传输。由一对桥 (Bridge) 设备负责数据的封装与解封。这种协议对于扩展FC SAN之间的距离非常有效。不同于下面即将介绍的i FCP协议, 如果主机与存储的距离较远, FCIP协议只支持端到端的连接, 主机与存储设备之间没有路由和交换。由此, FCIP最常运用于两个孤立的岛 (island) 之间的数据传输, 每个岛之间只有一个第二网 (Frabic) 。

3.i FCP (IP as the inter-switch fabric)

同样也是利用现有的IP基础设备, i FCP使用IP作为光纤通道交换机之间的交换协议, 这点与FCIP相类似, 但i FCP支持的并不是端到端 (point-to-point) 的连接, 该协议支持主机通过现有的IP网络获取存储能力。例如, 如果存储和主机之间距离较远, 存储和主机之间可以用路由器或者交换机相连, 最经典的模式是才有Core/Edge的扩展方式来提供最多的可用端口。

(四) 结论

IP SAN基于FC SAN的基础做了以下改进, 克服了传统FC SAN的许多瓶颈。首先, IP SAN的存储设备运行在IP网络上, 这使得其具有了网络传输 (NAS-Network Attached Storage) 的部分优点, 即用户可以“随时随地”的取用数据。其次, IP SAN可以使用与远距离高性能传输, 其距离远远大于FC SAN的建议距离 (200km以内) 。再次, IP SAN可以利用现有的IP基础网络设施, 不需花费巨大的代价淘汰原有的设备换取高性能的数据存储。最后, IP SAN的管理简单, FC SAN通常需要一个经过专门培训的SAN管理员, 而IP SAN则显得“平易近人”, 一般的IP网络管理员均可以操作。

摘要:传统的存储专用网络 (SAN-Storage Area Network) 一般采用FC SAN (Fiber Channel Storage Area Network) , FC SAN价格昂贵, 性能优越。但由于光纤的距离限制, 意味着在远距离存储时FC SAN不是一个很好的选择。IP SAN可以充分利用已有的网络基础设施, 在IP网络的两端采用光纤连接的SAN, 通过IP网络协议进行数据的远距离传输。IP SAN的常用的拓扑结构有本地 (Native) 拓扑, 桥 (Bridging) 拓扑, 外展 (Extension) 拓扑结构。

关键词:IP,SAN,存储,网络

参考文献

[1]Information and Storage Management[M].EMC Corporation, 2007.

[2]高增荣.存储区域网络IP SAN与FC SAN技术[J].甘肃科技纵横, 2005 (3) .

[3]白广思.FC SAN与IP SAN架构比较新论[J].情报科学, 2007 (9) .

[4]郑炜.基于IP-SAN的海量存储技术的研究与实现[C].西北工业大学计算机软件与理论 (专业) 博士论文, 2007.

基于对象的网络存储 第6篇

那么如何把现有网络环境下有效地存储、管理和共享教学资源, 就成为学校网络存储系统建设是否成功的重要素因。

1 网络存储传统方案

一般校园网络教学资源共享网络存储系统方案有以下几种。

1.1 服务器连接存储 (Server-Attached Storage, SAS)

这是最基础的一种网络存储系统, 这个系络不用接连到网络, 直接和服务器相连接。原来以服务器连接存储最多, 这种系统设置简单, 但是缺点很多, 存储单一, 没有安全可言, 网速更不用说等等。这在早期一直是建立校园网络的一个必要选择。

1.2 存储区域网络 (SAN)

这个网络存储系统主要用于主机或Unix伺服器, 它的操作系统可让单一服务器运行应用程序和文件服务功能。存储区域网络不需使用网络协议, 而是通过精密的交换设备把存储设备直接连接到网络。

1.3 网络附加存储 (Network Attached Storage, NAS)

NAS是一种专业的网络文件存储及文件备份设备, 它是基于局域网 (LAN) 的, 采用TCP/IP协议, 通过网络交换机连接存储系统和服务器主机, 建立专用于数据存储的存储私网。

但是, 市场上的NAS价格都很高, 要是选择安装多块硬盘而且可以组成阵列的价格就高了, 在经费紧张和审批困难的情况下, 通过使用Free NAS系统就可以安装一台功能强大的NAS存储服务器并且还能提供Bit Torrent下载的功能。

2 Free NAS系统

2.1 Free NAS是什么系统

根据单词来看Free就是免费的意思, 可以解释为免费网络存储服务器, 可以使用一台普通计算机变成可以网络存储的服务器。free NAS基于Free BSD的UNIX操作系统, 有Samba服务和PHP应用服务, 支持samba, FTP, NFS协议, 阵列 (0, 1, 5) 以及web的设定。使用者可通过Windows系统、萍果系统、FTP服务、SSH服务以及网络文件系统来访问网络存储服务器;此软件可被安装在硬盘或移动设备 (如U盘或移动硬盘) 、CF卡和一个或多个硬盘的上面, 软件所占空间不到16兆。这是构建一般网络存储服务器的最好选择, 不用安装完整Linux或Free BSD。

2.2 Free NAS安装

Free NAS系统在网上很容易就能下载到, 并且在它的主页里经常有更新。要组建好一个网络存储的平台, 这里使用了一台换下来的服务器来组建, 硬件的要求是一块普通的主板加上一只1.6GHz左右的处理器, 512MB的内存已经非常足够, 主板上有2个SATA接口可以安装大容量的SATA硬盘, 如果想把Free NAS系统安装在U盘上的话, 安装Free NAS之前还需要准备一只CDROM用来读光盘。

2.3 Free NAS的安装

2.3.1 启动

Free NAS安装向导Free NAS的安装步骤较为简单, 我们只需将下载回来ISO镜像刻录成CD, 然后CD插入光驱, 并确认你的计算机BIOS以设置为光盘启动。在“Free NAS的引导界面”直接键入回车键即可。

2.3.2 选择安装Free NAS在“系统菜单”界面, 我们选择“在硬盘或其它设备上安装或升级Free NAS”也就是输入数字“9”之后按回车键

各选项参数的对应说明:

1) Assign interfaces选择网卡;

2) Set LAN IP address设置IP地址;

3) Reset Web GUI password重设Web GUI密码;

4) Reset to factory defaults恢复默认设置;

5) Ping host Ping主机;

6) Shell Shell;

7) Reboot system重新启动系统;

8) Shutdown system关闭系统;

9) Install/Upgrade to hard drive/flash device, etc。

2.3.3选择安装模式在“Install&Upgrade (安装&升级) ”对话框中, 需要选择我们安装的模式

这里有6个个选项, 分别是:1) 安装精简版到硬盘或Flash磁盘或USB设备;2) 安装精简版到硬盘或Flash磁盘或USB设备, 同时进行数据分区;3) 完全安装到硬盘, 同时进行数据分区;4) 从光盘升级精简版系统;5) 从光盘升级完全版系统;6) 从光盘升级精简版系统到完全版系统这里, 使用上下键定位到“3完全安装”.然后点确定。

2.3.4 跳过安装信息对话框弹出Free NAS安装信息对话框, 直接回车进入下一步

2.3.5 选择源光盘驱动器

在“选择源光盘驱动器”对话框中, 显示了该机器的光驱代号acd0, 直接回车进入下一步即可。

2.3.6 选择安装目地硬盘在“选择安装目标硬盘”, 这里显示了ad0和da0-2一共4块硬盘, ad0表示第一块IDE硬盘, da0表示第一块SCSI硬盘, 其它硬盘表示方法, 依此类推.这里选择“ad0”这块硬盘, 直接回车即可

2.3.7 输入OS分区大小弹出“输入操作系统分区大小”对话框, 保持默认的128MB, 直接回车进入下一步

Step8:你是否添加交换分区在“你是否添加交换分区”对话框中, 选择“YES”, 直接回车进入下一步。

Step9:输入交换分区大小为了支持Free NAS的ISCSI, 系统最低要求为256MB的内存;一般情况下, 在UNIX或Linux系统中交换分区的大小为物理内存的两倍., 在“输入交换分区大小”的对话框中, 输入256后, 直接回车进入下一步。

Step10:开始安装Free NASFree NAS开始格式化系统分区和数据分区, 并将系统安装到选定的硬盘, 屏幕显示如图7所示.按回车键, 将返回“安装&升级”对话框, 这里选择“Exit”, 将返回Free NAS控制台.在“Free NAS控制台”对话框, 输入“7”重启系统。

2.3.8 配置Free NAS网络

当再次出现Free NAS控制台, 选择“2”设置网卡的IP地址, 系统会询问是否使用DHCP获取IP地址, 选择“NO”, 出现IP地址设置窗口, 输入要设置的IP地址。

2.3.9 管理Free NAS服务器

如果你从其它的计算机设备上能ping通, 安装了Free NAS的计算机, 那么你就可以使用该主机, 通过浏览器输入安装了Free Nas的计算机的IP地址来管理Free NAS服务器了.默认的用户名是admin, 密码是freenas。

用free NAS替代专门的文件服务器可以提高大大网络文件存储和访问的响应速度, 另外有些高级NAS所提供的文件保护机制 (快照和备份) , 网卡绑定, 跨平台文件共享和用户服务管理机制使得网络文件系统的维护工作也变得非常简便易行。

3 结论

利用基于IP网络的网络存储方式, 合理使用了更换下来的计算机资源, 又成功地解决了存储空间为足的问题, 使闲置的资源得到了高效利用。

摘要:FreeNAS网络存储系统具有对硬件资源要求低、系统运行效率高的优点, 更为可贵的是它是免费软件, 这样, 我们可以用极小的成本搭建出高性能的网络存储平台。

关键词:网络,FreeNAS系统,服务器,网络存储

参考文献

[1]王和平, 陈慧, 刘茜.巧用FreeNAS搭建网络存储及备份系统[J].企业技术开发, 2012 (29) .

基于对象的网络存储 第7篇

在“IMS学习资源元数据规范[3]”中,学习对象元数据模型用于描述学习对象的相关特征。模型中的数据元素被划分成9个不同的类别:通用、生存期、元元数据、技术、教育、权利、关系、评注、分类。这9个类别相互独立,各自有明确的语义,便于元数据的共享和模块化。但是它里面的很多元素都不适合我国的实际情况,本文抽取了其中一些必要的元素来描述学习资源,并添加了需要的元素。

“IMS内容包装规范[4]”定义了标准数据结构-内容包装信息模型。在该模型中,学习对象被组织为一个包,由内容清单文件和一系列展示学习对象的物理文件组成。内容清单文件是一个XML文档,对包的结构、包含的内容及内容之间的联系进行描述,“IMS内容包装规范”提供了一个XML模式定义该类XML文档的结构。但是信息模型存在不足之处:由于允许组合,并且嵌套的层次没有限制,一个包可能会很“臃肿”,将影响传输和处理的效率;模型能够对学习内容间的“聚合”联系进行定义,但是对学习内容间其他联系的描述支持不够;没有对学习内容显示形式的定义提出建议。本文将在以上几方面扩展包装规范,将学习对象限定为原子学习对象,并提供默认的XSLT样式表指定学习对象的默认显示方式。

1. 学习对象

学习对象[1]是借鉴面向对象的思想对学习内容进行组织和封装的方式,具有模块化、自包含、可重用、元数据标识、可聚合和拆分等特征。在本文中,学习对象特指计算机能够识别、处理和表现的数字教学资源,并能够帮助学习者完成一定的学习目标、独立完整的资源,它是构成网络课程的基本单位。

学习对象的粒度可大可小,小到只包含一张图片,大到包含一门课程的全部内容。可以认为学习对象分为两类:原子学习对象(在逻辑上不能再分)和复合学习对象(由原子学习对象或复合学习对象组合而成,在逻辑上是原子学习对象的上一层)。但在原子学习对象之下还有一层物理素材,它是形成原子学习对象或复合学习对象及所有学习内容的基础。

根据加涅的“教学事件与学习过程的关系”的相关理论[2],要给学生提供一个完整的学习过程,至少应该包括说明、学习内容、练习和评估四类的学习对象。其中,说明类的学习对象完成“告诉目标”的教学事件,“学习内容”类主要完成“呈现学习资料”和“提供学习指导”两个教学事件,“练习”类完成“提供练习”的教学事件,“评估”类完成“提供反馈”的教学事件。

2 学习对象元数据模型

元数据是关于数据的数据,它是一组独立的关于资源的说明,描述资源的特征信息。学习对象元数据描述学习对象的特征,比如学习对象的标题、描述、格式、生成时间、作者、分类等元素。通过定义学习对象元数据可以将学习内容和描述信息分离,在一定范围内支持对网络学习内容的识别和访问。学习对象元数据模型描述学习对象元数据元素的名称、定义、组织、限制等,本文下面给出这些元素的列表,并以五种信息来限定它们。本文将学习对象限定为原子学习对象,将从该规范中抽取需要的元素来描述其特征。学习对象元数据信息模型的元素如表1所示。

注:“大小”和“数据类型”栏内有星号标记的为最低峰值,即应用程序至少能支持的列表项数或字符串长度。

根据这样的元数据模型可以构造前面所说四种类型的学习对象的元数据实例。

3 学习对象包装模型

3.1 包的定义

一个包可以作为独立单元在不同的平台间传输和交换,可以将一个学习对象看作一个包,以包的形式来封装学习对象。包由两个主要元素组成:一个特定的内容清单文件和若干物理文件。内容清单描述了包中的学习资源以及这些资源是如何组织的。物理文件是一些实际的媒体元素、文本文件、图像或其他资源,存放在内容清单中描述的各子目录下。

3.2 包装信息模型

本文根据包的定义建立学习对象包装信息模型如图1所示。

包是一个逻辑目录,包含一个特定名称的XML文件(内容清单文件)、该XML文件引用的XML模式文件以及子目录中包含的实际物理文件。包在不同的系统间传输的时候可以被压缩成一个单独的包交换文件,但包并不一定要求组合成一个包交换文件。一个包不需压缩成一个单独文件就可以通过CD或其它可移动媒质发布。内容清单文件和其他所有的文件必须在发布媒质的根目录下。

1)内容清单文件

内容清单是一个必需的XML文件,描述了包自身。它需要一个且仅有一个元素,一个内容清单包含四个子元素:,,,以及指定默认显示方式的元素。

2)元素

元数据在内容清单中申明,以便充分描述包的内容。元数据模型在前面已经给出。搜索引擎可以通过元数据为学习者或内容制作者查找合适的内容。

3)元素

元素是在内容清单中组织内容的方法,即描述各子元素之间的关系。组织结构采用内容表(Table of Contents)方案,包含在它的子元素中。元素包含了一个详细的内容组织信息。内容组织结构用元素描述。项(item)可以包含下属项(层次结构),也可以与其它项同级(平面结构)。一个内容制作者可以混合使用上述两种结构来组织他们的内容。一个项通常有一个标识符并通过标识符参考(Identifierref)链接到资源。使用属性标题(title)识别项的信息。

4)元素

元素确定一组内容和支持内容的文件。一个资源在元素下的元素中声明。一个不一定是单独一个文件,它可以是一组支持这个资源显示的文件集合。这些文件必须包含在包中,可以直接引用。

5)元素

元素确定学习对象内容默认的显示方式。它为XML源文档中的每个节点都定义了一组处理规则。

3.3 内容清单元素

图2阐明了一个内容清单的主要元素以及它们之间的对应关系。

4 结束语

本文设计了学习对象元数据模型和学习对象包装模型,定义了一个学习对象的结构,特别是对学习对象的粒度进行了限制,并对学习对象进行分类,以完成一个完整的学习过程,增加内容显示的默认形式。接下来的工作就是使用XML语言建立学习对象元数据模型和学习对象包装模型,构建学习对象的实例。

参考文献

[1]David A.Wiley.LEARNING OBJECT DESIGN AND SEQUENCING THEORY[PhD Dissertation].Britain:Department of Instructional Psychology and Technology,Brigham Young University,2000.

[2]R.M.Gagne,W.Dick,Instructional Psychology,Annual Review of Psychology,34.

[3]IMS.Learning Resource Meta-data Specification.http://www.imsglobal.org/metadata/index.html.2008.

[4]IMS.Content Packaging Specification.http://www.imsglobal.org/content/packaging/index.html.2008.

[5]W3C.XML Schema Part1:Structures Second Edition.http://www.w3.org/TR/.2008.

[6]W3C.XML Schema Part2:Datatypes Second Edition.http://www.w3.org/TR/.2008.

[7]路秋丽,余胜泉.面向学习对象的网络课程设计与开发.中国电化教育,2005年,总第216期:75-79.

基于对象的网络存储 第8篇

关键词:iSCSI,SCSI,网络存储,Linux

1 引言

随着数字图书馆、视频点播、远程数据容灾等高I/O请求服务普遍应用于各个领域,存储区域网络(Storage Area Network,SAN)得到了广泛应用。目前,SAN通常采用光纤通道技术(Fiber Channel,FC)来构建。FC SAN具备高性能、高可用性、高可靠性、便于集中存储管理等优点,但其也存在价格高昂,设备互操作性差、连接距离有限等弱势。伴随因特网技术的发展,基于TCP/IP的SAN受到越来越多的重视,有i FCP、FCIP、i SCSI三种实现协议,其中i SCSI协议允许用户通过TCP/IP网络来组建SAN,传送SCSI命令以及存储数据。

2 iSCSI协议概述

i SCSI(Internet SCSI,也称SCSI over IP)是于2003年2月被IETF批准通过的网络存储标准,RFC编号为“3720”。i SCSI技术对传统技术进行了继承和发展,其一,SCSI技术是被磁盘、磁带等存储设备广泛采用的存储标准,其二,采用的TCP/IP协议是现行网络中最通用最成熟的协议,基础设施建设非常完善。这两点为i SCSI的发展提供了坚实基础。

i SCSI的基本原理是使用TCP/IP协议封装SCSI命令和数据,使其可以在IP网络中传输。在SCSI协议里,SCSI命令是由启动端(Initiator)向目标端(Target)发出的,这两个称谓被沿用到i SCSI协议中,以C/S的观点,可把启动端视为“客户”,把目标端视为“服务器”。i SCSI协议的体系结构如图1所示,一端的SCSI数据包先被封装成i SCSI的PDU,然后封装相应的网络协议发送到另一端,再依次解封装还原成最初的SCSI数据包。i SCSI传输的是面向存储设备的底层I/O数据块,可以像FC协议一样应用于SAN中。作为支持IP协议的最重要的底层接入技术之一的以太网的速度已达到万兆甚至更高,在这种高速以太网环境下,i SCSI可以达到甚至超过FC的性能。i SCSI还可以直接用在光纤LAN、ATM/SONET/FR WAN、无线网络等数据网络中,使i SCSI设备的部署更加灵活。凭借IP的优势,以i SC-SI技术为核心构建的IP SAN相对于FC SAN具备更大的发展潜力。

3 iSCSI协议工作机制

在TCP/IP网络中实现i SCSI协议通信的过程是,先在发送端把SCSI命令和数据封装在i SCSI PDU中,再将i SCSI PDU依次经过TCP层封装、IP层封装和数据链路层封装,最后经由IP网络进行传输,而在目标端执行相反的操作。当采用i SCSI协议连接的两个SCSI设备进行通信时,下层的i SCSI协议操作对它们是透明的,SCSI设备只需将其要发送的数据及目的地址告知其下的i SCSI层(i SCSI结点)即可。获得这个地址后,i SCSI结点需要先与目标端的i SCSI结点建立一个i SCSI会话,建立会话的步骤包括建立TCP连接、通信双方身份认证、通信参数协商。当会话成功建立后,两个对应的i SCSI结点之间的通信就将通过该i SCSI会话来进行。当通信完毕,对应的两个i SCSI结点会通过一系列的注销操作来结束该i SCSI会话。通信过程中如果发生网络拥塞等阻碍通信继续进行的情况时,i SCSI将启动它的故障处理及恢复机制。从建立会话、进行通信、故障处理与恢复到结束会话的所有i SCSI协议层的操作都是通过在两个对应的i SCSI结点之间交换i SCSI协议数据单元来完成的,RFC3720标准共定义了18种不同类型的i SCSI协议数据单元。

4 iSCSI协议的实现

4.1 实现iSCS 协议通信的方法

在TCP/IP网络中实现i SCSI协议通信有以下3种方法(见图2):

(1)纯软件的实现方式:用普通以太网卡进行网络连接并接收数据链路层数据,由主机CPU和软件从中提取i SCSI PDU中所封装的SCSI数据和命令,相反过程的操作也由主机CPU和软件实现。通常是在Linux操作系统下,利用其源码开放性,用一个i SCSI驱动模块替换其中的部分SCSI代码。

(2)i SCSI TOE网卡(TOE,TCP/IP卸载引擎)实现方式:TOE技术使用硬件承担了原本应由主机CPU完成的TCP、UDP、IP、ICMP等协议处理任务。采用具有TOE的网卡实现i SCSI协议,主机CPU和软件就只需完成i SCSI协议数据单元的封装、解封装,下层的处理工作由网卡完成。

(3)i SCSI HBA卡(HBA,主机总线适配器)实现方式:由i SCSI主机总线适配器完成i SCSI、TCP、IP等协议以及链路层、物理层的处理任务,主机CPU和驱动程序软件只需承担少量的管理任务。

上述3种实现方式中,纯软件实现方式需占用主机CPU资源,1Gb的以太网最多可能会消耗500MHz的CPU,随着CPU处理能力的不断提升,采用软件方式实现i SCSI对于一些预算少,规模小、任务轻的应用是游刃有余的。下面讨论一种在Linux下的i SCSI实现。

4.2 Linux下iSCSI的实现

在SCSI协议中,用户产生的读写请求由文件系统解析为SCSI命令、消息和响应,被传送到SCSI HBA,由其通过SCSI总线来访问Target设备。通过完成以下组件可实现基于i SCSI的存储系统:(1)支持TCP/IP的i SCSI协议栈;(2)i SCSI Initiator子系统和i SCSI Target子系统;(3)i SCSI Initiator和i SCSI Target之间的通信网络。

i SCSI协议的设计利用了Linux内核中SCSI子系统的高中低三层驱动结构,其中(1)SCSI较高层是内核最高级别的接口。由一组驱动器组成,如SCSI磁盘。(2)SCSI中间层连接较高层和较低层,接受SCSI事务请求并进行排队,进行错误和超时处理。(3)较低层驱动LLD是SCSI HBA卡的驱动,负责在Initiator和Target之间传送数据、命令、状态、消息等。LLD可用光纤通道或i SCSI来替代,在Initiator和Target之间传送SCSI请求。scsi_host_template是LLD中重要的数据结构,连接中间层和较低层,它代表SCSI设备驱动程序,包含了设备处理外部请求所需要的所有函数指针。LLD向中间层注册scsi_host_template函数模板,中间层通过这些函数来访问和控制LLD,从而访问和控制SCSI设备。i SCSI协议主要在LLD层实现,通过重写scsi_host_template函数模板,实现i SCSI Initiator LLD。对于从中间层下来的命令或数据,如果命令是发给i SCSI Target设备的,则i SCSI Initiator LLD就截获此命令或数据,并打包成i SCSI PDU通过网卡发送到与其相连的i SCSI Target端。对于从i SCSI Target端发送来的包含响应或数据的PDU,Initiator LLD会从中提取出相应的信息并传递给中间层,中间层再向上传送,从而实现了i SCSI的功能。

对于i SCSI Target端,要通过TCP/IP网络存取Target设备需要在Target设备上实现TCP/IP协议栈,并在Initiator和Target实现i SCSI协议。由于在硬件上实现TCP/IP协议较复杂,i SCSI协议采用软件方法实现一个Target模拟器在Linux内核中运行,它包含通用SCSI Target中间层模块和底层的i SCSI驱动两个独立部分,它们之间通过应用程序接口来实现交互。底层的i SCS驱动负责处理与i SCSI协议相关的事务,如接收从Initiator发送过来的i SCSI包,解析出SCSI的CDB,并通过应用程序接口传给通用SCSI Target中间层模块;而通用SCSI驱动中间层模块则用来处理SCSI命令,并传送到本机的SCSI子系统,再由本机的SCSI HBA来访问具体的SCSI设备。图3给出了i SCSI子系统模型。

5 结束语

本文在分析i SCSI协议基础上给出了Linux下实现i SCSI协议的一种实现模型,对于i SCSI存储技术作了较为全面的综述,并提出了可行的实现解决方案。随着高速网络技术的发展,i SCSI将继续在网络存储领域为各行业提供较高性价比的网络存储解决方案。

参考文献

[1]龚黎云,程巍,高传善.IP SANs iSCSI协议研究.微型电脑应用,2004,20(1)

[2]谢长生,傅湘林,韩德志.一种基于iSCSI的SAN的研究与发展.计算机研究与发展,2003,40(5)

[3]周敬利,徐锋,余胜生.Linux下基于iSCSI存储系统的实现与性能评测.计算机工程与科学,2004,26(6)

基于对象的网络存储 第9篇

随着计算机和网络技术的飞速发展,数据已呈爆炸性的增长。硬件故障、软件错误、人为误操作、病毒以及自然灾害等常常引起数据的丢失,处于信息时代,数据已经成为最宝贵的财富,人们对数据的高可用性、安全性提出了更高的要求。因此如何保证数据的安全性、完整性、高可用性成为信息时代的关键问题。

数据备份是为防止系统故障或其他原因导致的数据丢失,而将部分或全部数据从源存储设备复制到其他存储设备的过程。随着存储信息容量的不断增加,出现了新型的存储区域网络结构,存储区域网络是一种专注于信息存储和访问的高速子网,它是传统的SCSI技术与网络技术相结合的产物,目前主要使用光纤通道技术为网络和I/O建立一个标准集成,在存储区域网络中出现了两种新型的数据备份工作模式,即LAN-Free模式和Server-Free模式。

2 传统数据备份技术

2.1 基于主机的备份模式

传统的数据备份方式是在每个服务器的上直接挂载内置或外置的磁带机,每个服务器备份自己的数据,各个服务器之间互不干扰,如图1所示。

这种备份模式数据传输速度快,备份管理简单;由于各服务器直接操作各自的备份设备,导致备份设备不能共享,需要大量的硬件投资,另外由于各个业务服务器之间操作系统的平台的不同,可能会使不同平台选用不同的备份软件,使得备份设备和备份软件之间存在兼容性问题。

2.2 基于局域网的数据备份模式

在局域网备份模式下,局域网中增加一台备份服务器,将备份设备直接连接在备份服务器上,在备份服务器上安装备份软件服务端的软件,在各个业务服务器上安装备份软件客户端软件;这样业务服务器将需要备份的数据从源存储设备通过局域网传输到备份服务器,由备份服务器将需要备份的数据写入备份设备中,如图2所示。

这种备份模式下可节省投资,实现目标备份设备的共享;但在数据备份过程中加重了网络的负载量,数据备份和恢复受制于网络带宽,同时业务服务器和备份服务器之间的TCP/IP协议方面的开销也影响了备份系统的性能。

3 基本原理

基于光存储区域网络的数据备份系统主要利用了采用光纤通道技术实现的存储区域网络的高速访问特性,将数据存储与数据处理分隔开,使得备份软件通过网络数据管理协议协调源备份系统、目标备份系统、备份执行系统之间的操作,减少了操作系统的干预,提高了系统的吞吐量,数据直接在独立的存储区域网络内传输,使备份数据不再受制于网络带宽,业务服务器不再参与数据备份过程中的数据流传输,使得业务服务器负载量大幅度降低。

3.1 实现步骤

LAN-Free备份模式中,业务服务器与存储设备之间通过存储区域网络连接在一起,数据存储与数据处理被分隔开,每个业务服务器可以通过存储区域网络访问相应的存储设备。当执行数据备份时,备份软件的客户端与备份软件服务端所在的服务器通过局域网传输建立连接的控制信息,分配好相应的设备后,业务服务器可通过存储区域网络将需要备份的数据写入到目标存储设备中,由此可知LAN-Free数据备份是一个“以服务器为核心的两阶段传输行为”,其连接方式如图3所示。

(1)通过存储区域网络将各个存储设备与业务服务器连接起来,将网络数据管理协议(NDMP,Net Data Management Protocol)引入LAN-Free备份系统,网络数据管理协议是一种客户机/服务器模式的通信协议。

(2)选择一台应用服务器安装NDMP客户端备份软件,在需要进行数据备份的服务器上叠加SCSI接口、数据接口、配置接口等NDMP协议的服务接口,以实现NDMP数据服务器。

(3)在备份磁带设备上叠加磁带机接口、数据接口、连接接口、配置接口等NDMP协议的服务接口,以实现NDMP磁带机服务器。

(4)进行数据备份时,NDMP客户端通过局域网与NDMP磁带机服务器建立连接。

(5)NDMP磁带机服务器与NDMP客户端协商版本号。

(6)NDMP磁带机服务器对NDMP客户端进行验证。

(7)NDMP客户端向NDMP磁带服务器发送消息,使其打开一个独享的磁带驱动,用于随后的数据备份。

(8)NDMP客户端通过局域网与NDMP数据服务器建立连接并进行验证。

(9)NDMP客户端获得NDMP数据服务器与NDMP磁带机服务器支持的连接类型,并选择一个NDMP数据服务器和NDMP磁带机服务器都支持的连接方式,使NDMP磁带服务器与NDMP数据服务器建立连接。

(10)NDMP磁带机服务器创建一个数据连接点,并监听连接。

(11)NDMP客户端上运行的备份软件启动备份,同时通过局域网向NDMP数据服务器发消息通知它需要备份的数据内容、参数和磁带机服务器的数据移动连接点。

(12)在数据备份的过程中,数据直接由NDMP数据服务器发送数据经由存储区域网络以NDMP的格式写入磁带设备中,同时NDMP客户端的运行备份软件接收来自NDMP数据服务器和NDMP磁带服务器的参数以监控备份过程。

(13)最后,备份成功完成,NDMP数据服务器关闭与磁带机服务器的连接并通知NDMP备份客户端的备份软件,NDMP客户端的备份软件分别向NDMP数据服务器和NDMP磁带机服务器发送终止消息,一次完整的数据备份过程结束。

在LAN-Free备份模式中,仅有连接控制流在局域网中传输,而主要的数据传输发生在存储区域网络内部,使整个数据备份过程不再受网络带宽的瓶颈的影响,同时独立的存储网络节省了数据传输过程中TCP/IP协议的开销;但是在整个备份系统中,业务服务器仍然参与了数据备份中的数据传输,在备份数据量比较大时,数据备份占用了业务服务器宝贵的CPU处理时间,且整个LAN-Free备份系统的实现成本较高。

3.2 实现步骤

Server-Free备份模式是一个全新数据备份方法,其本质上是对LAN-Free备份模式的一种延伸,将业务服务器通过存储区域网络与各存储设备连接起来,引入NDMP协议协调备份系统中各模块的操作。在Server-Free备份模式中,业务服务器与存储设备之间通过光纤通道交换机进行连接,在数据备份的过程时,服务器只需要协调相应的连接,备份数据通过数据迁移器直接从源存储设备传输到目标存储设备,其连接方式如图4所示。

(1)在各个业务服务器上安装NDMP协议客户端的备份软件。

(2)在存储区域网络中的磁盘设备上叠加SCSI接口、数据接口、连接接口、配置接口等NDMP协议服务接口,以实现NDMP数据服务器。

(3)在磁带设备上叠加磁带机接口、数据接口、连接接口、配置接口等NDMP协议服务接口,以实现NDMP磁带机服务器接口。

(4)进行数据备份时,运行在业务服务器上的NDMP客户端通过存储区域网络向NDMP磁带机服务器发送连接请求。

(5)建立NDMP连接后NDMP磁带机服务器与NDMP客户端协商版本号,同时验证NDMP客户端。

(6)NDMP客户通知NDMP磁带机服务器分配相应的磁带驱动器,供其后的数据备份之用,接着NDMP客户端与NDMP数据服务器建立NDMP连接。

(7)此时NDMP客户端获取NDMP磁带机服务器与NDMP数据服务器都支持的连接方式,使NDMP磁带机服务器与NDMP数据服务器建立NDMP连接。

(8)业务服务器上的NDMP客户端启动数据备份,同时向NDMP磁带机服务器发送一个拷贝命令。

(9)收到命令的NDMP磁带机服务器向叠加在磁盘上的NDMP数据服务器发出一个读命令,并在拷贝命令中指定命令参数如磁盘设备号及块号等信息。

(10)磁盘设备上的NDMP数据服务器在收到读命令后,通过存储区域网络将指定的数据块送到磁带库。

(11)数据移动完成,NDMP磁带机服务器通过存储区域网络将拷贝命令的完成情况返回给业务器上的NDMP客户端。一次完整的数据备份完成。

Server-Free备份系统不仅减轻了LAN的负担,同时也使业务服务器对备份过程的干预减到了最小,节省了业务服务器的CPU周期和I/O总线的带宽,从而使备份过程的可靠性和备份系统的性能。

4 课题特点

4.1 迫切需要

基于局域网数据备份技术的缺点越来越明显,在实际应用过程中,加重业务服务器的负载量,严重影响了局域网的网络的性能。随着存储区域网络技术的成熟,实践迫切需求出现新技术来解决数据备份系统中的性能问题。

4.2 研究手段

通过网络仿真来模拟基于存储区域网络数据备份系统各个方面的性能,依据仿真过程中收集的数据进行分析,为选择最优方案提供可靠的数学依据,同时可以为网络建设节省投资。

4.3 实用价值

基于存储区域网络的数据备份技术减轻了服务器的负载量,提升网络的吞吐量,有效解决了数据备份过程中服务器负载量与网络带宽的问题,使整个备份系统的性能大为提升。

5 存在问题

基于存储区域网络的数据备份技术各个厂家具有不同的特点,在兼容性上存在很多问题;在存储区域网络中,构建数据备份系统投资多、成本高、难度大。基于存储区域网络的数据备份技术在数据恢复操作还需要提高。

6 研究热点

随着存储区域网络技术的进步,基于存储区域网络的数据备份技术中,LAN-Free结构的数据备份技术已经相当成熟,在实际中已经得到了广泛使用,而Server-Free数据备份技术则还需要进一步完善。

基于存储区域网络的数据备份中引入了NDMP协议,在数据备份的过程中,数据服务端是备份的源端,磁带服务端是目标端,在数据恢复时,数据服务端是目标端,磁带服务端是源端,因此从网络传输的角度看,两者提供的都是输入输出功能,严格区分NDMP的数据服务和磁带服务会影响NDMP协议的适应性。另外NDMP协议对存储设备的支持存储设备的类别还需要进一步完善,目前NDMP v5.0协议的正在修订中。

7 结语

在存储区域网络基础上引入了网络数据管理协议,设计并实现了LAN-Free备份和Server-Free备份。从系统结构和工作原理的角度看,本研究能够最大限度地减少业务服务器对数据备份过程的干预,从而可以有更多的时间来处理业务需求,同时数据备份过程中的数据传输从局域网络转移到存储区域网络的内部,降低了局域网的网络负载量。

国外的很多公司都推出了自己的产品,其产品主要有:EMC公司的EDM,Legato公司的NetWorker,Veritas公司的NetBackup,以及Crossroads Systems公司开发生产的无服务器备份产品。国内更多的是对这些产品进行代理,很少有独立研发的产品。随着存储区域网络的发展和NDMP协议的完善,可在不中断当前的在线业务实时提取要备份的数据等,基于存储区域网络的数据备份系统正逐渐成为远程容灾备份技术的主流。

摘要:从数据备份系统结构的角度,研究了传统数据备份技术的优缺点,针对现有备份技术的存在的问题,通过在存储区域网络中引入网络数据管理协议,使得存储区域网络环境下的数据备份极大减轻了网络负载量,同时业务服务器最大限度地从数据备份过程中解脱出来,从而提高了整个备份系统的性能;同时对基于存储区域网络数据备份技术研究的特点、存在的问题、研究热点和应用情况等进行了分析。

关键词:存储区域网络,LAN-Free,Server-Free,数据备份,光纤通道

参考文献

[1]林强,熊华刚,张其善.光纤通道综述[J].计算机应用研究,2006,(2):9-13.

[2]SACHS Martin W,VARMA Anujan.Fibre channel and relatedstandards[J].Communication Magazine,IEEE,1996,(8):40-50.

[3]韩双利,赵尚弘,底翔.光纤通道及其在存储区域网络中的应用[J].光通信技术,2007,(11):34-37.

[4]DNMP v4.0.http://www.ndmp.org.

上一篇:语言俄语成语民族文化下一篇:变电站自动化技术分析