虚拟网络硬盘挂载方法、局域网服务器、用户终端和系统与流程

文档序号:12600658阅读:769来源:国知局
虚拟网络硬盘挂载方法、局域网服务器、用户终端和系统与流程

本发明涉及数据存储技术领域,特别是指一种虚拟网络硬盘挂载方法、局域网服务器、用户终端和系统。



背景技术:

信息化时代的发展,使得人们对计算资源的需求不断增长,伴随而来的是虚拟化技术的同步发展,人们对于虚拟硬盘的应用需求的增长,其中尤以企业对虚拟硬盘的需求为最。在对虚拟硬盘的应用中,尤其企业中,保证数据的一致与同步、以及防止用户访问冲突是十分重要的,并且现有的虚拟硬盘是基于虚拟文件系统,开放给用户的都是某种文件夹视图,用户无法控制文件系统的格式,分区信息等。



技术实现要素:

本发明要解决的技术问题是提供一种虚拟网络硬盘挂载方法、局域网服务器、用户终端和系统,以解决数据产生不一致、用户访问冲突,用户无法控制文件系统的格式、分区信息等的问题。

为解决上述技术问题,本发明的实施例提供一种虚拟网络硬盘挂载方法,应用于局域网服务器,所述方法包括:

接收局域网内第一用户终端发送的挂载请求;

根据所述挂载请求,判断是否允许所述第一用户终端挂载;

在允许所述第一用户终端挂载时,为所述第一用户终端映射生成第一虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

其中,所述根据所述挂载请求,判断是否允许所述第一用户终端挂载的步骤包括:

查询当前是否有第一用户终端以外的其他用户终端正在挂载,并在当前没 有其他用户终端挂载时,确定允许所述第一用户终端挂载。

其中,所述根据所述挂载请求,判断是否允许所述第一用户终端挂载的步骤还包括:

在当前有其他用户终端挂载时,向所述其他用户终端发送第一卸载请求,并在所述其他用户终端根据所述卸载请求成功卸载时,确定允许所述第一用户终端挂载。

进一步的,当所述第一用户终端成功挂载并完成读写操作后,所述方法还包括:

接收所述第一用户终端发送的第二卸载请求;

根据所述第二卸载请求,使所述第一用户终端上传当前修改数据至所述局域网服务器,确定允许所述第一用户终端卸载。

其中,所述允许所述第一用户终端挂载时,为所述第一用户终端映射生成第一虚拟网络硬盘之后,所述方法还包括:

判断所述第一虚拟网络硬盘上的数据是否在已经所述第一用户终端上存在缓存;

当判断结果为是,将所述局域网服务器的数据同步更新至所述第一用户终端。

优选的,所述将所述局域网服务器的数据同步更新至所述用户终端的步骤,包括:

判断所述第一虚拟网络硬盘的主引导记录MBR数据是否为空,当所述MBR数据不为空时,更新所述局域网服务器的数据至所述用户终端。

本发明的实施例还提供一种虚拟网络硬盘挂载方法,应用于用户终端,所述方法包括:

向局域网服务器发送挂载请求,使所述局域网服务器根据所述挂载请求判断是否所述用户终端挂载;

接收所述局域网服务器允许挂载的挂载请求应答;

根据所述应答在本地映射生成虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

本发明的实施例还提供一种局域网服务器,所述局域网服务器包括:

第一接收模块,用于接收局域网内第一用户终端发送的挂载请求;

第一判断模块,用于根据所述挂载请求,判断是否允许所述第一用户终端挂载;

挂载模块,用于在允许所述第一用户终端挂载时,为所述第一用户终端映射生成第一虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

其中,所述第一判断模块包括:

第一确定单元,用于查询当前是否有第一用户终端以外的其他用户终端正在挂载,并在当前没有其他用户终端挂载时,确定允许所述第一用户终端挂载。

其中,所述第一判断模块还包括:

第二确定单元,用于在当前有其他用户终端挂载时,向所述其他用户终端发送第一卸载请求,并在所述其他用户终端根据所述卸载请求成功卸载时,确定允许所述第一用户终端挂载。

进一步的,所述局域网服务器还包括:

第二接收模块,用于所述第一用户终端成功挂载并完成读写操作后,接收所述第一用户终端发送的第二卸载请求;

卸载模块,用于根据所述第二卸载请求,使所述第一用户终端上传当前修改数据至所述局域网服务器,确定允许所述第一用户终端卸载。

其中,所述局域网服务器还包括:

第二判断模块,用于判断所述第一虚拟网络硬盘上的数据是否在已经所述第一用户终端上存在缓存;

更新模块,用于当判断结果为是,将所述局域网服务器的数据同步更新至所述第一用户终端。

优选的,所述更新模块包括:

更新单元,用于判断所述第一虚拟网络硬盘的主引导记录MBR数据是否为空,当所述MBR数据不为空时,更新所述局域网服务器的数据至所述用户终端。

本发明的实施例还提供一种用户终端,所述用户终端包括:

发送模块,用于向局域网服务器发送挂载请求,使所述局域网服务器根据 所述挂载请求判断是否所述用户终端挂载;

接收模块,用于接收所述局域网服务器允许挂载的挂载请求应答;

挂载模块,用于根据所述应答在本地映射生成虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

本发明的实施例还提供一种虚拟网络硬盘的挂载系统,包括如上述任一项所述的局域网服务器和如上述所述的用户终端。

本发明的上述技术方案至少包括以下有益效果:

本发明的上述技术方案通过接收局域网内用户终端发送的挂载请求;局域网服务器根据挂载请求,判断是否允许用户终端挂载,在允许用户终端挂载时,在用户终端的本地映射生成虚拟网络硬盘,且一个虚拟网络硬盘同时只能在一个用户终端上挂载,保证了数据的一致,并防止用户访问冲突;并且该虚拟网络硬盘在用户终端本地映射生成,即在本地提供一个完整地硬盘,使用户可以直接对数据进行操作。

附图说明

图1表示本发明实施例的虚拟网络硬盘挂载方法应用于局域网服务器的流程框图;

图2表示本发明实施例的虚拟网络硬盘挂载方法应用于用户终端的流程框图;

图3表示本发明实施例的局域网服务器的结构框图;

图4表示本发明实施例的用户终端的结构框图;

图5表示本发明实施例的虚拟网络硬盘的挂载系统的模块示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明针对现有的问题,提供一种虚拟网络硬盘挂载方法、局域网服务器、用户终端和系统,通过接收局域网内用户终端发送的挂载请求;局域网服务器根据挂载请求,判断是否允许用户终端挂载,在允许用户终端挂载时,在用户 终端的本地映射生成虚拟网络硬盘,且一个虚拟网络硬盘同时只能在一个用户终端上挂载,保证了数据的一致,并防止用户访问冲突;并且该虚拟网络硬盘在用户终端本地映射生成,即在本地提供一个完整地硬盘,使用户可以直接对数据进行操作。

方法实施例

如图1所示为本发明实施例的虚拟网络硬盘挂载方法应用于局域网服务器的流程框图,本发明实施例提供一种虚拟网络硬盘挂载方法,应用于局域网服务器,通过局域网服务器对用户终端的挂载请求进行接收并判断用户终端是否可以进行挂载,在允许挂载后在用户终端本地映射生成虚拟网络硬盘,所述方法包括:

步骤101,接收局域网内第一用户终端发送的挂载请求。

这里,在局域网内,局域网服务器与用户终端可以采用包括控制通道和数据通道的私有协议,该控制通道采用二进制消息传输控制协议(Transmission Control Protocol,Tcp)连接,数据通道采用二进制编码http消息连接,局域网服务器通过该控制通道接收用户终端发送的挂载请求。其中,这里的第一用户终端表示当前请求挂载的用户终端。

步骤102,根据挂载请求,判断是否允许第一用户终端挂载。

步骤103,在允许第一用户终端挂载时,为第一用户终端映射生成第一虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

这里,当局域网服务器允许用户终端进行挂载,将局域网服务器上对应的数据文件在用户终端的本地映射生成虚拟网络硬盘,使虚拟网络硬盘在用户终端本地以硬盘形成呈现,这样用户可在用户终端上对虚拟网络硬盘中的数据直接进行本地操作,即用户每次数据读写都是在本地完成。当然,实际挂载动作通过总线驱动实现。局域网服务器通过数据通道将数据传输至用户终端上映射生成的虚拟网络硬盘中。在局域网服务器中包括有实际数据存储的位置,分配空间的大小,登录的终端信息,当前虚拟网络盘状态等信息。需要说明的是,在局域网服务器上存储有多个虚拟网络硬盘文件,每一虚拟网络硬盘文件可归属于多个用户,而每一用户可在多个不同用户终端登录在线,但同时只能允许一个用户将对应的虚拟网络硬盘文件在一个用户终端上成功挂载,映射生成虚 拟网络硬盘,即,一个虚拟网络硬盘同时只能在一个用户终端上挂载,进而对虚拟网络硬盘中的数据进行读写操作。这样,以保证用户访问不会发生冲突,同时也保证在用户对虚拟网络硬盘的数据进行修改更新后的数据一致。

其中,作为本发明一种可选的实施方式,在步骤102中,根据挂载请求,判断是否允许第一用户终端挂载的步骤包括:

查询当前是否有第一用户终端以外的其他用户终端正在挂载,并在当前没有其他用户终端挂载时,确定允许第一用户终端挂载。

这里,局域网服务器判断是否允许用户终端进行挂载时,即对当前是否有其他用户终端挂载的情况进行查询,确定当前没有其他用户终端挂载后,局域网服务器即确定允许该用户终端挂载。

其中,作为本发明一种可选的实施方式,在步骤102中,根据挂载请求,判断是否允许第一用户终端挂载的步骤还可包括:

在当前有其他用户终端挂载时,向其他用户终端发送第一卸载请求,并在其他用户终端根据卸载请求成功卸载时,确定允许第一用户终端挂载。

这里,当局域网内已有其他用户终端挂载时,局域网服务器向包括第一用户终端在内的当前在线的所有用户终端发送已经挂载的用户终端的MAC(Medium/Media Access Control)地址,同时向已经挂载的用户终端发送一个卸载请求,提示当前在线的用户终端已经有用户终端正在挂载,当没有用户挂载时,该MAC地址为空。这里该已经挂载的用户终端基于自身当前虚拟网络硬盘的工作状态进行判断,其中虚拟网络硬盘的工作状态包括空闲、读取中以及写入中。当该已经挂载的用户终端的虚拟网络硬盘处在空闲状态时,局域网服务器接收到其发送的接受卸载应答,在该已经挂载的用户终端根据卸载请求成功卸载时,局域网服务器确定允许第一用户终端挂载。当该已经挂载的用户终端的虚拟网络硬盘处在非空闲状态时,局域网服务器接收到拒绝卸载的应答,则局域网服务器向第一用户终端发送挂载请求失败的应答,使第一用户终端放弃挂载。

作为本发明实施例进一步的实施方式,当所述第一用户终端挂载成功并完成本地读写操作后,所述方法还可包括:

接收第一用户终端发送的第二卸载请求。

这里,当用户终端成功挂载,且用户在用户终端本地完成读写操作后,用户通过用户终端发出第二卸载请求,局域网服务器通过控制通道接收到用户终端的第二卸载请求。这里,第二卸载请求即为用户终端发出的卸载请求,以区别前述实施例中由局域网服务器发出的第一卸载请求。

根据第二卸载请求,使第一用户终端上传当前修改数据至局域网服务器,确定允许第一用户终端卸载。

这里,为确保当前虚拟网络硬盘内的数据修改后,局域网服务器内数据的一致性,局域网服务器接收到用户终端发送的第二卸载请求后,使用户终端对当前修改数据同步至局域网服务器。

其中,作为本发明的一种可选实施方式,在步骤103,允许第一用户终端挂载时,为第一用户终端映射生成第一虚拟网络硬盘之后,所述方法还可包括:

判断第一虚拟网络硬盘上的数据是否在已经第一用户终端上存在缓存。

这里,在用户终端上挂载的虚拟网络硬盘包括网络盘、半缓存网络盘以及全缓存网络盘等几种类型,当虚拟网络硬盘属于半缓存网络盘或全缓存网络盘类型时,在用户终端内存和本地硬盘中存在数据缓存;当虚拟网络硬盘属于全缓存网络盘类型时,在用户终端上可以进行离线使用;而当虚拟网络硬盘属于网络盘类型时,在用户终端上每次读写都需要消耗网络流量。

当判断结果为是,将局域网服务器的数据同步更新至第一用户终端。

这里,当判断虚拟网络硬盘属于半缓存网络盘或者全缓存网络盘时,在用户终端上使用时需要将局域网服务器的数据同步更新到用户终端上,以保证数据的一致。

优选的,在上述实施方式中,将局域网服务器的数据同步更新至用户终端的步骤,包括:

判断第一虚拟网络硬盘的主引导记录数据(Master Boot Record,MBR)是否为空,当MBR数据不为空时,更新局域网服务器的数据至用户终端。

这里,由于虚拟网络硬盘是整个硬盘的虚拟化,对虚拟网络硬盘的MBR数据进行判断,当该MBR数据数据为空时,即局域网服务器的数据并未修改更新,局域网服务器不需要对用户终端上的数据进行更新,当MBR数据不为空时,更新局域网服务器的数据至用户终端,以确保数据的一致。

与前述应用于局域网服务器的虚拟网络硬盘挂载方法相对应的,如图2所示的本发明实施例的虚拟网络硬盘挂载方法应用于用户终端的流程框图,本发明的实施例还提供一种虚拟网络硬盘挂载方法,应用于用户终端,所述方法包括:

步骤201,向局域网服务器发送挂载请求,使局域网服务器根据挂载请求判断是否用户终端挂载。

这里,在局域网内,局域网服务器与用户终端可以采用包括控制通道和数据通道的私有协议,该控制通道采用二进制消息传输控制协议Tcp连接,数据通道采用二进制编码http消息连接,用户终端通过该控制通道向局域网服务器发送挂载请求。

步骤202,接收局域网服务器允许挂载的挂载请求应答。

这里,用户终端通过该控制通道接收局域网服务器发送的挂载请求应答。

步骤203,根据应答在本地映射生成虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

这里,用户终端接收到局域网服务器发送的一个MAC地址,并判断该MAC地址是否为用户终端本机的MAC地址,当判断为是时,用户终端执行挂载,在本地生成虚拟网络硬盘,这样用户可在用户终端上对虚拟网络硬盘中的数据直接进行本地操作,即用户每次数据读写都是在本地完成。需要说明的是,在局域网服务器上存储有多个虚拟网络硬盘文件,每一虚拟网络硬盘文件可归属于多个用户,而每一用户可在多个不同用户终端登录在线,但同时只能允许一个用户将对应的虚拟网络硬盘文件在一个用户终端上成功挂载,映射生成虚拟网络硬盘,即,一个虚拟网络硬盘同时只能在一个用户终端上挂载,进而对虚拟网络硬盘中的数据进行读写操作。这样,以保证用户访问不会发生冲突,同时也保证在用户对虚拟网络硬盘的数据进行修改更新后的数据一致。

装置实施例

如图3所示为本发明实施例的局域网服务器的结构框图,本发明实施例提供一种相应的局域网服务器,所述局域网服务器包括:

第一接收模块31,用于接收局域网内第一用户终端发送的挂载请求;

第一判断模块32,用于根据所述挂载请求,判断是否允许所述第一用户 终端挂载,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载;

挂载模块33,用于在允许所述第一用户终端挂载时,为所述第一用户终端映射生成第一虚拟网络硬盘。

其中,作为一种可选的实施方式,第一判断模块32包括:

第一确定单元,用于查询当前是否有第一用户终端以外的其他用户终端正在挂载,并在当前其他用户终端挂载时,确定允许第一用户终端挂载。

其中,作为一种可选的实施方式,第一判断模块32还可包括:

第二确定单元,用于在当前有其他用户终端挂载时,向其他用户终端发送第一卸载请求,并在其他用户终端根据卸载请求成功卸载时,确定允许第一用户终端挂载。

作为本发明实施例进一步的实施方式,局域网服务器还可包括:

第二接收模块,用于第一用户终端成功挂载并完成读写操作后,接收第一用户终端发送的第二卸载请求;

卸载模块,用于根据第二卸载请求,使第一用户终端上传当前修改数据至局域网服务器,确定允许第一用户终端卸载。

其中,作为本发明的一种可选实施方式,局域网服务器还可包括:

第二判断模块,用于判断第一虚拟网络硬盘上的数据是否在已经第一用户终端上存在缓存;

更新模块,用于当判断结果为是,将局域网服务器的数据同步更新至第一用户终端。

优选的,在上述实施方式中,更新模块可包括:

更新单元,用于判断第一虚拟网络硬盘的主引导记录MBR数据是否为空,当MBR数据不为空时,更新局域网服务器的数据至用户终端。

局域网服务器能够实现前述应用于局域网服务器的虚拟网络硬盘的挂载方法实施例中局域网服务器实现的各个过程,为避免重复,这里不再赘述。

与前述局域网服务器相对应的,如图4所示为本发明实施例的用户终端的结构框图,本发明实施例提供一种用户终端,所述用户终端包括:

发送模块,用于向局域网服务器发送挂载请求,使局域网服务器根据挂载请求判断是否用户终端挂载;

接收模块,用于接收局域网服务器允许挂载的挂载请求应答;

挂载模块,用于根据应答在本地映射生成虚拟网络硬盘,其中,一个虚拟网络硬盘同时只能在一个用户终端上挂载。

用户终端能够实现前述应用于用户终端的虚拟网络硬盘的挂载方法实施例中用户终端实现的各个过程,为避免重复,这里不再赘述。

需要说明的是,在上述各个实施例中,用户使用的用户终端包括有代理消息处理程序,并且安装有相关的虚拟网络硬盘驱动。

系统实施例

如图5所示为本发明实施例的虚拟网络硬盘的挂载系统的模块示意图。本发明的实施例还提供一种虚拟网络硬盘的挂载系统,包括如上述任一项所述的局域网服务器和如上述所述的用户终端。

本发明的上述实施例通过接收局域网内用户终端发送的挂载请求;局域网服务器根据挂载请求,判断是否允许用户终端挂载,在允许用户终端挂载时,在用户终端的本地映射生成虚拟网络硬盘,且局域网服务器同时只能允许一个用户终端挂载,保证了数据的一致,并防止用户访问冲突;并且该虚拟网络硬盘在用户终端本地映射生成,即在本地提供一个完整地硬盘,使用户可以直接对数据进行操作。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1