负载均衡的网络文件访问的制作方法

文档序号:15286465发布日期:2018-08-29 00:08阅读:158来源:国知局

通过参考附图比较常规方法与本公开的其余部分中所阐述的本方法和系统的某些方面,常规方法对数据存储的限制和缺点对本领域技术人员来说将是明显的。



技术实现要素:

提供了用于负载均衡的网络文件访问的方法和系统,该方法和系统基本上如结合附图中的至少一个所示出和/或描述的,并如在权利要求中更完整地阐述的。

附图说明

图1示出了根据本公开的方面的分布式电子存储系统的各种示例性配置。

图2示出了根据本公开的方面的使用分布式电子存储系统的计算节点的各种示例性配置。

图3示出了根据本公开的方面的专用分布式电子存储系统节点的各种示例性配置。

图4示出了根据本公开的方面的专用存储节点的各种示例性配置。

图5a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。

图5b至图5d示出了图5a的处理期间的示例性dess。

图6a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。

图6b至图6c示出了图6a的处理期间的示例性dess。

图7a是根据本公开的方面的用于处理文件系统请求的示例性处理的流程图。

图7b至图7c示出了图7a的处理期间的示例性dess。

图8a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。

图8b至图8c示出了图8a的处理期间的示例性dess。

具体实施方式

图1示出了根据本公开的方面的分布式电子存储系统的各种示例性配置。图1中示出的是局域网(lan)102,其包括一个或多个虚拟分布式电子存储系统(dess)节点120(由从1至j的整数索引,j≥1),并且可选地包括(由虚线表示):一个或多个专用存储节点106(由从1至m的整数索引,m≥1),一个或多个计算节点104(由从1至n的整数索引,n≥1),和/或将lan102连接至远程网络118的边缘路由器。远程网络118可选地包括一个或多个存储服务114(由从1至k的整数索引,k≥1),和/或一个或多个专用存储节点115(由从1至l的整数索引,l≥1)。lan102的节点经由互连件101(例如,铜电缆、光缆、无线链路、交换机、电桥、集线器等)通信地耦接。

每个计算节点104n(n是整数,其中1≤n≤n)是包括电路的联网计算装置(例如,服务器、个人计算机等),该电路用于运行各种客户端进程(直接在装置104n的操作系统上和/或在装置104n上运行的一个或多个虚拟机/容器中)并且用于与一个或多个dess节点120接口连接。如在本公开中所使用的,“客户端进程”是在执行其主要功能的过程中从存储介质读取数据和/或将数据写入存储介质的进程,但是它的主要功能不是存储相关的(即,该处理仅涉及其数据得到可靠的存储并且在需要时可获取,而不涉及数据存储在何处、何时以及如何存储)。引起这种进程的示例性应用包括:电子邮件服务器应用、网络服务器应用、办公生产力应用、客户关系管理(crm)应用、及企业资源计划(erp)应用,仅举几个例子。下文参考图2描述计算节点104n的示例性配置。

每个dess节点120j(j是整数,其中1≤j≤j)是包括电路的联网计算装置(例如,服务器、个人电脑等),该电路用于运行dess进程,可选地是客户端进程(直接在装置104n的操作系统上和/或在装置104n上运行的一个或多个虚拟机中)。如本公开中使用的,“dess进程”是执行本公开的下文中描述的dess驱动器、dess前端、dess后端、及dess存储器控制器的一种或多种的进程。下文参考图3描述dess节点120j的示例性配置。因此,在示例性实现方式中,客户端进程和dess进程可以共享dess节点120j的资源(例如,处理和存储资源)。dess的进程可以被配置为需要相对少量的资源以使对客户端应用的性能的影响最小化。从客户端进程的角度来看,具有dess的界面独立于其上运行dess进程的特定物理机。

每个现场专用存储节点106m(m为整数,其中1≤m≤m)是联网计算装置并且包括一个或多个存储装置和使存储装置经由lan102可访问的相关联的电路。下文参考图4描述专用存储节点106m的示例性配置。

每个存储服务114k(k是整数,其中1≤k≤k)可以是基于云的服务,诸如amazons3、microsoftazure、googlecloud、rackspace、amazonglacier、以及googlenearline。

每个远程专用存储节点115l(l是整数,其中1≤l≤l)可以与现场专用存储节点106相似或者与其相同。在示例性实现方式中,远程专用存储节点115l可以不同的格式存储数据和/或使用与现场专用存储节点106不同的协议来访问(例如,与基于以太网或者基于rdma的协议相反的http)。

图2示出了根据本公开的方面的使用dess的计算节点的各种示例性配置。示例性计算节点104n包括硬件202,硬件202反过来包括处理器芯片组204和网络适配器208。

处理器芯片组204可包括例如基于x86的芯片组,该芯片组包括单核或多核处理器片上系统、一个或多个ramic、以及平台控制器集线器ic。芯片组204可包括用于连接至硬件202的其他组件(例如,pcie、usb、sata等)的各种类型的一个或多个总线适配器。

网络适配器208可以例如,包括用于接口连接至基于以太网的网络和/或基于rdma的网络的电路。在示例性实现方式中,网络适配器208可包括处理器(例如,基于arm的处理器)并且一个或多个示出的软件组件可在该处理器上运行。网络适配器208经由(有线、无线、或者光学)链路226与lan100的其他构件交互。在示例性实现方式中,网络适配器208可以与芯片组204集成。

硬件202上运行的软件至少包括:操作系统和/或管理程序212、一个或多个客户端进程218(由从1至q的整数索引,q≥1)、以及dess驱动器221和dess前端220中的一者或两者。可以在计算节点104n上可选地运行的额外的软件包括:一个或多个虚拟机(vm)和/或容器216(由从1至r的整数索引,r≥1)。

每个客户端进程218q(q是整数,其中1≤q≤q)可直接在操作系统/管理程序212上运行或者可在由os和/或管理程序212服务的虚拟机和/或容器216r(r是整数,其中1≤r≤r)中运行。每个客户端进程218是在执行其主要功能的过程中从存储介质读取数据和/或将数据写入存储介质的处理,但是其主要功能不是存储相关的(即,该处理仅涉及其数据得到可靠的存储并且在需要时可检索,而不涉及数据存储在何处、何时以及如何存储)。仅举几个例子,引起这种处理的示例性应用包括:电子邮件服务器应用、网络服务器应用、办公生产力应用、客户关系管理(crm)应用、以及企业资源计划(erp)应用。

dess驱动器221可操作以接收/拦截本地文件系统命令(例如,posix命令)并且生成待传输至互连件101上的对应的文件系统请求(例如,读取、写入、生成、创建目录、移除、移除目录、链接等)。在一些情况下,互连件101上传输的文件系统请求的格式可以是定制以供本文描述的dess前端220和/或dess后端222使用的。在一些情况下,互连件101上传输的文件系统请求可遵守诸如网络文件系统(nfs)、服务器消息块(dmb)、通用互联网文件系统(cif)等的标准。

每个dess前端实例220s(s是整数,其中如果在计算节点104n上存在至少一个前端实例,则1≤s≤s)提供用于将文件系统请求路由到适当的dess后端实例(在dess节点上运行)的接口,其中,文件系统请求可源于一个或多个客户端进程218、一个或多个vm和/或容器216、和/或os和/或管理程序212。每个dess前端实例220s可在芯片组204的处理器上或者在网络适配器208的处理器上运行。对于芯片组204的多核处理器,可在不同的核上运行dess前端220的不同实例。

图3示出了根据本公开的方面的专用分布式电子存储系统节点的各种示例性配置。示例性dess节点120j包括硬件302,硬件302反过来包括处理器芯片组304、网络适配器308、以及可选地一个或多个存储装置306(由从1至w的整数索引,w≥1)。

每个存储装置306p(p是整数,其中,如果存在至少一个存储装置,则1≤p≤p)可包括用于实现期望在dess节点120j内实现的存储层的任何合适的存储装置。

处理器芯片组304可以类似于以上参考图2描述的芯片组204。网络适配器308可以类似于以上参考图2描述的网络适配器208并且可经由链路326与lan100的其他节点接口连接。

硬件302上运行的软件至少包括:操作系统和/或管理程序212、以及以下中的至少一个:dess前端220(由从1至w的整数索引,w≥1)的一个或多个实例、dess后端222的一个或多个实例(由从1至x的整数索引,x≥1)、以及dess存储器控制器224的一个或多个实例(由从1至y的整数索引,y≥1)。可选地可在硬件302上运行的额外的软件包括:一个或多个虚拟机(vm)和/或容器216(由从1至r的整数索引,r≥1),和/或一个或多个客户端进程318(由从1至q的整数索引,q≥1)。因此,如上所述,dess进程和客户端进程可共享dess节点上的资源和/或可驻留在分开的节点上。

客户端进程218和vm和/或容器216可以是如以上参考图2所述的。

每个dess前端实例220w(w是整数,其中如果在dess节点120j上存在至少一个前端实例,则1≤w≤w)提供用于将路由文件系统请求路由到适当的dess后端实例(在相同或者不同的dess节点上运行)的接口,其中,文件系统请求可源于一个或多个客户端进程218、一个或多个vm和/或容器216、和/或os和/或管理程序212。每个dess前端实例220w可在芯片组304的处理器上或者在网络适配器308的处理器上运行。对于芯片组304的多核处理器,可在不同的核上运行dess前端220的不同实例。

每个dess后端实例222x(x是整数,其中,如果在dess节点120j上存在至少一个后端实例,则1≤x≤x)向其接收的文件系统请求提供服务并且执行以其他方式管理dess的任务(例如,负载均衡、日志、保持元数据、高速缓存、数据在层之间的移动、移除过期数据、校正损坏数据等)。每个dess后端实例222x可在芯片组304的处理器上或者在网络适配器308的处理器上运行。对于芯片组304的多核处理器,可在不同的核上运行dess后端222的不同实例。

每个dess存储器控制器实例224u(u是整数,其中,如果在dess节点120j上存在至少dess存储器控制器实例,则1≤u≤u)处理与相应存储装置306(可能驻留在dess节点120j或者另一dess节点120或者存储节点106中)的交互。这可包括例如转换地址,并且生成发布至(例如,sata、pcie、或者其他合适的总线上的)存储装置的命令。因此,dess存储器控制器实例224u操作为存储装置与dess的各种dess后端实例之间的中介。

图4示出了根据本公开的方面的专用存储节点的各种示例性配置。示例性专用存储节点106m包括硬件402,硬件402反过来包括网络适配器408和至少一个存储装置306(由从1至z的整数索引,z≥1)。每个存储装置306z可以与以上参考图3描述的存储装置306w相同。网络适配器408可包括电路(例如,基于arm的处理器)和总线(例如,sata、pcie、或者其它)适配器,该总线适配器可操作以响应于通过网络链路426接收的命令而访问(读取、写入等)存储装置4061–406z。这些命令可遵守标准协议。例如,专用存储节点106m可支持基于rdma的协议(例如,infiniband、roce、iwarp等)和/或依靠rdma的协议(例如,结构上的nvme(nvmeoverfabrics))。

在示例性实现方式中,层1存储器跨驻留在一个或多个存储节点106和/或一个或多个dess节点120上的一个或多个存储装置306(例如,flash装置)分布。如由数据迁移政策规定的,写入dess的数据最初存储至层1存储器并且然后移动至一个或多个其他层,数据迁移政策可以是用户限定的和/或基于机器学习自适应的。

图5a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。参考图5b至图5d描述该处理,图5b至图5d描述了操作为文件系统服务器以服务由操作为文件系统客户端的多个(示出的非限制性实例中是九个)计算装置552在互连件101上传输的文件系统请求的多个(示出的非限制性实例中是三个)计算装置554。

计算装置552中的每一个包括驱动器221的实例。驱动器221的每个实例被配置为发送文件系统请求(例如,根据nfs和/或smb标准传输的)至存储在其相应的存储地址560中的网络地址(示出的非限制性实例中的ipv4地址)。

计算装置554中的每一个包括dess前端220的实例。dess前端220的每个实例被配置为服务经由互连件101接收的、去往存储在其相应的存储器位置556中的网络地址的任何文件系统请求。另外,dess前端220的每个实例被配置为在相应的存储器位置中跟踪关于其服务的文件系统请求的统计数据。例如,统计数据可以包括:在确定的时间间隔期间去往其存储器位置556中的每一个网络地址的文件系统请求的计数,在确定的时间间隔期间向其存储器位置556中的每一个网络地址发送和/或从其接收的位的计数(例如,总数和/或平均值),服务所接收的文件系统请求的时间量(例如,总计和/或平均毫秒)等。图5b描述故障状况之前的网络,图5c描述故障状况期间的网络,以及图5d描述故障状况之后的网络。

返回图5a,处理开始于框502,其中指派网络地址集合以用作文件系统请求的目的地地址。在图5b的实例中,所指派的地址是ipv4地址0.0.0.1至0.0.0.9。

在框504中,向将操作以服务文件系统请求的多个计算装置中的每一个指派多个ip地址的唯一子集。在图5b的实例中,向装置5541指派ipv4地址0.0.0.1至0.0.0.3,向装置5542指派ipv4地址0.0.0.4至0.0.0.6,并且向装置5543指派ipv4地址0.0.0.7至0.0.0.9。

在框506中,将发布网络文件系统请求的每个客户端装置被分配或者选择来自该集合的一个或多个ip地址。例如,分配可以包括网络管理员的手动配置或者装置自身的自动配置和/或装置操作为管理实体(例如,装置5521–5529连接至的路由器)。在图5b的实例中,装置5521–5529中的每一个分配了ipv4地址0.0.0.1至0.0.0.9中的相应的一个。

在框508中,客户端装置使用它们相应的一个或多个ip地址传输文件系统请求。在图5b的实例中,装置5521–5523中的每一个向地址0.0.0.1–0.0.0.3中的相应的一个传输文件系统请求并且请求由装置5541服务,装置5524–5526中的每一个向地址0.0.0.4-0.0.0.6中的相应的一个传输文件系统请求并且请求由装置5542服务,并且装置5527–5529中的每一个向地址0.0.0.7-0.0.0.9中的相应的一个传输文件系统请求并且请求由装置5543服务。装置5541–5543中的每一个维护关于其服务的文件系统请求的统计数据。

在框510中,出现触发负载均衡的网络事件。示例性网络事件包括:装置的丢失(由于故障或者简单的从网络移除)、先前故障装置的恢复、将装置添加至网络、确定的时间间隔的流逝、由文件系统请求施加在装置554上的负载中的不均衡的检测、每时间间隔的文件请求的数量在阈值之上或之下等。在图5c的实例中,网络事件是装置5542的故障。

在框512中,关于网络地址的统计数据用于在剩余的服务器当中分布网络地址的故障服务器的子集,以致力于在剩余的服务器当中均匀地分布故障服务器的负载。在图5c的实例中,统计数据表示ip地址0.0.0.4上的负载大于ip地址0.0.0.5和0.0.0.6上的负载(即,与客户端5525和5526相比,客户端5524生成更多的文件系统业务)。因此,为了尽可能均匀地重新分布负载,0.0.0.4被重新分配至装置5541并且地址0.0.0.5和0.0.0.6被重新分配至装置5543。因此,事实是服务多个网络地址的装置5542使能够以对客户端装置5521-5529透明的方式在多个其他装置554中重新分布其负载。

在框514中,出现触发负载均衡的网络事件。在图5d的实例中,事件是恢复装置5542使其准备再次开始服务文件系统请求。

在框516中,关于网络地址的统计数据用于将一些网络地址卸载至恢复的或者新添加的服务器以致力于在服务器当中均匀地分布文件系统请求的负载。在图5d的实例中,统计数据表示最均匀的分布是将0.0.0.4和0.0.0.7重新分配至装置5542。

重新分配可以包括例如,对所有ip地址上的负载排名并且然后使用该排名分配网络地址以致力于尽可能均匀地分布负载。在图5d中,例如,排名可以是0.0.0.4>0.0.0.1>0.0.0.8>0.0.0.2>0.0.0.9>0.0.0.3>0.0.0.5>0.0.0.6>0.0.0.7。在一些情况下,诸如图5d中,为了更加均匀地分布负载,不同的服务器可以被分配不同数量的网络地址。

仅作为用于(重新)分配网络地址的方法的一个实例,(重新)分配可以包括向每个网络地址上的负载分配权重,并使得分配到每个服务器的总负载尽可能地均匀。例如,归一化的负载可以如以下表所示:

于是,总负载是4+3.5+3.2+2.1+2+1.8+1.3+1.1+1=20,并且因此重新分布可能设法给每个服务器分配尽可能接近于20/3=6.67的归一化的负载。对于表中的实例值,这可能引起0.0.0.4、0.0.0.3、0.0.0.7(总归一化负载6.8)分配至第一个服务器,0.0.0.8、0.0.0.2、0.0.0.5(总归一化负载6.6)分配至第二个服务器,并且0.0.0.1、0.0.0.9、0.0.0.6(总归一化负载6.6)分配至第三个服务器。

在示例性实现方式中,网络地址的(重新)分配可能考虑各种服务器的可利用资源。即,第一服务器可以具有比第二服务器更多的可利用资源(例如,处理器周期、网络带宽、存储器等),并且因此第一服务器可以分配有比第二服务器更大百分比的文件系统请求负载。例如,再次使用以上表的实例,如果一个服务器可以处理其他两个服务器中的每一个的两倍的负载,那么第一个服务器可以被分配接近于10的总归一化负载(例如,0.0.0.4、0.0.0.1、0.0.0.6、0.0.0.7,总共9.9),而其他两个服务器中的每一个被分配接近于5的负载(例如,0.0.0.8、0.0.0.3总共5,和0.0.0.2、0.0.0.9、0.0.0.y总共5.1)。

与框508至516并行的是框518和520,例如,框518和520可以连续不断地或者周期性地作为后台进程运行。在框518中,每个服务器跟踪关于ip地址的子集中的每个ip地址的统计数据。在框520中,框518中产生的统计数据被分布在服务器当中和/或被提供至协调器装置(例如,服务器中的一个通过一些投票处理或者其他选择算法被选择为协调器),使得所有服务器的统计数据可用于执行网络地址的重新分配。

图6a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。参考图6b至图6c描述该处理,图6b至图6c描述了多个(示出的非限制性实例中是三个)计算装置654,计算装置654操作为文件系统服务器以服务由操作为文件系统客户端的多个(示出的非限制性实例中是九个)计算装置652在互连件101上传输的文件系统请求。图6b示出装置故障前后的网络并且图6c示出故障状况期间的网络。

计算装置652中的每一个包括驱动器221的实例。驱动器221的每个实例被配置为将文件系统请求(例如,根据nfs和/或smb标准传输的)发送至由其地址选择器电路662选择的网络地址。地址选择器662可从其存储器664中的地址集合中进行选择。地址选择器662可在其存储器664中的地址集合之间顺次循环,或者可从其存储器664中的地址集合中任意选择,使得请求均匀分布在网络地址中。例如,可以每隔n个(n是整数)文件系统请求等,在发送每个文件系统请求之前,周期地选择新地址。

计算装置654中的每一个包括dess前端220的实例。dess前端220的每个实例被配置为服务经由互连件101接收的、去往存储在其相应的存储器位置556中的网络地址的任何文件系统请求。

返回图6a,处理开始于框604,其中,将服务文件系统请求的多个计算装置中的每一个被分配一网络地址。在图6b的实例中,装置6541被分配以处理去往0.0.0.1的文件系统请求,装置6542被分配以处理去往0.0.0.2的文件系统请求,并且装置6543被分配以处理去往0.0.0.3的文件系统请求。

在框606中,客户端装置开始将文件系统请求传输到互连件101上,请求的目的地地址均匀分布在网络地址集合的网络地址中。

框608和610表示框606之后的一个可能的事件序列,并且框612-616表示框606之后的另一可能的事件序列。

在框608中,服务文件系统请求的一个装置中出故障。在图6c的实例中,装置6542出故障。

在框610中,从网络地址集合中(或者标记为“不要使用”中)移除分配给故障装置的网络地址,地址选择器662从该网络地址集合中选择用于文件系统请求的地址。因此,在图6c的实例中,从存储器位置664中的每一个中移除与故障装置6542相关联的ipv4地址0.0.0.2。

在框612中,恢复故障装置或者添加用于服务文件系统请求的新装置。在图6b的实例中,服务器6542恢复并且准备再次开始服务文件系统请求。

在框614中,恢复的装置被分配网络地址。在图6b的实例中,装置6542被再次分配0.0.0.2。

在框616中,分配至恢复的或者新添加的计算装置的网络地址被添加至集合,地址选择器662从该集合中选择用于文件系统请求的地址。因此,在图6b的实例中,将与新的或者恢复的装置6542相关联的ipv4地址0.0.0.2添加至存储器位置664中的每一个内的集合。

图7a是根据本公开的方面的用于处理文件系统请求的示例性处理的流程图。在框702中,一个或多个第一装置正在服务文件系统请求,而一个或多个第二装置处于备用。在图7b的实例中,装置7541和7542正在服务文件系统请求,而7543处于备用。在框704中,第一装置中的一个出故障。在图7c的实例中,装置7542出故障。在框706中,脱离备用的一个或多个第二装置处理由故障装置先前处理的文件系统请求。在图7c的实例中,装置7543脱离备用并且接管由故障装置7542处理的ip地址。在框708中,例如,由于装置7543具有与装置7542不同的可利用资源,导致触发重新均衡。例如,重新均衡可能导致一些地址从装置7541移位至7543,或者反之亦然。例如,在装置7542和7543是相同的情况下,这种重新均衡可能是不必要的。

图8a是根据本公开的方面的用于使文件系统请求的处理负载均衡的示例性处理的流程图。在框802中,一个或多个第一装置正在服务文件系统请求,而一个或多个第二装置处于备用。在图8b的实例中,装置8541和8542正在服务文件系统请求,而8543处于备用。在框804中,装置上的文件系统请求负载(例如,在每时间间隔的文件系统请求的数量、目前待处理文件系统请求的数量、装置854中的一个或多个服务文件系统请求的平均时间等方面测量的)超过阈值。在框806中,一个或多个第二装置脱离备用。在图8c的实例中,装置8543脱离备用。在框808中,重新均衡被触发并且在包括脱离备用的装置的装置当中重新分布网络地址。在图8c的实例中,负载均衡导致装置8541处理地址0.0.0.2和0.0.0.3,装置8542处理地址0.0.0.5和0.0.0.6,并且装置8543处理地址0.0.0.1和0.0.0.4。

根据本公开的示例性实现方式,系统包括多个计算装置(例如,5521–5529、5541–5543、和/或互连件101的一个或多个装置(例如,路由器))和控制电路(例如,装置5541–5543中的一个或多个的硬件202和相关联的软件和/或固件,和/或互连件101的装置(例如,路由器)中的硬件和相关联的软件和/或固件)。控制电路可操作以:在网络事件之前将ip地址集合中的第一多个ip地址分配至多个计算装置的第一服务器,使得去往第一多个ip地址中的任一个的文件系统请求将由第一服务器服务;在网络事件之前将ip地址集合中的第二多个ip地址分配至多个计算装置的第二服务器,使得去往第二多个ip地址中的任一个的文件系统请求将由第二服务器服务;并且在网络事件之前将ip地址集合的第三多个ip地址分配至多个计算装置的第三服务器,使得去往第三多个ip地址中的任一个的文件系统请求将由第三服务器服务。控制电路可操作以维护关于发送至ip地址集合中的每个ip地址的文件系统请求的统计数据。控制电路可操作以基于统计数据确定第一多个ip地址的第一部分被重新分配至第二服务器,并且第一多个ip地址的第二部分被重新分配至第三服务器。控制电路可操作以在网络事件之后将第一多个ip地址的第一部分重新分配至第二服务器使得去往第一多个ip地址的第一部分中的任一个的文件系统请求将由第二服务器服务。控制电路可操作以在网络事件之后将第一多个ip地址的第二部分重新分配至第三服务器使得去往第一多个ip地址的第二部分中的任一个的文件系统请求将由第三服务器服务,其中,重新分配基于统计数据。

根据本公开的示例性实现方式,系统包括多个计算装置(例如,5521–5529,5541–5543,和/或互连件101的一个或多个装置(例如,路由器))和控制电路(例如,一个或多个装置5541–5543的硬件202和相关联的软件和/或固件,和/或互连件101的装置(例如,路由器)的硬件和相关联的软件和/或固件)。控制电路可操作以将计算装置中的第一个(例如,5541)分配为服务去往第一多个网络地址中的任一个的文件系统请求;将计算装置中的第二个(例如,5542)分配为服务去往第二多个网络地址中的任一个的文件系统请求;维护关于发送至第一多个网络地址和第二多个网络地址中的每一个的文件系统请求的统计数据;以及基于统计数据将计算装置中的第一个重新分配为服务去往第二多个网络地址中的所选的一个的文件系统请求。多个计算装置可包括多个第三计算装置(例如,5521–5529),第三计算装置中的每一个被分配为将其文件系统请求发送至第一多个网络地址和第二多个网络地址中的相应的一个。多个计算装置可以包括可操作以生成多个文件系统请求的多个第三计算装置(例如,5521–5529),其中,多个文件系统请求的目的地网络地址在第一多个网络地址当中均匀地分布。

因此,本方法和系统可以以硬件、软件、或硬件和软件的组合实现。本方法和/或系统可以以集中方式在至少一个计算系统中实现,或以其中不同的元件分散在几个互连的计算系统内的分布式方式实现。适合于实施本文中描述的方法的任何种类的计算系统或其他装置是合适的。硬件和软件的典型组合可以是具有程序或者其他代码的通用计算系统,当程序或者其他代码被加载和执行时,控制计算系统使得其实施本文中描述的方法。另一典型实现方式可包括专用集成电路或者芯片。一些实现方式可包括在其上存储有可由计算装置执行的一行或多行代码的非暂时性机器可读介质(例如,闪存驱动、光盘、磁存储盘等),从而将机器配置为实现在本文中描述的虚拟文件系统的一个或多个方面。

虽然已参考某些实现方式描述了本方法和/或系统,但是本领域技术人员应理解,在不偏离本方法和/或系统的范围的情况下,可以做出各种改变并且可以用等同物替代。此外,在没有偏离本公开的范围的情况下,可以做出许多修改以适应于本公开的教导的特定的情形或材料。因此,意图是本方法和/或系统不限于所公开的具体实现方式,而是本方法和/或系统将包括落入所附权利要求范围内的所有的实现方式。

如本文中使用的,术语“电路(circuit)”和“电路(circuitry)”指物理电子组件(即硬件)以及可配置硬件、由硬件执行和/或以其他方式与硬件相关联的任何软件和/固件(“代码”)。如本文中使用的,例如,具体处理器和存储器在执行第一个一行或多行代码时可包括第一“电路”并且在执行第二个一行或多行代码时可包括第二“电路”。如本文所使用的,“和/或”指由“和/或”连接的列表中的项的任一个或多个。作为一个实例,“x和/或y”指三元素集合{(x),(y),(x,y)}中的任一元素。换言之,“x和/或y”指“x和y中的一个或两个”。作为另一实例,“x、y、和/或z”指七元素集合{(x),(y),(z),(x,y),(x,z),(y,z),(x,y,z)}中的任一元素。换言之,“x、y和/或z”指“x,y和z中的一个或多个”。如本文中使用的,术语“示例性”指用作非限制性实例、实施例或者例证。如本文中使用的,术语“例如(e.g.)”和“例如(forexample)”阐述了一个或多个非限制性实例、实施例、或者例证的列表。如本文中使用的,每当电路包括执行功能所必需的硬件和代码(如果需要的话),不管该功能的性能是被禁用还是未启用(例如,通过用户可配置的设置、出厂调整等),电路“可操作以”执行该功能。

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