Internet Engineering Task Force (IETF)                     R. Alimi, Ed.
Request for Comments: 6392                                        Google
Category: Informational                                   A. Rahman, Ed.
ISSN: 2070-1721                         InterDigital Communications, LLC
                                                            Y. Yang, Ed.
                                                         Yale University
                                                            October 2011
Internet Engineering Task Force (IETF)                     R. Alimi, Ed.
Request for Comments: 6392                                        Google
Category: Informational                                   A. Rahman, Ed.
ISSN: 2070-1721                         InterDigital Communications, LLC
                                                            Y. Yang, Ed.
                                                         Yale University
                                                            October 2011

A Survey of In-Network Storage Systems




This document surveys deployed and experimental in-network storage systems and describes their applicability for the DECADE (DECoupled Application Data Enroute) architecture.


Status of This Memo


This document is not an Internet Standards Track specification; it is published for informational purposes.


This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are a candidate for any level of Internet Standard; see Section 2 of RFC 5741.

本文件是互联网工程任务组(IETF)的产品。它代表了IETF社区的共识。它已经接受了公众审查,并已被互联网工程指导小组(IESG)批准出版。并非IESG批准的所有文件都适用于任何级别的互联网标准;见RFC 5741第2节。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at


Copyright Notice


Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved.

版权所有(c)2011 IETF信托基金和确定为文件作者的人员。版权所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents ( in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

本文件受BCP 78和IETF信托有关IETF文件的法律规定的约束(自本文件出版之日起生效。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。从本文件中提取的代码组件必须包括信托法律条款第4.e节中所述的简化BSD许可证文本,并提供简化BSD许可证中所述的无担保。

Table of Contents


   1. Introduction ....................................................3
   2. Survey Overview .................................................3
      2.1. Terminology and Concepts ...................................3
      2.2. Historical Context .........................................3
   3. In-Network Storage System Components ............................5
      3.1. Data Access Interface ......................................5
      3.2. Data Management Operations .................................5
      3.3. Data Search Capability .....................................6
      3.4. Access Control Authorization ...............................6
      3.5. Resource Control Interface .................................6
      3.6. Discovery Mechanism ........................................7
      3.7. Storage Mode ...............................................7
   4. In-Network Storage Systems ......................................7
      4.1. Amazon S3 ..................................................7
      4.2. BranchCache ................................................9
      4.3. Cache-and-Forward Architecture ............................11
      4.4. Cloud Data Management Interface ...........................12
      4.5. Content Delivery Network ..................................14
      4.6. Delay-Tolerant Network ....................................16
      4.7. Named Data Networking .....................................18
      4.8. Network of Information ....................................19
      4.9. Network Traffic Redundancy Elimination ....................22
      4.10. OceanStore ...............................................23
      4.11. P2P Cache ................................................24
      4.12. Photo Sharing ............................................26
      4.13. Usenet ...................................................28
      4.14. Web Cache ................................................29
      4.15. Observations Regarding In-Network Storage Systems ........31
   5. Storage and Other Related Protocols ............................32
      5.1. HTTP ......................................................32
      5.2. iSCSI .....................................................33
      5.3. NFS .......................................................34
      5.4. OAuth .....................................................36
      5.5. WebDAV ....................................................37
      5.6. Observations Regarding Storage and Related Protocols ......39
   6. Conclusions ....................................................40
   7. Security Considerations ........................................40
   8. Contributors ...................................................40
   9. Acknowledgments ................................................41
   10. Informative References ........................................41
   1. Introduction ....................................................3
   2. Survey Overview .................................................3
      2.1. Terminology and Concepts ...................................3
      2.2. Historical Context .........................................3
   3. In-Network Storage System Components ............................5
      3.1. Data Access Interface ......................................5
      3.2. Data Management Operations .................................5
      3.3. Data Search Capability .....................................6
      3.4. Access Control Authorization ...............................6
      3.5. Resource Control Interface .................................6
      3.6. Discovery Mechanism ........................................7
      3.7. Storage Mode ...............................................7
   4. In-Network Storage Systems ......................................7
      4.1. Amazon S3 ..................................................7
      4.2. BranchCache ................................................9
      4.3. Cache-and-Forward Architecture ............................11
      4.4. Cloud Data Management Interface ...........................12
      4.5. Content Delivery Network ..................................14
      4.6. Delay-Tolerant Network ....................................16
      4.7. Named Data Networking .....................................18
      4.8. Network of Information ....................................19
      4.9. Network Traffic Redundancy Elimination ....................22
      4.10. OceanStore ...............................................23
      4.11. P2P Cache ................................................24
      4.12. Photo Sharing ............................................26
      4.13. Usenet ...................................................28
      4.14. Web Cache ................................................29
      4.15. Observations Regarding In-Network Storage Systems ........31
   5. Storage and Other Related Protocols ............................32
      5.1. HTTP ......................................................32
      5.2. iSCSI .....................................................33
      5.3. NFS .......................................................34
      5.4. OAuth .....................................................36
      5.5. WebDAV ....................................................37
      5.6. Observations Regarding Storage and Related Protocols ......39
   6. Conclusions ....................................................40
   7. Security Considerations ........................................40
   8. Contributors ...................................................40
   9. Acknowledgments ................................................41
   10. Informative References ........................................41
1. Introduction
1. 介绍

DECADE (DECoupled Application Data Enroute) is an architecture that provides applications with access to provider-based in-network storage for content distribution (hereafter referred to as only "in-network storage" in this document). With access to in-network storage, content distribution applications can be designed to place less load on network infrastructure. As a simple example, a peer of a Peer-to-Peer (P2P) application may upload to other peers through its in-network storage, saving its usage of last-mile uplink bandwidth. See [1] for further discussion.

十年(DECoupled Application Data-InRoute)是一种体系结构,它为应用程序提供对基于提供商的网络存储中的内容分发的访问(在本文档中仅称为“网络存储中”)。通过访问网络内存储,可以设计内容分发应用程序,以减少网络基础架构上的负载。作为一个简单的示例,对等(P2P)应用程序的对等方可以通过其网络内存储上传到其他对等方,从而节省其最后一英里上行链路带宽的使用。有关进一步的讨论,请参见[1]。

A major motivation for DECADE is the substantial increase in capacity and reduction in cost offered by storage systems. For example, over the last two decades, there has been at least a 30-fold increase in the amount of storage that a customer can get for a given price (for flash memory and hard disk drives) [2] [3] [4].


High-capacity and low-cost in-network storage devices introduce substantial opportunities. One example of in-network storage is content caches supporting Web and P2P content. DECADE differs from existing content caches whose control fully resides with the owners of the caching devices in that DECADE also allows applications to control access to their allocated in-network storage, as well as the resources consumed while accessing that storage (bandwidth, connections, storage space). While designed in the context of P2P applications, DECADE may be useful to other applications as well. This document provides details on deployed and experimental in-network storage solutions, and evaluates their suitability for DECADE.


We note that the survey presented in this document is only representative of the research in this area. Rather than trying to enumerate an exhaustive list, we have chosen some typical techniques that lead to derivative works.


2. Survey Overview
2. 调查概述
2.1. Terminology and Concepts
2.1. 术语和概念

This document uses terms defined in [1].


2.2. Historical Context
2.2. 历史语境

In-network storage has been used previously in numerous scenarios to reduce network traffic and enable more efficient content distribution. This section presents a brief history of content distribution techniques and illustrates how DECADE relates to past


approaches. Systems have been developed with particular use cases in mind. Thus, this survey is not meant to point out shortcomings of existing solutions, but rather to indicate where certain capabilities required in DECADE [5] are not provided by existing systems.


In the early stage of Internet development, most Web content was stored at a central server, and clients requested Web content from the central server. In this architecture, the central server was required to provide a large amount of bandwidth. As more and more users access Web content, a central server can become overloaded. The use of Web caches is one technique to reduce load on a central server. Web caches store frequently requested content and provide bandwidth for serving the content to clients.


The ongoing growth of broadband technology in the worldwide market has been driven by the hunger of customers for new multimedia services as well as Web content. In particular, the use of audio and video streaming formats has become common for delivery of rich information to the public, both residential and business.


To overcome this challenge of massive multimedia consumption, just installing more Web caches will not be enough. Moving content closer to the consumer results in greater network efficiency, improved Quality of Service (QoS), and lower latency, while facilitating personalization of content through broadband content applications. In these edge technologies, Content Delivery Networks (CDNs) are a representative technique. CDNs are based on a large-scale distributed network of servers located closer to customers for efficient delivery of digital content, including various forms of multimedia content.


Although CDNs are an effective means of information access and delivery, there are two barriers to making CDNs a more common service: cost and replication integrity. Deploying a CDN with its associated infrastructure is expensive. A CDN also requires administrative control over nodes with large storage capacity at geographically dispersed locations with adequate connectivity. CDNs can be scalable, but due to this administrative and cost overhead, they are not rapidly deployable for the common user.


The emergence and maturation of P2P has allowed improvements to many network applications. P2P allows the use of client resources, such as CPU, memory, storage, and bandwidth, for serving content. This can reduce the amount of resources required by a content provider. Multimedia content delivery using various P2P or peer-assisted frameworks has been shown to greatly reduce the dependence on CDNs and central content servers. However, the popularity of P2P applications has resulted in increased traffic on ISP networks. P2P


caches (both transparent and non-transparent) have been introduced as a way to reduce the burden. Though they can be effective in reducing traffic in certain areas of ISP networks, P2P caches have their shortcomings. In particular, they are application-dependent and thus difficult to keep up to date with new and evolving P2P application protocols. Second, applications may benefit from explicit control of in-network storage, which P2P caches do not provide. See [1] for further discussion.


DECADE aims to provide a standard protocol allowing P2P applications (including content providers) to make use of in-network storage to reduce the traffic burden on ISP networks, while enabling P2P applications to control access to content they have placed in in-network storage.


3. In-Network Storage System Components
3. 网络内存储系统组件

Before surveying individual technologies, we describe the basic components of in-network storage. For consistency and for ease of comparison, we use the same model to evaluate each storage technology in this document.


Note that the network protocol(s) used by a given storage system are also an important part of the design. We omit details of particular protocol choices in this document.


3.1. Data Access Interface
3.1. 数据访问接口

A set of operations is made available to a user for accessing data in the in-network storage system. Solutions typically allow both read and write operations, though the mechanisms for doing so can differ drastically.


3.2. Data Management Operations
3.2. 数据管理操作

Storage systems may provide users the ability to manage stored content. For example, operations such as delete and move may be provided to users. In this survey, we focus on data management operations that are provided to users and omit those provided to system administrators.


3.3. Data Search Capability
3.3. 数据搜索能力

Some storage systems may provide the capability to search or enumerate content that has been stored. In this survey, we focus on search capabilities that are provided to users and omit those provided to system administrators. An example of a search would be to find the list of items stored by a given user over a given period of time.


3.4. Access Control Authorization
3.4. 访问控制授权

Storage systems typically allow a user, content owner, or some other entity to define the access policies for the in-network storage system. The in-network storage system then checks the authorization of a user before it stores or retrieves content. We define three types of access control authorization: public-unrestricted, public-restricted, and private.

存储系统通常允许用户、内容所有者或其他实体定义网络存储系统的访问策略。然后,网络内存储系统在存储或检索内容之前检查用户的授权。我们定义了三种类型的访问控制授权:public unrestricted、public restricted和private。

"Public-unrestricted" refers to content on an in-network storage system that is widely available to all clients (i.e., without restrictions). An example is accessing Wikipedia on the Web, or anonymous access to FTP sites.


"Public-restricted" refers to content on an in-network storage system that is available to a restricted (though still potentially large) set of clients, but that does not require any confidential credentials from the client. An example is some content (e.g., a TV show episode) on the Internet that can only be viewable in selected countries or networks (i.e., white/black lists or black-out areas).


"Private" refers to content on an in-network storage system that is only made available to one or more clients presenting the required confidential credentials (e.g., password or key). This content is not available to anyone without the proper confidential access credentials.


Note that a combination of access control types may be applicable for a given scenario. For example, the retrieval (read) of content from an in-network storage system may be public-unrestricted, but the storage (write) to the same system may be private.


3.5. Resource Control Interface
3.5. 资源控制接口

This is the interface through which users manage the resources on in-network storage systems that can be used by other peers, e.g., the bandwidth or connections. The storage system may also allow users to indicate a time for which resources are granted.


3.6. Discovery Mechanism
3.6. 发现机制

Users use the discovery mechanism to find the location of in-network storage, find an access interface or resource control interface, or find other interfaces of in-network storage.


3.7. Storage Mode
3.7. 存储模式

Storage systems may use the following modes of storage: file system, object-based, or block-based.


A file system typically organizes files into a hierarchical tree structure. Each level of the hierarchy normally contains zero or more directories, each with zero or more files. A file system may also be flat or use some other organizing principle.


We define an object-based storage mode as one that stores discrete chunks of data (e.g., IP datagrams or another type of aggregation useful to an application) without a pre-defined hierarchy or meta-structure.


We define a block-based storage mode as one that stores a raw sequence of bytes, with a client being able to read and/or write data at offsets within that sequence. Data is typically accessed in blocks for efficiency. A common example for this storage mode is raw access to a hard disk.


In this survey, we define "storage mode" to refer to how data is structured within the system, which may not be the same as how it is accessed by a client. For example, a caching system may cache objects with hierarchical names, but may internally use an object-based storage mode.


4. In-Network Storage Systems
4. 在网络存储系统中

This section surveys in-network storage systems using the methodology defined above. The survey includes some systems that are widely deployed today, some systems that are just being deployed, and some experimental systems. The survey covers both traditional client-server architectures and P2P architectures. The surveyed systems are listed in alphabetical order. Also, for each system, a brief explanation of the relevance to DECADE is given.


4.1. Amazon S3
4.1. 亚马逊S3

Amazon S3 (Simple Storage Service) [6] provides an online storage service using Web (HTTP) interfaces. Users create buckets, and each bucket can contain stored objects. Users are provided an interface


through which they can manage their buckets. Amazon S3 is a popular backend storage service for other services. Other related storage services are the Blob Service provided by Windows Azure [7], Google Storage for Developers [8], and Dropbox [9].

通过它,他们可以管理自己的水桶。AmazonS3是其他服务的流行后端存储服务。其他相关的存储服务包括Windows Azure提供的Blob服务[7]、Google storage for Developers[8]和Dropbox[9]。

4.1.1. Applicability to DECADE
4.1.1. 十年的适用性

Amazon S3 is a very widely used (deployed) example of in-network storage. Amazon S3 leases the storage to third-party companies for disparate services. In particular, Amazon S3 has a rich model for authorization (using signed queries) to integrate with a wide variety of use cases. A focus for Amazon S3 is scalability. Particular simplifications that were made are the absence of a general, hierarchical namespace and the inability to update the contents of existing data.

AmazonS3是一个非常广泛使用(部署)的网络存储示例。Amazon S3将存储租赁给第三方公司,以提供不同的服务。特别是,AmazonS3有一个丰富的授权模型(使用签名查询)来集成各种各样的用例。AmazonS3的一个重点是可伸缩性。所做的特别简化是缺少通用的分层名称空间,并且无法更新现有数据的内容。

4.1.2. Data Access Interface
4.1.2. 数据访问接口

Users can read and write objects.


4.1.3. Data Management Operations
4.1.3. 数据管理操作

Users can delete previously stored objects.


4.1.4. Data Search Capability
4.1.4. 数据搜索能力

Users can list contents of buckets to find objects matching desired criteria.


4.1.5. Access Control Authorization
4.1.5. 访问控制授权

All methods of access control are supported for clients: public-unrestricted, public-restricted, and private.

客户端支持所有访问控制方法:public unrestricted、public restricted和private。

For example, access to stored objects can be restricted by an owner, a list of other Amazon S3 Web Service users, or all Amazon S3 Web Service users; or can be open to all users (anonymous access). Another option is for the owner to generate and sign a query (e.g., a query to read an object) that can be used by any user until an owner-defined expiration time.


4.1.6. Resource Control Interface
4.1.6. 资源控制接口

Not provided.


4.1.7. Discovery Mechanism
4.1.7. 发现机制

Users are provided a well-known DNS name (either a default provided by Amazon S3, or one customized by a particular user). Users accessing S3 storage use DNS to discover an IP address where S3 requests can be sent.


4.1.8. Storage Mode
4.1.8. 存储模式

Object-based, with the extension that objects can be organized into user-defined buckets.


4.2. BranchCache
4.2. 分支缓存

BranchCache [10] is a feature integrated into Windows (Windows 7 and Windows Server 2008R2) that aims to optimize enterprise branch office file access over WAN links. The main goals are to reduce WAN link utilization and improve application responsiveness by caching and sharing content within a branch while still maintaining end-to-end security. BranchCache allows files retrieved from the Web servers and file servers located in headquarters or data centers to be cached in remote branch offices, and shared among users in the same branch accessing the same content. BranchCache operates transparently by instrumenting the HTTP and Server Message Block (SMB) components of the networking stack. It provides two modes of operation: Distributed Cache and Hosted Cache.

BranchCache[10]是集成到Windows(Windows 7和Windows Server 2008R2)中的一项功能,旨在通过WAN链接优化企业分支办公室文件访问。主要目标是通过缓存和共享分支内的内容,同时保持端到端的安全性,从而降低WAN链路利用率并提高应用程序响应能力。BranchCache允许从Web服务器和位于总部或数据中心的文件服务器检索的文件缓存在远程分支办公室中,并在访问相同内容的同一分支中的用户之间共享。BranchCache通过检测网络堆栈的HTTP和服务器消息块(SMB)组件透明地运行。它提供两种操作模式:分布式缓存和托管缓存。

In both modes, a client always contacts a BranchCache-enabled content server first to get the content identifiers for local search. If the content is cached locally, the client then retrieves the content within the branch. Otherwise, the client will go back to the original content server to request the content. The two modes differ in how the content is shared.

在这两种模式中,客户端总是首先联系启用BranchCache的内容服务器,以获取用于本地搜索的内容标识符。如果内容在本地缓存,则客户端将检索分支内的内容。否则,客户端将返回原始content server请求内容。这两种模式在内容共享方式上有所不同。

In the Hosted Cache mode, a locally provisioned server acts as a cache for files retrieved from the servers. After getting the content identifiers, the client first consults the cache for the desired file. If it is not present in the cache, the client retrieves it from the content server and sends it to the cache for storage.

在托管缓存模式下,本地配置的服务器充当从服务器检索的文件的缓存。在获取内容标识符之后,客户机首先查阅缓存以查找所需的文件。如果它不在缓存中,客户端将从content server检索它并将其发送到缓存进行存储。

In the Distributed Cache mode, a client first queries other clients in the same network using the Web Services Discovery multicast protocol [11]. As in the Hosted Cache mode, the client retrieves the file from the content server if it is not available locally. After retrieving the file (either from another client or the content server), the client stores the file locally.

在分布式缓存模式下,客户端首先使用Web服务发现多播协议查询同一网络中的其他客户端[11]。与托管缓存模式一样,如果文件在本地不可用,客户端将从content server检索该文件。从另一个客户端或content server检索文件后,客户端将文件存储在本地。

The original content server always authorizes requests from clients. Cached content is encrypted such that clients can decrypt the data only using keys derived from metadata returned by the content server. In addition to instrumenting the networking stack at clients, content servers must also support BranchCache.

原始content server始终授权来自客户端的请求。缓存的内容是加密的,因此客户端只能使用从content server返回的元数据派生的密钥来解密数据。除了在客户端检测网络堆栈,内容服务器还必须支持BranchCache。

4.2.1. Applicability to DECADE
4.2.1. 十年的适用性

BranchCache is an example of an in-network storage system primarily targeted at enterprise networks. It supports a P2P-like mode (Distributed Cache) as well as a client-server mode (Hosted Cache). Integration into the Microsoft OS will ensure wide distribution of this in-network storage technology.


4.2.2. Data Access Interface
4.2.2. 数据访问接口

Clients transparently retrieve (read) data from a cache (on a client or a Hosted Cache), since BranchCache operates by instrumenting the networking stack. In the Hosted Cache mode, clients write data to the Hosted Cache once it is retrieved from the content server.

客户端从缓存(在客户端或托管缓存上)透明地检索(读取)数据,因为BranchCache通过检测网络堆栈进行操作。在托管缓存模式下,从content server检索数据后,客户端会将数据写入托管缓存。

4.2.3. Data Management Operations
4.2.3. 数据管理操作

Not provided.


4.2.4. Data Search Capability
4.2.4. 数据搜索能力

Not provided.


4.2.5. Access Control Authorization
4.2.5. 访问控制授权

The access control method for clients is private. For example, transferred content is encrypted, and can only be decrypted by keys derived from data received from the original content server. Though data may be transferred to unauthorized clients, end-to-end security is maintained by only allowing authorized clients to decrypt the data.

客户端的访问控制方法是私有的。例如,传输的内容是加密的,并且只能通过从原始content server接收的数据派生的密钥进行解密。尽管数据可能会传输到未经授权的客户端,但端到端安全性是通过仅允许授权客户端解密数据来维护的。

4.2.6. Resource Control Interface
4.2.6. 资源控制接口

The storage capacity of caches on the clients and Hosted Caches is configurable by system administrators. The Hosted Cache further allows configuration of the maximum number of simultaneous client accesses. In the Distributed Cache mode, exponential back-off and throttling mechanisms are utilized to prevent reply storms of popular content requests. The client will also spread data-block access among multiple serving clients that have the content (complete or partial) to improve latency and provide some load balancing.


4.2.7. Discovery Mechanism
4.2.7. 发现机制

The Distributed Cache mode uses multicast for discovery of other clients and content within a local network. Currently, the Hosted Cache mode uses policy provisioning or manual configuration of the server used as the Hosted Cache. In this mode, the address of the server may be found via DNS.


4.2.8. Storage Mode
4.2.8. 存储模式



4.3. Cache-and-Forward Architecture
4.3. 缓存转发体系结构

Cache-and-Forward (CNF) [12] is an architecture for content delivery services for the future Internet. In this architecture, storage can be exploited on nodes within the network, either directly on routers or deployed near the routers. CNF is based on the concept of store-and-forward routers with large storage, providing for opportunistic delivery to occasionally disconnected mobile users and for in-network caching of content. The proposed CNF protocol uses reliable hop-by-hop transfer of large data files between CNF routers in place of an end-to-end transport protocol such as TCP.


4.3.1. Applicability to DECADE
4.3.1. 十年的适用性

CNF is an example of an experimental in-network storage system that would require storage space on (or near) a large number of routers in the Internet if it was deployed. As the name of the system implies, it would provide short-term caching and not long-term network storage.


4.3.2. Data Access Interface
4.3.2. 数据访问接口

Users implicitly store content at CNF routers by requesting files. End hosts read content from in-network storage by submitting queries for content.


4.3.3. Data Management Operations
4.3.3. 数据管理操作

Not provided.


4.3.4. Data Search Capability
4.3.4. 数据搜索能力

Not provided.


4.3.5. Access Control Authorization
4.3.5. 访问控制授权

The access control method is public-restricted (to any client that is part of the CNF network).


4.3.6. Resource Control Interface
4.3.6. 资源控制接口

Not provided.


4.3.7. Discovery Mechanism
4.3.7. 发现机制

A query including a location-independent content ID is sent to the network and routed to a CNF router, which handles retrieval of the data and forwarding to the end host.


4.3.8. Storage Mode
4.3.8. 存储模式

Object-based, with objects representing individual files. The architecture proposes to cache large files in storage within the network, though objects could be made to represent smaller chunks of larger files.


4.4. Cloud Data Management Interface
4.4. 云数据管理接口

The Cloud Data Management Interface (CDMI) is a specification to access and manage cloud storage. CDMI is specified by the Storage Networking Industry Association (SNIA).


CDMI is a functional interface that applications can use to create, retrieve, update, and delete data elements from the cloud. As part of this interface, the client will be able to discover the capabilities of the cloud storage offering and use this interface to manage containers and the data that is placed in them. In addition, metadata can be set on containers and their contained data elements through this interface [13].


CDMI follows a traditional client-server model, and operates over an HTTP interface using the Representational State Transfer (REST) model. Similar to Amazon S3 buckets (see Section 4.1), users may create containers in which data objects may be stored. Even though data objects may be accessed via a user-defined name within a container, it is also possible to access data objects via a storage-defined Object ID, which is provided in the response upon creation of a data object.


4.4.1. Applicability to DECADE
4.4.1. 十年的适用性

CDMI is an important initiative to standardize storage interfaces for cloud services, which are rapidly becoming an important type of storage service. In particular, it specifies a set of operations for creating, reading, writing, and managing data objects at a remote server (or set of servers) via HTTP.


4.4.2. Data Access Interface
4.4.2. 数据访问接口

Users can read and write data objects, and also update data in existing data objects. CDMI data objects are sent on the wire embedded as a field in a JavaScript Object Notation (JSON) object. The protocol also defines interfaces in which the contents of data objects can be written via simple HTTP GET/PUT operations.

用户可以读取和写入数据对象,还可以更新现有数据对象中的数据。CDMI数据对象通过内嵌在JavaScript对象表示法(JSON)对象中的字段的线路发送。该协议还定义了一些接口,在这些接口中,数据对象的内容可以通过简单的HTTP GET/PUT操作写入。

4.4.3. Data Management Operations
4.4.3. 数据管理操作

Users can delete already-existing data objects. The create operation also supports modes in which the created object is copied or moved from an existing data object.


Data system metadata also allows users to configure policies regarding time-to-live, after which a data object is automatically deleted, as well as the redundancy with which a data object is stored.


4.4.4. Data Search Capability
4.4.4. 数据搜索能力

Users may list the contents of containers to locate data objects matching any desired criteria.


4.4.5. Access Control Authorization
4.4.5. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。

In particular, CDMI allows access to data objects to be protected by Access Control Lists (ACLs) that can allow or restrict access based on user name, group, administrative status, or whether a user is authenticated or anonymous.


4.4.6. Resource Control Interface
4.4.6. 资源控制接口

CDMI supports attributes 'cdmi_max_latency' and 'cdmi_max_throughput' (set at either the level of containers, or a specific data object), which control the level of service offered to any users accessing a particular data object.


4.4.7. Discovery Mechanism
4.4.7. 发现机制

Users are provided a well-known DNS name. The DNS name is resolved to determine the IP address to which requests may be sent.


4.4.8. Storage Mode
4.4.8. 存储模式

Object-based, with the extension that objects can be organized into user-defined containers.


4.5. Content Delivery Network
4.5. 内容交付网络

A CDN provides services that improve performance by minimizing the amount of data transmitted through the network, improving accessibility, and maintaining correctness through content replication. CDNs offer fast and reliable applications and services by distributing content to cache or edge servers located close to users. See [14] for an additional taxonomy and survey.


A CDN has some combination of content delivery, request routing, distribution, and accounting infrastructures. The content-delivery infrastructure consists of a set of edge servers (also called surrogates) that deliver copies of content to end users. The request-routing infrastructure is responsible for directing client requests to appropriate edge servers. It also interacts with the distribution infrastructure to keep an up-to-date view of the content stored in the CDN caches. The distribution infrastructure moves content from the origin server to the CDN edge servers and ensures consistency of content in the caches. The accounting infrastructure maintains logs of client accesses and records the usage of the CDN servers. This information is used for traffic reporting and usage-based billing.


In practice, a CDN typically hosts static content including images, video, media clips, advertisements, and other embedded objects for Web viewing. A focus for CDNs is the ability to publish and deliver content to end users in a reliable and timely manner. A CDN focuses on building its network infrastructure to provide the following services and functionalities: storage and management of content; distribution of content among surrogates; cache management; delivery of static, dynamic, and streaming content; backup and disaster recovery solutions; and monitoring, performance measurement, and reporting.


Examples of existing CDNs are Akamai, Limelight, and CloudFront.


The following description uses the term "content provider" to refer to the entity purchasing a CDN service, and the term "client" to refer to the subscriber requesting content via the CDN from the content provider.


4.5.1. Applicability to DECADE
4.5.1. 十年的适用性

CDNs are a very widely used (deployed) example of in-network storage for multimedia content. The existence and operation of the storage system are totally transparent to the end user. CDNs typically require a strong business relationship between the content providers and content distributors, and often the business relationship extends to the ISPs.


4.5.2. Data Access Interface
4.5.2. 数据访问接口

A CDN is typically a closed system, and generally provides only a read (retrieve) access interface to clients. A CDN typically does not provide a write (store) access interface to clients. The content provider can access network edge servers and store content on them, or edge servers can retrieve content from content providers. Client nodes can only retrieve content from edge servers.


4.5.3. Data Management Operations
4.5.3. 数据管理操作

A content provider can manage the data distributed in different cache nodes, such as moving popular data objects from one cache node to another cache node, or deleting rarely accessed data objects in cache nodes. User nodes, however, have no right to perform these operations.


4.5.4. Data Search Capability
4.5.4. 数据搜索能力

A content provider can search or enumerate the data each cache node stores. User nodes cannot perform search operations.


4.5.5. Access Control Authorization
4.5.5. 访问控制授权

All methods of access control (for reading) are supported for clients: public-unrestricted, public-restricted, and private. Some CDN edge servers allow usage of HTTP basic authentication with the origin server or restrictions by IP address, or they can use a token-based technique to allow the origin server to apply its own authorization criteria.

客户端支持所有访问控制方法(用于读取):public unrestricted、public restricted和private。某些CDN边缘服务器允许使用源服务器的HTTP基本身份验证或IP地址限制,也可以使用基于令牌的技术允许源服务器应用其自己的授权标准。

As mentioned previously, clients typically cannot write to the CDN. Writing is typically a private operation for the content providers.


4.5.6. Resource Control Interface
4.5.6. 资源控制接口

Not provided.


4.5.7. Discovery Mechanism
4.5.7. 发现机制

Content providers can directly find internal CDN cache nodes to store content, since they typically have an explicit business relationship. Clients can locate CDN nodes through DNS or other redirection mechanisms.


4.5.8. Storage Mode
4.5.8. 存储模式

Though the addressing of objects uses URLs that typically refer to objects in a hierarchical fashion, the storage mode is typically object-based.


4.6. Delay-Tolerant Network
4.6. 延迟容忍网络

The Delay-Tolerant Network (DTN) [15] is an evolution of an architecture originally designed for the Interplanetary Internet. The Interplanetary Internet is a communication system envisioned to provide Internet-like services across interplanetary distances in support of deep space exploration. The DTN architecture can be utilized in various operational environments characterized by severe communication disruptions, disconnections, and high delays (e.g., a month-long loss of connectivity between two planetary networks because of high solar radiation due to sun spots). The DTN architecture is thus suitable for environments including deep space networks, sensor-based networks, certain satellite networks, and underwater acoustic networks.


A key aspect of the DTN is a store-and-forward overlay layer called the "Bundle Protocol" or "Bundle Layer", which exists between the transport and application layers [16]. The Bundle Layer forms a logical overlay that employs persistent storage to help combat long-term network interruptions by providing a store-and-forward service. While traditional IP networks are also based on store-and-forward principles, the amount of time of a packet being kept in "storage" at a traditional IP router is typically on the order of milliseconds (or less). In contrast, the DTN architecture assumes that most Bundle Layer nodes will use some form of persistent storage (e.g., hard disk, flash memory, etc.) for DTN packets because of the nature of the DTN environment.


4.6.1. Applicability to DECADE
4.6.1. 十年的适用性

The DTN is an example of an experimental in-network storage system that would require fundamental changes to the Internet protocols.


4.6.2. Data Access Interface
4.6.2. 数据访问接口

Users implicitly cause content to be stored (until successfully forwarded) at Bundle Layer nodes by initiating/terminating any transaction that traverses the DTN.


4.6.3. Data Management Operations
4.6.3. 数据管理操作

Users can implicitly cause deletion of content stored at Bundle Layer nodes via a "time-to-live" type of parameter that the user can control (for transactions originating from the user).


4.6.4. Data Search Capability
4.6.4. 数据搜索能力

Not provided.


4.6.5. Access Control Authorization
4.6.5. 访问控制授权

The access control method is public-restricted (to any client that is part of the DTN) or private.


4.6.6. Resource Control Interface
4.6.6. 资源控制接口

Not provided.


4.6.7. Discovery Mechanism
4.6.7. 发现机制

A Uniform Resource Identifier (URI) approach is used as the basis of the addressing scheme for DTN transactions (and subsequent store-and-forward routing through the DTN network).


4.6.8. Storage Mode
4.6.8. 存储模式

Object-based. DTN applications send data to the Bundle Layer, which then breaks the data into segments. These segments are then routed through the DTN network, and stored in Bundle Layer nodes as required (before being forwarded).


4.7. Named Data Networking
4.7. 命名数据网络

Named Data Networking (NDN) [17] is a research initiative that proposes to move to a new model of addressing and routing for the Internet. NDN uses "named data"-based routing and forwarding, to replace the current IP-address-based model. NDN also uses name-based data caching in the routers.


Each NDN Data packet will be assigned a content name and will be cryptographically signed. Data delivery is driven by the requesting end. Routers disseminate name-based prefix announcements by using routing protocols such as Intermediate System to Intermediate System (IS-IS) or the Border Gateway Protocol (BGP). The requester will send out an "Interest" packet, which identifies the name of the data that it wants. Routers that receive this Interest packet will remember the interface it came from and will then forward it on a name-based routing protocol. Once an Interest packet reaches a node that has the desired data, a named Data packet is sent back, which carries both the name and content of the data, along with a digital signature of the producer. This named Data packet is then forwarded back to the original requester on the reverse path of the Interest packet [18].


A key aspect of NDN is that routers have the capability to cache the named data. If a request for the same data (i.e., same name) comes to the router, then the NDN router will forward the named data stored locally to fulfill the request. The proponents of NDN believe that the network can be designed naturally, matching data delivery characteristics instead of communication between endpoints, because data delivery has become the primary use of the network.


4.7.1. Applicability to DECADE
4.7.1. 十年的适用性

NDN is an example of an experimental in-network storage system that would require storage space on a large number of routers in the Internet. Named Data packets would be kept in storage in the NDN routers and provided to new requesters of the same data.


4.7.2. Data Access Interface
4.7.2. 数据访问接口

Users implicitly store content at NDN routers by requesting content (the named Data packets) from the network. Subsequent requests by different users for the same content will cause the named Data packets to be read from the NDN routers' in-network storage.


4.7.3. Data Management Operations
4.7.3. 数据管理操作

Users do not have the direct ability to delete content stored in the NDN routers. However, there will be some type of time-to-live parameter associated with the named Data packets, though this has not yet been specified.


4.7.4. Data Search Capability
4.7.4. 数据搜索能力

Not provided.


4.7.5. Access Control Authorization
4.7.5. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。

The basic security mechanism in NDN is for the sender to digitally sign the content (the named Data packets) that it sends. It is envisioned that a complete access control system can be built on top of NDN, though this has not yet been specified.


4.7.6. Resource Control Interface
4.7.6. 资源控制接口

Not provided.


4.7.7. Discovery Mechanism
4.7.7. 发现机制

Names are used as the basis of the addressing and discovery scheme for NDN (and subsequent store-and-forward routing through the NDN network). NDN names are assumed to be hierarchical and to be able to be deterministically constructed. This is still an active area of research.


4.7.8. Storage Mode
4.7.8. 存储模式

Object-based. NDN sends named Data packets through the network. These Data packets are routed through the NDN network and stored in NDN routers.


4.8. Network of Information
4.8. 信息网络

Similar to NDN (see Section 4.7), Network of Information (NetInf) [19] is another information-centric approach in which the named data objects are the basic component of the networking architecture. NetInf is thus moving away from today's host-centric networking


architecture where the nodes in the network are the primary objects. In today's network, the information objects are named relative to the hosts they are stored on (e.g.,


The NetInf naming and security framework builds the foundation for an information-centric security model that integrates security deeply into the architecture. In this model, trust is based on the information itself. Information objects (IOs) are given a unique name with cryptographic properties. Together with additional metadata, the name can be used to verify the data integrity as well as several other security properties, such as self-certification, name persistency, and owner authentication and identification. The approach also gives some benefits over the security model in today's host-centric networks, as it minimizes the need for trust in the infrastructure, including the hosts providing the data, the channel, or the resolution service.


In NetInf, the information objects are published into the network. They are registered with a Name Resolution Service (NRS). The NRS is also used to register network locators that can be used to retrieve data objects that represent the published IOs. When a receiver wants to retrieve an IO, the request for the IO is resolved by the NRS into a set of locators. These locators are then used to retrieve a copy of the data object from the "best" available source(s). NetInf is open to use any type of underlying transport network. The locators can thus be a heterogeneous set, e.g., IPv4, IPv6, Medium Access Control (MAC), etc.


NetInf will make extensive use of caching of information objects in the network and will provide network functionality that is similar to what overlay solutions such as CDNs and P2P distribution networks (e.g., BitTorrent) provide today.


4.8.1. Applicability to DECADE
4.8.1. 十年的适用性

NetInf is an example of an experimental information-centric network architecture that will require storage space for storage and caching of information objects on a large number of NetInf nodes in the Internet.


4.8.2. Data Access Interface
4.8.2. 数据访问接口

Users will publish IOs with specific IDs into the network. This is done by the client sending a register message to the NRS stating that the IO with the specific ID is available. When another user wishes to retrieve the IO, they will use the given ID to make a request for the IO. The ID is then resolved by the NRS, and the IO is delivered from a nearby in-network storage location.


4.8.3. Data Management Operations
4.8.3. 数据管理操作

Users do not have the direct ability to delete content stored in the NetInf nodes. However, there can be some type of time-to-live parameter associated with the information objects, though this has not yet been specified.


4.8.4. Data Search Capability
4.8.4. 数据搜索能力

Not provided.


4.8.5. Access Control Authorization
4.8.5. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private. The basic security mechanism in NetInf is for the publisher to digitally sign the content of the information object that it publishes. It is envisioned that a complete access control system can be built on top of NetInf, though this has not yet been specified.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。NetInf中的基本安全机制是发布者对其发布的信息对象的内容进行数字签名。设想在NetInf的基础上建立一个完整的访问控制系统,尽管这一点尚未明确。

4.8.6. Resource Control Interface
4.8.6. 资源控制接口

Not provided.


4.8.7. Discovery Mechanism
4.8.7. 发现机制

NetInf IDs are used for naming and accessing information objects. The IDs are resolved by the NRS into locators that are used for routing and transport of data through the transport networks. This is still an active area of research.

NetInf ID用于命名和访问信息对象。NRS将ID解析为定位器,用于通过传输网络路由和传输数据。这仍然是一个活跃的研究领域。

4.8.8. Storage Mode
4.8.8. 存储模式

Object-based. From an application perspective, NetInf can be used for publishing entire files or chunks of files. NetInf is agnostic to the application perspective and treats everything as information objects.


4.9. Network Traffic Redundancy Elimination
4.9. 网络流量冗余消除

Redundancy Elimination (RE) is used for identifying and removing repeated content from network transfers. This technique has been proposed to improve network performance in many types of networks, such as ISP backbones and enterprise access links. One example of an RE proposal is SmartRE [20], proposed by Anand et al., which focuses on network-wide RE. In packet-level RE, forwarding elements are equipped with additional storage that can be used to cache data from forwarded packets. Upstream routers may replace packet data with a fingerprint that tells a downstream router how to decode and reconstruct the packet based on cached data.


4.9.1. Applicability to DECADE
4.9.1. 十年的适用性

RE is an example of an experimental in-network storage system that would require a large amount of associated packet processing at routers if it was ever deployed.


4.9.2. Data Access Interface
4.9.2. 数据访问接口

RE is typically transparent to the user. Writing into storage is done by transferring data that has not already been cached. Storage is read when users transmit data identical to previously transmitted data.


4.9.3. Data Management Operations
4.9.3. 数据管理操作

Not provided.


4.9.4. Data Search Capability
4.9.4. 数据搜索能力

Not provided.


4.9.5. Access Control Authorization
4.9.5. 访问控制授权

The access control method is public-restricted (to any client that is part of the RE network). Note that the content provider still retains control over which peers receive the requested data. The returned data is "compressed" as it is transferred within the network.


4.9.6. Resource Control Interface
4.9.6. 资源控制接口

Not provided. The content provider still retains control over the rate at which packets are sent to a peer. The packet size within the network may be reduced.


4.9.7. Discovery Mechanism
4.9.7. 发现机制

No discovery mechanism is necessary. Routers can use RE without the users' knowledge.


4.9.8. Storage Mode
4.9.8. 存储模式

Object-based, with "objects" being data from packets transmitted within the network.


4.10. OceanStore
4.10. 海量存储

OceanStore [21] is a storage platform developed at the University of California, Berkeley, that provides globally distributed storage. OceanStore implements a model where multiple storage providers can pool resources together. Thus, a major focus is on resiliency, self-organization, and self-maintenance.

OntStale[21 ]是加利福尼亚大学伯克利开发的一个存储平台,它提供了全球分布式存储。OceanStore实现了一个模型,在该模型中,多个存储提供商可以将资源集中在一起。因此,主要关注弹性、自组织和自我维护。

The protocol is resilient to some storage nodes being compromised by utilizing Byzantine agreement and erasure codes to store data at primary replicas.


4.10.1. Applicability to DECADE
4.10.1. 十年的适用性

OceanStore is an example of an experimental in-network storage system that provides a high degree of network resilience to failure scenarios.


4.10.2. Data Access Interface
4.10.2. 数据访问接口

Users may read and write objects.


4.10.3. Data Management Operations
4.10.3. 数据管理操作

Objects may be replaced by newer versions, and multiple versions of an object may be maintained.


4.10.4. Data Search Capability
4.10.4. 数据搜索能力

Not provided.


4.10.5. Access Control Authorization
4.10.5. 访问控制授权

Provided, but specifics for clients are unclear from the available references.


4.10.6. Resource Control Interface
4.10.6. 资源控制接口

Not provided.


4.10.7. Discovery Mechanism
4.10.7. 发现机制

Users require an entry point into the system in the form of one storage node that is part of OceanStore. If a hostname is provided, the address of a storage node may be determined via DNS.


4.10.8. Storage Mode
4.10.8. 存储模式



4.11. P2P Cache
4.11. P2P缓存

Caching of P2P traffic is a useful approach to reduce P2P network traffic, because objects in P2P systems are mostly immutable and the traffic is highly repetitive. In addition, making use of P2P caches does not require changes to P2P protocols and can be deployed transparently from clients.


P2P caches operate similarly to Web caches (Section 4.14) in that they temporarily store frequently requested content. Requests for content already stored in the cache can be served from local storage instead of requiring the data to be transmitted over expensive network links.


Two types of P2P caches exist: transparent P2P caches and non-transparent P2P caches.


For a transparent cache, once a P2P cache is established, the network will transparently redirect P2P traffic to the cache, which either serves the file directly or passes the request on to a remote P2P user and simultaneously caches that data. Transparency is typically implemented using Deep Packet Inspection (DPI). DPI products identify and pass P2P packets to the P2P caching system so it can cache and accelerate the traffic.


A non-transparent cache appears as a super peer; it explicitly peers with other P2P clients.


To enable operation with existing P2P software, P2P caches directly support P2P application protocols. A large number of P2P protocols are used by P2P software and hence are supported by caches, leading to higher complexity. Additionally, these protocols evolve over time, and new protocols are introduced.


4.11.1. Applicability to DECADE
4.11.1. 十年的适用性

A P2P cache is an example of in-network storage for P2P systems. However, unlike DECADE, the existence and operation of the storage system are totally transparent to the end user.


4.11.2. Transparent P2P Caches
4.11.2. 透明P2P缓存 Data Access Interface 数据访问接口

The data access interface allows P2P content to be cached (stored) and supplied (retrieved) locally such that network traffic is reduced, but it is transparent to P2P users, and P2P users implicitly use the data access interface (in the form of their native P2P application protocol) to store or retrieve content.

数据访问接口允许在本地缓存(存储)和提供(检索)P2P内容,从而减少网络流量,但它对P2P用户是透明的,并且P2P用户隐式使用数据访问接口(以其本机P2P应用程序协议的形式)来存储或检索内容。 Data Management Operations 数据管理操作

Not provided.

没有提供。 Data Search Capability 数据搜索能力

Not provided.

没有提供。 Access Control Authorization 访问控制授权

The access control method is typically public-restricted (to any client that is part of the P2P channel or swarm).

访问控制方法通常是公开限制的(对于属于P2P通道或swarm的任何客户端)。 Resource Control Interface 资源控制接口

Not provided.

没有提供。 Discovery Mechanism 发现机制

The use of DPI means that no discovery mechanism is provided to P2P users; it is transparent to P2P users. Since DPI is used to recognize P2P applications' private protocols, P2P cache implementations must be updated as new applications are added and existing protocols evolve.

DPI的使用意味着没有向P2P用户提供发现机制;它对P2P用户是透明的。由于DPI用于识别P2P应用程序的私有协议,因此P2P缓存实现必须随着新应用程序的添加和现有协议的发展而更新。 Storage Mode 存储模式

Object-based. Chunks (typically, the unit of transfer among P2P clients) of content are stored in the cache.


4.11.3. Non-Transparent P2P Caches
4.11.3. 非透明P2P缓存 Data Access Interface 数据访问接口

The data access interface allows P2P content to be cached (stored) and supplied (retrieved) locally such that network traffic is reduced. P2P users implicitly store and retrieve from the cache using the P2P application's native protocol.

数据访问接口允许在本地缓存(存储)和提供(检索)P2P内容,从而减少网络流量。P2P用户使用P2P应用程序的本机协议隐式地存储和检索缓存。 Data Management Operations 数据管理操作

Not provided.

没有提供。 Data Search Capability 数据搜索能力

Not provided.

没有提供。 Access Control Authorization 访问控制授权

The access control method is typically public-restricted (to any client that is part of the P2P channel or swarm).

访问控制方法通常是公开限制的(对于属于P2P通道或swarm的任何客户端)。 Resource Control Interface 资源控制接口

Not provided.

没有提供。 Discovery Mechanism 发现机制

A P2P cache node behaves as if it were a normal peer in order to join the P2P overlay network. Other P2P users can find such a cache node through an overlay routing mechanism and can interact with it as if it were a normal neighbor node.

为了加入P2P覆盖网络,P2P缓存节点的行为就好像它是一个普通的对等节点一样。其他P2P用户可以通过覆盖路由机制找到这样的缓存节点,并可以像普通邻居节点一样与之交互。 Storage Mode 存储模式

Object-based. Chunks (typically, the unit of transfer among P2P clients) of content are stored in the cache.


4.12. Photo Sharing
4.12. 照片共享

There are a growing number of popular online photo-sharing (storing) systems. For example, the Kodak Gallery system [22] serves over 60 million users and stores billions of images [23]. Other well-known examples of photo-sharing systems include Flickr [24] and ImageShack [25]. There are also a number of popular blogging


services, such as Tumblr [26], that specialize in sharing large numbers of photos as well as other multimedia content (e.g., video, text, audio, etc.) as part of their service. All of these in-network storage systems utilize both free and paid subscription models.


Most photo-sharing systems are based on a traditional client-server architecture. However, a minority of systems also offer a P2P mode of operation. The client-server architecture is typically based on HTTP, with a browser client and a Web server.


4.12.1. Applicability to DECADE
4.12.1. 十年的适用性

Photo sharing is a very widely used (deployed) example of in-network storage where the end user has direct visibility and extensive control of the system. The typical end-user interface is through an HTTP-based Web browser.


4.12.2. Data Access Interface
4.12.2. 数据访问接口

Users can read (view) and write (store) photos.


4.12.3. Data Management Operations
4.12.3. 数据管理操作

Users can delete previously stored photos.


4.12.4. Data Search Capability
4.12.4. 数据搜索能力

Users can tag photos and/or organize them using sophisticated Web photo album generators. Users can then search for objects (photos) matching desired criteria.


4.12.5. Access Control Authorization
4.12.5. 访问控制授权

The access control method for clients is typically either private or public-unrestricted. For example, writing (storing) to a photo blog is typically private to the owner of the account. However, all other clients can view (read) the contents of the blog (i.e., public-unrestricted). Some photo-sharing Websites provide private access to read photos to allow sharing with a limited set of friends.


4.12.6. Resource Control Interface
4.12.6. 资源控制接口

Not provided.


4.12.7. Discovery Mechanism
4.12.7. 发现机制

Clients usually log on manually to a central Web page for the service and enter the appropriate information to access the desired information. The address to which the client connects is usually determined by DNS using the hostname from the provided URL.


4.12.8. Storage Mode
4.12.8. 存储模式

File system (file-based). Photos are usually stored as files. They can then be organized into meta-structures (e.g., albums, galleries, etc.) using sophisticated Web photo album generators.


4.13. Usenet
4.13. Usenet

Usenet is a distributed Internet-based discussion (message) system. The Usenet messages are arranged as a set of "newsgroups" that are classified hierarchically by subject. Usenet information is distributed and stored among a large conglomeration of servers that store and forward messages to one another in so-called news feeds. Individual users may read messages from, and post messages to, a local news server typically operated by an ISP. This local server communicates with other servers and exchanges articles with them. In this fashion, the message is copied from server to server and eventually reaches every server in the network [27].


Traditional Usenet as described above operates as a P2P network between the servers, and in a client-server architecture between the user and their local news server. The user requires a Usenet client to be installed on their computer and a Usenet server account (through their ISP). However, with the rise of Web browsers, the Usenet architecture is evolving to be Web-based. The most popular example of this is Google Groups, where Google hosts all the newsgroups and client access is via a standard HTTP-based Web browser [28].

如上所述,传统的Usenet作为服务器之间的P2P网络运行,并在用户与其本地新闻服务器之间的客户机-服务器体系结构中运行。用户需要在其计算机上安装一个Usenet客户端和一个Usenet服务器帐户(通过其ISP)。然而,随着Web浏览器的兴起,Usenet体系结构正在演变为基于Web的。最流行的例子是Google Groups,Google托管所有新闻组,客户端通过标准的基于HTTP的Web浏览器访问[28]。

4.13.1. Applicability to DECADE
4.13.1. 十年的适用性

Usenet is a historically very important and widely used (deployed) example of in-network storage in the Internet. The use of this system is rapidly declining, but efforts have been made to preserve the stored content for historical purposes.


4.13.2. Data Access Interface
4.13.2. 数据访问接口

Users can read and post (store) messages.


4.13.3. Data Management Operations
4.13.3. 数据管理操作

Users sometimes have limited ability to delete messages that they previously posted.


4.13.4. Data Search Capability
4.13.4. 数据搜索能力

Traditionally, users could manually search through the newsgroups, as they are classified hierarchically by subject. In the newer Web-based systems, there is also an automatic search capability based on key-word matches.


4.13.5. Access Control Authorization
4.13.5. 访问控制授权

The access control method is either public-unrestricted or private (to client members of that newsgroup).

访问控制方法是public unrestricted或private(对于该新闻组的客户端成员)。

4.13.6. Resource Control Interface
4.13.6. 资源控制接口

Not provided.


4.13.7. Discovery Mechanism
4.13.7. 发现机制

Clients usually log on manually to their Usenet accounts. DNS may be used to resolve hostnames to their corresponding addresses.


4.13.8. Storage Mode
4.13.8. 存储模式

File system. Messages are usually stored as files that are then organized hierarchically by subject into newsgroups.


4.14. Web Cache
4.14. 网络缓存

Web cache [29] has been widely deployed by many ISPs to reduce bandwidth consumption and Web access latency since the late 1990s. A Web cache can cache the Web documents (e.g., HTML pages, images) between server and client to reduce bandwidth usage, server load, and perceived lag. A Web cache server is typically shared by many clients, and stores copies of documents passing through it; subsequent requests may be satisfied from the cache if certain conditions are met.


Another form of cache is a client-side cache, typically implemented in Web browsers. A client-side cache can keep a local copy of all pages recently displayed by a browser, and when the user returns to one of these Web pages, the local cached copy is reused.


A related protocol for P2P applications to use Web cache is HPTP (HTTP-based Peer to Peer) [30]. It proposes sharing chunks of P2P files/streams using HTTP with cache-control headers.


4.14.1. Applicability to DECADE
4.14.1. 十年的适用性

Web cache is a very widely used (deployed) example of in-network storage for the key Internet application of Web browsing. The existence and operation of the storage system are transparent to the end user in most cases. The content caching time is controlled by time-to-live parameters associated with the original content. The principle of Web caching is to speed up Web page reading by using (the same) content previously requested by another user to service a new user.


4.14.2. Data Access Interface
4.14.2. 数据访问接口

Users explicitly read from a Web cache by making requests, but they cannot explicitly write data into it. Data is implicitly stored in the Web cache by requesting content that is not already cached and meets policy restrictions of the cache provider.


4.14.3. Data Management Operations
4.14.3. 数据管理操作

Not provided.


4.14.4. Data Search Capability
4.14.4. 数据搜索能力

Not provided.


4.14.5. Access Control Authorization
4.14.5. 访问控制授权

The access control method for clients is public-unrestricted. It is important to note that if content is authenticated or encrypted (e.g., HTTPS, Secure Socket Layer (SSL)), it will not be cached. Also, if the content is flagged as private (vs. public) at the HTTP level by the origin server, it will not be cached.


4.14.6. Resource Control Interface
4.14.6. 资源控制接口

Not provided.


4.14.7. Discovery Mechanism
4.14.7. 发现机制

Web caches can be transparently deployed between a Web server and Web clients, employing DPI for discovery. Alternatively, Web caches could be explicitly discovered by clients using techniques such as DNS or manual configuration.


4.14.8. Storage Mode
4.14.8. 存储模式

Object-based. Web content is keyed within the cache by HTTP Request fields, such as Method, URI, and Headers.


4.15. Observations Regarding In-Network Storage Systems
4.15. 关于网络存储系统的观察

The following observations about the surveyed in-network storage systems are made in the context of DECADE as defined by [1].


The majority of the surveyed systems were designed for client-server architectures and do not support P2P. However, there are some important exceptions, especially for some of the newer technologies such as BranchCache and P2P cache, that do support a P2P mode of operation.


The P2P cache systems are interesting, since they do not require changes to the P2P applications themselves. However, this is also a limitation in that they are required to support each application protocol.


Many of the surveyed systems were designed for caching as opposed to long-term network storage. Thus, during DECADE protocol design, it should be carefully considered whether a caching mode should be supported in addition to a long-term network storage mode. There is typically a trade-off between providing a caching mode and long-term (and usually also reliable) storage with regards to some performance metrics. Note that [1] identifies issues with classical caching from a DECADE perspective, such as the fact that P2P caches typically do not allow users to explicitly control content stored in the cache.


Certain components of the surveyed systems are outside of the scope of DECADE. For example, a protocol used for searching across multiple DECADE servers is out of scope. However, applications may still be able to implement such functionality if DECADE exposes the appropriate primitives. This has the benefit of keeping the core in-network storage systems simple, while permitting diverse applications to design mechanisms that meet their own requirements.


Today, most in-network storage systems follow some variant of the authorization model of public-unrestricted, public-restricted, and private. For DECADE, we may need to evolve the authorization model to support a resource owner (e.g., end user) authorization, in addition to the network authorization.


5. Storage and Other Related Protocols
5. 存储和其他相关协议

This section surveys existing storage and other related protocols, as well as comments on the usage of these protocols to satisfy DECADE's use cases. The surveyed protocols are listed alphabetically.


5.1. HTTP
5.1. 超文本传输协议

HTTP [31] is a key protocol for the World Wide Web. It is a stateless client-server protocol that allows applications to be designed using the REST model. HTTP is often associated with downloading (reading) content from Web servers to Web browsers, but it also has support for uploading (writing) content to Web servers. It has been used as the underlying protocol for other protocols, such as Web Distributed Authoring and Versioning (WebDAV).


HTTP is used in some of the most popular in-network storage systems surveyed previously, including CDNs, photo sharing, and Web cache. Usage of HTTP by a storage protocol implies that no extra software is required in the client (i.e., Web-based client), as all standard Web browsers are based on HTTP.


5.1.1. Data Access Interface
5.1.1. 数据访问接口

Basic read and write operations are supported (using HTTP GET, PUT, and POST methods).

支持基本的读写操作(使用HTTP GET、PUT和POST方法)。

5.1.2. Data Management Operations
5.1.2. 数据管理操作

Not provided.


5.1.3. Data Search Capability
5.1.3. 数据搜索能力

Not provided.


5.1.4. Access Control Authorization
5.1.4. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。

The majority of Web pages are public-unrestricted in terms of reading but do not allow any uploading of content. In-network storage systems range from private or public-unrestricted for photo sharing (described in Section 4.12.5) to public-unrestricted for Web caching (described in Section 4.14.5).


5.1.5. Resource Control Interface
5.1.5. 资源控制接口

Not provided.


5.1.6. Discovery Mechanism
5.1.6. 发现机制

Manual configuration is typically used. Clients typically address HTTP servers by providing a hostname, which is resolved to an address using DNS.


5.1.7. Storage Mode
5.1.7. 存储模式

HTTP is a protocol; it thus does not define a storage mode. However, a non-collection resource can typically be thought of as a "file". These files may be organized into collections, which typically map onto the HTTP path hierarchy, creating the illusion of a file system.


5.1.8. 评论

HTTP is based on a client-server architecture and thus is not directly applicable for the DECADE focus on P2P. Also, HTTP offers only a rudimentary toolset for storage operations compared to some of the other storage protocols.


5.2. iSCSI
5.2. iSCSI

Small Computer System Interface (SCSI) is a set of protocols enabling communication with storage devices such as disk drives and tapes; Internet SCSI (iSCSI) [32] is a protocol enabling SCSI commands to be sent over TCP. As in SCSI, iSCSI allows an Initiator to send commands to a Target. These commands operate on the device level as opposed to individual data objects stored on the device.

小型计算机系统接口(SCSI)是一组协议,支持与存储设备(如磁盘驱动器和磁带)进行通信;Internet SCSI(iSCSI)[32]是一种允许通过TCP发送SCSI命令的协议。与SCSI中一样,iSCSI允许启动器向目标发送命令。这些命令在设备级别上运行,而不是在设备上存储单个数据对象。

5.2.1. Data Access Interface
5.2.1. 数据访问接口

Read and write commands indicate which data is to be read or written by specifying the offset (using Logical Block Addressing) into the storage device. The size of data to be read or written is an additional parameter in the command.


5.2.2. Data Management Operations
5.2.2. 数据管理操作

Since commands operate at the device level, management operations are different than with traditional file systems. Management commands for SCSI/iSCSI include explicit device control commands, such as starting, stopping, and formatting the device.


5.2.3. Data Search Capability
5.2.3. 数据搜索能力

SCSI/iSCSI does not provide the ability to search for particular data within a device. Note that such capabilities can be implemented outside of iSCSI.


5.2.4. Access Control Authorization
5.2.4. 访问控制授权

With respect to access to devices, the access control method is private. iSCSI uses the Challenge Handshake Authentication Protocol (CHAP) [33] to authenticate Initiators and Targets when accessing storage devices. However, since SCSI/iSCSI operates at the device level, neither authentication nor authorization is provided for individual data objects. Note that such capabilities can be implemented outside of iSCSI.


5.2.5. Resource Control Interface
5.2.5. 资源控制接口

Not provided.


5.2.6. Discovery Mechanism
5.2.6. 发现机制

Manual configuration may be used. An alternative is the Internet Storage Name Service (iSNS) [34], which provides the ability to discover available storage resources.


5.2.7. Storage Mode
5.2.7. 存储模式

As a protocol, iSCSI does not explicitly have a storage mode. However, it provides block-based access to clients. SCSI/iSCSI provides an Initiator with block-level access to the storage device.


5.3. NFS
5.3. NFS

The Network File System (NFS) is designed to allow users to access files over a network in a manner similar to how local storage is accessed. NFS is typically used in local area networks or in enterprise settings, though changes made in later versions of NFS (e.g., [35]) make it easier to operate over the Internet.


5.3.1. Data Access Interface
5.3.1. 数据访问接口

Traditional file-system operations such as read, write, and update (overwrite) are provided. Locking is provided to support concurrent access by multiple clients.


5.3.2. Data Management Operations
5.3.2. 数据管理操作

Traditional file-system operations such as move and delete are provided.


5.3.3. Data Search Capability
5.3.3. 数据搜索能力

The user has the ability to list contents of directories to find filenames matching desired criteria.


5.3.4. Access Control Authorization
5.3.4. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private. For example, files and directories can be protected using read, write, and execute permissions for the files' owner and group, and for the public (others). Also, NFSv4.1 has a rich ACL model allowing a list of Access Control Entries (ACEs) to be configured for each file or directory. The ACEs can specify per-user read/write access to file data, file/directory attributes, creation/deletion of files in a directory, etc.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。例如,可以使用文件所有者和组以及公众(其他人)的读、写和执行权限来保护文件和目录。此外,NFSv4.1有一个丰富的ACL模型,允许为每个文件或目录配置访问控制项(ACE)列表。ACEs可以指定每个用户对文件数据的读/写访问、文件/目录属性、目录中文件的创建/删除等。

5.3.5. Resource Control Interface
5.3.5. 资源控制接口

While disk space quotas can be configured, administrative policy typically limits the total amount of storage allocated to a particular user. User control of bandwidth and connections used by remote peers is not provided.


5.3.6. Discovery Mechanism
5.3.6. 发现机制

Manual configuration is typically used. Clients address NFS servers by providing a hostname and a directory that should be mounted. DNS may be used to look up an address for the provided hostname.


5.3.7. Storage Mode
5.3.7. 存储模式

As a protocol, there is no defined internal storage mode. However, implementations typically use the underlying file-system storage. Note that extensions have been defined for alternate storage modes (e.g., block-based [36] and object-based [37]).


5.3.8. 评论

The efficiency and scalability of the NFS access control method are concerns in the context of DECADE. In particular, Section 6.2.1 of [35] states that:


Only ACEs that have a "who" that matches the requester are considered.


Thus, in the context of DECADE, to specify per-peer access control policies for an object, a client would need to explicitly configure the ACL for the object for each individual peer. A concern with this approach is scalability when a client's peers may change frequently, and ACLs for many small objects need to be updated constantly during participation in a swarm.


Note that NFSv4.1's usage of RPCSEC_GSS provides support for multiple security mechanisms. Kerberos V5 is required, but others, such as X.509 certificates, are also supported by way of the Generic Security Service Application Program Interface (GSS-API). Note, however, that NFSv4.1's usage of such security mechanisms is limited to linking a requesting user to a particular account maintained by the NFS server.

注意,NFSv4.1对RPCSEC_GSS的使用提供了对多种安全机制的支持。Kerberos V5是必需的,但通用安全服务应用程序接口(GSS-API)也支持其他证书,如X.509证书。但是,请注意,NFSv4.1对此类安全机制的使用仅限于将请求用户链接到NFS服务器维护的特定帐户。

5.4. OAuth
5.4. 非统组织

Open Authorization (OAuth) [38] is a protocol that enriches the traditional client-server authentication model for Web resources. In particular, OAuth distinguishes the "client" from the "resource owner", thus enabling a resource owner to authorize a particular client for access (e.g., for a particular lifetime) to private resources.


We include OAuth in this survey so that its authentication model can be evaluated in the context of DECADE. OAuth itself, however, is not a network storage protocol.


5.4.1. Data Access Interface
5.4.1. 数据访问接口

Not provided.


5.4.2. Data Management Operations
5.4.2. 数据管理操作

Not provided.


5.4.3. Data Search Capability
5.4.3. 数据搜索能力

Not provided.


5.4.4. Access Control Authorization
5.4.4. 访问控制授权

Not provided. While similar in spirit to the WebDAV ticketing extensions [39], OAuth instead uses the following process: (1) a client constructs a delegation request, (2) the client forwards the request to the resource owner for authorization, (3) the resource owner authorizes the request, and finally (4) a callback is made to the client indicating that its request has been authorized.


Once the process is complete, the client has a set of token credentials that grant it access to the protected resource. The token credentials may have an expiration time, and they can also be revoked by the resource owner at any time.


5.4.5. Resource Control Interface
5.4.5. 资源控制接口

Not provided.


5.4.6. Discovery Mechanism
5.4.6. 发现机制

Not provided.


5.4.7. Storage Mode
5.4.7. 存储模式

Not provided.


5.4.8. 评论

The ticketing mechanism requires server involvement, and the discussion relating to WebDAV's proposed ticketing mechanism (see Section 5.5.8) applies here as well.


5.5. WebDAV
5.5. 版本控制

WebDAV [40] is a protocol designed for Web content authoring. It is developed as an extension to HTTP (described in Section 5.1), meaning that it can be simpler to integrate into existing software. WebDAV supports traditional operations for reading/writing from storage, as well as other constructs, such as locking and collections, that are important when multiple users collaborate to author or edit a set of documents.


5.5.1. Data Access Interface
5.5.1. 数据访问接口

Traditional read and write operations are supported (using HTTP GET and PUT methods, respectively). Locking is provided to support concurrent access by multiple clients.


5.5.2. Data Management Operations
5.5.2. 数据管理操作

WebDAV supports traditional file-system operations, such as move, delete, and copy. Objects are organized into collections, and these operations can also be performed on collections. WebDAV also allows objects to have user-defined properties.


5.5.3. Data Search Capability
5.5.3. 数据搜索能力

The user has the ability to list contents of collections to find objects matching desired criteria. A SEARCH extension [41] has also been specified allowing listing of objects matching client-defined criteria.


5.5.4. Access Control Authorization
5.5.4. 访问控制授权

All methods of access control for clients are supported: public-unrestricted, public-restricted, and private.

支持客户端的所有访问控制方法:public unrestricted、public restricted和private。

For example, an ACL extension [42] is provided for WebDAV. ACLs allow both user-based and group-based access control policies (relating to reading, writing, properties, locking, etc.) to be defined for objects and collections.


A ticketing extension [39] has also been proposed, but has not progressed since 2001. This extension allows a client to request the WebDAV server to create a "ticket" (e.g., for reading an object) that can be distributed to other clients. Tickets may be given expiration times, or may only allow for a fixed number of uses. The proposed extension requires the server to generate tickets and maintain state for outstanding tickets.


5.5.5. Resource Control Interface
5.5.5. 资源控制接口

An extension [43] allows disk space quotas to be configured for collections. The extension also allows WebDAV clients to query current disk space usage. User control of bandwidth and connections used by remote peers is not provided.


5.5.6. Discovery Mechanism
5.5.6. 发现机制

Manual configuration is typically used. Clients address WebDAV servers by providing a hostname, which can be resolved to an address using DNS.


5.5.7. Storage Mode
5.5.7. 存储模式

Though no storage mode is explicitly defined, WebDAV can be thought of as providing file system (file-based) storage to a client. A non-collection resource can typically be thought of as a "file". Files may be organized into collections, which typically map onto the HTTP path hierarchy.


5.5.8. 评论

The efficiency and scalability of the WebDAV access control method are concerns in the context of DECADE, for reasons similar to those stated in Section 5.3.8 for NFS. The proposed WebDAV ticketing extension partially alleviates these concerns, but the particular technique may need further evaluation before being applied to DECADE. In particular, since DECADE clients may continuously upload/download a large number of small-size objects, and a single DECADE server may need to scale to many concurrent DECADE clients, requiring the server to maintain ticket state and generate tickets may not be the best design choice. Server-generated tickets can also increase latency for data transport operations, depending on the message flow used by DECADE.


5.6. Observations Regarding Storage and Related Protocols
5.6. 关于存储和相关协议的意见

The following observations about the surveyed storage and related protocols are made in the context of DECADE as defined by [1].


All of the surveyed protocols were primarily designed for client-server architectures and not for P2P. However, it is conceivable that some of the protocols could be adapted to work in a P2P architecture.


Several popular in-network storage systems today use HTTP as their key protocol, even though it is not classically considered as a storage protocol. HTTP is a stateless protocol that is used to design RESTful applications. HTTP is a well-supported and widely implemented protocol that can provide important insights for DECADE.


The majority of the surveyed protocols do not support low-latency access for applications such as live streaming. This was one of the key general requirements for DECADE.


The majority of the surveyed protocols do not support any form of resource control interface. Resource control is required for users to manage the resources on in-network storage systems, e.g., the bandwidth or connections, that can be used by other peers. Resource control is a key capability required for DECADE.


Nearly all surveyed protocols did, however, support the following capabilities required for DECADE: ability of the user to read/write content, some form of access control, some form of error indication, and the ability to traverse firewalls and NATs.


6. Conclusions
6. 结论

Though there have been many successful in-network storage systems, they have been designed for use cases different from those defined in DECADE. For example, many of the surveyed in-network storage systems and protocols were designed for client-server architectures and not P2P. No surveyed system or protocol has the functionality and features to fully meet the set of requirements defined for DECADE. DECADE aims to provide a standard protocol for P2P applications and content providers to access and control in-network storage, resulting in increased network efficiency while retaining control over content shared with peers. Additionally, defining a standard protocol can reduce the complexity of in-network storage, since multiple P2P application protocols no longer need to be implemented by in-network storage systems.


7. Security Considerations
7. 安全考虑

This document is a survey of existing in-network storage systems, and does not introduce any security considerations beyond those of the surveyed systems.


For more information on security considerations of DECADE, see [1].


8. Contributors
8. 贡献者

The editors would like to thank the following people for contributing to the development of this document:


- ZhiHui Lv

- 吕志辉

- Borje Ohlman

- 博尔杰·奥尔曼

- Pang Tao

- 庞涛

- Lucy Yong

- 杨露西

- Juan Carlos Zuniga

- 胡安·卡洛斯·祖尼加

9. Acknowledgments
9. 致谢

The editors would like to thank the following people for providing valuable comments to various draft versions of this document: David Bryan, Tao Mao, Haibin Song, Ove Strandberg, Yu-Shun Wang, Richard Woundy, Yunfei Zhang, and Ning Zong.


10. Informative References
10. 资料性引用

[1] Song, H., Zong, N., Yang, Y., and R. Alimi, "DECoupled Application Data Enroute (DECADE) Problem Statement", Work in Progress, October 2011.

[1] Song,H.,Zong,N.,Yang,Y.,和R.Alimi,“分离应用程序数据途中(十年)问题陈述”,正在进行的工作,2011年10月。

[2] Storage Search, "Flash Memory vs. Hard Disk Drives -- Which Will Win?", <>.

[2] 存储搜索,“闪存与硬盘驱动器——哪一个会赢?”<>.

[3] Brisken, W., "Hard Drive Price Trends", US VLBI Technical Meeting, May 2008.

[3] W.布里斯肯,“硬盘价格趋势”,美国VLBI技术会议,2008年5月。

[4] Woundy, R., "TSV P2P Efforts -- From an ISP's Perspective", IETF 81, Quebec, Canada, July 2011, <>.

[4] Woundy,R.,“TSV P2P努力——从ISP的角度”,IETF 81,魁北克,加拿大,2011年7月<>.

[5] Gu, Y., Bryan, D., Yang, Y., and R. Alimi, "DECADE Requirements", Work in Progress, September 2011.

[5] Gu,Y.,Bryan,D.,Yang,Y.,和R.Alimi,“十年要求”,正在进行的工作,2011年9月。

[6] Amazon Web Services, "Amazon Simple Storage Service (Amazon S3)", <>.

[6] 亚马逊网络服务,“亚马逊简单存储服务(Amazon S3)”<>.

[7] Calder, B., Wang, T., Mainali, S., and J. Wu, "Windows Azure Blob -- Programming Blob Storage", May 2009, <>.

[7] Calder,B.,Wang,T.,Mainali,S.,和J.Wu,“Windows Azure Blob——编程Blob存储”,2009年5月<>.

[8] Google, "Google Storage for Developers", <>.

[8] 谷歌,“谷歌开发者存储”<>.

[9] Dropbox, "Dropbox Features", <>.

[9] Dropbox,“Dropbox功能”<>.

[10] Microsoft Corporation, "BranchCache", <>.

[10] 微软公司,“BranchCache”<>.

[11] Microsoft Corporation, "Web Services Dynamic Discovery (WS-Discovery)", April 2005, < ws/2005/04/discovery/ws-discovery.pdf>.

[11] 微软公司,“Web服务动态发现(WS-Discovery)”,2005年4月< ws/2005/04/discovery/ws-discovery.pdf>。

[12] Paul, S., Yates, R., Raychaudhuri, D., and J. Kurose, "The Cache-and-Forward Network Architecture for Efficient Mobile Content Delivery Services in the Future Internet", Innovations in NGN: Future Network and Services, 2008.

[12] Paul,S.,Yates,R.,Raychaudhuri,D.,和J.Kurose,“未来互联网中高效移动内容交付服务的缓存和转发网络架构”,NGN创新:未来网络和服务,2008年。

[13] SNIA, "Cloud Data Management Interface (CDMI)", <>.

[13] SNIA,“云数据管理接口(CDMI)”<>.

[14] Pathan, A.K. and Buyya, R., "A Taxonomy and Survey of Content Delivery Networks", Grid Computing and Distributed Systems Laboratory, University of Melbourne, Technical Report, February 2007.

[14] Pathan,A.K.和Buyya,R,“分类和调查内容交付网络”,网格计算和分布式系统实验室,墨尔本大学,技术报告,2007年2月。

[15] Cerf, V., Burleigh, S., Hooke, A., Torgerson, L., Durst, R., Scott, K., Fall, K., and H. Weiss, "Delay-Tolerant Networking Architecture", RFC 4838, April 2007.

[15] Cerf,V.,Burleigh,S.,Hooke,A.,Torgerson,L.,Durst,R.,Scott,K.,Fall,K.,和H.Weiss,“延迟容忍网络架构”,RFC 4838,2007年4月。

[16] Scott, K. and S. Burleigh, "Bundle Protocol Specification", RFC 5050, November 2007.

[16] Scott,K.和S.Burleigh,“捆绑协议规范”,RFC 50502007年11月。

[17] Named Data Networking, "Named Data Networking Home Page", <>.

[17] 命名数据网络,“命名数据网络主页”<>.

[18] Named Data Networking, "Named Data Networking (NDN) Project", <>.

[18] 命名数据网络,“命名数据网络(NDN)项目”<>.

[19] Network of Information, "NetInf Overview", <>.

[19] 信息网络,“NetInf概述”<>.

[20] Anand, A., Sekar, V., and A. Akella, "SmartRE: An Architecture for Coordinated Network-wide Redundancy Elimination", SIGCOMM 2009.

[20] Anand,A.,Sekar,V.,和A.Akella,“SmartRE:协调网络范围冗余消除的体系结构”,SIGCOM2009。

[21] Rhea, S., Eaton, P., Geels, D., Weatherspoon, H., Zhao, B., and J. Kubiatowicz, "Pond: the OceanStore Prototype", FAST 2003.

[21] Rhea,S.,Eaton,P.,Geels,D.,Weatherspoon,H.,Zhao,B.,和J.Kubiatowicz,“池塘:海洋商店原型”,FAST 2003。

[22] Kodak, "Kodak Gallery Home Page", <>.

[22] 柯达,“柯达画廊主页”<>.

[23] Wikipedia, "Kodak Gallery", <>.

[23] 维基百科,“柯达画廊”<>.

[24] Flickr, "Flickr Home Page", <>.

[24] Flickr,“Flickr主页”<>.

[25] ImageShack, "ImageShack Home Page", <>.

[25] ImageShack,“ImageShack主页”<>.

[26] Tumblr, "Tumblr Home Page", <>.

[26] Tumblr,“Tumblr主页”<>.

[27] Wikipedia, "Usenet", <>.

[27] 维基百科,“Usenet”<>.

[28] Google, "Google Groups", <>.

[28] 谷歌,“谷歌集团”<>.

[29] Huston, G., Telstra, "Web Caching", The Internet Protocol Journal Volume 2, No. 3.

[29] Huston,G.,Telstra,“网络缓存”,互联网协议杂志第2卷,第3期。

[30] Shen, G., Wang, Y., Xiong, Y., Zhao, B., and Z-L. Zhang, "HPTP: Relieving the Tension between ISPs and P2P", 6th International Workshop on Peer-To-Peer Systems (IPTPS2007).

[30] 沈,G.,王,Y.,熊,Y.,赵,B.,和Z-L.张,“HPTP:缓解ISP和P2P之间的紧张关系”,第六届对等系统国际研讨会(IPTPS2007)。

[31] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.

[31] 菲尔丁,R.,盖蒂斯,J.,莫卧儿,J.,弗莱斯蒂克,H.,马斯特,L.,利奇,P.,和T.伯纳斯李,“超文本传输协议——HTTP/1.1”,RFC2616,1999年6月。

[32] Satran, J., Meth, K., Sapuntzakis, C., Chadalapaka, M., and E. Zeidner, "Internet Small Computer Systems Interface (iSCSI)", RFC 3720, April 2004.

[32] Satran,J.,Meth,K.,Sapuntzakis,C.,Chadalapaka,M.,和E.Zeidner,“互联网小型计算机系统接口(iSCSI)”,RFC 3720,2004年4月。

[33] Simpson, W., "PPP Challenge Handshake Authentication Protocol (CHAP)", RFC 1994, August 1996.

[33] 辛普森,W.,“PPP挑战握手认证协议(CHAP)”,RFC 1994,1996年8月。

[34] Tseng, J., Gibbons, K., Travostino, F., Du Laney, C., and J. Souza, "Internet Storage Name Service (iSNS)", RFC 4171, September 2005.

[34] Tseng,J.,Gibbons,K.,Travostino,F.,Du Laney,C.,和J.Souza,“互联网存储名称服务(iSNS)”,RFC 41712005年9月。

[35] Shepler, S., Ed., Eisler, M., Ed., and D. Noveck, Ed., "Network File System (NFS) Version 4 Minor Version 1 Protocol", RFC 5661, January 2010.

[35] Shepler,S.,Ed.,Eisler,M.,Ed.,和D.Noveck,Ed.,“网络文件系统(NFS)版本4次要版本1协议”,RFC 56612010年1月。

[36] Black, D., Fridella, S., and J. Glasgow, "Parallel NFS (pNFS) Block/Volume Layout", RFC 5663, January 2010.

[36] Black,D.,Fridella,S.,和J.Glasgow,“并行NFS(pNFS)块/卷布局”,RFC 5663,2010年1月。

[37] Halevy, B., Welch, B., and J. Zelenka, "Object-Based Parallel NFS (pNFS) Operations", RFC 5664, January 2010.

[37] Halevy,B.,Welch,B.,和J.Zelenka,“基于对象的并行NFS(pNFS)操作”,RFC 5664,2010年1月。

[38] Hammer-Lahav, E., Ed., "The OAuth 1.0 Protocol", RFC 5849, April 2010.

[38] Hammer Lahav,E.,编辑,“OAuth 1.0协议”,RFC 5849,2010年4月。

[39] Ito, K., "Ticket-Based Access Control Extension to WebDAV", Work in Progress, October 2001.

[39] Ito,K.,“WebDAV基于票证的访问控制扩展”,正在进行的工作,2001年10月。

[40] Dusseault, L., Ed., "HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)", RFC 4918, June 2007.

[40] Dusseault,L.,Ed.,“Web分布式创作和版本控制(WebDAV)的HTTP扩展”,RFC4918,2007年6月。

[41] Reschke, J., Ed., Reddy, S., Davis, J., and A. Babich, "Web Distributed Authoring and Versioning (WebDAV) SEARCH", RFC 5323, November 2008.

[41] Reschke,J.,Ed.,Reddy,S.,Davis,J.,和A.Babich,“Web分布式创作和版本控制(WebDAV)搜索”,RFC 53232008年11月。

[42] Clemm, G., Reschke, J., Sedlar, E., and J. Whitehead, "Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol", RFC 3744, May 2004.

[42] Clemm,G.,Reschke,J.,Sedlar,E.,和J.Whitehead,“Web分布式创作和版本控制(WebDAV)访问控制协议”,RFC 3744,2004年5月。

[43] Korver, B. and L. Dusseault, "Quota and Size Properties for Distributed Authoring and Versioning (DAV) Collections", RFC 4331, February 2006.

[43] Korver,B.和L.Dusseault,“分布式创作和版本控制(DAV)集合的配额和大小属性”,RFC 43312006年2月。

Authors' Addresses


Richard Alimi (editor) Google



Akbar Rahman (editor) InterDigital Communications, LLC

Akbar Rahman(编辑)InterDigital Communications,LLC


Yang Richard Yang (editor) Yale University

Yang Richard Yang(编辑)耶鲁大学