[要約] このRFCは、アプリケーション層がネットワークのトポロジ情報を取得して通信を最適化する「ALTO」プロトコルが満たすべき要件を定義しています。P2PやCDNなどのアプリケーションが、ISPから提供されるコスト情報を利用して最適な接続先を選択するための、プライバシーやスケーラビリティに配慮した設計指針を示しています。
Internet Engineering Task Force (IETF) S. Kiesel, Ed.
Request for Comments: 6708 University of Stuttgart
Category: Informational S. Previdi
ISSN: 2070-1721 Cisco Systems, Inc.
M. Stiemerling
NEC Europe Ltd.
R. Woundy
Comcast Corporation
Y. Yang
Yale University
September 2012
Application-Layer Traffic Optimization (ALTO) Requirements
アプリケーション層トラフィック最適化(ALTO)の要件
Abstract
概要
Many Internet applications are used to access resources, such as pieces of information or server processes that are available in several equivalent replicas on different hosts. This includes, but is not limited to, peer-to-peer file sharing applications. The goal of Application-Layer Traffic Optimization (ALTO) is to provide guidance to applications that have to select one or several hosts from a set of candidates capable of providing a desired resource. This guidance shall be based on parameters that affect performance and efficiency of the data transmission between the hosts, e.g., the topological distance. The ultimate goal is to improve performance or Quality of Experience in the application while reducing the utilization of the underlying network infrastructure.
多くのインターネットアプリケーションは、さまざまなホスト上のいくつかの同等のレプリカで利用可能な情報やサーバープロセスなどのリソースにアクセスするために使用されます。これには、ピアツーピアのファイル共有アプリケーションが含まれますが、これに限定されません。アプリケーション層トラフィック最適化(ALTO)の目標は、目的のリソースを提供できる候補のセットから1つまたは複数のホストを選択する必要があるアプリケーションにガイダンスを提供することです。このガイダンスは、トポロジー距離など、ホスト間のデータ転送のパフォーマンスと効率に影響を与えるパラメーターに基づいています。最終的な目標は、基盤となるネットワークインフラストラクチャの使用率を削減しながら、アプリケーションのパフォーマンスまたはエクスペリエンスの品質を向上させることです。
This document enumerates requirements for specifying, assessing, or comparing protocols and implementations.
このドキュメントでは、プロトコルと実装を指定、評価、または比較するための要件を列挙しています。
Status of This Memo
本文書の状態
This document is not an Internet Standards Track specification; it is published for informational purposes.
このドキュメントはInternet Standards Trackの仕様ではありません。情報提供を目的として公開されています。
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(Internet Engineering Task Force)の製品です。これは、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 http://www.rfc-editor.org/info/rfc6708.
このドキュメントの現在のステータス、正誤表、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc6708で入手できます。
Copyright Notice
著作権表示
Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved.
Copyright(c)2012 IETF Trustおよびドキュメントの作成者として特定された人物。全著作権所有。
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) 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トラストの法的規定(http://trustee.ietf.org/license-info)の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。
Table of Contents
目次
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology and Architectural Framework . . . . . . . . . . . 3 2.1. Requirements Notation . . . . . . . . . . . . . . . . . . 3 2.2. ALTO Terminology . . . . . . . . . . . . . . . . . . . . . 3 2.3. Architectural Framework for ALTO . . . . . . . . . . . . . 5 3. ALTO Requirements . . . . . . . . . . . . . . . . . . . . . . 5 3.1. ALTO Client Protocol . . . . . . . . . . . . . . . . . . . 5 3.1.1. General Requirements . . . . . . . . . . . . . . . . . 5 3.1.2. Host-Group Descriptor Support . . . . . . . . . . . . 6 3.1.3. Rating Criteria Support . . . . . . . . . . . . . . . 7 3.1.4. Placement of Entities and Timing of Transactions . . . 9 3.1.5. Protocol Extensibility . . . . . . . . . . . . . . . . 11 3.1.6. Error Handling and Overload Protection . . . . . . . . 11 3.2. ALTO Server Discovery . . . . . . . . . . . . . . . . . . 12 3.3. Security and Privacy . . . . . . . . . . . . . . . . . . . 13 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 5. Security Considerations . . . . . . . . . . . . . . . . . . . 14 5.1. High-Level Security Considerations . . . . . . . . . . . . 14 5.2. Information Disclosure Scenarios . . . . . . . . . . . . . 14 5.2.1. Classification of Information Disclosure Scenarios . . 14 5.2.2. Discussion of Information Disclosure Scenarios . . . . 16 5.3. ALTO Server Discovery . . . . . . . . . . . . . . . . . . 18 5.4. Security Requirements . . . . . . . . . . . . . . . . . . 18 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 18 6.1. Normative References . . . . . . . . . . . . . . . . . . . 18 6.2. Informative References . . . . . . . . . . . . . . . . . . 18 Appendix A. Contributors . . . . . . . . . . . . . . . . . . . . 19 Appendix B. Acknowledgments . . . . . . . . . . . . . . . . . . . 19
The motivation for Application-Layer Traffic Optimization (ALTO) is described in the ALTO problem statement [RFC5693].
アプリケーション層トラフィック最適化(ALTO)の動機は、ALTO問題ステートメント[RFC5693]で説明されています。
The goal of ALTO is to provide information that can help peer-to-peer (P2P) applications make better decisions with respect to peer selection. However, ALTO may be useful for non-P2P applications as well. For example, clients of client-server applications may use information provided by ALTO to select one of several servers or information replicas. As another example, ALTO information could be used to select a media relay needed for NAT traversal. The goal of these informed decisions is to improve performance or Quality of Experience in the application while reducing the utilization of the underlying network infrastructure.
ALTOの目標は、ピアツーピア(P2P)アプリケーションがピアの選択に関してより適切な決定を行うのに役立つ情報を提供することです。ただし、ALTOはP2P以外のアプリケーションにも役立ちます。たとえば、クライアントサーバーアプリケーションのクライアントは、ALTOによって提供される情報を使用して、いくつかのサーバーまたは情報レプリカの1つを選択できます。別の例として、ALTO情報を使用して、NATトラバーサルに必要なメディアリレーを選択できます。これらの情報に基づいた決定の目標は、基盤となるネットワークインフラストラクチャの使用率を削減しながら、アプリケーションのパフォーマンスまたはエクスペリエンスの品質を向上させることです。
Usually, it would be difficult or even impossible for application entities to acquire this information by other mechanisms, e.g., using measurements between the peers of a P2P overlay, because of complexity or because it is based on network topology information, network operational costs, or network policies, which the respective network provider does not want to disclose in detail.
通常、アプリケーションエンティティがこの情報を他のメカニズム(P2Pオーバーレイのピア間の測定値を使用するなど)で取得することは、複雑またはネットワークトポロジ情報、ネットワーク運用コストに基づいているため、困難または不可能ですらあります。それぞれのネットワークプロバイダーが詳細を開示したくないネットワークポリシー。
The functional entities that provide the ALTO service do not take part in the actual user-data transport, i.e., they do not implement functions for relaying user data. These functional entities may be placed on various kinds of physical nodes, e.g., on dedicated servers, as auxiliary processes in routers, on "trackers" or "super peers" of a P2P application, etc.
ALTOサービスを提供する機能エンティティは、実際のユーザーデータトランスポートには参加しません。つまり、ユーザーデータを中継する機能を実装していません。これらの機能エンティティは、専用サーバーなどのさまざまな種類の物理ノード、ルーターの補助プロセスとして、P2Pアプリケーションの「トラッカー」または「スーパーピア」などに配置できます。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
このドキュメントのキーワード "MUST"、"MUST NOT"、"REQUIRED"、"SHALL"、"SHALL NOT"、"SHOULD"、"SHOULD NOT"、"RECOMMENDED"、"MAY"、および "OPTIONAL" は、[RFC2119] で説明されているように解釈されるものとします。
This document uses the following ALTO-related terms, which are defined in [RFC5693]:
このドキュメントでは、[RFC5693]で定義されている次のALTO関連の用語を使用します。
Application, Peer, P2P, Resource, Resource Identifier, Resource Provider, Resource Consumer, Transport Address, Overlay Network, Resource Directory, ALTO Service, ALTO Server, ALTO Client, ALTO Query, ALTO Response, ALTO Transaction, Local Traffic, Peering Traffic, Transit Traffic, Application Protocol, ALTO Client Protocol, and Provisioning Protocol.
アプリケーション、ピア、P2P、リソース、リソース識別子、リソースプロバイダー、リソースコンシューマー、トランスポートアドレス、オーバーレイネットワーク、リソースディレクトリ、ALTOサービス、ALTOサーバー、ALTOクライアント、ALTOクエリ、ALTO応答、ALTOトランザクション、ローカルトラフィック、ピアリングトラフィック、トランジットトラフィック、アプリケーションプロトコル、ALTOクライアントプロトコル、およびプロビジョニングプロトコル。
Furthermore, the following additional terms will be used:
さらに、次の追加の用語が使用されます。
o Host-Group Descriptor: Information used to describe one or more Internet hosts (such as the resource consumer that seeks ALTO guidance, or one or more candidate resource providers) and their location within the network topology. There can be several different types of host-group descriptors, for example, a single IP address, an address prefix or address range that contains the host(s), or an Autonomous System (AS) number. Different host-group descriptor types may provide different levels of detail. Depending on the system architecture, this may have implications on the quality of the guidance ALTO is able to provide, on whether recommendations can be aggregated, and on how much privacy-sensitive information about users might be disclosed to additional parties.
o ホストグループ記述子:1つ以上のインターネットホスト(ALTOガイダンスを求めるリソースコンシューマー、または1つ以上の候補リソースプロバイダーなど)およびネットワークトポロジ内のそれらの場所を説明するために使用される情報。単一のIPアドレス、ホストを含むアドレスプレフィックスまたはアドレス範囲、または自律システム(AS)番号など、いくつかの異なるタイプのホストグループ記述子が存在する可能性があります。異なるホストグループ記述子タイプは、異なる詳細レベルを提供する場合があります。システムアーキテクチャによっては、これはALTOが提供できるガイダンスの品質、推奨事項を集約できるかどうか、およびユーザーに関するプライバシーに関する機密情報が追加の当事者に開示される可能性がある量に影響を与える可能性があります。
o Rating Criterion: The condition or relation that defines the "better" in "better-than-random peer selection", which is the ultimate goal of ALTO. Examples may include "host's Internet access is not subject to volume-based charging (flat rate)" or "low topological distance". Some rating criteria, such as "low topological distance", need to include a reference point, e.g., "low topological distance from a given resource consumer". This reference point can be described by means of a host-group descriptor.
o 評価基準:ALTOの最終的な目標である「ランダムよりも優れたピア選択」の「より良い」を定義する条件または関係。例として、「ホストのインターネットアクセスは、ボリュームベースの課金(定額料金)の対象外」または「トポロジー距離が短い」などがあります。 「トポロジー距離が短い」などのいくつかの評価基準には、「所与のリソース消費者からのトポロジー距離が短い」などの参照ポイントを含める必要があります。この参照ポイントは、ホストグループ記述子を使用して記述できます。
o Host-Characteristics Attribute: Properties of a host, other than the host-group descriptor. It may be evaluated according to one or more rating criteria. This information may be stored in an ALTO server and transmitted via an ALTO protocol. One example for a host-characteristics attribute would be a data field indicating whether a host's Internet access is subject to volume-based charging or not (flat rate).
o ホスト特性属性:ホストグループ記述子以外のホストのプロパティ。 1つ以上の評価基準に従って評価される場合があります。この情報は、ALTOサーバーに格納され、ALTOプロトコルを介して送信されます。ホスト特性属性の1つの例は、ホストのインターネットアクセスがボリュームベースの課金の対象かどうか(定額)を示すデータフィールドです。
o Target-Aware Query Mode: In this mode of operation, an ALTO client performs the ALTO query when the desired resource and a set of candidate resource providers are already known, i.e., after Distributed Hash Table (DHT) lookups, queries to the resource directory, etc. To this end, the ALTO client transmits a list of host-group descriptors and optionally one or more rating criteria to the ALTO server. The ALTO server evaluates the host-group descriptors according to the indicated criteria or a default criterion. It returns a list of these host-group descriptors to the ALTO client, which is sorted according to the rating criteria and/or enriched with host-characteristics attributes.
oターゲット対応クエリモード:この操作モードでは、ALTOクライアントは、目的のリソースと候補リソースプロバイダーのセットがすでにわかっている場合、つまり、分散ハッシュテーブル(DHT)ルックアップの後に、リソースへのクエリを実行します。この目的のために、ALTOクライアントはホストグループ記述子のリストと、オプションで1つ以上の評価基準をALTOサーバーに送信します。 ALTOサーバーは、指定された基準またはデフォルトの基準に従ってホストグループ記述子を評価します。これは、これらのホストグループ記述子のリストをALTOクライアントに返します。これは、評価基準に従ってソートされるか、ホスト特性属性で強化されます。
o Target-Independent Query Mode: In this mode of operation, ALTO queries are performed in advance or periodically, in order to receive comprehensive guidance. The ALTO client indicates the desired host-characteristics attributes in the ALTO query. The ALTO server answers with a list that indicates for all known host-group descriptors (possibly subject to the server's policies) the desired host-characteristics attributes. These lists will be cached locally and evaluated later, when a resource is to be accessed.
o ターゲットに依存しないクエリモード:この操作モードでは、包括的なガイダンスを受け取るために、ALTOクエリが事前または定期的に実行されます。 ALTOクライアントは、ALTOクエリで必要なホスト特性属性を示します。 ALTOサーバーは、既知のすべてのホストグループ記述子(サーバーのポリシーに従う可能性がある)に対して、必要なホスト特性属性を示すリストで応答します。これらのリストはローカルにキャッシュされ、後でリソースにアクセスするときに評価されます。
There are various architectural options for ALTO implementation. Specifying or mandating one specific architecture is out of the scope of this document.
ALTOの実装には、さまざまなアーキテクチャオプションがあります。 1つの特定のアーキテクチャーを指定または強制することは、このドキュメントの範囲外です。
This document itemizes requirements for the following components: ALTO client protocols, ALTO server discovery mechanisms, host-group descriptors, rating criteria, and host-characteristics attributes. Furthermore, requirements regarding the overall architecture, especially with respect to security and privacy issues, are presented.
このドキュメントでは、ALTOクライアントプロトコル、ALTOサーバー検出メカニズム、ホストグループ記述子、評価基準、およびホスト特性属性のコンポーネントの要件について説明します。さらに、特にセキュリティとプライバシーの問題に関して、全体的なアーキテクチャに関する要件が提示されます。
Note that the detailed specification of such protocols and mechanisms is out of the scope of this document. In fact, this document does not even assume that there will be only one single specification for each of these components, respectively. However, this document enumerates requirements for ALTO to be considered when specifying, assessing, or comparing protocols and implementations.
このようなプロトコルとメカニズムの詳細な仕様は、このドキュメントの範囲外であることに注意してください。実際、このドキュメントでは、これらの各コンポーネントの仕様がそれぞれ1つだけであることを想定していません。ただし、このドキュメントでは、プロトコルと実装を指定、評価、または比較するときに考慮すべきALTOの要件を列挙しています。
Req. AR-1: The ALTO service is provided by one or more ALTO servers. It may be queried by ALTO clients seeking guidance for selecting appropriate resource providers. ALTO clients and ALTO servers MUST implement an ALTO client protocol. An ALTO client protocol MUST be able to transmit ALTO queries from an ALTO client to an ALTO server, and it MUST be able to transmit the corresponding ALTO replies from the ALTO server to the ALTO client.
要件AR-1:ALTOサービスは1つ以上のALTOサーバーによって提供されます。適切なリソース提供者を選ぶための指針を求めるALTOクライアントが、ALTOサービスに問い合わせることがあります。ALTOクライアントとALTOサーバーは、ALTOクライアントプロトコルを実装しなければなりません (MUST)。ALTOクライアントプロトコルは、ALTOクライアントからALTOサーバーへALTOクエリを送信できなければならず (MUST)、対応するALTO応答をALTOサーバーからALTOクライアントへ送信できなければなりません (MUST)。
The detailed specification of an ALTO client protocol is out of the scope of this document. In fact, this document does not even assume that there will be only one single protocol specification. However, this document enumerates requirements for ALTO, to be considered when specifying, assessing, or comparing protocols and implementations.
ALTOクライアントプロトコルの詳細な仕様は、このドキュメントの範囲外です。実際、このドキュメントでは、単一のプロトコル仕様のみが存在することを想定していません。ただし、このドキュメントでは、プロトコルと実装を指定、評価、または比較するときに考慮されるALTOの要件を列挙しています。
Req. AR-2: An ALTO client protocol MUST provide adequate mechanisms for operations and management support, as outlined in RFC 5706 [RFC5706].
要件AR-2:ALTOクライアントプロトコルは、RFC 5706 [RFC5706]で概説されているとおり、運用と管理のサポートのための適切なメカニズムを提供しなければなりません (MUST)。
The ALTO guidance is based on the evaluation of several resource providers or groups of resource providers, considering one or more rating criteria. The resource providers or groups of resource providers are characterized by means of host-group descriptors.
ALTOガイダンスは、1つ以上の評価基準を考慮して、いくつかのリソースプロバイダーまたはリソースプロバイダーのグループの評価に基づいています。リソースプロバイダーまたはリソースプロバイダーのグループは、ホストグループ記述子によって特徴付けられます。
Req. AR-3: An ALTO client protocol MUST support the usage of multiple host-group descriptor types.
要件AR-3:ALTOクライアントプロトコルは、複数のホストグループ記述子タイプの使用をサポートしなければなりません (MUST)。
Req. AR-4: ALTO clients and ALTO servers MUST clearly identify the type of each host-group descriptor sent in ALTO queries or responses. An ALTO protocol specification MUST provide appropriate protocol elements.
要件AR-4:ALTOクライアントとALTOサーバーは、ALTOクエリまたは応答で送信される各ホストグループ記述子のタイプを明確に識別しなければなりません(MUST)。 ALTOプロトコル仕様では、適切なプロトコル要素を提供しなければなりません (MUST)。
Req. AR-5: An ALTO client protocol MUST support the host group descriptor types "IPv4 address prefix" and "IPv6 address prefix". They can be used to specify the IP address of one host, or an IP address range (in Classless Inter-Domain Routing (CIDR) notation) containing all hosts in question.
要件AR-5:ALTOクライアントプロトコルは、ホストグループ記述子タイプ「IPv4 address prefix」と「IPv6 address prefix」をサポートしなければなりません (MUST)。これらは、1つのホストのIPアドレス、または対象となるすべてのホストを含むIPアドレス範囲(Classless Inter-Domain Routing(CIDR)表記)を指定するために使用できます。
Req. AR-6: An ALTO client protocol MUST be extensible to enable future support of other host-group descriptor types. An ALTO client protocol specification MUST define an appropriate procedure for adding new host-group descriptor types, e.g., by establishing an IANA registry.
要件AR-6:ALTOクライアントプロトコルは、他のホストグループ記述子タイプの将来のサポートを可能にするために拡張可能でなければなりません (MUST)。 ALTOクライアントプロトコル仕様では、IANAレジストリを確立するなどして、新しいホストグループ記述子タイプを追加するための適切な手順を定義しなければなりません (MUST)。
Req. AR-7: For host-group descriptor types other than "IPv4 address prefix" and "IPv6 address prefix", the host-group descriptor type identification MUST be supplemented by a reference to a facility that can be used to translate host-group descriptors of this type to IPv4/ IPv6 address prefixes, e.g., by means of a mapping table or an algorithm.
要件AR-7:「IPv4 address prefix」および「IPv6 address prefix」以外のホストグループ記述子タイプについては、ホストグループ記述子タイプの識別に、このタイプのホストグループ記述子をIPv4/IPv6アドレスプレフィックスに(たとえばマッピングテーブルやアルゴリズムによって)変換するために使用できる仕組みへの参照を補足しなければなりません (MUST)。
Req. AR-8: Protocol functions for mapping other host-group descriptor types to IPv4/IPv6 address prefixes SHOULD be designed and specified as part of an ALTO client protocol, and the corresponding address mapping information SHOULD be made available by the same entity that wants to use these host-group descriptors within an ALTO client protocol. However, an ALTO server or an ALTO client MAY also send a reference to an external mapping facility, e.g., a translation table to be obtained via an alternative mechanism.
要件AR-8:その他のホストグループ記述子の種類をIPv4/IPv6アドレスプレフィックスに対応付けるプロトコル機能は、ALTOクライアントプロトコルの一部として設計・規定されるべきであり (SHOULD)、対応するアドレスマッピング情報は、ALTOクライアントプロトコル内でこれらのホストグループ記述子を使用したいエンティティ自身によって提供されるべきです (SHOULD)。ただし、ALTOサーバーまたはALTOクライアントは、外部のマッピング機能(たとえば別の仕組みで取得する変換テーブル)への参照を送信してもよいです (MAY)。
Rationale for the previous two requirements: The preferred type of host-group descriptors are IPv4 and IPv6 prefixes. However, in some situations, one party may prefer to use another type, e.g., AS numbers. Usually, applications seeking ALTO guidance work with IP addresses, e.g., when establishing connections. Understanding guiding information that is based on other host-group descriptor types, i.e., mapping from these other types to IP prefixes and back, may be a non-trivial task. Therefore, before a party may use other host-group descriptor types, they must provide a mapping mechanism to IP prefixes.
直前の2つの要件の根拠: ホストグループ記述子の望ましいタイプはIPv4およびIPv6プレフィックスです。しかし、状況によっては、一方の当事者が別のタイプ(AS番号など)の使用を好む場合があります。通常、ALTOガイダンスを求めるアプリケーションは、たとえば接続を確立する際にIPアドレスを使用して動作します。他のホストグループ記述子タイプに基づくガイダンス情報を理解すること(すなわち、これら他のタイプからIPプレフィックスへのマッピング、およびその逆へのマッピング)は、容易ではない作業となる可能性があります。したがって、当事者が他のホストグループ記述子タイプを使用できるようになる前に、IPプレフィックスへのマッピングメカニズムを提供しなければなりません。
Req. AR-9: An ALTO client protocol specification MUST define mechanisms that can be used by the ALTO server to indicate that a host-group descriptor used by the ALTO client is of an unsupported type, or that the indicated mapping mechanism could not be used.
要件AR-9:ALTOクライアントプロトコルの仕様は、ALTOクライアントが使用したホストグループ記述子がサポートされていないタイプであること、または示されたマッピングメカニズムを使用できなかったことを、ALTOサーバーが示すために使用できるメカニズムを定義しなければなりません (MUST)。
Req. AR-10: An ALTO client protocol specification MUST define mechanisms that can be used by the ALTO client to indicate that a host-group descriptor used by the ALTO server is of an unsupported type, or that the indicated mapping mechanism could not be used.
要件AR-10:ALTOクライアントプロトコルの仕様は、ALTOサーバーが使用したホストグループ記述子がサポートされていないタイプであること、または示されたマッピングメカニズムを使用できなかったことを、ALTOクライアントが示すために使用できるメカニズムを定義しなければなりません (MUST)。
Req. AR-11: An ALTO client protocol specification MUST define a rating criterion that can be used to express and evaluate the "relative operator's preference". This is a relative measure, i.e., it is not associated with any unit of measurement. A preferred rating, according to this criterion, indicates that the application should prefer the respective candidate resource provider over others with less preferred ratings (unless information from non-ALTO sources suggests a different choice, such as transmission attempts suggesting that the path is currently congested). The operator of the ALTO server does not have to disclose how and based on which data the ratings are actually computed. Examples could be: cost for peering or transit traffic, traffic engineering inside the network, and other policies.
要件AR-11:ALTOクライアントプロトコル仕様では、「相対的なオペレーターの好み」を表現および評価するために使用できる評価基準を定義する必要があります。これは相対的な測定値です。つまり、どの測定単位にも関連付けられていません。この基準による優先評価は、アプリケーションが、優先度の低い他のリソースプロバイダーよりもそれぞれの候補リソースプロバイダーを優先する必要があることを示します(ALTO以外のソースからの情報が、パスが現在輻輳していることを示唆する送信試行などの別の選択肢を示唆しない限り) )。 ALTOサーバーのオペレーターは、評価が実際にどのように、どのデータに基づいて計算されるかを開示する必要はありません。例としては、ピアリングまたはトランジットトラフィックのコスト、ネットワーク内のトラフィックエンジニアリング、およびその他のポリシーがあります。
Req. AR-12: An ALTO client protocol MUST be extensible to enable future support of other rating criteria types. An ALTO client protocol specification MUST define an appropriate procedure for adding new rating criteria types, e.g., by establishing an IANA registry.
要件AR-12:ALTOクライアントプロトコルは、他の評価基準タイプの将来のサポートを可能にするために拡張可能でなければなりません (MUST)。 ALTOクライアントプロトコル仕様では、IANAレジストリを確立するなどして、新しい評価基準タイプを追加するための適切な手順を定義しなければなりません (MUST)。
Req. AR-13: ALTO client protocol specifications MUST NOT define rating criteria closely related to the instantaneous network congestion state, i.e., rating criteria that have the primary aim to serve as an alternative to established congestion control strategies, such as using TCP-based transport.
要件AR-13:ALTOクライアントプロトコルの仕様では、瞬間的なネットワークの輻輳状態に密接に関連する評価基準、つまり、TCPベースのトランスポートの使用など、確立された輻輳制御戦略の代替として機能することを主な目的とする評価基準を定義してはなりません (MUST NOT)。
Req. AR-14: Applications using ALTO guidance MUST NOT rely solely on the ALTO guidance to avoid causing network congestion. Instead, they MUST use other appropriate means, such as TCP-based transport, to avoid causing excessive congestion.
要件AR-14:ALTOガイダンスを使用するアプリケーションは、ネットワークの輻輳の発生を回避するために、ALTOガイダンスのみに依存してはなりません (MUST NOT)。代わりに、TCPベースのトランスポートなどの他の適切な手段を使用して、過度の輻輳の発生を回避しなければなりません (MUST)。
Rationale for the previous requirement: One design assumption for ALTO is that it is acceptable for the host-characteristics attributes, which are stored and processed in the ALTO servers for giving guidance, to be updated rather infrequently. Typical update intervals may be several orders of magnitude longer than the typical network-layer packet round-trip time (RTT). Therefore, ALTO cannot be a replacement for TCP-like congestion control mechanisms.
前の要件の根拠:ALTOの設計上の前提の1つは、ガイダンスを提供するためにALTOサーバーに格納および処理されるホスト特性属性が、それほど頻繁に更新されなくてもよいことです。通常の更新間隔は、通常のネットワーク層パケットラウンドトリップ時間(RTT)よりも数桁長い場合があります。したがって、ALTOはTCPのような輻輳制御メカニズムの代わりになることはできません。
Req. AR-15: In the target-independent query mode, the ALTO query message SHOULD allow the ALTO client to express which host-characteristics attributes should be returned.
要件AR-15:ターゲット非依存のクエリモードでは、ALTOクエリメッセージは、どのホスト特性属性を返してほしいかをALTOクライアントが表現できるようにすべきです (SHOULD)。
Req. AR-16: In the target-aware query mode, the ALTO query message SHOULD allow the ALTO client to express which rating criteria should be considered by the server, as well as their relative relevance for the specific application that will eventually make use of the guidance. The corresponding ALTO response message SHOULD allow the ALTO server to express which rating criteria have been considered when generating the response.
要件AR-16:ターゲットを意識したクエリモードでは、ALTOクエリメッセージにより、ALTOクライアントはサーバーが検討する必要がある評価基準と、最終的には特定のアプリケーションを使用する相対的な関連性を表現できます(SHOULD)。ガイダンス。対応するALTO応答メッセージは、ALTOサーバーが応答の生成時に考慮された評価基準を表現できるようにする必要があります(SHOULD)。
Req. AR-17: An ALTO client protocol specification MUST define mechanisms that can be used by the ALTO client and the ALTO server to indicate that a rating criteria used by the other party is of an unsupported type.
要件AR-17:ALTOクライアントプロトコルの仕様は、相手方が使用した評価基準がサポートされていないタイプであることを、ALTOクライアントとALTOサーバーが示すために使用できるメカニズムを定義しなければなりません (MUST)。
With respect to the placement of ALTO clients, several modes of operation exist:
ALTOクライアントの配置に関して、いくつかの操作モードが存在します。
o One mode of ALTO operation is that an ALTO client may be embedded directly in the resource consumer, i.e., the application protocol entity that will eventually initiate data transmission to/from the selected resource provider(s) in order to access the desired resource. For example, an ALTO client could be integrated into the peer of a P2P application that uses a distributed algorithm such as "query flooding" for resource discovery.
o ALTO操作の1つのモードは、ALTOクライアントをリソースコンシューマ、つまり、目的のリソースにアクセスするために選択したリソースプロバイダーとの間のデータ送信を最終的に開始するアプリケーションプロトコルエンティティに直接埋め込むことです。たとえば、ALTOクライアントは、リソース検出に「クエリフラッディング」などの分散アルゴリズムを使用するP2Pアプリケーションのピアに統合できます。
o Another mode of operation is to integrate the ALTO client into a third party, such as a resource directory. This third party may issue ALTO queries to solicit preference on potential resource providers, considering the respective resource consumer. For example, an ALTO client could be integrated into the tracker of a tracker-based P2P application, in order to request ALTO guidance on behalf of the peers contacting the tracker.
o もう1つの動作モードは、リソースディレクトリなどの第三者(サードパーティ)にALTOクライアントを統合することです。この第三者は、各リソースコンシューマを考慮した上で、潜在的なリソースプロバイダに関する優先順位を求めるためにALTOクエリを発行することができます。例えば、トラッカーに接続してくるピアを代理してALTOガイダンスを要求するために、トラッカー型P2PアプリケーションのトラッカーにALTOクライアントを統合することができます。
Req. AR-18: An ALTO client protocol MUST support the mode of operation in which the ALTO client is directly embedded in the resource consumer.
要件AR-18:ALTOクライアントプロトコルは、ALTOクライアントがリソース利用者に直接組み込まれる動作モードをサポートしなければなりません (MUST)。
Req. AR-19: An ALTO client protocol MUST support the mode of operation in which the ALTO client is embedded in a third party. This third party performs queries on behalf of resource consumers.
要件 AR-19: ALTOクライアントプロトコルは、ALTOクライアントがリソースコンシューマではなくリソースディレクトリなどの第三者に組み込まれる動作モード(「サードパーティALTOクエリ」)をサポートしなければなりません (MUST)。
Req. AR-20: An ALTO client protocol MUST be designed in a way that the ALTO service can be provided by an entity that is not the operator of the underlying IP network.
要件AR-20:ALTOクライアントプロトコルは、基盤となるIPネットワークの運用者ではないエンティティがALTOサービスを提供できるように設計されなければなりません (MUST)。
Req. AR-21: An ALTO client protocol MUST be designed in a way that different instances of the ALTO service operated by different providers can coexist.
要件AR-21:ALTOクライアントプロトコルは、異なるプロバイダーが運用するALTOサービスの異なるインスタンスが共存できるように設計されなければなりません (MUST)。
Req. AR-22: An ALTO client protocol specification MUST specify at least one query mode, either the target-aware or the target-independent query mode.
要件AR-22:ALTOクライアントプロトコルの仕様は、ターゲット認識型またはターゲット非依存のクエリモードのいずれか、少なくとも1つのクエリモードを規定しなければなりません (MUST)。
Note that this requirements document does not assume that there will be only one single protocol specification.
この要件ドキュメントは、単一のプロトコル仕様のみが存在することを想定していないことに注意してください。
Req. AR-23: An ALTO client protocol specification SHOULD specify both the target-aware and the target-independent query mode. If an ALTO client protocol specification specifies more than one query mode, it MUST define at least one of these modes as REQUIRED to implement by ALTO clients and ALTO servers. Furthermore, it MUST specify an appropriate protocol mechanism for negotiating between the ALTO client and ALTO server, which query mode to use.
要件AR-23:ALTOクライアントプロトコルの仕様は、対象を考慮する(target-aware)クエリモードと対象に依存しない(target-independent)クエリモードの両方を規定すべきです (SHOULD)。ALTOクライアントプロトコルの仕様が複数のクエリモードを規定する場合、それらのモードのうち少なくとも1つを、ALTOクライアントとALTOサーバーによる実装が必須 (REQUIRED) であるものとして定義しなければなりません (MUST)。さらに、どのクエリモードを使用するかをALTOクライアントとALTOサーバーの間でネゴシエートするための適切なプロトコルメカニズムを規定しなければなりません (MUST)。
Req. AR-24: An ALTO client protocol SHOULD support version numbering, TTL (time-to-live) attributes, and/or similar mechanisms in ALTO transactions, in order to enable time validity checking for caching, and to enable comparisons of multiple recommendations obtained through redistribution.
要件AR-24:ALTOクライアントプロトコルは、キャッシュのための有効期限の確認を可能にし、再配布によって得られた複数の推奨を比較できるようにするため、ALTOトランザクションにおいて、バージョン番号、TTL(time-to-live)属性、および/または同様のメカニズムをサポートすべきです (SHOULD)。
Req. AR-25: An ALTO client protocol SHOULD allow the ALTO server to add information about appropriate modes of reuse to its ALTO responses. Reuse may include redistributing an ALTO response to other parties, as well as using the same ALTO information in a resource directory to improve the responses to different resource consumers within the specified lifetime of the ALTO response. The ALTO server SHOULD be able to express that
要件AR-25:ALTOクライアントプロトコルは、ALTOサーバーが適切な再利用モードに関する情報をALTO応答に追加できるようにすべきです(SHOULD)。再利用には、ALTO応答を他の関係者に再配布することや、リソースディレクトリ内の同じALTO情報を使用して、ALTO応答の指定された存続期間内のさまざまなリソースコンシューマーへの応答を改善することが含まれます。 ALTOサーバーはそれを表現できるべきです(SHOULD)
o no reuse should occur.
o 再利用は発生しません。
o reuse is appropriate for a specific "target audience", i.e., a set of resource consumers explicitly defined by a list of host-group descriptors. The ALTO server MAY specify a "target audience" in the ALTO response that is only a subset of the known actual "target audience", e.g., if required by operator policies.
o 再利用は、特定の「ターゲットオーディエンス」、つまりホストグループ記述子のリストによって明示的に定義されたリソースコンシューマのセットに適しています。 ALTOサーバーは、既知の実際の「ターゲットオーディエンス」のサブセットのみである「ターゲットオーディエンス」をALTO応答で指定する場合があります(たとえば、オペレーターポリシーで必要な場合)。
o reuse is appropriate for any resource consumer that would send (or cause a third party to send on behalf of it) the same ALTO query (i.e., with the same query parameters, except for the resource consumer ID, if applicable) to this ALTO server.
o このALTOサーバに対して同じALTOクエリ(すなわち、該当する場合はリソースコンシューマIDを除き、同じクエリパラメータを持つもの)を送信する(または第三者に代理で送信させる)任意のリソースコンシューマに対して、再利用は適切です。
o reuse is appropriate for any resource consumer that would send (or cause a third party to send on behalf of it) the same ALTO query (i.e., with the same query parameters, except for the resource consumer ID, if applicable) to any other ALTO server that was discovered (using an ALTO discovery mechanism) together with this ALTO server.
o このALTOサーバとともに(ALTOディスカバリメカニズムを使用して)発見された他の任意のALTOサーバに対して同じALTOクエリ(すなわち、該当する場合はリソースコンシューマIDを除き、同じクエリパラメータを持つもの)を送信する(または第三者に代理で送信させる)任意のリソースコンシューマに対して、再利用は適切です。
o reuse is appropriate for any resource consumer that would send (or cause a third party to send on behalf of it) the same ALTO query (i.e., with the same query parameters, except for the resource consumer ID, if applicable) to any ALTO server in the whole network.
o ネットワーク全体の任意のALTOサーバに対して同じALTOクエリ(すなわち、該当する場合はリソースコンシューマIDを除き、同じクエリパラメータを持つもの)を送信する(または第三者に代理で送信させる)任意のリソースコンシューマに対して、再利用は適切です。
Req. AR-27: An ALTO client protocol MUST include support for adding protocol extensions in a non-disruptive, backward-compatible way.
要件AR-27:ALTOクライアントプロトコルは、既存の動作を妨げず後方互換性のある方法でプロトコル拡張を追加するためのサポートを含まなければなりません (MUST)。
Req. AR-28: An ALTO client protocol MUST include protocol versioning support, in order to clearly distinguish between incompatible versions of the protocol.
要件AR-28:ALTOクライアントプロトコルは、互換性のないプロトコルのバージョンを明確に区別するため、プロトコルのバージョン管理のサポートを含まなければなりません (MUST)。
Req. AR-29: An ALTO client protocol MUST use congestion-aware transport, e.g., by using TCP.
要件AR-29:ALTOクライアントプロトコルは、たとえばTCPを使用するなどして、輻輳を考慮したトランスポートを使用しなければなりません (MUST)。
Req. AR-30: An ALTO client protocol specification MUST specify mechanisms for an ALTO server to inform clients about an impending or occurring overload situation, or how to leverage appropriate mechanisms provided by underlying protocol layers. The mechanisms MUST provide all of the following options to the server:
要件AR-30:ALTOクライアントプロトコル仕様は、ALTOサーバーがクライアントに差し迫ったまたは発生している過負荷状況、または基礎となるプロトコルレイヤーによって提供される適切なメカニズムを活用する方法を通知するメカニズムを指定しなければなりません (MUST)。メカニズムは、サーバーに次のすべてのオプションを提供しなければなりません (MUST)。
o terminate the conversation with the client,
o クライアントとの会話を終了し、
o redirect the client to another ALTO server, and
o クライアントを別のALTOサーバーにリダイレクトし、
o request that the client throttle its query rate.
o クライアントにクエリレートを調整するように要求します。
In particular, a simple form of throttling is to let an ALTO server answer a query with an error message advising the client to retry the query later (e.g., using a protocol function such as HTTP's Retry-After header ([RFC2616], Section 14.37)). Another simple option is to actually answer the query with the desired information, but adding an indication that the ALTO client should not send further queries to this ALTO server before an indicated period of time has elapsed.
特に、スロットルの簡単な形式は、クライアントに後でクエリを再試行するようにアドバイスするエラーメッセージでALTOサーバーにクエリに応答させることです(たとえば、HTTPのRetry-Afterヘッダー([RFC2616]、セクション14.37 ))。別の簡単なオプションは、希望する情報で実際にクエリに応答することですが、指定された期間が経過する前に、ALTOクライアントがこのALTOサーバーにさらにクエリを送信してはならないという指示を追加します。
Req. AR-31: An ALTO client protocol specification MUST specify mechanisms for an ALTO server to inform clients about its inability to answer queries due to technical problems or system maintenance, or how to leverage appropriate mechanisms provided by underlying protocol layers. The mechanisms MUST provide all of the following options to the server:
要件AR-31:ALTOクライアントプロトコル仕様では、ALTOサーバーがクライアントに技術的な問題やシステムメンテナンスが原因でクエリに応答できないこと、または基になるプロトコルレイヤーによって提供される適切なメカニズムを活用する方法を通知するメカニズムを指定しなければなりません (MUST)。メカニズムは、サーバーに次のすべてのオプションを提供しなければなりません (MUST)。
o terminate the conversation with the client,
o クライアントとの会話を終了し、
o redirect the client to another ALTO server, and
o クライアントを別のALTOサーバーにリダイレクトし、
o request that the client retry the query later.
o クライアントが後でクエリを再試行することを要求します。
Note: The existence of the above-mentioned protocol mechanisms does not imply that an ALTO server must use them when facing an overload, technical problem, or maintenance situation, respectively. Some servers may be unable to use them in that situation, or they may prefer to simply refuse the connection or not to send any answer at all.
注:上記のプロトコルメカニズムの存在は、ALTOサーバーがそれぞれ過負荷、技術的な問題、またはメンテナンス状況に直面したときにそれらを使用する必要があることを意味しません。一部のサーバーは、そのような状況でそれらを使用できないか、単に接続を拒否するか、まったく応答を送信しないことを好む場合があります。
An ALTO client protocol is supported by one or more ALTO server discovery mechanisms, which may be used by ALTO clients to determine one or more ALTO servers, to which ALTO requests can be sent. This section enumerates requirements for an ALTO client, as well as general requirements to be fulfilled by the ALTO server discovery mechanisms.
ALTOクライアントプロトコルは、1つ以上のALTOサーバーディスカバリメカニズムによってサポートされています。これは、ALTOクライアントが、ALTO要求を送信できる1つ以上のALTOサーバーを決定するために使用できます。このセクションでは、ALTOクライアントの要件と、ALTOサーバーの検出メカニズムによって満たされる一般的な要件を列挙します。
Req. AR-32: An ALTO server discovery mechanism MUST support features allowing ALTO clients that are embedded in the resource consumer to find one or several ALTO servers that can provide ALTO guidance suitable for the resource consumer, using an ALTO protocol version compatible with the ALTO client. This mode of operation is called "resource consumer initiated ALTO server discovery".
要件AR-32:ALTOサーバー発見メカニズムは、リソース利用者に組み込まれたALTOクライアントが、ALTOクライアントと互換性のあるALTOプロトコルバージョンを使用して、そのリソース利用者に適したALTOのガイダンスを提供できる1つ以上のALTOサーバーを見つけられるようにする機能をサポートしなければなりません (MUST)。この動作モードは「リソース利用者起点のALTOサーバー発見」と呼ばれます。
Req. AR-33: An ALTO server discovery mechanism MUST support features allowing ALTO clients that are embedded in a resource directory and perform third-party ALTO queries on behalf of a remote resource consumer to find one or several ALTO servers that can provide ALTO guidance suitable for the respective resource consumer, using an ALTO protocol version compatible with the ALTO client. This mode of operation is called "third-party ALTO server discovery".
要件 AR-33: ALTOサーバー発見メカニズムは、リソースディレクトリに組み込まれたALTOクライアントが、遠隔のリソースコンシューマを代理して適切なALTOガイダンスを提供できる1つ以上のALTOサーバーを発見できる機能、および各リソースコンシューマがそのALTOクライアントと互換性のあるALTOプロトコルバージョンを使用している機能の双方をサポートしなければなりません (MUST)。この動作モードは「サードパーティALTOサーバー発見」と呼ばれます。
Req. AR-34: ALTO clients MUST be able to perform resource consumer initiated ALTO server discovery, even if they are located behind a NAT.
要件AR-34:ALTOクライアントは、NATの背後に位置している場合でも、リソース利用者起点のALTOサーバー発見を実行できなければなりません (MUST)。
Req. AR-35: ALTO clients MUST be able to perform third-party ALTO server discovery, even if they are located behind a NAT.
要件 AR-35: ALTOクライアントは、NATの背後に配置されている場合であっても、サードパーティALTOサーバー発見を実行できなければなりません (MUST)。
Req. AR-36: ALTO clients MUST be able to perform third-party ALTO server discovery, even if the resource consumer, on behalf of which the ALTO query will be sent, is located behind a NAT.
要件 AR-36: ALTOクライアントは、ALTOクエリの送信対象となる代理先のリソースコンシューマがNATの背後に配置されている場合であっても、サードパーティALTOサーバー発見を実行できなければなりません (MUST)。
Req. AR-37: ALTO server discovery mechanisms SHOULD leverage an existing protocol or mechanism, such as DNS-, DHCP-, or PPP-based automatic configuration, etc. A single mechanism with a broad spectrum of applicability SHOULD be preferred over several different mechanisms with narrower scopes.
要件AR-37:ALTOサーバーの発見メカニズムは、DNS、DHCP、PPPに基づく自動設定など、既存のプロトコルやメカニズムを活用すべきです (SHOULD)。適用範囲の狭い複数の異なるメカニズムよりも、幅広く適用できる単一のメカニズムを優先すべきです (SHOULD)。
Req. AR-38: Every ALTO server discovery mechanism SHOULD be able to return the respective contact information for multiple ALTO servers.
要件AR-38:すべてのALTOサーバー発見メカニズムは、複数のALTOサーバーのそれぞれの連絡先情報を返せるべきです (SHOULD)。
Req. AR-39: Every ALTO server discovery mechanism SHOULD be able to indicate preferences for each returned ALTO server contact information.
要件AR-39:すべてのALTOサーバー発見メカニズムは、返される各ALTOサーバーの連絡先情報について優先度を示せるべきです (SHOULD)。
Note: The following requirements mandate the inclusion of certain security mechanisms at a protocol specification level. Whether it makes sense to enable these mechanisms in a given deployment scenario depends on a threat analysis for this specific scenario. For a classification of potential information disclosure risks, refer to Section 5.2.
注:次の要件では、プロトコル仕様レベルで特定のセキュリティメカニズムを含めることが義務付けられています。特定の展開シナリオでこれらのメカニズムを有効にすることが理にかなっているかどうかは、この特定のシナリオの脅威分析に依存します。潜在的な情報開示リスクの分類については、セクション5.2を参照してください。
Req. AR-40: An ALTO client protocol specification MUST specify mechanisms for the authentication of ALTO servers or specify how to leverage appropriate mechanisms provided by underlying protocol layers.
要件AR-40:ALTOクライアントプロトコルの仕様は、ALTOサーバーの認証のためのメカニズムを規定するか、下位のプロトコル層が提供する適切なメカニズムをどのように活用するかを規定しなければなりません (MUST)。
Req. AR-41: An ALTO client protocol specification MUST specify mechanisms for the authentication of ALTO clients or specify how to leverage appropriate mechanisms provided by underlying protocol layers.
要件AR-41:ALTOクライアントプロトコルの仕様は、ALTOクライアントの認証のためのメカニズムを規定するか、下位のプロトコル層が提供する適切なメカニズムをどのように活用するかを規定しなければなりません (MUST)。
Req. AR-42: An ALTO client protocol specification MUST specify mechanisms for the encryption of messages or specify how to leverage appropriate mechanisms provided by underlying protocol layers.
要件AR-42:ALTOクライアントプロトコルの仕様は、メッセージの暗号化のためのメカニズムを規定するか、下位のプロトコル層が提供する適切なメカニズムをどのように活用するかを規定しなければなりません (MUST)。
Req. AR-43: An ALTO client is not required to implement mechanisms or to comply with rules that limit its ability to redistribute information retrieved from the ALTO server to third parties.
要件AR-43:ALTOクライアントは、ALTOサーバーから取得した情報を第三者に再配布する機能を制限するメカニズムを実装したり、ルールに準拠したりする必要はありません。
Req. AR-44: An ALTO client protocol MUST support different levels of detail in queries and responses in order to protect the privacy of users, to ensure that the operators of ALTO servers and other users of the same application cannot derive sensitive information.
要件AR-44:ALTOクライアントプロトコルは、ユーザーのプライバシーを保護し、ALTOサーバーの運用者や同じアプリケーションの他のユーザーが機密情報を導き出せないようにするため、クエリと応答においてさまざまな詳細度をサポートしなければなりません (MUST)。
Req. AR-45: An ALTO client protocol MAY include mechanisms that can be used by the ALTO client when requesting guidance to specify the resource (e.g., content identifiers) it wants to access. An ALTO server MUST provide adequate guidance, even if the ALTO client prefers not to specify the desired resource (e.g., keeps the data field empty). The mechanism MUST be designed in a way that the operator of the ALTO server cannot easily deduce the resource identifier (e.g., file name in P2P file sharing) if the ALTO client prefers not to specify it.
要件AR-45:ALTOクライアントプロトコルは、ALTOクライアントが指針を求める際に、アクセスしたいリソース(たとえばコンテンツ識別子)を指定するために使用できるメカニズムを含んでもよいです (MAY)。ALTOクライアントが目的のリソースを指定しないことを好む場合(たとえばデータフィールドを空のままにする場合)でも、ALTOサーバーは適切な指針を提供しなければなりません (MUST)。このメカニズムは、ALTOクライアントがリソース識別子(たとえばP2Pファイル共有におけるファイル名)を指定しないことを好む場合に、ALTOサーバーのオペレーターがそれを容易に推測できないように設計されなければなりません (MUST)。
Req. AR-46: An ALTO client protocol specification MUST specify appropriate mechanisms for protecting the ALTO service against Denial-of-Service (DoS) attacks or specify how to leverage appropriate mechanisms provided by underlying protocol layers.
要件AR-46:ALTOクライアントプロトコルの仕様は、サービス拒否(DoS)攻撃からALTOサービスを保護するための適切なメカニズムを規定するか、下位のプロトコル層が提供する適切なメカニズムをどのように活用するかを規定しなければなりません (MUST)。
This requirements document does not mandate any immediate IANA actions. However, such IANA considerations may arise from future ALTO specification documents that try to meet the requirements given here.
この要件ドキュメントでは、IANAの即時の対応は義務付けられていません。ただし、このようなIANAの考慮事項は、ここに記載されている要件を満たそうとする将来のALTO仕様ドキュメントから生じる可能性があります。
High-level security considerations for the ALTO service can be found in the "Security Considerations" section of the ALTO problem statement document [RFC5693].
ALTOサービスの高レベルのセキュリティに関する考慮事項は、ALTO問題ステートメントドキュメント[RFC5693]の「セキュリティに関する考慮事項」セクションにあります。
The unwanted disclosure of information is one key concern related to ALTO. Neither the ALTO server nor a third party using or misusing the ALTO service should be able to infer the application behavior or correlate data in such a way that would violate user privacy, e.g., who is exchanging which files with whom using a P2P file-sharing application. Furthermore, many network operators are concerned about the amount of information related to their network infrastructure (e.g., topology information, number of "premium customers", or utilization statistics) that might be released through ALTO. This section presents a classification and discussion of information disclosure scenarios and potential countermeasures.
望ましくない情報の漏洩は、ALTOに関連する主要な懸念事項の1つです。ALTOサーバーも、ALTOサービスを利用または悪用する第三者(サードパーティ)も、例えば誰がP2Pファイル共有アプリケーションを使用して誰とどのファイルを交換しているかなど、ユーザーのプライバシーを侵害するような形でアプリケーションの動作を推測したりデータを関連付けたりできるべきではありません。さらに、多くのネットワーク運用者は、ALTOを通じて公開される可能性がある自らのネットワークインフラに関連する情報量(トポロジ情報、「プレミアム顧客」の数、利用統計など)を懸念しています。本節では、情報漏洩シナリオの分類と考察、および潜在的な対策を提示します。
The following issues may be considered a risk for the operator of an ALTO server, depending on the specific deployment scenario:
次の問題は、特定の展開シナリオによっては、ALTOサーバーのオペレーターにとってリスクと見なされる場合があります。
(1) Excess disclosure of the ALTO server operator's data to an authorized ALTO client. The operator of an ALTO server has to feed information, such as tables mapping host-group descriptors to host-characteristics attributes, into the server, thereby enabling it to give guidance to ALTO clients. Some operators might consider the full set of this information confidential (e.g., a detailed map of the operator's network topology) and might want to disclose only a subset of it or disclose somehow obfuscated information to an ALTO client.
(1)許可されたALTOクライアントへのALTOサーバーオペレーターのデータの過剰な開示。 ALTOサーバーのオペレーターは、ホストグループ記述子をホスト特性属性にマッピングするテーブルなどの情報をサーバーにフィードして、ALTOクライアントにガイダンスを提供できるようにする必要があります。一部のオペレーターは、この情報の完全なセット(例えば、オペレーターのネットワークトポロジの詳細なマップ)を機密情報と見なし、そのサブセットのみを開示するか、難読化された情報を何らかの方法でALTOクライアントに開示する場合があります。
(2) Disclosure of the ALTO server operator's data (e.g., network topology information) to an unauthorized third party. There are three subcases here:
(2)許可されていない第三者へのALTOサーバーオペレーターのデータ(ネットワークトポロジ情報など)の開示。ここには3つのサブケースがあります。
(2a) An ALTO server receives and answers queries originating from an unauthorized ALTO client.
(2a)ALTOサーバーは、無許可のALTOクライアントから送信されたクエリを受信して応答します。
(2b) An unauthorized party snoops on the data transmission from the ALTO server to an authorized ALTO client.
(2b) 認可されていない第三者(当事者)が、ALTOサーバーから認可されたALTOクライアントへのデータ送信を盗聴する。
(2c) An authorized ALTO client knowingly forwards the information it has received from the ALTO server to an unauthorized party.
(2c)許可されたALTOクライアントは、ALTOサーバーから受信した情報を無許可の当事者に故意に転送します。
(3) Excess retrieval of the ALTO server operator's data by collaborating ALTO clients. Several authorized ALTO clients could ask one or more ALTO servers for guidance, possibly several times during an extended period of time, and redistribute the responses among each other (see also case 2c). By aggregating and correlating the ALTO responses, they could find out more information than intended to be disclosed by the ALTO server operator(s).
(3)ALTOクライアントとのコラボレーションによるALTOサーバーオペレーターのデータの過剰な取得。いくつかの許可されたALTOクライアントは、1つ以上のALTOサーバーにガイダンスを要求し、長期間にわたって数回、応答を相互に再配布できます(ケース2cも参照)。 ALTO応答を集約して相互に関連付けることにより、ALTOサーバーのオペレーターが開示することを意図したものよりも多くの情報を見つけることができます。
The following issues may be considered a risk for the user of an ALTO client, depending on the specific deployment scenario:
次の問題は、特定の展開シナリオによっては、ALTOクライアントのユーザーにとってリスクと見なされる場合があります。
(4) Disclosure of the application behavior or other user private data to the (authorized) ALTO server. The operator of an ALTO server could infer the application behavior (e.g., content identifiers in P2P file sharing applications, or lists of resource providers that are considered for establishing a connection) from the ALTO queries sent by an ALTO client.
(4)アプリケーションの動作または他のユーザーの個人データを(許可された)ALTOサーバーに開示する。 ALTOサーバーのオペレーターは、ALTOクライアントから送信されたALTOクエリから、アプリケーションの動作(P2Pファイル共有アプリケーションのコンテンツID、または接続の確立が検討されているリソースプロバイダーのリストなど)を推測できます。
(5) Disclosure of the application behavior or other user private data to an unauthorized third party. There are three subcases here:
(5)アプリケーションの動作または他のユーザーの個人データを許可されていない第三者に開示すること。ここには3つのサブケースがあります。
(5a) An ALTO client willingly sends queries directly to an untrusted or malicious ALTO server, possibly due to a forged response of the ALTO server discovery mechanism.
(5a)ALTOクライアントは、信頼できないまたは悪意のあるALTOサーバーに直接喜んでクエリを送信します。これは、ALTOサーバー検出メカニズムの偽造応答が原因である可能性があります。
(5b) An unauthorized party snoops on the data transmission from the ALTO client to an authorized ALTO server.
(5b) 認可されていない第三者(当事者)が、ALTOクライアントから認可されたALTOサーバーへのデータ送信を盗聴する。
(5c) An authorized ALTO server knowingly forwards the information it has received from the ALTO client to an unauthorized party.
(5c)許可されたALTOサーバーは、ALTOクライアントから受信した情報を無許可の当事者に故意に転送します。
(6) One or several collaborating (see case 5c) ALTO servers could try to infer the application behavior or other user private data by aggregating and correlating queries from one or more ALTO clients, possibly over an extended period of time.
(6)1つまたは複数の連携(ケース5cを参照)ALTOサーバーは、1つ以上のALTOクライアントからのクエリを(おそらく長期間にわたって)集約および相関させることにより、アプリケーションの動作または他のユーザーのプライベートデータを推測しようとする可能性があります。
An ALTO server operator should consider:
ALTOサーバーオペレーターは次のことを考慮する必要があります。
o Issue (1) may be addressed by the ALTO server operator choosing the level of detail of the information to be populated into the ALTO server and returned in the responses. For example, by specifying a broader address range (i.e., a shorter prefix length) than a group of hosts in question actually uses, an ALTO server operator may control to some extent how much information about the network topology is disclosed. Furthermore, access control mechanisms for filtering ALTO responses according to the authenticated ALTO client identity might be installed in the ALTO server, although this might not be effective given the lack of efficient mechanisms for addressing (2c) and (3), see below.
o 問題(1)は、ALTOサーバーのオペレーターがALTOサーバーに入力され、応答で返される情報の詳細レベルを選択することで対処できます。たとえば、問題のホストのグループが実際に使用するよりも広いアドレス範囲(つまり、短いプレフィックス長)を指定することにより、ALTOサーバーオペレーターは、ネットワークトポロジに関する情報の開示量をある程度制御できます。さらに、認証されたALTOクライアントIDに従ってALTO応答をフィルタリングするためのアクセス制御メカニズムがALTOサーバーにインストールされている可能性がありますが、(2c)および(3)に対処するための効率的なメカニズムがないため、これは効果的ではない可能性があります。
o (2a) and (2b) may be addressed by authentication, access control, and encryption schemes for the ALTO client protocol. However, deployment of encryption schemes might not be effective given the lack of efficient mechanisms for addressing (2c) and (3), see below.
o (2a)および(2b)は、ALTOクライアントプロトコルの認証、アクセス制御、および暗号化スキームによって対処できます。ただし、(2c)と(3)に対処するための効率的なメカニズムがないため、暗号化スキームの展開は効果的ではない場合があります。以下を参照してください。
o Straightforward authentication and encryption schemes will not help solving (2c) and (3), and there is no other simple and efficient mechanism known. The cost of complex approaches, e.g., based on Digital Rights Management (DRM), might easily outweigh the benefits of the whole ALTO solution; therefore, they are not considered as a viable solution. That is, ALTO server operators must be aware that (2c) and (3) cannot be prevented from happening; therefore, they should feed only such data into an ALTO server that they do not consider sensitive with respect to (2c) and (3).
o 単純な認証および暗号化スキームは(2c)および(3)の解決に役立ちません。また、他に知られている単純で効率的なメカニズムはありません。たとえば、デジタル著作権管理(DRM)に基づく複雑なアプローチのコストは、ALTOソリューション全体のメリットを簡単に上回ります。したがって、それらは実行可能なソリューションとは見なされません。つまり、ALTOサーバーのオペレーターは、(2c)と(3)の発生を防止できないことに注意する必要があります。したがって、彼らは、(2c)と(3)に関して機密性を考慮しないデータのみをALTOサーバーにフィードする必要があります。
A user of an ALTO client should consider:
ALTOクライアントのユーザーは、次のことを考慮する必要があります。
o Issue (4) can and needs to be addressed in several ways: If the ALTO client is embedded in the resource consumer, the resource consumer's IP address (or the "public" IP address of the outermost NAT in front of the resource consumer) is disclosed to the ALTO server as a matter of principle, because it is in the source address fields of the IP headers. By using a proxy, the disclosure of source addresses to the ALTO server can be avoided at the cost of disclosing them to said proxy. If, in contrast, the ALTO client is embedded in a third party (e.g., a resource directory), which issues ALTO requests on behalf of resource consumers, it is possible to hide the exact addresses of the resource consumers from the ALTO server, e.g., by zeroing out or randomizing the last few bits of IP addresses. However, there is the potential side effect of yielding inaccurate results.
o 課題(4)はいくつかの方法で対処可能であり、また対処する必要があります: ALTOクライアントがリソースコンシューマに組み込まれている場合、IPヘッダーの送信元アドレスフィールドに含まれるため、リソースコンシューマのIPアドレス(またはリソースコンシューマの手前にある最外殻NATの「パブリック」IPアドレス)は原則としてALTOサーバーに開示されます。プロキシを使用することで、当該プロキシへの開示という代償を払ってALTOサーバーへの送信元アドレスの開示を回避できます。対照的に、ALTOクライアントがリソースコンシューマを代理してALTOリクエストを発行する第三者(リソースディレクトリなど)に組み込まれている場合、IPアドレスの下位数ビットをゼロ化またはランダム化するなどして、リソースコンシューマの正確なアドレスをALTOサーバーから隠すことが可能です。ただし、結果が不正確になるという潜在的な副作用が存在します。
The disclosure of candidate resource providers' addresses to the ALTO server can be avoided by allowing ALTO clients to use the target-independent query mode. In this mode of operation, guiding information (e.g., "maps") is retrieved from the ALTO server and used entirely locally by the ALTO client, i.e., without sending host-location attributes of candidate resource providers to the ALTO server. In the target-aware query mode, this issue can be addressed by ALTO clients through obfuscating the identity of candidate resource consumers, e.g., by specifying a broader address range (i.e., a shorter prefix length) than a group of hosts in question actually uses, or by zeroing out or randomizing the last few bits of IP addresses. However, there is the potential side effect of yielding inaccurate results.
ALTOクライアントがターゲットに依存しないクエリモードを使用できるようにすることで、ALTOサーバーへの候補リソースプロバイダーのアドレスの開示を回避できます。この操作モードでは、ガイド情報(「マップ」など)はALTOサーバーから取得され、ALTOクライアントによって完全にローカルで使用されます。つまり、候補リソースプロバイダーのホスト場所属性をALTOサーバーに送信しません。ターゲット認識クエリモードでは、この問題は、候補のリソースコンシューマーのIDを難読化することにより、たとえば、問題のホストのグループが実際に使用するよりも広いアドレス範囲(つまり、短いプレフィックス長)を指定することで、ALTOクライアントによって対処できますまたは、IPアドレスの最後の数ビットをゼロにするかランダム化します。ただし、不正確な結果が生じる可能性のある副作用があります。
o (5a) may be addressed by mandating that the ALTO server discovery procedure, as a whole, must be secure against spoofing.
o (5a)ALTOサーバーの検出手順は全体として、なりすましに対して安全でなければならないことを義務付けることで対処できます。
Note: Given that this document does not mandate a specific system architecture, it is difficult to specify more details than that the discovery procedure, as a whole, should be secure against spoofing. There are many different architectural options, e.g., have an insecure discovery mechanism and use server certificates to later verify its response (cf. the DNS + HTTPS security model widely used in the World Wide Web). Therefore, at this requirements stage, it is not mandatory for the discovery mechanism itself to be secure against spoofing attacks.
注:このドキュメントでは特定のシステムアーキテクチャを義務付けていないため、検出手順全体がなりすましに対して安全であることよりも詳細を指定することは困難です。多くの異なるアーキテクチャオプションがあります。たとえば、安全でない検出メカニズムがあり、サーバー証明書を使用して後でその応答を確認します(World Wide Webで広く使用されているDNS + HTTPSセキュリティモデルを参照)。したがって、この要件段階では、検出メカニズム自体がスプーフィング攻撃に対して安全である必要はありません。
o (5b) may be addressed by encryption schemes for the ALTO client protocol. However, the effort vs. benefit should be evaluated for any specific deployment scenario, while also considering the risks and solution approaches for issues (4), (5c), and (6).
o (5b)は、ALTOクライアントプロトコルの暗号化スキームで対処できます。ただし、問題(4)、(5c)、および(6)のリスクとソリューションのアプローチも考慮しながら、特定の展開シナリオについて、努力と利益を評価する必要があります。
o Straightforward authentication and encryption schemes will not help solving (5c) and (6). However, potential risks can be mitigated using the same approaches as used for issue (4), see above.
o 単純な認証および暗号化スキームは、(5c)および(6)の解決に役立ちません。ただし、潜在的なリスクは、問題(4)と同じアプローチを使用して軽減できます(上記を参照)。
These insights are reflected in the requirements in this document.
これらの洞察は、このドキュメントの要件に反映されています。
See discussion of (5a) above.
上記の(5a)の説明を参照してください。
For a set of specific security requirements, please refer to Section 3.3 of this document.
特定のセキュリティ要件のセットについては、このドキュメントのセクション3.3を参照してください。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2119] Bradner, S.、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月。
[RFC5693] Seedorf, J. and E. Burger, "Application-Layer Traffic Optimization (ALTO) Problem Statement", RFC 5693, October 2009.
[RFC5693] Seedorf, J. and E. Burger、「Application-Layer Traffic Optimization(ALTO)Problem Statement」、RFC 5693、2009年10月。
[RFC2616] 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.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee、「ハイパーテキスト転送プロトコル-HTTP/1.1」 、RFC 2616、1999年6月。
[RFC4787] Audet, F. and C. Jennings, "Network Address Translation (NAT) Behavioral Requirements for Unicast UDP", BCP 127, RFC 4787, January 2007.
[RFC4787] Audet, F. and C. Jennings、「ユニキャストUDPのネットワークアドレス変換(NAT)動作要件」、BCP 127、RFC 4787、2007年1月。
[RFC5382] Guha, S., Biswas, K., Ford, B., Sivakumar, S., and P. Srisuresh, "NAT Behavioral Requirements for TCP", BCP 142, RFC 5382, October 2008.
[RFC5382] Guha, S., Biswas, K., Ford, B., Sivakumar, S., and P. Srisuresh、「NAT Behavioral Requirements for TCP」、BCP 142、RFC 5382、2008年10月。
[RFC5706] Harrington, D., "Guidelines for Considering Operations and Management of New Protocols and Protocol Extensions", RFC 5706, November 2009.
[RFC5706] Harrington, D.、「新しいプロトコルとプロトコル拡張の操作と管理を検討するためのガイドライン」、RFC 5706、2009年11月。
Early draft versions of this document were co-authored by Laird Popkin.
このドキュメントの初期のドラフトバージョンは、Laird Popkinによって共同執筆されました。
The authors would like to thank Vijay K. Gurbani and Enrico Marocco for fostering discussions that lead to the creation of this document, and for giving valuable comments on it.
著者は、このドキュメントの作成につながる議論を促進し、貴重なコメントを提供してくれたVijay K. GurbaniとEnrico Maroccoに感謝します。
The authors would like to thank the members of the P2PI and ALTO mailing lists for contributions and feedback, in particular: Richard Alimi, Jason Livingood, Michael Scharf, Nico Schwan, and Jan Seedorf.
著者は特に貢献とフィードバックのためにP2PIとALTOメーリングリストのメンバーに感謝したいと思います:Richard Alimi、Jason Livingood、Michael Scharf、Nico Schwan、Jan Seedorf。
Laird Popkin and Y. Richard Yang are grateful to the many contributions made by the members of the P4P working group and Yale Laboratory of Networked Systems. The P4P working group is hosted by DCIA.
レアードポプキンとY.リチャードヤンは、P4Pワーキンググループのメンバーとネットワークシステムのイェールラボラトリーのメンバーによる多くの貢献に感謝しています。 P4PワーキンググループはDCIAによってホストされています。
Martin Stiemerling is partially supported by the COAST project (COntent Aware Searching, retrieval and sTreaming, http://www.coast-fp7.eu), a research project supported by the European Commission under its 7th Framework Program (contract no. 248036). The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the COAST project or the European Commission.
Martin Stiemerlingは、第7回フレームワークプログラム(契約番号248036)に基づいて欧州委員会がサポートする研究プロジェクトであるCOASTプロジェクト(COntent Aware Searching、Retrieve and sTreaming、http://www.coast-fp7.eu)によって部分的にサポートされています。 。ここに含まれている見解と結論は著者の見解と結論であり、COASTプロジェクトまたは欧州委員会の公式のポリシーまたは推奨を明示または暗示するものとして必ずしも解釈するべきではありません。
Authors' Addresses
著者のアドレス
Sebastian Kiesel (editor) University of Stuttgart Computing Center Networks and Communication Systems Department Allmandring 30 70550 Stuttgart Germany
Sebastian Kiesel(編集者)シュトゥットガルト大学コンピューティングセンターネットワークおよび通信システム部門Allmandring 30 70550シュトゥットガルトドイツ
EMail: ietf-alto@skiesel.de
URI: http://www.rus.uni-stuttgart.de/nks/
Stefano Previdi Cisco Systems, Inc.
Stefano Previdi Cisco Systems、Inc.
EMail: sprevidi@cisco.com
Martin Stiemerling NEC Laboratories Europe
マーティン・スティーマーリングNECラボラトリーズヨーロッパ
EMail: martin.stiemerling@neclab.eu
URI: http://ietf.stiemerling.org
Richard Woundy Comcast Corporation
Richard Woundy Comcast Corporation
EMail: Richard_Woundy@cable.comcast.com
Yang Richard Yang Yale University
ヤンリチャードヤンイェール大学
EMail: yry@cs.yale.edu