远程存储的方法及其系统及客户端的制作方法

文档序号:7758334阅读:121来源:国知局
专利名称:远程存储的方法及其系统及客户端的制作方法
技术领域
本发明涉及通信领域,特别涉及通信领域中的存储技术。
背景技术
在已有的存储系统中,主要有两种模式网络附加存储器(NetworkAttached Storage,简称“NAS”)模式和存储区域网(Storage Area Network,简称“SAN”)模式。其中,NAS通常被定义为一种特殊的专用数据存储服务器,包括存储器件(例如磁 盘阵列、CD/DVD驱动器、磁带驱动器或可移动的存储介质)和内嵌系统软件,可提供跨平台 文件共享功能。NAS通常在一个局域网(LocalArea Network,简称“LAN”)上占有自己的节 点,无需应用服务器的干预,允许用户在网络上存取数据,在这种配置中,NAS集中管理和处 理网络上的所有数据,将负载从应用或企业服务器上卸载下来,有效降低总拥有成本,保护 用户投资。其原理如图1所示,NAS在网络上传输的是文件片段,在服务器上的存储方式是 文件目录结构。NAS具备以下优点(1)易于备份,如果服务器上出现硬件损坏(比如硬盘扇区损坏),只会损坏部分 文件。(2)适合共享数据存储,数据容易实现共享。SAN是计算机信息处理技术中的一种架构,它将服务器和远程的计算机存储设备 (如磁盘阵列、磁带库)连接起来,使得这些存储设备看起来就像是本地一样。其原理如图 2所示,SAN在网络上传输的是扇区数据,在服务器上的存储方式是映像文件。SAN具备以 下优点(1)在客户端上表示为操作系统的原生存储设备,数据的私密性较好。(2)传输的速度较快。(3)适合个性存储,数据较易实现私密性。(4) 一般实做为硬件,比如刀片式ISCSI Server,布署比较简单。 然而,无论是NAS还是SAN,都有其各自的缺点。比如说,NAS的缺点是(1)在客户机上表示为共享盘/网络邻居(Windows)/Samba(Linux),因为是共享 的数据,很难做到数据的私密性。(2)传输的速度较慢。(3) 一般实做为软件,比如FTP Server/Samba/....,较难硬件化;布署时需要一 定专业知识。SAN的缺点是(1)由于在服务器上表现为映像文件,个头都比较大,直接备份基本上不可能。(2)数据不容易在不同用户之间共享。(3)传输的是扇区数据,未加密,极有可能被从网络层捕捉。也就是说,无论是选用NAS作为远程存储方式,还是选用SAN作为远程存储方式, 都存在各自的困境,无法将NAS和SAN的优势进行结合。

发明内容
本发明的目的在于提供一种远程存储的方法及其系统及客户端,使得多个用户可 以很方便的共享同一文件和目录,在服务器上存储的是目录结构,易于备份;在客户机上是 操作系统原生设备,具有很好的私密性,有效结合了 NAS和SAN的优势。为解决上述技术问题,本发明的实施方式提供了一种远程存储的方法,包含以下 步骤在服务器端以网络附加存储器NAS方式对客户端的内容进行存储,在客户端将所 述服务器端上存储的内容映射到虚拟磁盘中;当所述客户端的用户操作所述虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇 区级请求之前进行截获,并将截获的所述操作请求传输给所述服务器端;所述服务器端向所述客户端响应所述操作请求。本发明的实施方式还提供了一种远程存储系统,包含服务器端和客户端;所述服务器端包含服务器文件系统模块,用于以网络附加存储器NAS方式对客 户端的内容进行存储,并根据来自所述客户端的操作请求,向所述客户端响应所述操作请 求;所述客户端包含解释模块和传输模块;所述解释模块用于将所述服务器端上存储的内容映射到虚拟磁盘中,并在所述客 户端的用户操作所述虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇区级请求之前进行 截获;所述传输模块用于将所述解释模块截获的所述操作请求传输给所述服务器端。本发明实施方式相对于现有技术而言,在存储服务端实现NAS的结构,在客户端 虚拟出磁盘,该虚拟磁盘上映射有服务器端上存储的内容,通过将对该虚拟磁盘的操作请 求在到达扇区级请求之前进行截获并传输给服务器端,能够保证对该虚拟磁盘的操作请求 仍是文件片段,传输的也是文件片段,从而使得服务器端可以正确处理该操作请求。也就是 说,形成了一种在客户端是SAN设备(客户端使用原生设备而非共享设备,系统以为是一个 本地盘),在服务端是NAS的全新远程存储方式。完美地解决了 SAN和NAS独立存储服务器 的困境,因而相对于SAN存储模式或NAS存储模式而言,具备以下优势(1)在客户端上是操作系统原生设备,私密性很好;(2)传输速度较快(稍慢于SAN,快于NAS);(3)在服务器上存储的是目录结构,易于备份。(4)服务器端和客户端一起实做私有数据和共享数据模型,非常简捷地实现个性 存储和共有存储。另外,客户端在将操作请求传输给服务器端时,需要对操作请求进行加密传输,保 证了数据在网络上以密文的形式安全收发,使得传输数据的保密性极好。另外,服务器端向客户端响应操作请求之前,还需要判断该操作请求是否在该客 户端用户的权限之内,如果在该客户端用户的权限之内,则再向客户端响应操作请求的结 果;如果不在该客户端用户的权限之内,则向客户端返回错误提示。通过对用户的权限进行 管理,使得用户可以独享文件及目录,或是与其他用户或用户群共享同一个或多个文件及目录,并可以在共享的文件及目录上享有相同或不同的操作方式许可。另外,对用户的权限信息可以进行缓存,需要判断操作请求是否在客户端的用户 的权限之内时,可以直接根据缓存的权限信息进行该判断,从而有效加快了对远程存储文 件的操作速度。


图1是根据现有技术中的NAS原理示意图;图2是根据现有技术中的SAN原理示意图;图3是根据本发明第一实施方式的远程存储的方法流程图;图4是根据本发明第一实施方式中的截获操作请求并传输给服务器端的示意图;图5是根据本发明第一实施方式的远程存储的方法示意图;图6是根据本发明第三实施方式的远程存储系统的结构示意图;图7是根据本发明第四实施方式的远程存储系统的结构示意图。
具体实施例方式本发明的第一实施方式涉及一种远程存储的方法。具体流程如图3所示。在本实 施方式中,远程存储的服务器端以NAS方式对客户端的内容进行存储。在步骤301中,启动服务器端和客户端。本步骤属于本领域的常规手段,在此不再 赘述。接着,在步骤302中,用户请求登录服务器端。比如说,用户通过用户名、用户密码 向服务器端请求登录。接着,在步骤303中,服务器端决策是否响应用户的登录。如果响应用户的登录, 则进入步骤304 ;如果不响应用户的登录,则回到步骤302。比如说,服务器端在接收到用户 的登录请求后,需要根据该用户的用户名、用户密码对该用户进行身份验证,如果身份验证 未通过,则将决定该不响应该用户的登录,回到步骤302 ;如果身份验证通过,则将响应用 户的登录,进入步骤304。在步骤304中,客户端挂载用户盘。在本实施方式中,客户端会使用文件系统驱动 来虚拟出磁盘,将服务器端上存储的内容映射到该虚拟磁盘中。也就是说,对客户端的用户 而言,相当于以SAN的方式实现远程存储。因此,在本步骤中,客户端挂载的用户盘中包含 了映射有服务器端上存储内容的虚拟磁盘。接着,在步骤305中,当客户端的用户需要对虚拟磁盘进行操作时,客户端将用户 在客户端对虚拟磁盘的操作请求在到达扇区级请求之前进行截获,并将截获的操作请求传 输给服务器端,如图4所示。比如说,客户端的用户在需要对虚拟磁盘中的文件或目录进行操作时,客户端可 以从磁盘驱动(Driver)中利用FUSE/Linux (Linux下的用户态文件系统),或者从磁盘驱动 (Driver)中利用User Mode Driver/Windows (Windows下的用户模式驱动),将对虚拟磁盘 的操作请求截获后传输给服务器端。接着,在步骤306中,服务器端根据来自客户端的操作请求找到该操作请求所针 对的文件,并判断该操作请求是否在该用户的权限之内。如果判定该操作请求在该用户的权限之内,则进入步骤307,如果判定该操作请求不在该用户的权限之内,则进入步骤308。具体地说,在服务器端中预先设置各用户的权限信息,包括各用户能够单独进行 操作的内容,和/或能够与其他用户共享操作的内容的权限信息。当服务器端收到来自客 户端的操作请求时,根据预先设置的权限信息判断操作请求是否在该客户端的用户的权限 之内。如果在该客户端的用户的权限之内,则进入步骤307 ;如果不在该客户端的用户的权 限之内,则进入步骤308。通过对用户的权限进行管理,使得用户可以独享文件及目录,或是 与其他用户或用户群共享同一个或多个文件及目录,并可以在共享的文件及目录上享有相 同或不同的操作方式许可。在步骤307中,服务器端向客户端响应操作请求,即服务器端响应用户对文件或 目录的操作。由于用户在客户端对文件和目录的操作请求,还没有到扇区级请求之前,已经 被客户端截获。此时,请求的还是文件片段,所以传输的也是文件片段。而服务器端本身就 是以NAS方式对客户端的内容进行存储的,因此本实施方式中服务器端对客户端的操作请 求的响应,与现有的NAS中服务器端对客户端的操作请求的响应相同,在此不再赘述。而当 服务器端把请求的结果返回给客户端后,客户端驱动返回WINDOWS文件系统请求,这样就 完成了一次文件请求操作。在用户看到,这和操作本地文件一模一样,如图5所示。如果在步骤306,判定操作请求不在该客户端的用户的权限之内,则在步骤308 中,服务器端向客户端返回错误提示。不难发现,在本实施方式中形成了一种在客户端是SAN设备(客户端使用原生设 备而非共享设备,系统以为是一个本地盘),在服务端是NAS的全新远程存储方式。用户在 客户端看到文件和目录存在于用户盘(本地盘设备)中,而在服务端,用户的文件和目录也 以文件的本来结构和面貌存储。完美地解决了 SAN和NAS独立存储服务器的困境,因而相 对于SAN存储模式或NAS存储模式而言,具备以下优势(1)在客户端上是操作系统原生设备,私密性很好;(2)传输速度较快(稍慢于SAN,快于NAS);(3)在服务器上存储的是目录结构,易于备份。(4)服务器端和客户端一起实做私有数据和共享数据模型,非常简捷地实现个性 存储和共有存储。本发明的第二实施方式涉及一种远程存储的方法。第二实施方式在第一实施方式 的基础上进行了改进,主要改进之处在于在第一实施方式中,在步骤305中,当客户端的用户需要对虚拟磁盘进行操作时, 客户端将用户在客户端对虚拟磁盘的操作请求在到达扇区级请求之前进行截获,并直接将 截获的操作请求传输给服务器端。而在本实施方式中,需要将截获的操作请求进行加密,得到密文形式的操作请求, 并将密文形式的操作请求传输给服务器端。。也就是说,客户端从磁盘驱动(Driver)中利 用FUSE/Linux,或者User Mode Driver/Windows,将磁盘访问请求转换为加密文件片段通 过网络发送。保证了数据在网络上以密文的形式安全收发,使得传输数据的保密性极好。另外,在本实施方式中,还可以在服务器端中对预先设置的权限信息进行缓存,需 要判断操作请求是否在客户端的用户的权限之内时,可以直接根据缓存的权限信息进行该 判断,从而有效加快了对远程存储文件的操作速度。
此外,本领域技术人员可以理解,上面各种方法的步骤划分,只是为了描述清楚, 实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的 逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入 无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。本发明第三实施方式涉及一种远程存储系统,如图6所示,包含解释模块、传输模 块、安全管理模块、服务器文件系统模块。其中,服务器文件系统模块和安全管理模块位于服务器端中。服务器文件系统模 块用于以NAS方式对客户端的内容进行存储,并根据来自客户端的操作请求,向客户端响 应操作请求。安全管理模块用于判断操作请求是否在客户端的用户的权限之内。安全管理 模块在判定操作请求在客户端的用户的权限之内时,指示服务器文件系统模块根据来自客 户端的操作请求,向客户端响应操作请求;安全管理模块在判定操作请求不在客户端的用 户的权限之内时,指示服务器文件系统模块向客户端返回错误提示。安全管理模块根据预 先设置的各用户能够单独进行操作的内容和/或能够与其他用户共享操作的内容的权限 信息,对操作请求是否在客户端的用户的权限之内进行判断。也就是说,安全管理模块可以 通过对用户的管理、群的管理、文件权限的管理、会话的管理等等方式,使得多用户操作同 一文件或目录时,可以以相同或不同的权限,实现个性化操作和共享数据。解释模块和传输模块位于客户端中。解释模块用于将服务器端上存储的内容映射 到虚拟磁盘中,并在客户端的用户操作虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇 区级请求之前进行截获。传输模块用于将解释模块截获的操作请求传输给服务器端。也就 是说,解释模块事实上是模拟了一个磁盘,并把服务器端上的文件映射到此磁盘中,把用户 对这些文件的操作反应到服务器端。对用户来说,它解释的是服务器端的文件和权限结果, 对服务器段来说,它解释的是用户的请求。可以说它是模拟磁盘从而使系统有一个良好的 用户接口界面。当然,还可以通过文件系统响应实现用户使用文件的基本功能结构,为实现集中 存储并使维护文件便为方便,实现用户使用文件的基本功能结构的文件系统响应属于本领 域的公知常识,在此不再赘述。不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与 第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有 效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在 第一实施方式中。值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一 个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单 元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明 所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单兀。本发明第四实施方式涉及一种远程存储系统。第四实施方式在第三实施方式的基 础上进行了改进,主要改进之处在于在第三实施方式中,传输模块直接将解释模块截获的操作请求传输给了服务器 端。而在本发明第四实施方式中,传输模块包含以下子模块
加密子模块,用于将截获的操作请求进行加密,得到密文形式的操作请求;安全传输子模块,用于将密文形式的操作请求传输给服务器端。也就是说,数据在网络上是以密文的形式安全收发,因此可使得传输数据的保密 性极好。另外,在本实施方式中,服务器端还包含缓存模块,用于缓存预先设置的权限信 息。安全管理模块通过与缓存模块的交互,获取预先设置的权限信息,如图7所示。上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和 细节上对其作各种改变,而不偏离本发明的精神和范围。
权利要求
一种远程存储的方法,其特征在于,包含以下步骤在服务器端以网络附加存储器NAS方式对客户端的内容进行存储,在客户端将所述服务器端上存储的内容映射到虚拟磁盘中;当所述客户端的用户操作所述虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇区级请求之前进行截获,并将截获的所述操作请求传输给所述服务器端;所述服务器端向所述客户端响应所述操作请求。
2.根据权利要求1所述的远程存储的方法,其特征在于,所述将截获的所述操作请求 传输给所述服务器端的步骤中,包含以下子步骤将截获的所述操作请求进行加密,得到密文形式的操作请求; 将所述密文形式的操作请求传输给所述服务器端。
3.根据权利要求1所述的远程存储的方法,其特征在于,在所述服务器端向所述客户 端响应所述操作请求之前,还包含以下步骤所述服务器端判断所述操作请求是否在所述客户端的用户的权限之内; 如果判定在所述客户端的用户的权限之内,则所述服务器端再向所述客户端响应所述 操作请求;如果判定不在所述客户端的用户的权限之内,则所述服务器端向所述客户端返回错误 提示。
4.根据权利要求3所述的远程存储的方法,其特征在于,所述服务器端通过以下方式 判断所述操作请求是否在所述客户端的用户的权限之内在所述服务器端中预先设置各用户能够单独进行操作的内容和/或能够与其他用户 共享操作的内容的权限信息;在需要判断所述操作请求是否在所述客户端的用户的权限之内时,根据所述预先设置 的权限信息,进行所述判断。
5.根据权利要求4所述的远程存储的方法,其特征在于,还包含以下步骤 在所述服务器端中对所述预先设置的权限信息进行缓存;在需要判断所述操作请求是否在所述客户端的用户的权限之内时,根据所述缓存的权 限信息,进行所述判断。
6.一种远程存储系统,包含服务器端和客户端,其特征在于,所述服务器端包含服务器文件系统模块,用于以网络附加存储器NAS方式对客户端 的内容进行存储,并根据来自所述客户端的操作请求,向所述客户端响应所述操作请求; 所述客户端包含解释模块和传输模块;所述解释模块用于将所述服务器端上存储的内容映射到虚拟磁盘中,并在所述客户 端的用户操作所述虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇区级请求之前进行截-M-犾;所述传输模块用于将所述解释模块截获的所述操作请求传输给所述服务器端。
7.根据权利要求6所述的远程存储系统,其特征在于,所述传输模块包含以下子模块 加密子模块,用于将截获的所述操作请求进行加密,得到密文形式的操作请求;安全传输子模块,用于将所述密文形式的操作请求传输给所述服务器端。
8.根据权利要求6所述的远程存储系统,其特征在于,所述服务器端还包含安全管理模块,用于判断所述操作请求是否在所述客户端的用户的权限之内;所述安全管理模块在判定所述操作请求在所述客户端的用户的权限之内时,指示所述 服务器文件系统模块根据来自所述客户端的操作请求,向所述客户端响应所述操作请求; 所述安全管理模块在判定所述操作请求不在所述客户端的用户的权限之内时,指示所述服 务器文件系统模块向所述客户端返回错误提示。
9.根据权利要求8所述的远程存储系统,其特征在于,所述安全管理模块根据所述预先设置的各用户能够单独进行操作的内容和/或能够 与其他用户共享操作的内容的权限信息,对所述操作请求是否在所述客户端的用户的权限 之内进行判断。
10.根据权利要求9所述的远程存储系统,其特征在于,所述服务器端还包含缓存模块,用于缓存所述预先设置的权限信息;所述安全管理模块通过与所述缓存模块的交互,获取所述预先设置的权限信息。
11.一种客户端,其特征在于,包含所述解释模块,用于将服务器端上存储的内容映射到虚拟磁盘中,并在所述客户端的 用户操作所述虚拟磁盘时,将对该虚拟磁盘的操作请求在到达扇区级请求之前进行截获;传输模块,用于将所述解释模块截获的所述操作请求传输给所述服务器端。
12.根据权利要求11所述的客户端,其特征在于,所述传输模块包含以下子模块加密子模块,用于将截获的所述操作请求进行加密,得到密文形式的操作请求;安全传输子模块,用于将所述密文形式的操作请求传输给所述服务器端。
全文摘要
本发明涉及通信领域,公开了一种远程存储的方法及其系统及客户端。本发明中,在存储服务端实现NAS的结构,在客户端虚拟出磁盘,该虚拟磁盘上映射有服务器端上存储的内容,通过将对该虚拟磁盘的操作请求在到达扇区级请求之前进行截获并传输给服务器端,使得服务器端可以正确处理该操作请求。形成了一种在客户端是SAN设备(客户端使用原生设备而非共享设备,系统以为是一个本地盘),在服务端是NAS的全新远程存储方式,有效结合了NAS和SAN的优势,使得多个用户可以很方便的共享同一文件和目录。
文档编号H04L29/08GK101986651SQ20101026570
公开日2011年3月16日 申请日期2010年8月26日 优先权日2010年8月26日
发明者张玉强, 甘德新, 鄢飞 申请人:上海网众信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1