资源共享方法、装置、系统及终端、资源管理中心 技术领域
本发明涉及计算机分布式文件系统领域,具体而言,涉及一种用于资源共享的方法、装
置、系统及终端、资源管理中心。
背景技术
随着智能网络的高速发展,迫切需要解决个人计算机(Personal Computer,简称为PC)、
消费电器、移动终端在内的无线网络和有线网络的互联互通。例如,机顶盒、智能电视需要
访问PC中保存的音频、视频、图片;PC机也需要访问移动终端、智能电视中保存的音频、
视频、图片。
目前用于实现这些终端之间互联互通的方法有:
1、DLNA:由索尼、英特尔、微软等发起成立。旨在解决个人PC,消费电器,移动设备
在内的无线网络和有线网络的互联互通,使得数字媒体和内容服务的无限制的共享和增长成
为可能,目前成员公司已达280多家。DLNA并不是创造技术,而是形成一种解决的方案,
一种大家可以遵守的规范,重点关注于家庭数字娱乐领域。所以,其选择的各种技术和协议
都是目前所应用很广泛的技术和协议。使用这种方法进行文件共享的不足之处是:A、要求网
络内的终端都支持DLNA网络规范,如果终端不支持该规范,则需要通过其他方式(如USB
拷贝)将文件复制到支持DLNA网络规范的终端上;B、已经暴露出安全方面的问题;C、操
作烦琐。D、跨操作系统互联互通还有待加强。E、当设备位于不同局域网内时,DLNA还不
能实现互联互通。
2、利用windows、linux等操作系统的文件共享功能进行互联互通。这两种文件系统是典
型的文件服务器形式的共享文件系统。用户要共享的文件集中存放在某台文件服务器上,也
可以互为服务器相互提供文件共享服务。该方法的不足之处是:A、要求局域网的终端支持
windows、linux文件共享,这在windows系统上容易实现,但是不能将android系统和iOS系
统上的文件进行共享;B、这种方法一般是对整个目录进行共享,如果用户只希望共享单个文
件(如某张照片),就需要将单个文件复制到共享目录下,操作起来不方便;C、windows文
件共享存在安全漏洞,某些安全工具禁止使用该功能;D、如果计算机设备分别位于两个不同
局域网内,或者计算机设备分别位于局域网和广域网内,则不能进行文件共享。例如,同一
个家庭、企业、组织、单位内的成员,可能位于不同的局域网内,也可能分别位于局域网和
互联网内,其成员在物理上可能相距遥远,而成员之间需要进行协作、共享文件,此时,利
用上述方法不能进行文件共享。E、用户在访问共享文件时,需要知道共享文件所在的服务器
地址,还需要输入身份验证信息和共享目录地址。
3、利用存储云技术来进行文件共享,例如金山快盘、MSN SkyDrive虚拟磁盘、QQ网盘。
这些技术要求用户将共享的文件上传到服务商的存储云服务器上,并可以共享给好友。该方
法的不足之处是:A、用户需要将文件上传到服务器,当用户需要共享大文件时,会受到网络
传输速度的影响,上传时间长,可能出现断链的情况;本发明则不需要将共享的文件上传到
服务器上,而是将共享文件保存在本地终端中。B、受服务器提供的磁盘空间限制;业界一般
向用户提供5G的免费存储空间;C、用户隐私数据的安全性受到威胁。D、当前主流的云存
储服务,如金山快盘、MSN SkyDrive虚拟磁盘、QQ网盘,需要使用厂商提供的专用工具访
问存储云上的文件,用户不能通过标准的文件系统接口访问存储云上的资源。
发明内容
本发明提供了一种资源共享方法、装置、系统及终端、资源管理中心,以至少解决相关
技术中,文件共享需要知道共享的文件的位置,并且需要用户输入必要的身份验证信息,以
及不能跨物理网络、跨操作系统进行文件共享的问题。
根据本发明的一个方面,提供了一种资源共享方法,包括:利用终端上的资源共享装置,
将终端上拟共享的资源的描述信息上传至资源管理中心;通过资源管理中心将资源的描述信
息提供给其它终端的资源共享装置,供其它终端的资源共享装置以文件系统的方式展示上述
资源。
优选地,在将终端上拟共享的资源的描述信息上传至资源管理中心之前,上述方法还包
括:终端上的资源共享装置根据要共享的资源提取要共享的资源的关键字,并将关键字与要
共享的资源进行关联,保存到终端和/或资源管理中心,其中,资源的类型包括以下至少之一:
网页、图片、音频、视频、文档。
优选地,在终端上的资源共享装置根据要共享的资源提取要共享的资源的关键字,并将
关键字与要共享的资源进行关联,保存到终端和/或资源管理中心之后,上述方法还包括:终
端上的资源共享装置接受终端的用户根据实际情况修改的关键字。
优选地,在将终端上拟共享的资源的描述信息上传至资源管理中心之前,上述方法还包
括:接受用户输入的登录信息,向资源管理中心进行登录,并设置资源共享。在设置资源共
享时,可以指定能够访问所述资源的用户,以及所述用户对文件的操作权限。
优选地,上述资源包括以下至少之一:用户可访问的文件、用户创建的文件、用户使用
过的文件、用户访问过的网页、用户正在访问的文件。
优选地,终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局
域网和广域网内。
根据本发明的另一个方面,提供了一种资源共享方法,包括:利用终端上的资源共享装
置,通过资源管理中心获取其它终端共享的资源的描述信息,其中,资源的描述信息由其它
终端的资源共享装置上传至资源管理中心;以文件系统的方式展示其它终端共享的资源。
优选地,在通过资源管理中心获取其它终端共享的资源的描述信息之前,上述方法还包
括:终端上的资源共享装置分别向资源管理中心和/或其它终端发送搜索请求,其中,搜索请
求用于搜索其它终端和/或其它用户共享的资源,上述搜索请求包括待搜索资源的关键字;终
端上的资源共享装置接收到来自资源管理中心和/或其它终端的搜索结果,其中,搜索结果是
资源管理中心和/或其它终端在共享资源集合中搜索的满足关键字搜索条件的资源集合。
优选地,在以文件系统的方式展示其它终端共享的资源之后,上述方法还包括:终端上
的资源共享装置与资源管理中心和/或其它终端进行通信,通过文件系统访问其它终端共享给
终端的资源,并读写资源的内容。
优选地,以文件系统的方式展示其它终端共享的资源包括:终端上的资源共享装置提供
标准的文件系统接口;终端的应用程序利用标准的文件系统接口访问资源。
优选地,上述标准的文件系统接口运行于不同的操作系统中,上述操作系统包括:windows
操作系统、linux操作系统、iOS操作系统、AIX操作系统、Solaris操作系统和其它类unix操
作系统。
优选地,上述标准的文件系统接口满足POSIX文件系统标准,向应用程序提供以下至少
之一的接口:打开文件、关闭文件、读写文件、POSIX文件锁;当多个终端并发读写有权限
访问的共享资源时,使用POSIX文件锁防止读写冲突;终端修改共享资源后,其它终端读取
到修改后的资源内容。
优选地,其它终端共享的资源包括:用户在其它终端上将资源共享给自己后,在终端上
登录后能够访问的其它终端上的共享资源。
优选地,上述终端与上述其它终端位于同一个局域网内,或位于不同的局域网内,或分
别位于局域网和广域网内。
根据本发明的再一个方面,提供了一种资源共享方法,包括:资源管理中心通过终端上
的资源共享装置获取终端拟共享的资源的描述信息;资源管理中心将资源的描述信息提供给
其它终端上的资源共享装置,供其它终端上的资源共享装置以文件系统的方式展示资源。
优选地,在资源管理中心通过终端上的资源共享装置获取终端拟共享的资源的描述信息
之前,上述方法还包括:资源管理中心接受用户的注册,并保存用户的注册信息;资源管理
中心对登录的用户进行身份认证,接受合法用户的登录请求。
优选地,在资源管理中心通过终端上的资源共享装置获取终端拟共享的资源的描述信息
之前,上述方法还包括:资源管理中心接受用户添加其它用户为好友和/或与其它用户组成用
户组的请求,并保存用户的好友和/或用户所属的用户组信息。
优选地,如果终端无法通过点到点P2P方式与要访问的资源所在的其它终端直接通信,
上述方法还包括:资源管理中心提供数据传输中转服务供终端与其它终端进行通信,其中,
数据传输中转服务是资源管理中心将接收到的终端要发送给其它终端的数据转发到其它终端,
以及资源管理中心将接收到的其它终端要发送给终端的数据转发到终端。
优选地,终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局
域网和广域网内。
根据本发明的一个方面,提供了一种资源共享装置,应用于终端,包括:上传模块,用
于将拟共享的资源的描述信息上传至资源管理中心;第一获取模块,用于从资源管理中心获
取其它终端共享的资源的描述信息;展示模块,用于以文件系统的方式展示其它终端共享的
资源。
优选地,上述装置还包括:登录模块,用于接受用户输入的登录信息,并向资源管理中
心进行登录;资源共享模块,用于设置资源共享;提取模块,用于根据要共享的资源提取要
共享的资源的关键字,并将关键字与要共享的资源进行关联,保存到终端和/或资源管理中心,
其中,上述资源的类型包括以下至少之一:网页、图片、音频、视频、文档。
优选地,上述装置还包括:资源访问模块,用于与资源管理中心和/或其它终端进行通信,
通过文件系统访问其它终端共享给终端的资源,并读写资源的内容。
优选地,上述装置还包括:发送模块,用于分别向资源管理中心和/或其它终端发送搜索
请求,其中,上述搜索请求用于搜索其它终端和/或其它用户共享的资源,搜索请求包括待搜
索资源的关键字;接收模块,用于接收来自资源管理中心和/或其它终端的搜索结果,其中,
搜索结果是资源管理中心和/或其它终端在共享资源集合中搜索的满足关键字搜索条件的资源
集合。
优选地,终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局
域网和广域网内。
根据本发明的一个方面,提供了一种终端,该终端具有资源共享功能,该终端包括上述
任一种的资源共享装置。
根据本发明的一个方面,提供了一种资源管理中心,包括:第二获取模块,用于通过终
端上的资源共享装置获取终端拟共享的资源的描述信息;提供模块,用于将资源的描述信息
提供给其它终端上的资源共享装置,供其它终端上的资源共享装置以文件系统的方式展示资
源。
优选地,上述资源管理中心还包括:第一保存模块,用于接受用户的注册,并保存用户
的注册信息;认证模块,用于对登录的用户进行身份认证;第一接收模块,用于接受合法用
户的登录请求。
优选地,上述资源管理中心还包括:第二接收模块,用于接收用户添加其它用户为好友
和/或与其它用户组成用户组的请求;第二保存模块,用于保存用户的好友和/或用户所属的用
户组信息。
优选地,上述资源管理中心还包括:中转服务提供模块,用于在终端无法通过点到点P2P
方式与要访问的资源所在的其它终端直接通信的情况下,提供数据传输中转服务供终端与其
它终端进行通信,其中,数据中转服务是资源管理中心将接收到的终端要发送给其它终端的
数据转发到其它终端,以及资源管理中心将接收到的其它终端要发送给终端的数据转发到终
端。
根据本发明的一个方面,提供了一种资源共享系统,包括终端和资源管理中心,其中,
终端是上述终端,资源管理中心是上述任一种的资源管理中心。
本发明中,在终端上增加资源共享装置,终端通过该装置与资源管理中心进行交互,获
取其它终端共享的资源并以文件系统的方式展示该资源,从而实现终端之间资源的共享,而
不需要知道共享的资源位于哪个终端上,也不需要知道是由谁进行共享的,只要终端有权限
访问这些共享资源,就可以通过该文件系统进行访问,便于用户在网络中的终端之间相互共
享资源。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示
意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的资源共享方法的流程图一;
图2是根据本发明实施例的资源共享方法的流程图二;
图3是根据本发明实施例的资源共享方法的流程图三;
图4是根据本发明实施例的资源共享装置的结构框图;
图5是根据本发明实施例的资源管理中心的结构框图;
图6是根据本发明实施例的资源共享系统的结构框图;
图7是根据本发明优选实施例的终端共享本地资源的流程图;
图8是根据本发明优选实施例的终端共享资源给智能网络中的其它终端的流程图;
图9是根据本发明优选实施例的终端访问网络内其它终端共享的资源的流程图;
图10是根据本发明优选实施例的终端搜索共享资源的流程图;
图11是根据本发明优选实施例的资源共享系统的结构示意图;
图12是根据本发明优选实施例的终端搜索共享资源的流程示意图;
图13是根据本发明优选实施例的名为open的典型的文件系统标准接口的实现过程示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
本发明实施例提供了一种文件共享方法,图1是根据本发明实施例的文件共享方法的流
程图,如图1所示,包括如下的步骤S102至步骤S104。
步骤S102,利用终端上的资源共享装置,将终端上拟共享的资源的描述信息上传至资源
管理中心。
步骤S104,通过资源管理中心将资源的描述信息提供给其它终端的资源共享装置,供其
它终端的资源共享装置以文件系统的方式展示上述资源。
相关技术中,文件共享需要知道共享的文件的位置,并且需要用户输入必要的身份验证
信息,以及不能跨局域进行文件共享。例如,通过windows文件共享功能进行共享时,用户
需要知道共享文件的主机名或者IP地址;通过linux的网络文件系统(Network File System,
简称为NFS)进行共享时,需要知道NFS服务器的主机名或者IP地址以及共享目录的地址。
本发明实施例中,在终端上增加资源共享装置,终端通过该装置与资源管理中心进行交互,
获取其它终端共享的资源并以文件系统的方式展示该资源,从而实现终端之间资源的共享,
而不需要知道共享的资源位于哪个终端上,也不需要知道是由谁进行共享的,只要终端有权
限访问这些共享资源,就可以通过该文件系统进行访问,便于用户在网络中的终端之间相互
共享资源。
在一个优选实施方式中,在步骤S102之前,终端上的资源共享装置可以提取要共享的资
源的关键字,将该关键字与资源对应,并保存,从而方便用户进行资源的搜索。可以通过以
下步骤实现:终端上的资源共享装置根据要共享的资源提取要共享的资源的关键字,并将关
键字与要共享的资源进行关联,保存到终端和/或资源管理中心,其中,资源的类型包括以下
至少之一:网页、图片、音频、视频、文档。优选地,用户可以根据实际情况修改上述保存
的关键字,在终端上的资源共享装置根据要共享的资源提取要共享的资源的关键字,并将关
键字与要共享的资源进行关联,保存到终端和/或资源管理中心之后,上述方法还包括:终端
上的资源共享装置接受终端的用户根据实际情况修改的关键字。
优选地,在将终端上拟共享的资源的描述信息上传至资源管理中心之前,用户需要进行
登陆,可以通过以下步骤实现:终端上的资源共享装置接受用户输入的登录信息,向资源管
理中心进行登录,并设置资源共享。为了保证终端能够迅速准确地共享资源,在终端向其它
终端共享资源之前,可以先判断该资源是否在终端本地存在,以及该用户是否有权限访问该
资源等。终端还可以取消对资源的共享,当其它终端已经打开该资源时,终端取消资源的共
享后,其它终端后续对已经取消共享的资源的读写请求将返回失败。
上述资源包括以下至少之一:用户可访问的文件、用户创建的文件、用户使用过的文件、
用户访问过的网页、用户正在访问的文件。
终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局域网和广
域网内。
图1所示的实施例从上传共享资源信息的角度进行描述。下面图2所示的实施例从获取
共享资源进行描述。
本发明实施例还提供了一种资源共享方法,图2是根据本发明实施例的资源共享方法的
流程图,如图2所示,包括如下的步骤S202至步骤S204。
步骤S202,利用终端上的资源共享装置,通过资源管理中心获取其它终端共享的资源的
描述信息,其中,资源的描述信息由其它终端的资源共享装置上传至资源管理中心。
步骤S204,以文件系统的方式展示其它终端共享的资源。
在一个优选实施方式中,终端从资源管理中心获取资源的描述信息,可以从资源管理中
心获取共享了资源的终端的列表,然后根据自身的访问权限进行资源的访问,如果没有权限,
则该资源所在终端向该终端返回错误消息;如果有权限,则允许该终端访问该资源。需要说
明的是,终端还可以从资源管理中心直接获取共享的资源集合,这样终端能够访问的共享资
源可以在一个集合中全部展示出来,但是这会增加服务器的负担。
在一个优选实施方式中,提供了搜索功能,在步骤S202之前,上述方法还包括:终端上
的资源共享装置分别向资源管理中心和/或其它终端发送搜索请求,其中,搜索请求用于搜索
其它终端和/或其它用户共享的资源,上述搜索请求包括待搜索资源的关键字;终端上的资源
共享装置接收到来自资源管理中心和/或其它终端的搜索结果,其中,搜索结果是资源管理中
心和/或其它终端在共享资源集合中搜索的满足关键字搜索条件的资源集合。需要说明的是,
在实际应用中,可以在搜索界面选择进行模糊搜索,还是准确搜索。
在以文件系统的方式展示其它终端共享的资源之后,终端可以访问资源,步骤如下:终
端上的资源共享装置与资源管理中心和/或其它终端进行通信,通过文件系统访问其它终端共
享给终端的资源,并读写资源的内容。
步骤S204包括:终端上的资源共享装置提供标准的文件系统接口;终端的应用程序利用
标准的文件系统接口访问资源。上述标准的文件系统接口运行于不同的操作系统中,上述操
作系统包括:windows操作系统、linux操作系统、iOS操作系统、AIX操作系统、Solaris操
作系统和其它类unix操作系统。上述标准的文件系统接口满足POSIX文件系统标准,向应用
程序提供以下至少之一的接口:打开文件、关闭文件、读写文件、POSIX文件锁;当多个终
端并发读写有权限访问的共享资源时,使用POSIX文件锁防止读写冲突;终端修改共享资源
后,其它终端读取到修改后的资源内容。
优选地,其它终端共享的资源包括:用户在其它终端上将资源共享给自己后,在终端上
登录后能够访问的其它终端上的共享资源。
优选地,上述终端与上述其它终端位于同一个局域网内,或位于不同的局域网内,或分
别位于局域网和广域网内。实际上,不同的网络是指同一家庭、公司、组织、单位内的成员
所使用的,用于文件共享访问的局域网或者广域网,这些不同网络可以位于全球范围内不同
的物理区域内。
本发明实施例还提供了一种资源共享方法,从资源管理中心侧进行描述,图3是根据本
发明实施例的资源共享方法的流程图,如图3所示,包括如下的步骤S302至步骤S304。
步骤S302,资源管理中心通过终端上的资源共享装置获取终端拟共享的资源的描述信息。
步骤S304,资源管理中心将资源的描述信息提供给其它终端上的资源共享装置,供其它
终端上的资源共享装置以文件系统的方式展示资源。
优选地,在步骤S302之前,上述方法还包括:资源管理中心接受用户的注册,并保存用
户的注册信息;资源管理中心对登录的用户进行身份认证,接受合法用户的登录请求。
优选地,在步骤S302之前,上述方法还包括:资源管理中心接受用户添加其它用户为好
友和/或与其它用户组成用户组的请求,并保存用户的好友和/或用户所属的用户组信息。
如果终端无法通过点到点(Peer to Peer,简称为P2P)方式与要访问的资源所在的其它终
端直接通信,上述方法还包括:资源管理中心提供数据传输中转服务供终端与其它终端进行
通信,其中,数据传输中转服务是资源管理中心将接收到的终端要发送给其它终端的数据转
发到其它终端,以及资源管理中心将接收到的其它终端要发送给终端的数据转发到终端。
需要说明的是,终端优先与其它终端直接进行P2P通信,以完成资源读写。当不能与其
它终端上的资源共享装置直接进行P2P通信时,与资源管理中心进行通信,由资源管理中心
进行数据中转,完成与其它终端上的资源共享装置的通信。登录成功后终端能通过文件系统
访问到其它终端共享给该终端的资源。
优选地,终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局
域网和广域网内。
本发明实施例还提供了一种资源共享装置,应用于终端,该装置可以用于实现上述图1
和图2所示的资源共享方法。图4是根据本发明实施例的资源共享装置的结构框图,如图4
所示,该装置包括上传模块42、第一获取模块44和展示模块46。下面对其结构进行详细描
述。
上传模块42,用于将拟共享的资源的描述信息上传至资源管理中心;第一获取模块44,
用于从资源管理中心获取其它终端共享的资源的描述信息;展示模块46,连接至第一获取模
块44,用于以文件系统的方式展示其它终端共享的资源。
优选地,上述装置还包括:登录模块,用于接受用户输入的登录信息,并向资源管理中
心进行登录;资源共享模块,连接至登录模块,用于设置资源共享;提取模块,连接至资源
共享模块,用于根据要共享的资源提取要共享的资源的关键字,并将关键字与要共享的资源
进行关联,保存到终端和/或资源管理中心,其中,上述资源的类型包括以下至少之一:网页、
图片、音频、视频、文档。
优选地,上述装置还包括:资源访问模块,连接至展示模块46,用于与资源管理中心和/
或其它终端进行通信,通过文件系统访问其它终端共享给终端的资源,并读写资源的内容。
需要说明的是,终端中的资源访问模块优先与其它终端上的资源访问模块直接进行P2P
通信,以完成资源读写。当不能与其它终端上的资源访问模块直接进行P2P通信时,与资源
管理中心进行通信,由资源管理中心进行数据中转,完成与其它终端上的资源访问模块的通
信。登录成功后终端能通过文件系统访问到其它终端共享给该终端的资源。
优选地,上述装置还包括:发送模块,用于分别向资源管理中心和/或其它终端发送搜索
请求,其中,上述搜索请求用于搜索其它终端和/或其它用户共享的资源,搜索请求包括待搜
索资源的关键字;接收模块,连接至发送模块,用于接收来自资源管理中心和/或其它终端的
搜索结果,其中,搜索结果是资源管理中心和/或其它终端在共享资源集合中搜索的满足关键
字搜索条件的资源集合。
优选地,展示模块46包括:接口提供单元,用于提供标准的文件系统接口;终端的应用
程序利用标准的文件系统接口访问资源。标准的文件系统接口运行于不同的操作系统中,所
述操作系统包括:windows操作系统、linux操作系统、iOS操作系统、AIX操作系统、Solaris
操作系统和其它类unix操作系统。标准的文件系统接口满足POSIX文件系统标准,向应用程
序提供以下至少之一的接口:打开文件、关闭文件、读写文件、POSIX文件锁;当多个终端
并发读写有权限访问的共享资源时,使用POSIX文件锁防止读写冲突;终端修改共享资源后,
其它终端读取到修改后的资源内容。
优选地,其它终端共享的资源包括:用户在其它终端上将资源共享给自己后,在终端上
登录后能够访问的其它终端上的共享资源。
优选地,终端与其它终端位于同一个局域网内,或位于不同的局域网内,或分别位于局
域网和广域网内。
本发明实施例还提供了一种终端,该终端具有资源共享功能,该终端包括上述任一种的
文件共享装置。
本发明实施例还提供了一种资源管理中心,该资源管理中心可以用于实现上述图3所示
的资源共享方法。图5是根据本发明实施例的资源管理中心的结构框图,如图5所示,该资
源管理中心包括第二获取模块52和提供模块54。下面对其结构进行详细描述。
第二获取模块52,用于通过终端上的资源共享装置获取终端拟共享的资源的描述信息;
提供模块54,连接至第二获取模块52,用于将资源的描述信息提供给其它终端上的资源共享
装置,供其它终端上的资源共享装置以文件系统的方式展示资源。
优选地,上述资源管理中心还包括:第一保存模块,用于接受用户的注册,并保存用户
的注册信息;认证模块,连接至第一保存模块,用于对登录的用户进行身份认证;第一接收
模块,连接至认证模块,用于接收合法用户的登录请求。
优选地,上述资源管理中心还包括:第二接收模块,用于接收用户添加其它用户为好友
和/或与其它用户组成用户组的请求;第二保存模块,连接至第二接收模块,用于保存用户的
好友和/或用户所属的用户组信息。
优选地,上述资源管理中心还包括:中转服务提供模块,用于在终端无法通过点到点P2P
方式与要访问的资源所在的其它终端直接通信的情况下,提供数据传输中转服务供终端与其
它终端进行通信,其中,数据中转服务是资源管理中心将接收到的终端要发送给其它终端的
数据转发到其它终端,以及资源管理中心将接收到的其它终端要发送给终端的数据转发到终
端。
本发明实施例还提供了一种资源共享系统,该系统可以用于实现上述图1、图2和图3所
示的资源共享方法。图6是根据本发明实施例的资源共享系统的结构框图,如图6所示,该
系统包括终端62和资源管理中心64。其中,终端62是上述终端,资源管理中心64是上述任
一种的资源管理中心。
需要说明的是,上述资源共享装置、系统、终端和资源管理中心对应于上述的方法实施
例,其具体的实现过程在方法实施例中已经进行过详细说明,在此不再赘述。
在另一个优选实施例中,上述资源共享装置还可以通过以下模块来实现:
标准文件系统接口(实现了上述接口提供单元的功能),用于向linux、windows操作系统
提供标准调用接口,如open、read、write等标准文件系统接口。如果用户使用的是windows
操作系统,那么标准文件系统接口将在windows操作系统中模拟出一个虚拟磁盘,用户通过
这个虚拟磁盘即可以访问其它用户共享的文件。如果用户使用的是linux或者其它类unix操作
系统(如AIX、iOs、BSD操作系统),那么标准文件系统接口将文件系统挂载到一个指定的
目录,用户通过访问这个本地目录即可以访问其它用户共享的文件。
Windows虚拟磁盘技术和其它操作系统文件系统的接口技术是业界成熟的技术,不是本
发明保护的核心技术。本发明是根据操作系统的接口标准的要求,具体实现一种分布式的文
件系统。
用户鉴权模块,本发明所述文件系统(也可称为分布式链接共享文件系统)可以用于家
庭、企业、团体组织、政府机构等。每一个家庭、企业、团体组织、政府机构内的用户组成
一个智能网络。在每一个智能网络内,以用户为单位建立分布式链接共享文件系统,每个用
户可以将本地终端内的文件共享给家庭、企业、团体组织、政府机构内的其它用户。可用于
共享的文件包含但不仅仅包含用户可访问的文件、用户创建的文件、用户使用过的文件、用
户访问过的网页。用户在共享这些文件或者网页时,可以指定智能网络内哪些用户可以访问
这些文件,并可以分别指定每个用户的访问权限。用户在共享这些文件或者网页时,也可以
指定智能网络内所有用户及来宾可以访问这些文件。
每个用户通过本发明所述分布式链接共享文件系统访问其它用户共享的文件列表时,用
户鉴权模块判断当前用户能够访问的文件列表,并通过标准文件系统接口将用户有权访问的
文件列表列出。
每个用户通过本发明所述分布式链接共享文件系统打开其它用户共享的文件时,用户鉴
权模块判断当前用户是否有权限以指定的方式打开共享文件。如果权限不足,将向用户返回
错误。
数据传输模块,应用程序调用标准文件系统接口访问其它终端共享的文件时,数据传输
模块与其它终端中的数据传输模块进行数据通讯;在其它终端中运行的数据传输模块读取终
端本地文件系统中的数据并向发起请求的终端返回结果。
用户工具及操作系统插件模块,用户通过用户工具及操作系统插件模块可以完成如下工
作:
(1)记录下用户创建的文件、用户使用过的文件、用户访问过的网页,用户可以通过本
模块的操作界面将这些文件或者网页进行共享。
(2)将本地操作系统中的文件进行共享。
(3)将本地操作系统中的文件取消共享。
(4)手动设置共享文件的关键字用于搜索。
(5)搜索满足条件的、其它用户共享的文件。
(6)用户在浏览网页、浏览图片、播放音频、播放视频、编辑文档时,通过快捷键或者
快捷菜单,可以将当前正在访问的网页、图片、音频、视频、文档文件进行共享。
分布式搜索引擎(实现了上述发送模块的功能),用户通过用户工具及操作系统插件模块
发起搜索请求,搜索用户所属智能网络中其它用户共享的文件。用户工具及操作系统插件模
块调用分布式搜索引擎向用户所属智能网络中的其它终端发送搜索请求,用户所属智能网络
中的所有终端在各自的本地终端中执行搜索并向发起请求的终端发送搜索结果。
关键字自动提取模块(实现了上述提取模块的部分功能),用户通过用户工具及操作系统
插件模块将文件在用户所属智能网络中进行共享时,关键字自动提取模块自动提取共享文件
的关键字,并将关键字与将要进行共享的文件进行关联。
链接存储模块,用户通过本发明所述分布式链接共享文件系统,不但可以将用户本地文
件系统中的文件进行共享,也可以将网页链接进行共享。用户在共享网页链接时,本发明所
述分布式链接共享文件系统同时提取网页的标题、网页关键字作为该网页在本发明所述分布
式链接共享文件系统中的关键字,并将该关键字与该网页进行关联。
实际应用中,上述各个模块的连接关系如下:标准文件系统接口与用户鉴权模块、用户
工具及操作系统插件模块、数据传输模块连接。数据传输模块与用户鉴权模块、标准文件系
统接口、用户工具及操作系统插件模块、分布式搜索引擎连接。用户工具及操作系统插件模
块与用户鉴权模块、标准文件系统接口、分布式搜索引擎、关键字自动提取模块、链接存储
模块连接。分布式搜索引擎与用户鉴权模块、数据传输模块、用户工具及操作系统插件模块
连接。用户鉴权模块与标准文件系统接口、分布式搜索引擎、数据传输模块、用户工具及操
作系统插件模块连接。
从以上的描述可知,本发明实现了一种分布式链接共享文件系统,在智能网络范围内,
智能网络成员可以随时将终端内的文件进行共享,也可以随时取消共享。可以共享一个单独
的文件,也可以将目录及其子目录进行共享,还可以共享一个网页链接。一旦共享了文件,
系统就向同一智能网络内的其它终端发送消息。智能网络内的所有终端都更新共享文件列表。
用户不需要知道这些共享的文件位于哪个终端上,也不需要知道是由谁进行共享的,只要用
户有权访问这些共享文件,就可以通过本发明所述分布式链接共享文件系统,使用标准的文
件系统调用接口进行访问。
在系统启动时,根据用户使用的操作系统的不同,系统采用不同的措施加载本文件系统。
例如,如果用户使用的是windows操作系统,那么系统模拟出一个虚拟磁盘,用户通过这个
虚拟磁盘即可以访问其它用户共享的文件。如果用户使用的是linux文件系统,那么系统将本
分布式文件系统挂载到一个特定的目录,用户通过访问这个目录即可以访问其它用户共享的
文件。
上述方法中用户不需要知道共享文件位于何处。当用户访问共享文件时,通过虚拟磁盘
或者特定的文件目录就可以访问了。而现有的文件共享技术,不论是windows文件共享,还
是NFS、SMB,都需要知道共享位于哪台机器,并且需要用户输入必要的身份验证信息。
本发明实施例还引入了分布式搜索引擎,分布式搜索引擎可以根据关键字对共享文件进
行搜索。用户在共享文件时,系统可以自动提取文件的类型和关键字。例如,提取音频文件
的标题、艺术家、专辑、格式和时长;提取word文档的目录、作者、标题、主题、关键词、
类别、状态和备注;提取pdf文件的作者、标题、主题、关键词、创建者和创建者信息等。用
户还可以手动修改文件的关键字。例如,将某张照片的关键字设置为“最美的凤凰城”,将某
首mp3的关键字设置为“滚石乐队”,其它用户可以通过关键“凤凰”、“滚石”搜索到共享的
文件。
除了设置文件的关键字外,系统还可以自动将共享的文件进行归类。例如,将所有以“mp3”
为扩展名的文件设置为音频类。将所有以“jpg”为扩展名的文件设置为照片类。
用户在搜索共享文件时,可以指定在某类文件中进行搜索。也可以在所有类别中进行关
键字模糊匹配搜索。如果在特定类别的文件中进行搜索,则可以详细指定搜索条件。例如,
如果是在音频文件中进行搜索,则可以指定音频文件的标题、艺术家、专辑、格式、时长等
搜索条件。如果是在所有类别中进行搜索,则在所有共享文件中进行模糊搜索。
此外,本发明实施例还提供了链接式存储。用户不仅可以将终端本地文件添加到分布式
链接共享文件系统中进行共享,还可以将网页链接添加到分布式链接共享文件系统中进行共
享。在添加网页链接到分布式链接共享文件系统中时,系统自动提取网页关键字并与网页链
接进行关联。用户通过搜索关键字则可以找到该网页链接,并使用浏览器打开该链接。
用户工具及操作系统插件模块自动记录用户最近访问过的文件,并将最近访问过的文件
在用户工具及操作系统插件模块的操作界面中显示出来,用户可以选择并共享这些访问过的
文件。用户工具及操作系统插件模块还允许用户进行一键式共享操作。当用户正在访问某个
文件并且希望将文件共享到用户所属智能网络中时,使用快捷键或者快捷菜单即可以将当前
正在访问的文件共享到用户所属智能网络中。
为了使本发明的技术方案和实现方法更加清楚,下面将结合优选的实施例对其实现过程
进行详细描述。
图7是根据本发明优选实施例的终端共享本地资源的流程图,如图7所示,包含以下步
骤:
步骤S702,用户通过操作用户工具及操作系统插件模块将本地文件进行共享。设置智能
网络中哪些用户可以访问这些共享文件,并设置智能网络中的用户访问这些共享文件的权限。
可设置的文件权限类型包含但不限于只读、读写、可执行、可复制。当用户没有可复制权限
时,将不能使用本地设备直接读写文件内容,而是在本地设备上,自动启动虚拟桌面连接到
远程设备上,由远程设备打开文件并通过虚拟桌面技术将远程设备上的桌面内容显示到本地
设备上。
步骤S704,用户鉴权模块判断要共享的文件在本地终端上是否存在,同时判断用户是否
有权限访问将要共享的本地文件。如果要共享的本地文件不存在,或者用户没有权限访问将
要共享的文件,执行步骤S712;否则执行步骤S706。
步骤S706,关键字自动提取模块根据共享文件的类型,自动提取共享文件的关键字,并
与共享的文件关联;提取的关键字保存在本地终端上。
步骤S708,用户可以在关键字自动提取模块的操作界面上,修改共享文件的关键字,并
保存到系统中。一般情况下,关键字保存在用户本地终端中。
步骤S710,智能网络内有权限访问共享文件的其它用户,可以通过分布式链接共享文件
系统访问共享文件的内容。用户进入本文件系统时,在本文件系统第一层目录中将看到所属
智能网络内为该用户共享过文件的用户名称,点击用户名称进入下一层目录,可以看到用户
共享的所有目录和文件。
步骤S712,共享操作失败,退出。
图8是根据本发明优选实施例的终端共享资源给智能网络中的其它终端的流程图,如图8
所示,包括以下步骤:
步骤S802,用户在浏览网页、浏览图片、播放音频、播放视频、编辑文档时,通过快捷
键或者快捷菜单,将当前正在访问的网页、图片、音频、视频、文档进行共享。用户也可以
通过操作用户工具及操作系统插件模块的操作界面将曾经访问过的网页、图片、音频、视频、
文档进行共享。在进行共享访问设置时,可以设置智能网络中哪些用户可以访问这些共享的
文件,并设置智能网络用户访问这些共享文件的权限。可设置的文件权限类型包含但不限于
只读、读写、可执行、可复制。
步骤S804,判断用户要共享的文件是否是网页链接,如果是,转到步骤S808,否则转到
步骤S806。
步骤S806,用户鉴权模块判断要共享的文件在本地终端上是否存在,同时判断用户是否
有权限访问将要共享的本地文件。如果要共享的本地文件不存在,或者用户没有权限访问将
要共享的文件,转到步骤S814。
步骤S808,关键字自动提取模块根据共享文件的类型,自动提取共享文件的关键字,并
保存到系统中。
步骤S810,用户可以在关键字自动提取模块的操作界面上,修改共享文件的关键字,并
保存到系统中。
步骤S812,智能网络内有权限访问共享文件的其它用户,可以通过分布式链接共享文件
系统访问共享文件的内容。
步骤S814。那么共享操作失败,退出。
图9是根据本发明优选实施例的终端访问网络内其它终端共享的资源的流程图,如图9
所示,包含以下步骤:
步骤S902,用户打开终端,系统自动将分布式链接共享文件系统挂载到操作系统中。
步骤S904,判断用户使用的是否是windows操作系统,如果是,转到步骤S906,否则转
到步骤S908。
步骤S906,标准文件系统接口将在windows操作系统中虚拟出一个虚拟磁盘,然后转到
步骤S912。
步骤S908,判断用户使用的是linux或者其它类unix操作系统,如果是,转到步骤S910,
否则转到步骤S914。
步骤S910,标准文件系统接口将分布式链接共享文件系统挂载到一个指定的目录。
步骤S912,分布式链接共享文件系统在用户终端的操作系统中,提供了标准的文件系统
操作接口。用户可以像访问本地终端文件一样访问智能网络内其它用户共享的文件。
步骤S914,系统不支持其它操作系统。
图10是根据本发明优选实施例的终端搜索共享资源的流程图,如图10所示,包含以下
步骤:
步骤S1002,如果用户想通过操作系统自带的搜索工具(如windows资源管理器),搜索
其它用户共享的文件,转到步骤S1014;否则转到步骤S1004。
步骤S1004,用户打开用户工具及操作系统插件模块的操作界面。
步骤S1006,判断用户是否希望根据关键字进行模糊搜索,如果是则转到步骤S1008;否
则转到步骤S1016。
步骤S1008,用户在操作界面上输入想要搜索的关键字(即模糊搜索条件)。例如“凤凰古
镇”。那么系统将在所有共享文件中,搜索关键字包含“凤凰古镇”的文件。搜索关键字可以使
用多关键字。例如,输入“凤凰 照片”表示搜索关键字中既包含“凤凰”,也包含“照片”的文件。
输入“mp3 or mp4”表示搜索关键字中包含“mp3”或者包含“mp4”的文件。输入完毕后,转到步
骤S1010。
步骤S1010,用户工具及操作系统插件模块调用分布式搜索引擎提供的应用程序接口(,
Application Program Interface,简称为API),获取满足搜索条件的文件。
步骤S1012,分布式搜索引擎向智能网络内的终端发送搜索请求,智能网络内的其它终端
在本地文件系统中搜索符合条件的共享文件,并向发出请求的终端返回结果。发起请求的终
端上的搜索引擎得到结果后,向用户工具及操作系统插件模块返回搜索到的结果,用户工具
及操作系统插件模块将搜索结果显示在用户工具及操作系统插件模块操作界面中。
步骤S1014,搜索到文件后,用户可以通过鼠标单击或者双击文件图标、文件标题打开文
件;
步骤S1016,用户希望通过用户工具及操作系统插件模块进行分类搜索,则在操作界面上
选择要搜索的文件类别,然后输入要搜索的文件特征进行搜索。常见的文件类别有:音频文
件、视频文件、word文档、pdf文档等等。每种不同文件的特征有所不同。例如,音频文件的
特征有标题、艺术家、专辑、格式和时长;word文档的特征有目录、作者、标题、主题、关
键词、类别、状态和备注;pdf文件的特征有作者、标题、主题、关键词、创建者和创建者信
息。输入完毕后,转到步骤S1010。
图11是根据本发明优选实施例的资源共享系统的结构示意图。本优选实施例描述了一种
在示例性操作环境中用于智能网络的分布式文件系统中提供访问的方法。所述方法允许真实
用户访问文件系统对象。进一步地,所述方法允许用户从真实的终端访问文件系统对象。
如图11所示,资源共享系统110的运行环境包括:
1、将同一智能网络内一个或多个智能网络计算终端1102-A、1102-B、1102-C和1104-A、
1104-B进行互联的家庭局域网络1106。
2、将家庭局域网络1106与数据传输、认证服务器1108、智能网络成员1110-D使用的智
能终端1102-D进行互连的互联网1112。
3、供来宾1114-A、来宾1114-B使用的智能电视1104-A、机顶盒1104-B。
4、供智能网络成员1110-A、1110-B、1110-C、1110-D使用的终端PC 1102-A、笔记本1102-B、
PAD(平板电脑)1102-C、智能终端1102-D。
5、智能终端1102-D通过数据传输、认证服务器1108与局域网1106内的终端进行数据传
输、身份认证。
陌生人1116-A与智能网络成员1110-A、1110-B、1110-C、1110-D不属于同一个智能网络,
因此不能访问本发明所述分布式链接共享文件系统。
在多个家庭智能网络计算终端之间进行共享文件系统对象可包括文件、目录、网页链接。
当局域网1106内的智能网络计算终端移出局域网络1106时,可以通过数据传输、认证服务器
1108查询到所属的智能网络,并通过数据传输、认证服务器1108与所属的智能网络内的智能
网络计算终端进行文件共享。
在资源共享系统110中,家庭智能网络计算终端可以将终端内的多种文件系统中的文件进
行共享,这些文件系统包括但不仅仅包括:NTFS文件系统、Ext2文件系统、NFS文件系统、
CIFS文件系统等等。共享的文件包含但不仅仅包含:音频文件、视频文件、照片、办公文档、
网页链接等等。
智能网络计算终端可能位于不同的地理位置,这些终端可以位于同一个局域网内,也可
以位于不同的局域网内,还可以位于广域网内。用户1110不需要了解共享这些智能网络计算
终端1102、1104的所处位置。
当智能网络计算终端取消文件共享时,其它家庭智能网络计算终端不能再访问被取消共
享的文件,但是可以继续访问仍然共享的文件。
局域网络1106和互联网1112可以是本领域中已知的任何有线或无线网络。网络类型不限
制本发明的范围。
进一步地,资源共享系统110可以在本领域中任何已知的操作系统上运行。例如,所述操
作系统可以为windows操作系统,linux操作系统,unix操作系统,iOS操作系统,AIX操作
系统,Solaris操作系统,MAC操作系统等。
数据传输、认证服务器1108用于将位于互联网1112上的终端1102-D连接到局域网1106。
终端1102、1104之间可以通过局域网1106直接通信,也可以通过P2P(点对点)的方式进行
通信,还可以通过数据传输、认证服务器1108进行数据报文的中转。它们之间的通信方法不
限制本发明的范围。
进一步地,本发明实施例中将终端分为两类:可信终端和不可信终端。位于局域网1106
内的终端相互均认为对方是可信终端,没有同时处于同一个局域网1106内的终端相互均认为
对方是不可信终端。不可信终端在访问共享文件前,需要向数据传输、认证服务器进行认证,
通过认证的终端之间才能进行文件共享访问。不可信终端在与数据传输服务器进行认证时,
可能采用也可能不采用可信计算技术。
图12是根据本发明优选实施例的终端搜索共享资源的流程示意图,如图12所示,包括
以下步骤:
步骤S1202,用户在本地主机上进行搜索,这是通过操作用户工具及操作系统插件模块(即
图8中所示的用户工具)的操作界面实现的。
步骤S1204,用户工具及操作系统插件模块调用搜索引擎提供的API进行搜索。
步骤S1206,搜索引擎调用数据传输模块提供的API,向智能网络的所有成员终端发送广
播消息。
步骤S1208,数据传输模块将消息发送到远端主机。
步骤S1210,远端主机上的数据传输模块调用远端主机上的搜索引擎,查找远端主机满足
搜索要求的文件。
步骤S1212,远端主机上的数据传输模块将搜索结果回传给本地主机。
步骤S1214,本地主机的搜索引擎分析从本地主机的数据传输模块返回的报文。
步骤S1216,本地主机的搜索引擎接收到远端终端的搜索结果报文,或者超过一定时间都
没有接收到远端主机的报文,向用户工具及操作系统插件模块返回搜索结果。
步骤S1218,本地主机的用户工具及操作系统插件模块根据搜索引擎返回的搜索结果,在
用户工具及操作系统插件模块的操作界面上输出搜索结果。
图13是根据本发明优选实施例的名为open的典型的文件系统标准接口的实现过程示意图,
它仅仅是一个示例,并不表示本发明只实现了open这个标准接口。如图13所示,包括以下步
骤:
步骤S1302,应用程序通过标准的open系统调用打开一个文件。
步骤S1304,标准文件系统接口调用数据传输模块获取要打开文件的文件句柄。
步骤S1306,数据传输模块解析用户传入的文件名,从第一层目录开始解析,直到解析至
要打开文件所在目录。然后判断当前要处理的目录所在远端主机。向远端主机发送报文,获
取用户对该目录的访问权限。
步骤S1308,远端主机的数据传输模块向本地主机应答目录访问权限。如果不允许本地主
机的用户访问该目录,本地主机的数据传输模块向文件系统接口返回错误码,用户本次打开
操作失败。
步骤S1310,本地主机的数据传输模块向远端主机的数据传输模块发送报文,请求在该目
录中查找子目录或者文件。
步骤S1312,远端主机的数据传输模块向本地主机的数据传输模块应答查找请求,如果远
端主机的数据传输模块返回的应答表明该子目录或文件不存在,则本地主机的数据传输模块
向本地主机的文件系统接口返回错误码,用户本次打开操作失败。如果本地主机用户没有权
限打开远端主机的目录,则本地主机的数据传输模块向本地主机的文件系统接口返回错误码,
用户本次打开操作失败。
根据用户打开的文件目录深度不同,重复步骤S1306、S1308、S1310、S1312,直到查找
到用户想要到打开的文件。例如,在linux系统中,如果用户想要打开文件/mnt/a/b/c/d/e/001.txt,
并且本发明所述文件系统被mount到/mnt目录,那么数据传输模块将要重复执行步骤S1306、
S1308、S1310、S1312共计6次,这6次执行过程分别查找a、b、c、d、e这5个目录,以及
在子目录e中查找文件001.txt。
步骤S1314,本地主机的数据传输模块向远端主机的数据传输模块发送报文,请求查询文
件的访问权限。
步骤S1316,远端主机的数据传输模块向本地主机的数据传输模块传回应答请求。如果查
询结果表明用户无权打开该文件,则本地主机的数据传输模块向本地主机的文件系统接口返
回错误码,用户本次打开操作失败。
步骤S1318,本地主机的数据传输模块向远端主机的数据传输模块发送报文,请求打开文
件。
步骤S1320,远端主机的数据传输模块向本地主机的数据传输模块传送回该文件的标记。
在后续的读写操作过程中,本地主机的数据传输模块与远程主机的数据传输模块将以该标记
为标识,来表示要读写的文件。
步骤S1322,本地主机的数据传输模块记录下与远程主机的数据传输模块之间的文件标识,
并向本地主机的文件系统接口返回一个本地文件系统句柄。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机
系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此
处的顺序执行所示出或描述的步骤。
综上所述,根据本发明上述实施例提供的资源共享方法、装置、系统及终端、资源管理
中心。在终端上增加资源共享装置,终端通过该装置与资源管理中心进行交互,获取其它终
端共享的资源并以文件系统的方式展示该资源,从而实现终端之间资源的共享,而不需要知
道共享的资源位于哪个终端上,也不需要知道是由谁进行共享的,只要终端有权限访问这些
共享资源,就可以通过该文件系统进行访问,便于用户在网络中的终端之间相互共享资源。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算
装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,
可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置
中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块
或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员
来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等
同替换、改进等,均应包含在本发明的保护范围之内。