Dratf-ietf-decade-survey-04(二)

4已有的网络内部存储系统

(1) Amazon S3

        通过基于HTTP协议的Web接口提供在线存储服务。用户创建桶,桶里面会包含存储对象。通过提供的接口,用户能够管理他们的桶。其他类似的有Windows Azure提供的Blob服务(暂时译为:滴服务)。 Amazon S3中有强大的授权模型去满足用户的多种使用情况。Amazon S3的可扩展性受到关注,还有其分级的命名空间,对已存在数据的更新。

       对DECADE应用的启示: ① 数据访问接口用户能够读写对象 ② 数据管理操作用户能够删除之前存储的对象 ③ 数据查询能力用户能够将桶列出来从而找出需要的对象 ④ 问控制权限网络服务是完全共公的,对存储对象的访问是受限的。 ⑤ 源管理接口没有提供 ⑥ 资源发现机制利用DNS ⑦ 存储模式基于对象的,但是这些对象能够拓展成为用户定义的桶

(2) BranchCache(分支缓存)

        BrachCache 称为分支缓存,它是 Windows 7 和 Windows Server 2008 R2所提供的新功能,它是设计用来适应有分支办公机构的企业平台的一个组件。通常分支机构的员工无法在本地获得数据,一般做法是用户通过广域网连接到总部机构访问所需要的文件,这样有些文件会被多次重复访问。使用BranchCache,Windows 7和Windows Server 2008 R2可以提高广域网(WAN)的带宽利用率,同时提高远程办公网络应用的性能。当在Windows 7和Windows Server 2008R2上启用BranchCache以后,在企业广域网(WAN)的Web和文件服务器的资料被获取并存储到本地分支办公网络。如果同一部门的另一个客户端请求相同的内容,该客户端可以从本地网络直接访问它,而不必通过广域网的获取整个文件。在本地的分支机构中获取内容之前,客户端总是由数据中心服务器进行授权。

       有两种缓存方式,第一种是托管缓存,另外一种是分布式缓存。托管缓存:在本地的一个服务器会用来缓存从服务获得的文件。如果用户请求的文件不在本地的缓存服务器上,那么将从内容服务器上获得,并把该文件发送到本地的缓存服务器上。分布式缓存:用户首先利用网络服务广播协议将请求发送给同个网络中的其他用户。如果在本地没有副本,用户将会从内容服务器上获取数据,同时将该数据缓存到本地。分支缓存主要面向的是企业网络。支持类似P2P方式和客户-服务器方式。通过移植到微软的操作系统中从而能够广泛应用该技术。

       ① 数据访问接口客户端透明的从缓存中读取数据。在托管缓存模式中,客户端能够将从内容服务器获得的内容写到托管缓存中。 ② 数据管理操作没有提供 ③ 数据查询内管理 No ④ 数据控制授权是私有的,传输的内容会被加密,而加密的钥匙只能从源服务器获得。 ⑤ 源控制接口在托管缓存模式中,允许对同时访问的最大用户数进行限定。在分布式缓存中,利用指数回退和调节机制来防止对流行内容的暴风式响应。 ⑥ 发现机制分布式缓存模式中,采用组播的形式去发现;托管模式中,是通过缓存服务器去得到内容,可能是通过DNS解析。 ⑦ 存储模式基于对象

 (3) 缓存-转发架构

        CNF即缓存-转发架构是未来互联网分发内容的一种架构。在这个架构中,存储在网络的节点中,也可能在路由中或者距离路由较近的地方。CNF设计是基于拥有存储能力的路由进行存储-转发的概念,为移动用户提供优化的分发服务以及提供网络内部的内容缓存服务。CNF协议利用可信的跳到跳的传输方式,将发行数据文件在CNF路由器之间进行传输,从而代替端到端的传输协议例如TCP。如果进行相应的应用和部署,需要部署拥有存储能力的路由器。正如该架构的名称一样,该架构只能提供短时间的缓存而不能提供长时间的网络存储。

        ① 数据访问接口用户通过请求文件去获得存储在CNF路由中的内容。 ② 数据管理操作没有提供 ③ 数据查询能力没有提供 ④ 访问控制授权有限制的公开。 ⑤ 资源管理接口没有提供 ⑥ 发现机制请求中会包含与位置无关的内容ID,该请求会被发送到CNF路由中,由CNF路由负责数据的获取和转发。 ⑦ 存储模式基于对象的。该架构能够在网络中缓存大型文件,对象能够认为是大型文件的更小的块。

(4) CDN—内容分发网络

         CDN中包含了内容分发、请求路由、分发和计费结构。内容分发结构包含了一系列的边缘路由器用来将内容分发给用户。请求路由结构用来将用户的请求重定向到可用的边缘服务器。同时还与分发机构联系,用来保证CDN缓存内容的全局性。分发结构将请求内容从源服务器移动到CND的边缘服务器,同时保证内容缓存的一致性。计费结构主要是对用户访问和CDN服务器进行记录,这些记录信息用来计算费用。

         实际中,CDN保存是典型的静态内容,例如图片、视频、多媒体分片、广告等其他。CDN提供的服务和功能有:内容的存储与管理、内容的分发、缓存管理、对静态、动态和多媒体内容的分发、灾难恢复、性能测量与监控。典型的CDN有Akamai、Limelight和CloudFront。 CDN是广泛使用的多媒体网络内部存储。存储的存在和操作对用户是透明的。CDN提供商必须与内容提供商和内容分发商甚至ISP有很好的关系。

        ① 内容访问接口 CDN几乎是一个封闭的系统,只提供读的能力给用户。 ② 数据管理操作内容提供者能够管理其在不同缓存节点上的数据,包括移动流行数据对象、删除很少使用的数据对象。对于普通用户来说,是没有相应管理操作权限的。 ③ 数据查询能力内容提供商能够查询在每个缓存节点上的数据状况。 ④ 访问控制授权有的边缘服务器允许特定IP访问,一般都是经过源服务器授权。 ⑤ 资源控制接口没有提供 ⑥ 发现机制内容提供者能够找到CDN节点;普通用户则能通过DNS或其他重定向机制定位到CDN节点。 ⑦ 存储模式基于对象的.

(5) DTN—时延容忍网络

        DTN架构是为星际网络设计的架构。所谓的星际网络是在星际距离上提供类似于英特网的服务系统。DTN结构能够用于通信崩溃、断开和高时延的网络。从而DTN可以用来适应不同的环境,包括远距离空间网络、基于传感器的网络、固定的卫星网络和水下声音网络。 DTN的关键是在传输层和应用层之间的存储转发层,叫做Bundle协议或者是Bundle层。在Bundle层通过永久存储提供存储转发服务从而克服长时间的网络崩溃。虽然传统的IP网络也是存储-转发机制,但是数据包保存的时间是以毫秒计的。不同的是,DTN中的Bundle层节点是拥有永久存储单元的。 DTN的应用需要对目前网络协议进行改变。

        ① 据访问接口用户将数据存储在Bundle层上的节点。 ② 数据管理操作用户可以通过设定生存时间来限制存储在Bundle层节点上内容的存在时间。 ③ 据查询能力没有提供 ④ 访问控制授权有限公开的或者是私有的。 ⑤ 资源管理接口没有提供 ⑥ 发现机制通过统一资源标识(URI)方法 ⑦ 存储模式基于对象的。在Bundle层存储的数据会被分片。

 (6) NDN—命名的数据网络

       NDN提出的初衷是为了提出在网络上新的命名和路由模型。NDN利用在路由器中基于命名的数据缓存。每个NDN数据包都会拥有一个内容名称,同时该名称会被加密签名。数据的分发是由请求引起的。路由器之间通过路由协议例如IS-IS、BGP等发送命名前缀通告。请求者会发送兴趣包,里面包含了请求数据的标识。路由器接受到该请求包后,会记录请求包进入路由器的接口,然后通过基于命名的路由转发协议将其转发。一旦兴趣包发现节点上有相应的数据,那么数据包就会返回,数据包中有请求数据的名称和相应数据。最后通过逆向路径数据包返回给请求者。

      NDN中的关键点是路由器有能力缓存命名了的数据。当请求到达路由器时,可以将本地存储的数据返回给请求者。NDN提出者认为网络设计的本来属性是为了数据分发而不是节点间的通信。 NDN的部署需要在因特网中的大量路由器拥有存储空间。命名的数据能够保存在NDN路由器中并能够响应相应的请求。

      ① 数据访问接口用户可以通过对数据进行请求,从而使得数据缓存在NDN中,这样后续同样的数据请求,就可以通过NDN中的路由缓存去相应了。 ② 数据管理操作用户是没有之间的能力去删除保存在NDN路由器中的数据的。但是将来能够通过设置生存时间来限定缓存在路由器上的存储时间。 ③ 数据查询能力没有提供 ④ 访问控制权限所有模式都支持。发送方会将其发送的数据加密。 ⑤ 资源控制接口没有提供 ⑥ 发现机制在NDN中,名称被用来寻址和发现。NDN中的名称是分等级的,能够确定性的被构建,这方面处于研究状态。 ⑦ 存储模式基于对象的。

(7) NetInf(信息网络)

       和NDN类似,NetInf也是以命名数据对象为基本组成,以信息为中心的网络架构。在NetInf中,命名和安全结构是基于以信息为中心的安全模型,将安全性植入到架构中。信息对象会有一个唯一的名称,这个名称具有加密过的属性。通过额外的元数据,信息对象的名称能够用来验证数据完整性以及其他安全特性,例如身份认证、名字持续性和所有者授权和认证。在NetInf中信息对象被发布到网络中。这些信息对象通过NRS即名字解析服务进行注册。NRS被用来可以用来记录网络定位点,网络定位点可以用来获取信息对象对应的数据对象。

      当一个用户想要获取信息对象时,信息对象的请求被NRS解析到一些定位点。这些定位点可以用来选择最好的源中获得数据对象副本。 NetInf可以利用任何形式的底层传输网络。定位点可以是混杂的,例如IPv4、IPv6、MAC等。NetInf能够扩展对网络中信息对象的使用,从而提供类似CDN和P2P分发网络中提供的覆盖网方案。 NetInf的应用需要在英特网中部署大量NetInf节点,这些节点有存储空间用来缓存信息对象。

      ① 数据访问接口用户将信息对象赋予特定的ID发布到网络中,上述过程是通过用户向NRS发送一个注册信息,消息中包含了信息对象及其ID。当有别的用户想获得该信息对象,只要在请求中包含相应的ID。请求中的ID被NRS解析,然后从最近的定位点获得信息对象。 ② 数据管理操作用户没有直接的权利去删除保存在NetInf中的内容。虽然可以设置生存时间来限制信息对象,但是还未被定义。 ③ 据查询能力没有提供 ④ 访问控制授权支持三种。在NetInf中最基本的安全机制是发布者会对发布内容的信息对象进行加密。 ⑤ 源控制接口没有提供 ⑥ 发现机制 NetInf中的ID被用来命名和访问信息对象。ID能够被NRS解析到定位点,被用来路由和传输数据。这方面处于研究之中。 ⑦ 存储模式基于对象的。

(8) 网络流量冗余消除

       冗余消除用来标识和移除在网络传输中重复的内容。这项技术被利用来改进多种类型的网络,例如ISP骨干网、企业接入连接等。一个实例就是SmartRE,关注全网络的冗余消除。在数据包层的冗余消除,转发的元素需要有额外的存储,额外的存储空间用来缓存转发了的数据包。传输的上层路由会替换数据包中的指纹设置,通过指纹设置告诉下层路由如何去对缓存数据进行解码和重组。

       ① 数据访问接口冗余消除对于用户来说通常是透明的。当传输的数据没有在缓存中时,会被写入缓存中。当用户发送数据标识到已经传输过的数据时,缓存的数据将会被读取。 ② 数据管理操作没有提供 ③ 数据搜索能力没有提供 ④ 访问控制授权有限制的公开。 ⑤ 资源控制接口没有提供 ⑥ 存储模式基于对象的。

(9) OceanStore

        OceanStore提供时全局性的分布式存储。OceanStore允许多个存储提供者以池形式将资源融合在一起。然后,主要的关注点是弹性和自组织和自维护。该协议是有弹性的,通过拜占庭协议和擦除代码,将数据保存到主要副本。

       ① 据访问接口用户可以读写对象 ② 数据管理操作对象可以被新版本对象替代,对象的多个版本可以共存。 ③ 数据搜索能力没有提供 ④ 访问控制授权提供了,但是没有给用户提供明确知道。 ⑤ 资源管理接口没有提供 ⑥ 发现机制用户需要一个接入点以存储节点的形式加入到Oceanstore中。 ⑦ 存储模式基于对象的。

(10) 图片共享

      有越来越多的在线图片共享系统。绝大多数的图片共享系统是传统的客户端-服务器架构。但是,对系统的监控却是以P2P方式的操作。客户端-服务器架构主要是基于HTTP协议,包含有一个浏览器客户端和一个Web服务器。

      ① 数据访问接口用户可以查看和写图片 ② 数据管理操作用户可以删除以前保存的图片 ③ 数据查询能力用户可以对图片进行标签或者建立合集。然后用户可以通过相应的准则去搜索图片。 ④ 问控制授权私有的或者公开不受限的。 ⑤ 资源控制接口没有提供 ⑥ 发现机制通常是通过登录到中心网页来提供服务,提供一定的信息去请求。用户请求的地址通常通过DNS解析,将提供的URL转换为主机名。 ⑦ 存储模式基于文件的。图片通常以文件的形式存储。然后组织成不同的形式,例如合集或画廊等。

(11) P2P缓存

      P2P缓存能有效减少P2P网络中的流量,因为P2P系统中的对象通常是不可修改的,传递的信息通常是重复的。此外,应用P2P缓存,不需要修改P2P协议就能透明的部署到客户端。 P2P缓存和网页缓存类似,都是临时存储最近请求的内容。已经缓存在服务器上的内容,当有请求到达时,能够从本地存储系统中返回数据而不需要在进行连接。

       两种形式的P2P缓存:不透明的P2P缓存和透明的P2P缓存。不透明的缓存可以被看做一个超级节点,这个超级节点和其他P2P节点公开性连接。透明的缓存,是指当P2P缓存建立后,网络会透明的将P2P传输重定向到缓存上,处理的两种情况:一种是请求的内容已缓存,则直接返回缓存的文件;另一种是将请求转发的同时,将所请求的内容缓存到本地。透明性一般是通过深度包检测(DPI)实现的。DPI产生标识符,并将P2P数据包传送给P2P缓存系统,从而缓存数据加速发送。为了支持已有P2P软件的操作,P2P缓存直接支持P2P应用协议。存储的建立和操作对于用户来说都是透明的。

       透明P2P缓存: 数据访问接口:允许P2P内容能够被缓存和本地返回,但是这对于用户来书是透明的。数据管理操作:没有提供数据查询能力:没有提供访问控制授权:有限的公开资源控制接口:没有提供发现机制:利用数据包深度检测(DPI)意味着没有发现机制。DPI用来识别P2P应用的私有协议。存储模式:基于对象的

        不透明的P2P缓存: 数据访问接口:允许P2P内容能被缓存和本地返回。用户可以利用P2P应用的私有协议存储和获取缓存。 数据管理操作:没有提供 数据查找能力:没有提供 访问控制授权:有限公开的 资源控制接口:没有提供 发现机制:缓存就像普通节点一样加入到P2P覆盖网中。其他的P2P节点能够通过覆盖网的路由机制找到这些缓存节点。 存储模式:基于对象的。内容的块用来缓存。

(12) Usenet—用户网

        Usenet是基于消息的分布式网络。Usenet中的消息包括一系列新闻组,新闻组通过主题进行分级。Usenet信息是分布式存储在聚集的服务器中,这些服务器互相之间存储和转发消息,就是所谓的消息供给。每个用户可以从本地的消息服务器读取信息也可以向其发送信息,过程是由ISP操作。本地服务器和其他服务器之间通过消息交换内容。这样消息从一个服务器到另一个服务器,使得其到达网络中的任意服务器。典型的Usenet就是,服务器之间是P2P网络,而用户和本地服务器之间则是客户-服务器结构。

        客户需要安装客户端以及服务计费。由于网页浏览器的流行,Usenet渐渐的是基于Web的。最好的例子就是Google Groups,在小组中的所有主机和客户可以通过标准的HTTP协议获取数据。

       ① 数据访问接口用户可以读取和存储消息 ② 数据管理操作用户有的时候不能删除其之前存储的消息 ③ 数据查询能力用户可以通过分级的标题查询相应的组。 ④ 访问控制授权公开不受限或私有的 ⑤ 资源控制接口没有提供 ⑥ 发现机制通过Usenet账号登陆。DNS用来解析主机名,访问相应地址。 ⑦ 存储模式文件系统。

(13) 网页缓存

       网页缓存在90年代被ISP广泛用来减少带宽消耗,减少网页访问时延。网页缓存能缓存网页文件,包括HTML页面、图片等,从而减少服务器和客户端的带宽消耗,服务器负载。一个网页缓存服务器可以被多个客户端共享,保存了经过它的文档副本;在一定条件下,后续的请求可以通过缓存满足。另一种缓存形式是客户端缓存,典型的就是利用浏览器。客户端缓存是保存最近浏览器中的页面为本地副本,当用户再次打开其中的页面时,本地缓存会被利用。

       用于网页缓存的协议,是和P2P应用类似的HPTP协议。该协议通过带有缓存控制头的HTTP协议共享P2P文件/流中的块。

       数据访问接口:用户可以读取缓存,但是不能写入缓存。 数据管理操作:没有提供 数据查询能力:没有提供 访问控制授权:公开不受限的 资源控制接口:没有提供 查找机制:网页缓存在网页服务器和客户之间是透明的,利用DPI进行查找。 存储模式:基于对象的。

     上诉很多系统都是为客户-服务器架构设计的,并不支持P2P。但是有一些例外,特别是一些比较新的技术,例如分支缓存和P2P缓存,这些都支持P2P模式。 P2P缓存系统十分引人注目,因为它不需要P2P应用作出调整。但是需要应用程序协议的支持。很多研究的系统中,缓存都只作为长时间的网络存储。在设计DECADE的时候就要认真该考虑是否采用长时间网络存储模式。

5存储和其他相关的协议

HTTP:是www的关键协议。是无状态的客户-服务器协议,允许应用程序通过REST模型进行设计。

 iSCSI:SCSI是一系列协议,允许不同存储设备之间进行通信,例如磁盘和磁带之间。网络SCSI即iSCSI,使得SCSI的命令能在TCP之上发送。

NFS:网络文件系统是旨在让用户通过存储网络访问文件就像以本地访问方式一样。NFS是通常用于局域网或企业,虽然在以后的NFS版本的变化更容易在互联网上运作。

OAuth:拓展了传统的客户-服务器授权方式。将用户和资源所有者分开,能让资源所有者向部分特定的用户授权访问权限。

 WebDAV:该协议是用来对web内容进行授权的。这是对5.1节中描述的HTTP的扩展,这意味着它可以简单的与现有软件进行整合。 WebDAV的支持传统从储存的读/写,以及其他结构例如锁和集合。

 所有的研究协议都主要是为客户-服务器设计的,而不是P2P。但是,有些协议是可以改进并应用带P2P架构中的。有一部分网络内部存储系统利用HTTP协议和其他协议,虽然通常这些协议不认为是存储协议。HTTP是一个无状态的协议,可以被用来设计RESTful应用。HTTP可以作为研究DECADE强有力的支持和应用协议。大多数的协议都不保证应用程序的低时延访问,例如对直播流的访问。这是DECADE要达到的要求。大多数协议不支持资源控制接口。用户需要通过资源控制来管理在网络存储的资源,从而响应其他节点。资源控制是DECADE的一个重要能力。几乎所有的上述协议都支持一下能力,同样也是DECADE要求的:读写内容、访问控制、错误避免、穿越防火墙和NAT。

你可能感兴趣的:(网络,服务器,存储,p2p,路由器,缓存服务器)