CN1761257A - 基于虚拟接口的存储系统 - Google Patents
基于虚拟接口的存储系统 Download PDFInfo
- Publication number
- CN1761257A CN1761257A CN 200510019860 CN200510019860A CN1761257A CN 1761257 A CN1761257 A CN 1761257A CN 200510019860 CN200510019860 CN 200510019860 CN 200510019860 A CN200510019860 A CN 200510019860A CN 1761257 A CN1761257 A CN 1761257A
- Authority
- CN
- China
- Prior art keywords
- module
- request
- metadata
- node machine
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
基于虚拟接口的存储系统,属于计算机存储技术,目的在于缩短网络存储中的路径,减少协议开销,解决网络响应速度和I/O带宽的问题。本发明包括M台存储服务节点机、一台元数据节点机和N台客户节点机,它们通过VIA通信网络互连;运行于存储服务节点机上的模块包括系统初始化模块、请求监听模块和请求处理模块;运行于元数据节点机上的模块包括元数据系统初始化模块、元数据请求监听模块和状态检测模块;运行于客户节点机上的软件模块包括一个或多个基于VI的网络块设备驱动模块。本发明实现数据传输的零拷贝,缩短了网络存储数据的路径,有效解决了网络带宽、存储访问速度、互操作性等主要的网络存储问题。
Description
技术领域
本发明属于计算机存储技术领域,具体涉及一种基于虚拟接口的存储系统。
背景技术
随着高性能计算、互连网等技术的不断发展及现代信息数据量的激增,很多重要的计算机应用领域,特别是存储密集型应用,对信息存储系统的容量、带宽、I/O响应时间、可扩展性等性能技术指标提出了更高的要求。为此,人们提出并实现了附网存储系统NAS和存储区域网SAN等各种网络存储体系结构,在一定程度上缓解了存储体系的瓶颈。但现有的多数网络存储系统都是使用TCP/IP协议进行通信传输,而TCP/IP本身并不是面向存储系统数据传输设计的,它更适合大量小数据包的传输。对于大块连续的存储系统数据,使用TCP/IP进行传送,通信开销过大,导致网络有效I/O带宽降低,影响了网络存储的响应速度。
虚拟接口体系结构VIA是用于群机系统的高带宽低延迟通讯机制,主要思想是:给每个用户进程提供一个受保护的、直接可访问的虚拟接口,以节约传统网络模式中系统处理的开销。每个虚拟接口代表一个通信端点,两个虚拟接口可逻辑上连接起来实现点——点双向数据传输。由网络接口控制器和网络路由器组成的专用网络实现多种数据传输模式,并通过消除两端的系统数据区和用户数据区之间的拷贝,以提高实际数据传输带宽。存储网络相对于计算网络而言,结点间的通信与数据传输的随机性小,有利于用硬件实现虚拟接口,提高有效带宽。基于VIA的优点,为了解决从网络到存储子系统和存储设备的响应速度和I/O带宽的问题,申请人提出了基于虚拟接口的存储系统VISS。
发明内容
本发明提出一种基于虚拟接口的存储系统VISS,目的在于缩短网络存储中数据I/O的关键路径,减少数据传输中的协议开销,解决从网络到存储子系统和存储设备的响应速度和I/O带宽的问题。
本发明一种基于虚拟接口的存储系统,包括M台存储服务节点机、一台元数据节点机和N台客户节点机,它们通过VIA通信网络互连,M、N为自然数;
(1)运行于存储服务节点机上的模块包括:系统初始化模块、请求监听模块和请求处理模块;
(1.1)系统初始化模块完成VI数据结构的初始化、本地服务状态与控制数据的初始化、模块参数的初始化和元数据信息的及时更新等系统初始化工作;
(1.2)请求监听模块在存储服务节点机初始化完毕后,由操作系统内核加载,监听来自于元数据服务节点机或者客户节点机的数据请求和命令请求,新的请求到达时,修改服务状态和服务控制数据结构,产生请求处理模块;
(1.3)请求处理模块包括读写请求,失连请求,心跳检测请求子服务模块,子服务模块由请求监听模块根据服务请求派生,负责分析请求类型,执行实际的请求和进行数据传输;
(2)运行于元数据节点机上的模块包括:元数据系统初始化模块、元数据请求监听模块和状态检测模块,元数据系统初始化模块完成初始化后,自动加载后两个模块;
(2.1)元数据请求监听模块,接收来自于客户节点机上的客户端元数据请求,把系统中相关的元数据信息返回到客户端;同时将客户端的网络地址信息加入到客户节点机链中,以便在元数据信息发生变化时及时通知客户节点机;
(2.2)状态检测模块,定时向VISS中的所有存储节点机发出状态检测信号,依据存储节点返回的状态信息,修改元数据信息,并且向在元数据请求模块中形成的客户节点机链,发出元数据更新消息,从而改变I/O命令和数据的网络流向;
(3)运行于客户节点机上的软件模块包括一个或多个基于VI的网络块设备驱动模块,每一个模块代表一个客户端,它接收由操作系统上层文件系统解析后下传的基于字节级的读写命令,把读写命令通过VI核心通信库发送到VISS中存储节点,并把接收的来自于VISS中的数据复制到本地文件系统的内核缓冲区中。
所述的基于虚拟接口的存储系统,其特征在于:所述存储服务节点机、元数据节点机和客户节点机,每个节点机都具有独立的计算、处理能力,配备了支持虚拟接口VI的网络适配器可实现各节点机之间的高速通信传输,其中各存储服务节点机配备高速大容量外存储设备;任一客户节点机都可以接受元数据节点机的指派而与来自于广域网的远程用户建立连接,完成存储网关的功能。
所述的基于虚拟接口的存储系统,其进一步特征在于:当需要通过广域网访问VISS内的存储资源时,客户节点机动态加载一个iSCSI-VI协议适配模块,该模块充当iSCSI目标器的角色,配合位于Internet上的远程iSCSI启动器完成对VISS的存储资源的远程访问功能;该模块还将远程的访问请求转换为对VISS内的存储节点上存储资源的请求,并通过VIA高速通信网络访问存储资源。
本发明的工作流程如下:
(1)系统初始化模块完成存储服务节点机自身的初始化工作后,启动请求监听和请求处理模块,等待用户的请求到达后做相应的处理;
(2)元数据节点机启动并收集存储服务节点机的存储资源变更信息,组成新的元数据信息,同时监听来自远程的服务请求。当有远程请求达到时执行第(6)步操作;
(3)客户节点机加载网络块设备驱动模块,该模块在加载过程中首先需要与元数据服务节点建立连接,如果连接建立,则进行元数据的交互,形成一个客户端,否则,模块加载失败;
(4)客户端收到元数据信息后进行元数据解析,完成自身的初始化工作,和对应的存储节点建立连接;
(5)当完成初始化工作后,客户节点机完成了一个块设备的加载工作,用户就可以和使用本地块存储设备一样使用该存储设备,请求监听与请求处理模块负责对用户的操作进行解析处理,并最终提交给远端存储节点完成存储操作。
(6)根据系统中各客户节点机的负载情况选择负载较轻的客户节点机,通知该节点启动iSCSI-VI协议适配模块以响应来自远程的存储服务请求。
本发明因减少了传输中的数据拷贝、缩短了传统的I/O途径而不同于NAS;又因使用虚拟接口较好地处理了互操作性,而不同于已有的SAN。
本发明使用轻量级的VIA通信协议构建基于虚拟接口的存储系统,摒弃了传统复杂的TCP/IP协议,实现网络传输中数据的零拷贝,缩短了网络存储数据的关键路径,提高了物理网络带宽的利用率和网络I/O的响应速度,有效的解决了网络带宽、存储访问速度、互操作性等主要的网络存储问题,其主要优点有以下几点:
(1)具有更高效的网络传输,减少了节点的通信开销;
(2)系统内部客户节点机可以获得高性能的存储服务;
(3)外部客户可以通过iSCSI机制灵活的访问系统内部存储资源,元数据节点机根据负载情况选择适合于客户的节点提供服务。
附图说明
图1为本发明结构示意图;
图2为本发明软件模块及其关系图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
图1为本发明结构示意图。本发明基于虚拟接口的存储系统100包括M台存储服务节点机110.1~110.m、元数据节点机120.1、N台客户节点机130.1~130.n以及连接这些节点的高速VIA网络140。客户节点机130.1~130.n中任何节点都可以接受元数据节点机120.1的指派而与来自于广域网(WAN)的远程用户建立连接,完成存储网关的功能。
附图2为本发明中运行于各节点机上的基本软件模块以及模块间的关系图。
系统初始化模块111、请求监听模块112和请求处理模块113运行于存储服务节点机110上,系统初始化模块111完成本节点的初始化工作并向元数据节点机报告自身的状态信息。初始化完成后,系统初始化模块111派生请求监听模块112,请求监听模块112监听来自客户的请求,对合法的客户请求则由请求处理模块113来完成客户的存储请求。
状态检测模块121和元数据请求监听模块122是运行于元数据节点机120上的两个主要软件模块。其中状态检测模块121定期执行检测任务,及时确认存储资源的变化信息并报告给元数据请求监听模块122,以便122能够及时更新系统元数据信息。元数据请求监听模块监听来自客户的元数据访问请求和来自存储服务节点机的元数据更新消息。对于前者的请求,122在完成客户的身份认证后将属于该客户的元数据信息返回给客户,并在以后有相关元数据信息变更的时候及时通知客户;对于后者,122则接收存储节点提供的新存储资源信息,更新元数据信息,并通知相关的客户。122的另一个附件功能是监听来自远程的客户请求,并根据客户的请求特点,选择VISS内适合的客户节点机充当iSCSI-VI协议适配存储网关,完成远处客户的存储服务请求。
网络块设备驱动模块131和iSCSI-VI协议适配模块132运行于系统客户节点机130上。131与122交互获取元数据信息,向112提交请求存储服务,与113配合完成存储服务过程。130收到120的指派后启动132模块与远程用户建立iSCSI连接,并通过131完成存储服务请求。
对于本地系统内部(位于同一个VIA网络内)的客户存储服务请求,其工作过程为:
(1)客户加载网络块设备驱动模块131;
(2)网络块设备驱动模块131与122建立连接,通过认证后获取客户的元数据信息(图中标号①步);
(3)根据元数据信息,131与存储服务节点机110的112模块建立连接,获取服务信息,112指派113模块负责存储服务处理;(图中标号②步)
(4)完成网络块设备的加载过程,进入正常的存储服务;
(5)用户与同使用本地存储设备一样对该网络块设备进行操作(包括分区,格式化,文件读写等),所有的操作都经过块设备驱动模块131映射为对存储服务节点机的相应操作并传输到113模块,如果是写请求,还向113传输要存储的数据,如果是读请求,则等待113完成读操作后传回数据(图中标号③步)。所有的操作请求和数据都是通过高速VIA网络完成数据的传输。
对于来自远程的存储用户请求,其工作过程为:
(1)远程客户向公开的元数据节点机提出服务请求;
(2)元数据节点机进行身份验证,对合法的用户,根据其请求特点和当前系统内客户节点机的状态,选择一个最适合的系统客户作为iSCSI-VI存储服务网关,通知其启动iSCSI-VI协议适配模块,同时返回该节点的信息到远程用户;
(3)远程用户通过iSCSI与制定的节点建立iSCSI连接;
(4)连接建立后,进入存储服务过程。iSCSI-VI协议适配模块解析出iSCSI请求,转换为本地VISS的客户存储请求,待存储服务节点机完成存储服务后,再将结果通过iSCSI传输到远程用户。
Claims (3)
1.一种基于虚拟接口的存储系统,包括M台存储服务节点机、一台元数据节点机和N台客户节点机,它们通过VIA通信网络互连,M、N为自然数;
(1)运行于存储服务节点机上的模块包括:系统初始化模块、请求监听模块和请求处理模块;
(1.1)系统初始化模块完成VI数据结构的初始化、本地服务状态与控制数据的初始化、模块参数的初始化和元数据信息的及时更新等系统初始化工作;
(1.2)请求监听模块在存储服务节点机初始化完毕后,由操作系统内核加载,监听来自于元数据服务节点机或者客户节点机的数据请求和命令请求,新的请求到达时,修改服务状态和服务控制数据结构,产生请求处理模块;
(1.3)请求处理模块包括读写请求,失连请求,心跳检测请求子服务模块,子服务模块由请求监听模块根据服务请求派生,负责分析请求类型,执行实际的请求和进行数据传输;
(2)运行于元数据节点机上的模块包括:元数据系统初始化模块、元数据请求监听模块和状态检测模块,元数据系统初始化模块完成初始化后,自动加载后两个模块;
(2.1)元数据请求监听模块,接收来自于客户节点机上的客户端元数据请求,把系统中相关的元数据信息返回到客户端;同时将客户端的网络地址信息加入到客户节点机链中,以便在元数据信息发生变化时及时通知客户节点机;
(2.2)状态检测模块,定时向VISS中的所有存储节点机发出状态检测信号,依据存储节点返回的状态信息,修改元数据信息,并且向在元数据请求模块中形成的客户节点机链,发出元数据更新消息,从而改变I/O命令和数据的网络流向;
(3)运行于客户节点机上的软件模块包括一个或多个基于VI的网络块设备驱动模块,每一个模块代表一个客户端,它接收由操作系统上层文件系统解析后下传的基于字节级的读写命令,把读写命令通过VI核心通信库发送到VISS中存储节点,并把接收的来自于VISS中的数据复制到本地文件系统的内核缓冲区中。
2.权利要求1所述的基于虚拟接口的存储系统,其特征在于:所述存储服务节点机、元数据节点机和客户节点机,每个节点机都具有独立的计算、处理能力,配备了支持虚拟接口VI的网络适配器可实现各节点机之间的高速通信传输,其中各存储服务节点机配备高速大容量外存储设备;任一客户节点机都可以接受元数据节点机的指派而与来自于广域网的远程用户建立连接,完成存储网关的功能。
3.权利要求1或2所述的基于虚拟接口的存储系统,其特征在于:当需要通过广域网访问VISS内的存储资源时,客户节点机动态加载一个iSCSI-VI协议适配模块,该模块充当iSCSI目标器的角色,配合位于Internet上的远程iSCSI启动器完成对VISS的存储资源的远程访问功能;该模块还将远程的访问请求转换为对VISS内的存储节点上存储资源的请求,并通过VIA高速通信网络访问存储资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100198600A CN100477664C (zh) | 2005-11-22 | 2005-11-22 | 基于虚拟接口的存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100198600A CN100477664C (zh) | 2005-11-22 | 2005-11-22 | 基于虚拟接口的存储系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1761257A true CN1761257A (zh) | 2006-04-19 |
CN100477664C CN100477664C (zh) | 2009-04-08 |
Family
ID=36707198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100198600A Expired - Fee Related CN100477664C (zh) | 2005-11-22 | 2005-11-22 | 基于虚拟接口的存储系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100477664C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997033B (zh) * | 2006-12-28 | 2010-11-24 | 华中科技大学 | 一种用于网络存储的方法及其系统 |
CN101335765B (zh) * | 2008-07-25 | 2010-12-29 | 华中科技大学 | 基于移动缓存的存储服务中间件 |
CN102025751A (zh) * | 2009-09-21 | 2011-04-20 | 深圳市闪联信息技术有限公司 | 一种远程访问数据的方法、装置和系统 |
CN103763364A (zh) * | 2014-01-15 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种数据访问方法及微型存储服务器 |
CN110119303A (zh) * | 2013-11-12 | 2019-08-13 | 微软技术许可有限责任公司 | 构建虚拟主板和虚拟存储设备 |
CN115225623A (zh) * | 2022-07-20 | 2022-10-21 | 贵阳语玩科技有限公司 | 基于Unity引擎的网络图片加载方法、装置及介质 |
-
2005
- 2005-11-22 CN CNB2005100198600A patent/CN100477664C/zh not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997033B (zh) * | 2006-12-28 | 2010-11-24 | 华中科技大学 | 一种用于网络存储的方法及其系统 |
CN101335765B (zh) * | 2008-07-25 | 2010-12-29 | 华中科技大学 | 基于移动缓存的存储服务中间件 |
CN102025751A (zh) * | 2009-09-21 | 2011-04-20 | 深圳市闪联信息技术有限公司 | 一种远程访问数据的方法、装置和系统 |
CN102025751B (zh) * | 2009-09-21 | 2013-04-24 | 北京闪联云视信息技术有限公司 | 一种远程访问数据的方法、装置和系统 |
CN110119303A (zh) * | 2013-11-12 | 2019-08-13 | 微软技术许可有限责任公司 | 构建虚拟主板和虚拟存储设备 |
CN110119303B (zh) * | 2013-11-12 | 2023-07-11 | 微软技术许可有限责任公司 | 构建虚拟主板和虚拟存储设备 |
CN103763364A (zh) * | 2014-01-15 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种数据访问方法及微型存储服务器 |
CN103763364B (zh) * | 2014-01-15 | 2017-05-24 | 浪潮(北京)电子信息产业有限公司 | 一种数据访问方法及微型存储服务器 |
CN115225623A (zh) * | 2022-07-20 | 2022-10-21 | 贵阳语玩科技有限公司 | 基于Unity引擎的网络图片加载方法、装置及介质 |
CN115225623B (zh) * | 2022-07-20 | 2023-08-29 | 贵阳语玩科技有限公司 | 基于Unity引擎的网络图片加载方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100477664C (zh) | 2009-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210399996A1 (en) | Virtual computing services deployment network | |
US6535518B1 (en) | System for bypassing a server to achieve higher throughput between data network and data storage system | |
CN1212574C (zh) | 使用本地标识符的端节点分区 | |
CN1723434A (zh) | 用于可扩展网络附接存储系统的装置和方法 | |
CN1761257A (zh) | 基于虚拟接口的存储系统 | |
US20060294234A1 (en) | Zero-copy network and file offload for web and application servers | |
US20030200222A1 (en) | File Storage system having separation of components | |
CN1795446A (zh) | 计算机集群中的数据采集 | |
CN1514977A (zh) | 根据共享属性而由压缩的队列对来建立多重虚拟队列对的配置 | |
JP2008542887A5 (zh) | ||
CN1561489A (zh) | 计算机网络内的数据块存储 | |
JP2003523552A (ja) | クライアントとサーバ間の接続を管理するためのシステムおよび方法 | |
CN113039767B (zh) | 超融合存储中的分布式iscsi目标的主动-主动架构 | |
CN110830574B (zh) | 一种基于docker容器实现内网负载均衡的方法 | |
CN102868727A (zh) | 一种实现逻辑卷高可用性的方法 | |
US20110314171A1 (en) | System and method for providing pooling or dynamic allocation of connection context data | |
US20050132327A1 (en) | Software development environment | |
US20120226307A1 (en) | Devices and methods for reshaping cartilage structures | |
CN1158617C (zh) | 一种本地无操作系统的网络计算机 | |
CN1556609A (zh) | 移动机器人网络化控制平台装置 | |
CN1815458A (zh) | 提供用于i/o适配器的队列对的方法、系统和存储介质 | |
CN1220950C (zh) | 外置式多通道网络磁盘阵列控制装置及其使用的协议适配方法 | |
CN1679015A (zh) | 用于独立于带宽延迟产品的tcp/ip卸载的系统和方法 | |
JP5524606B2 (ja) | 仮想化環境におけるモジュール間の通信方法、情報処理装置およびその制御方法、クライアント装置、情報処理システム、プログラム | |
CN1203427C (zh) | 一种具有tcp连接容错功能的负载平衡调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090408 Termination date: 20201122 |