Network Working Group                                           T. Zseby
Request for Comments: 5475                              Fraunhofer FOKUS
Category: Standards Track                                      M. Molina
                                                                   DANTE
                                                             N. Duffield
                                                    AT&T Labs - Research
                                                            S. Niccolini
                                                         NEC Europe Ltd.
                                                              F. Raspall
                                                                EPSC-UPC
                                                              March 2009
        
       Sampling and Filtering Techniques for IP Packet Selection
        

Status of This Memo

このメモのステータス

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

この文書は、インターネットコミュニティのためのインターネット標準トラックプロトコルを指定し、改善のための議論と提案を要求します。このプロトコルの標準化状態と状態への「インターネット公式プロトコル標準」(STD 1)の最新版を参照してください。このメモの配布は無制限です。

Copyright Notice

著作権表示

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

著作権(C)2009 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 (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document.

この文書では、BCP 78と、この文書(http://trustee.ietf.org/license-info)の発行日に有効なIETFドキュメントに関連IETFトラストの法律の規定に従うものとします。彼らは、この文書に関してあなたの権利と制限を説明するように、慎重にこれらの文書を確認してください。

This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.

この材料の一部がIETFトラストにこのような材料の変更を許可する権利を与えられていない可能性がありますにこの文書は、2008年、IETFドキュメントまたは11月10日以前に発行または公開さIETF貢献から著作権を支配する者(複数可)材料を含んでいてもよいですIETF標準化プロセスの外。そのような材料の著作権を管理者(単数または複数)から適切なライセンスを取得することなく、この文書は、IETF標準化過程の外側修正されないかもしれません、そして、それの派生物は、IETF標準化過程の外側に作成されない場合があり、それをフォーマットする以外出版RFCとして、英語以外の言語に翻訳します。

Abstract

抽象

This document describes Sampling and Filtering techniques for IP packet selection. It provides a categorization of schemes and defines what parameters are needed to describe the most common selection schemes. Furthermore, it shows how techniques can be combined to build more elaborate packet Selectors. The document provides the basis for the definition of information models for configuring selection techniques in Metering Processes and for reporting the technique in use to a Collector.

この文書では、IPパケットの選択のためのサンプリングとフィルタリングの手法について説明します。これは、スキームの分類を提供し、パラメータは、最も一般的な選択スキームを記述するために必要なものを定義します。さらに、それは技術がより精巧なパケットセレクタを構築するために組み合わせることができる方法を示しています。文書は、計量プロセスでの選択技術を構成するためのコレクターに使用されている技術を報告するための情報モデルを定義するための基礎を提供します。

Table of Contents

目次

   1. Introduction ....................................................3
      1.1. Conventions Used in This Document ..........................4
   2. PSAMP Documents Overview ........................................4
   3. Terminology .....................................................4
      3.1. Observation Points, Packet Streams, and Packet Content .....4
      3.2. Selection Process ..........................................5
      3.3. Reporting ..................................................7
      3.4. Metering Process ...........................................7
      3.5. Exporting Process ..........................................8
      3.6. PSAMP Device ...............................................8
      3.7. Collector ..................................................8
      3.8. Selection Methods ..........................................8
   4. Categorization of Packet Selection Techniques ..................11
   5. Sampling .......................................................12
      5.1. Systematic Sampling .......................................13
      5.2. Random Sampling ...........................................14
           5.2.1. n-out-of-N Sampling ................................14
           5.2.2. Probabilistic Sampling .............................14
   6. Filtering ......................................................16
      6.1. Property Match Filtering ..................................16
      6.2. Hash-Based Filtering ......................................19
           6.2.1. Application Examples for Coordinated Packet
                  Selection ..........................................19
           6.2.2. Desired Properties of Hash Functions ...............21
           6.2.3. Security Considerations for Hash Functions .........22
           6.2.4. Choice of Hash Function ............................26
   7. Parameters for the Description of Selection Techniques .........29
      7.1. Description of Sampling Techniques ........................30
      7.2. Description of Filtering Techniques .......................31
   8. Composite Techniques ...........................................34
      8.1. Cascaded Filtering->Sampling or Sampling->Filtering .......34
      8.2. Stratified Sampling .......................................34
   9. Security Considerations ........................................35
   10. Contributors ..................................................36
   11. Acknowledgments ...............................................36
        
   12. References ....................................................36
      12.1. Normative References .....................................36
      12.2. Informative References ...................................36
   Appendix A. Hash Functions ........................................40
   A.1 IP Shift-XOR (IPSX) Hash Function..............................40
   A.2 BOB Hash Function..............................................41
        
1. Introduction
1. はじめに

There are two main drivers for the evolution in measurement infrastructures and their underlying technology. First, network data rates are increasing, with a concomitant growth in measurement data. Second, the growth is compounded by the demand of measurement-based applications for increasingly fine-grained traffic measurements. Devices that perform the measurements, require increasingly sophisticated and resource-intensive measurement capabilities, including the capture of packet headers or even parts of the payload, and classification for flow analysis. All these factors can lead to an overwhelming amount of measurement data, resulting in high demands on resources for measurement, storage, transfer, and post processing.

計測インフラストラクチャとその基盤となる技術の進化のための2つの主要なドライバがあります。まず、ネットワークのデータレートは、測定データの同時成長とともに、増加しています。第二に、成長がますますきめ細かいトラフィック測定のための測定ベースのアプリケーションの需要に配合されます。測定を実行する装置は、パケットヘッダやペイロードの偶数部分の捕捉、およびフロー解析のための分類など、ますます洗練されたリソース集約測定機能を必要とします。これらすべての要因は、測定、記憶、転送、および後処理のためのリソースに高い要求をもたらす、測定データの圧倒的な量をもたらすことができます。

The sustained capture of network traffic at line rate can be performed by specialized measurement hardware. However, the cost of the hardware and the measurement infrastructure required to accommodate the measurements preclude this as a ubiquitous approach. Instead, some form of data reduction at the point of measurement is necessary.

ライン速度でネットワークトラフィックの持続的捕捉は、特殊な測定ハードウェアにより行うことができます。しかしながら、測定に対応するために必要なハードウェアおよび計測インフラストラクチャのコストがユビキタスアプローチとしてこれを排除します。代わりに、測定の時点でのデータ削減のいくつかのフォームが必要です。

This can be achieved by an intelligent packet selection through Sampling or Filtering. Another way to reduce the amount of data is to use aggregation techniques (not addressed in this document). The motivation for Sampling is to select a representative subset of packets that allow accurate estimates of properties of the unsampled traffic to be formed. The motivation for Filtering is to remove all packets that are not of interest. Aggregation combines data and allows compact pre-defined views of the traffic. Examples of applications that benefit from packet selection are given in [RFC5474]. Aggregation techniques are out of scope of this document.

これは、サンプリングやフィルタリングを通じてインテリジェントなパケットの選択によって達成することができます。データの量を削減する別の方法は、(本書で扱われていない)アグリゲーション技術を使用することです。サンプリングのための動機は、非サンプリングトラフィックの特性の正確な推定値を形成することを可能にするパケットの代表的なサブセットを選択することです。フィルタリングのための動機は関心のないすべてのパケットを削除することです。集計は、データを結合し、トラフィックのコンパクトな事前定義されたビューを可能にします。パケット選択の恩恵を受けるアプリケーションの例は、[RFC5474]に記載されています。集約技術は、この文書の範囲外です。

1.1. Conventions Used in This Document
1.1. このドキュメントの表記規則

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 RFC 2119 [RFC2119].

この文書のキーワード "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", および "OPTIONAL" はRFC 2119 [RFC2119]に記載されているように解釈されます。

2. PSAMP Documents Overview
2. PSAMPドキュメントの概要

This document is one out of a series of documents from the PSAMP group.

この文書では、PSAMPグループからの一連の文書のうち一つです。

[RFC5474]: "A Framework for Packet Selection and Reporting" describes the PSAMP framework for network elements to select subsets of packets by statistical and other methods, and to export a stream of reports on the selected packets to a Collector.

[RFC5474]:「パケット選択のためのフレームワークと報告は、」統計的及び他の方法でパケットのサブセットを選択するために、コレクタに選択されたパケットのレポートのストリームをエクスポートするネットワーク要素のPSAMPフレームワークを記述する。

RFC 5475 (this document): "Sampling and Filtering Techniques for IP Packet Selection" describes the set of packet selection techniques supported by PSAMP.

RFC 5475(本書):「IPパケットの選択のためのサンプリングとフィルタリング技術は、」PSAMPでサポートされているパケット選択技術のセットを記述します。

[RFC5476]: "Packet Sampling (PSAMP) Protocol Specifications" specifies the export of packet information from a PSAMP Exporting Process to a PSAMP Collecting Process.

[RFC5476]:「パケットサンプリング(PSAMP)プロトコル仕様」収集処理PSAMPにPSAMPエクスポートプロセスからパケット情報のエクスポートを指定します。

[RFC5477]: "Information Model for Packet Sampling Exports" defines an information and data model for PSAMP.

[RFC5477]:PSAMPための情報とデータモデルを定義し、「情報モデルパケットサンプリングのための輸出します」。

3. Terminology
3.用語

The PSAMP terminology defined here is fully consistent with all terms listed in [RFC5474] but includes additional terms required for the description of packet selection methods. An architecture overview and possible configurations of PSAMP elements can be found in [RFC5474]. PSAMP terminology also aims at consistency with terms used in [RFC3917]. The relationship between PSAMP and IPFIX terms is described in [RFC5474].

ここで定義されPSAMP用語は、[RFC5474]に記載されているすべての用語と完全に一致しているが、パケットの選択方法を説明するために必要な追加の項を含みます。アーキテクチャの概要とPSAMP要素の可能な構成は、[RFC5474]に見出すことができます。 PSAMPの用語はまた、[RFC3917]で使用される用語との整合性を目指しています。 PSAMPとIPFIX用語間の関係は、[RFC5474]に記載されています。

In the PSAMP documents, all defined PSAMP terms are written capitalized. This document uses the same convention.

PSAMP文書では、定義済みのすべてのPSAMPの用語は大文字で書かれています。この文書では、同じ規則を使用しています。

3.1. Observation Points, Packet Streams, and Packet Content
3.1. 観測ポイント、パケットストリーム、およびパケットの内容

* Observation Point

*観測点

An Observation Point [RFC5101] is a location in the network where packets can be observed. Examples include:

観測ポイント[RFC5101]はパケットを観察することができるネットワーク内の場所です。例としては、

(i) A line to which a probe is attached;

(I)プローブが取り付けられたライン、

(ii) a shared medium, such as an Ethernet-based LAN;

(ii)は、イーサネットベースのLAN等の共有媒体。

(iii) a single port of a router, or set of interfaces (physical or logical) of a router;

(iii)はルータの単一ポート、またはルータの(物理的または論理的な)インターフェイスのセット。

(iv) an embedded measurement subsystem within an interface.

(IV)インターフェイス内に埋め込まれた測定サブシステム。

Note that one Observation Point may be a superset of several other Observation Points. For example, one Observation Point can be an entire line card. This would be the superset of the individual Observation Points at the line card's interfaces.

1観測点は、他のいくつかの観測点のスーパーセットであることに注意してください。例えば、1つの観測点は、全体のラインカードとすることができます。これは、ラインカードのインターフェイスで、個々の観測点のスーパーセットになります。

* Observed Packet Stream

*観測されたパケットストリーム

The Observed Packet Stream is the set of all packets observed at the Observation Point.

観測されたパケットストリームの観測点で観測されたすべてのパケットのセットです。

* Packet Stream

*パケットストリーム

A Packet Stream denotes a set of packets from the Observed Packet Stream that flows past some specified point within the Metering Process. An example of a Packet Stream is the output of the selection process. Note that packets selected from a stream, e.g., by Sampling, do not necessarily possess a property by which they can be distinguished from packets that have not been selected. For this reason, the term "stream" is favored over "flow", which is defined as a set of packets with common properties [RFC3917].

パケットストリームは、計量プロセス内のいくつかの指定された点を通過して流れる観測されたパケットストリームからのパケットの集合を表します。パケットストリームの例は、選択プロセスの出力です。ストリームから選択されたパケットは、例えば、サンプリングによって、必ずしもそれらが選択されていないパケットと区別することが可能な性質を有していないことに留意されたいです。この理由のために、用語「ストリーム」とは、共通のプロパティ[RFC3917]を有するパケットの集合として定義される「フロー」よりも好まれます。

* Packet Content

*パケットの内容

The Packet Content denotes the union of the packet header (which includes link layer, network layer, and other encapsulation headers) and the packet payload. At some Observation Points, the link header information may not be available.

パケット内容は、パケットペイロード(リンク層、ネットワーク層、及び他のカプセル化ヘッダを含む)は、パケットヘッダの和集合を表します。いくつかの観測点で、リンクヘッダ情報が利用できない場合があります。

3.2. Selection Process
3.2. 選択プロセス

* Selection Process

*選択プロセス

A Selection Process takes the Observed Packet Stream as its input and selects a subset of that stream as its output.

選択プロセスは、その入力として、観測されたパケットストリームを受け取り、その出力として、そのストリームのサブセットを選択します。

* Selection State

*選択状態

A Selection Process may maintain state information for use by the Selection Process. At a given time, the Selection State may depend on packets observed at and before that time, and other variables. Examples include:

選択プロセスは、選択プロセスで使用するための状態情報を維持することができます。与えられた時点で、選択状態はその時と前に観測されたパケット、および他の変数に依存してもよいです。例としては、

(i) sequence numbers of packets at the input of Selectors;

(I)セレクタの入力でのパケットのシーケンス番号。

(ii) a timestamp of observation of the packet at the Observation Point;

(ii)の観測点におけるパケットの観察のタイムスタンプ。

(iii) iterators for pseudorandom number generators;

(III)擬似乱数のためのイテレータ。

(iv) hash values calculated during selection;

(iv)の選択中に計算されたハッシュ値と、

(v) indicators of whether the packet was selected by a given Selector.

(V)パケットが指定されたセレクタによって選択されたかどうかのインジケータ。

Selection Processes may change portions of the Selection State as a result of processing a packet. Selection State for a packet is to reflect the state after processing the packet.

選択プロセスは、パケットを処理した結果として、選択状態の部分を変更してもよいです。パケットの選択状態は、パケットを処理した後の状態を反映するためです。

* Selector

*セレクタ

A Selector defines what kind of action a Selection Process performs on a single packet of its input. If selected, the packet becomes an element of the output Packet Stream.

セレクタは、選択プロセスは、その入力の単一のパケットに実行するアクションの種類を定義します。選択された場合、パケットは出力パケットストリームの要素となります。

The Selector can make use of the following information in determining whether a packet is selected:

セレクタは、パケットが選択されているかどうかを決定する際に、以下の情報を利用することができます。

(i) the Packet Content;

(I)パケットの内容。

(ii) information derived from the packet's treatment at the Observation Point;

(ⅱ)Observation Pointのパケットの治療から得られる情報を、

(iii) any Selection State that may be maintained by the Selection Process.

(iii)選択プロセスによって維持され得る任意の選択状態が。

* Composite Selector

*コンポジットセレクター

A Composite Selector is an ordered composition of Selectors, in which the output Packet Stream issuing from one Selector forms the input Packet Stream to the succeeding Selector.

複合セレクタは、一のセレクタから出る出力パケットストリームは、後続のセレクタに入力パケットストリームを形成する、セレクタの順序付けられた組成物です。

* Primitive Selector

*プリミティブセレクター

A Selector is primitive if it is not a Composite Selector.

それはコンポジットセレクタでない場合、セレクタは原始的です。

* Selection Sequence

*選択順序

From all the packets observed at an Observation Point, only a few packets are selected by one or more Selectors. The Selection Sequence is a unique value per Observation Domain describing the Observation Point and the Selector IDs through which the packets are selected.

観測点で観測されたすべてのパケットからは、唯一のいくつかのパケットは、一つ以上のセレクタにより選択されています。選択順序は、観測ポイントとパケットが選択されてセレクタのIDを記述する観測ドメインごとに固有の値です。

3.3. Reporting
3.3. 報告

* Packet Reports

*パケットレポート

Packet Reports comprise a configurable subset of a packet's input to the Selection Process, including the Packet's Content, information relating to its treatment (for example, the output interface), and its associated Selection State (for example, a hash of the Packet's Content).

パケットレポートがその処理(例えば、出力インターフェース)、及びその関連する選択状態に関連する、情報をパケットのコンテンツを含む選択プロセスへのパケットの入力の設定のサブセットを含む(例えば、パケットのコンテンツのハッシュ) 。

* Report Interpretation

*レポートの解釈

Report Interpretation comprises subsidiary information, relating to one or more packets, that is used for interpretation of their Packet Reports. Examples include configuration parameters of the Selection Process.

レポートの解釈は、そのパケットのレポートを解釈するために使用される1つまたは複数のパケットに関連する、子会社の情報を含んでいます。例としては、選択プロセスの構成パラメータを含みます。

* Report Stream

*レポートストリーム

The Report Stream is the output of a Metering Process, comprising two distinguished types of information: Packet Reports and Report Interpretation.

パケットレポートおよびレポートの解釈:レポートストリームは、情報の2種類の区別を備え、計量プロセスの出力です。

3.4. Metering Process
3.4. 計量プロセス

A Metering Process selects packets from the Observed Packet Stream using a Selection Process, and produces as output a Report Stream concerning the selected packets.

計量プロセスは、選択プロセスを使用して観測されたパケットストリームからパケットを選択し、選択されたパケットについての出力として報告ストリームを生成します。

The PSAMP Metering Process can be viewed as analogous to the IPFIX Metering Process [RFC5101], which produces Flow Records as its output, with the difference that the PSAMP Metering Process always contains a Selection Process. The relationship between PSAMP and IPFIX is further described in [RFC5477] and [RFC5474].

PSAMP計量プロセスはPSAMP計量プロセスは、常に選択プロセスを含むことを違いと、その出力として、フローレコードを生成IPFIX計量プロセスに類似する[RFC5101]、と見なすことができます。 PSAMPとIPFIXとの間の関係は、さらに、[RFC5477]及び[RFC5474]に記載されています。

3.5. Exporting Process
3.5. エクスポートプロセス

* Exporting Process

*エクスポートプロセス

An Exporting Process sends, in the form of Export Packets, the output of one or more Metering Processes to one or more Collectors.

エクスポートプロセスは、一つ以上のコレクタに、エクスポートパケットの形で、一つ以上の計量プロセスの出力を送信します。

* Export Packet

*エクスポートパケット

An Export Packet is a combination of Report Interpretations and/or one or more Packet Reports that are bundled by the Exporting Process into an Export Packet for exporting to a Collector.

エクスポートパケットレポート解釈及び/又はコレクタにエクスポートするためのエクスポートパケットにエクスポートプロセスによってバンドルされた1つの以上のパケットレポートの組み合わせです。

3.6. PSAMP Device
3.6. PSAMPデバイス

* PSAMP Device

* PSAMPデバイス

A PSAMP Device is a device hosting at least an Observation Point, a Metering Process (which includes a Selection Process), and an Exporting Process. Typically, corresponding Observation Point(s), Metering Process(es), and Exporting Process(es) are colocated at this device, for example, at a router.

PSAMPデバイスは、少なくとも観測ポイントをホストデバイス、(選択プロセスを含む)計量プロセス、およびエクスポートプロセスです。典型的には、対応する観測ポイント(S)は、計量プロセス(ES)、およびエクスポートプロセス(ES)がルータで、例えば、このデバイスで同じ場所に配置されています。

3.7. Collector
3.7. コレクタ

* Collector

*コレクター

A Collector receives a Report Stream exported by one or more Exporting Processes. In some cases, the host of the Metering and/or Exporting Processes may also serve as the Collector.

コレクタは、一つ以上のエクスポート・プロセスによってエクスポートされたレポートストリームを受信します。いくつかのケースでは、メータリングおよび/またはエクスポートプロセスのホストは、集電体として機能することができます。

3.8. Selection Methods
3.8. 選択方法

* Filtering

*フィルタリング

A filter is a Selector that selects a packet deterministically based on the Packet Content, or its treatment, or functions of these occurring in the Selection State. Two examples are:

フィルタは、決定論パケットの内容に基づいて、パケット、またはその治療、または選択州で発生したこれらの機能を選択するセレクタです。二つの例は以下のとおりです。

(i) Property Match Filtering: A packet is selected if a specific field in the packet equals a predefined value.

(I)不動産マッチフィルタリング:パケット内の特定のフィールドが所定の値に等しい場合、パケットが選択されています。

(ii) Hash-based Selection: A Hash Function is applied to the Packet Content, and the packet is selected if the result falls in a specified range.

(ii)のハッシュベースの選択:ハッシュ関数はパケットの内容に適用され、その結果は、指定された範囲内にある場合、パケットが選択されます。

* Sampling

*サンプリング

A Selector that is not a filter is called a Sampling operation. This reflects the intuitive notion that if the selection of a packet cannot be determined from its content alone, there must be some type of Sampling taking place. Sampling operations can be divided into two subtypes:

フィルターではありませんセレクタは、サンプリング動作と呼ばれています。これは、パケットの選択だけではその内容から判断できない場合は、サンプリングが行われ、いくつかのタイプが存在しなければならないという直感的な概念を反映しています。サンプリング動作は、2つのサブタイプに分けることができます。

(i) Content-independent Sampling, which does not use Packet Content in reaching Sampling decisions. Examples include systematic Sampling, and uniform pseudorandom Sampling driven by a pseudorandom number whose generation is independent of Packet Content. Note that in content-independent Sampling, it is not necessary to access the Packet Content in order to make the selection decision.

サンプリングの決定に至るにパケットの内容を使用していない(I)のContent-独立したサンプリング、。例としては、系統的サンプリングし、その世代パケットの内容とは無関係である擬似乱数により駆動される均一な擬似ランダムサンプリングを含みます。コンテンツに依存しないサンプリングで、選択の決定を行うために、パケットの内容にアクセスする必要はないことに注意してください。

(ii) Content-dependent Sampling, in which the Packet Content is used in reaching selection decisions. An application is pseudorandom selection according to a probability that depends on the contents of a packet field, e.g., Sampling packets with a probability dependent on their TCP/UDP port numbers. Note that this is not a Filter.

パケットの内容は、選択決定に到達するに使用される式(II)の含有量に依存するサンプリング、。アプリケーションは、それらのTCP / UDPポート番号に依存する確率でパケットをサンプリング、例えば、パケットフィールドの内容に依存する確率に従って擬似ランダム選択です。これはフィルターではないことに注意してください。

* Hash Domain

*ハッシュドメイン

A Hash Domain is a subset of the Packet Content and the packet treatment, viewed as an N-bit string for some positive integer N.

ハッシュドメインいくつかの正の整数NのNビット列として見、パケットの内容およびパケット処理のサブセットであります

* Hash Range

*ハッシュ範囲

A Hash Range is a set of M-bit strings for some positive integer M that defines the range of values that the result of the hash operation can take.

ハッシュ範囲ハッシュ演算の結果が取り得る値の範囲を定義し、いくつかの正の整数MのためのMビット列の集合です。

* Hash Function

*ハッシュ関数

A Hash Function defines a deterministic mapping from the Hash Domain into the Hash Range.

ハッシュ関数は、ハッシュ範囲にハッシュドメインから決定論的マッピングを定義します。

* Hash Selection Range

*ハッシュ選択範囲

A Hash Selection Range is a subset of the Hash Range. The packet is selected if the action of the Hash Function on the Hash Domain for the packet yields a result in the Hash Selection Range.

ハッシュ選択範囲は、ハッシュ範囲のサブセットです。パケットのハッシュドメイン上のハッシュ関数の動作はハッシュ選択範囲での結果が得られた場合にパケットが選択されています。

* Hash-based Selection

*ハッシュベースの選択

A Hash-based Selection is Filtering specified by a Hash Domain, a Hash Function, a Hash Range, and a Hash Selection Range.

ハッシュベースの選択は、ハッシュドメイン、ハッシュ関数、ハッシュレンジ、ハッシュ選択範囲で指定されたフィルタリングされます。

* Approximative Selection

*おおよそのセレクション

Selectors in any of the above categories may be approximated by operations in the same or another category for the purposes of implementation. For example, uniform pseudorandom Sampling may be approximated by Hash-based Selection, using a suitable Hash Function and Hash Domain. In this case, the closeness of the approximation depends on the choice of Hash Function and Hash Domain.

上記のカテゴリのいずれかのセレクタは、実施の目的のために同じまたは別のカテゴリの動作によって近似することができます。例えば、均一な擬似ランダムサンプリングは、適切なハッシュ関数およびハッシュドメインを使用して、ハッシュに基づく選択によって近似することができます。この場合、近似の近さは、ハッシュ関数およびハッシュドメインの選択に依存します。

* Population

*人口

A Population is a Packet Stream or a subset of a Packet Stream. A Population can be considered as a base set from which packets are selected. An example is all packets in the Observed Packet Stream that are observed within some specified time interval.

人口は、パケットストリーム又はパケットストリームのサブセットです。人口は、パケットが選択される基本セットとみなすことができます。例えば、いくつかの指定された時間間隔内で観察された観測されたパケットストリーム内のすべてのパケットです。

* Population Size

* 人口規模

The Population Size is the number of all packets in the Population.

人口規模は人口のすべてのパケットの数です。

* Sample Size

* サンプルサイズ

The Sample Size is a number of packets selected from the Population by a Selector.

サンプルサイズは、セレクタにより集団から選択されたパケットの数です。

* Configured Selection Fraction

*構成された選択画

The Configured Selection Fraction is the expected ratio of the Sample Size to the Population Size, as based on the configured selection parameters.

構成された選択パラメータに基づくように構成された選択画分は、集団サイズのサンプルサイズの期待される比率です。

* Attained Selection Fraction

*達成セレクション分数

The Attained Selection Fraction is the ratio of the actual Sample Size to the Population Size. For some Sampling methods, the Attained Selection Fraction can differ from the Configured Selection Fraction due to, for example, the inherent statistical variability in Sampling decisions of probabilistic Sampling and Hash-based Selection. Nevertheless, for large Population Sizes and properly configured Selectors, the Attained Selection Fraction usually approaches the Configured Selection Fraction.

達成の選択画分は集団の大きさに、実際のサンプルサイズの比率です。いくつかのサンプリング方法のために、達成選択画分は、例えば、構成された選択画分から起因して異なることが、確率的サンプリングとハッシュベースの選択のサンプリング決定に固有の統計的変動。それにもかかわらず、大規模な人口サイズと適切に設定セレクタのために、達成の選択画分は、通常、構成された選択フラクションに近づきます。

4. Categorization of Packet Selection Techniques
パケット選択技術の4分類

Packet selection techniques generate a subset of packets from an Observed Packet Stream at an Observation Point. We distinguish between Sampling and Filtering.

パケット選択技術は、観測点で観測されたパケットストリームからのパケットのサブセットを生成します。私たちは、サンプリングとフィルタリングを区別する。

Sampling is targeted at the selection of a representative subset of packets. The subset is used to infer knowledge about the whole set of observed packets without processing them all. The selection can depend on packet position, and/or on Packet Content, and/or on (pseudo) random decisions.

サンプリングは、パケットの代表的なサブセットの選択を対象としています。サブセットは、それらすべてを処理せずに観察されたパケットのセット全体についての知識を推論するために使用されます。選択は、パケットの位置に依存して、および/またはパケット内容上、および/または(擬似)ランダムに決定することができます。

Filtering selects a subset with common properties. This is used if only a subset of packets is of interest. The properties can be directly derived from the Packet Content, or depend on the treatment given by the router to the packet. Filtering is a deterministic operation. It depends on Packet Content or router treatment. It never depends on packet position or on (pseudo) random decisions.

フィルタリングは、共通の特性を持つサブセットを選択します。これは、パケットのサブセットのみに関心がある場合に使用されます。プロパティは、直接パケットの内容に由来する、またはパケットに対するルータによって与えられる治療に依存することができます。フィルタリングは、確定操作です。これは、パケットの内容やルータの治療に依存します。これは、パケット位置や(擬似)ランダムな決定に依存することはありません。

Note that a common technique to select packets is to compute a Hash Function on some bits of the packet header and/or content and to select it if the hash value falls in the Hash Selection Range. Since hashing is a deterministic operation on the Packet Content, it is a Filtering technique according to our categorization. Nevertheless, Hash Functions are sometimes used to emulate random Sampling. Depending on the chosen input bits, the Hash Function, and the Hash Selection Range, this technique can be used to emulate the random selection of packets with a given probability p. It is also a powerful technique to consistently select the same packet subset at multiple Observation Points [DuGr00].

パケットを選択するための一般的な技術は、パケットヘッダ及び/又はコンテンツの一部のビットにハッシュ関数を計算し、ハッシュ値がハッシュ選択範囲に入る場合、それを選択することであることに留意されたいです。ハッシュは、パケットの内容の決定論的操作であるので、それは私たちの分類に応じたフィルタリング技術です。それにも関わらず、ハッシュ関数は、時々ランダムサンプリングをエミュレートするために使用されています。選択された入力ビット、ハッシュ関数、ハッシュの選択範囲に応じて、この技術は、所与の確率pでパケットのランダムな選択をエミュレートするために使用することができます。 [DuGr00】も一貫して複数の観測点で同じパケットのサブセットを選択するための強力な技術です。

The following table gives an overview of the schemes described in this document and their categorization. X means that the characteristic applies to the selection scheme. (X) denotes schemes for which content-dependent and content-independent variants exist. For instance, Property Match Filtering is typically based on Packet Content and therefore is content dependent. But as explained in Section 6.1, it may also depend on router state and then would be independent of the content. It easily can be seen that only schemes with both properties, content dependence and deterministic selection, are considered as Filters.

次の表に、この文書とその分類に記述スキームの概要を説明します。 Xは特性が選択スキームに適用されることを意味します。 (X)は、コンテンツに依存し、コンテンツに依存しない変異体が存在するためのスキームを示しています。たとえば、プロパティマッチフィルタリングは通常、パケットの内容に基づいており、したがって、コンテンツに依存しています。 6.1節で説明したようにしかし、それはまた、ルータの状態に依存してもよいし、その後、コンテンツの独立しただろう。簡単に両方の性質、内容依存性と決定論的選択を有する唯一のスキームは、フィルタとして考えていることが分かります。

        Selection Scheme   | Deterministic | Content -| Category
                           |  Selection    | Dependent|
   ------------------------+---------------+----------+----------
    Systematic             |       X       |     _    | Sampling
    Count-based            |               |          |
   ------------------------+---------------+----------+----------
    Systematic             |       X       |     -    | Sampling
    Time-based             |               |          |
   ------------------------+---------------+----------+----------
    Random                 |       -       |     -    | Sampling
    n-out-of-N             |               |          |
   ------------------------+---------------+----------+----------
    Random                 |       -       |     -    | Sampling
    uniform probabilistic  |               |          |
   ------------------------+---------------+----------+----------
    Random                 |       -       |    (X)   | Sampling
    non-uniform probabil.  |               |          |
   ------------------------+---------------+----------+----------
    Random                 |       -       |    (X)   | Sampling
    non-uniform Flow-State |               |          |
   ------------------------+---------------+----------+----------
    Property Match         |       X       |    (X)   | Filtering
    Filtering              |               |          |
   ------------------------+---------------+----------+----------
    Hash function          |       X       |     X    | Filtering
   ------------------------+---------------+----------+----------
        

The categorization just introduced is mainly useful for the definition of an information model describing Primitive Selectors. More complex selection techniques can be described through the composition of cascaded Sampling and Filtering operations. For example, a packet selection that weights the selection probability on the basis of the packet length can be described as a cascade of a Filtering and a Sampling scheme. However, this descriptive approach is not intended to be rigid: if a common and consolidated selection practice turns out to be too complex to be described as a composition of the mentioned building blocks, an ad hoc description can be specified instead and added as a new scheme to the information model.

ちょうど導入分類はセレクタプリミティブを記述する情報モデルの定義のために主に有用です。より複雑な選択技術は、カスケード接続されたサンプリングとフィルタリング操作の組成を通して説明することができます。例えば、パケット長に基づいて選択確率は、フィルタリングのカスケードとサンプリング方式として説明することができるウェイトパケット選択。しかし、この記述的アプローチは、硬質であることを意図していない:共通と連結の選択の練習が言及したビルディングブロックの組成物として説明するにはあまりにも複雑であることが判明した場合、アドホック説明が代わりに指定し、新規として追加することができます情報モデルのスキーム。

5. Sampling
5.サンプリング

The deployment of Sampling techniques aims at the provisioning of information about a specific characteristic of the parent Population at a lower cost than a full census would demand. In order to plan a suitable Sampling strategy, it is therefore crucial to determine the needed type of information and the desired degree of accuracy in advance.

サンプリング技術の展開は要求するだろうフル国勢調査よりも低コストで、親人口の特定の特性に関する情報の提供を目指しています。適切なサンプリング戦略を計画するためには、情報の必要な種類及び予め所望の精度を決定することが重要です。

First of all, it is important to know the type of metric that should be estimated. The metric of interest can range from simple packet counts [JePP92] up to the estimation of whole distributions of flow characteristics (e.g., packet sizes) [ClPB93].

まず第一に、推定されなければならないメトリックのタイプを知ることが重要です。関心のメトリックは、流量特性(例えば、パケットサイズ)ClPB93]の全体の分布の推定までの単純なパケット数[JePP92]の範囲とすることができます。

Second, the required accuracy of the information and with this, the confidence that is aimed at, should be known in advance. For instance, for usage-based accounting the required confidence for the estimation of packet counters can depend on the monetary value that corresponds to the transfer of one packet. That means that a higher confidence could be required for expensive packet flows (e.g., premium IP service) than for cheaper flows (e.g., best effort). The accuracy requirements for validating a previously agreed quality can also vary extremely with the customer demands. These requirements are usually determined by the service level agreement (SLA).

第二に、情報の及びこれに必要な精度、目指している自信は、事前に知るべきです。例えば、使用量ベースのためのパケットカウンタの推定のために必要な自信を占め、1つのパケットの転送に対応して金銭的価値に依存することができます。それは、より高い信頼が安くフロー(例えば、ベストエフォート)のためのより高価なパケットフロー(例えば、プレミアムIPサービス)のために必要なことができることを意味しています。以前に合意された品質を検証するための精度要件は、顧客の要求に非常に異なる場合があります。これらの要件は、通常、サービスレベル契約(SLA)によって決定されます。

The Sampling method and the parameters in use must be clearly communicated to all applications that use the measurement data. Only with this knowledge a correct interpretation of the measurement results can be ensured.

サンプリング方法と使用のパラメータは、明らかに、測定データを使用するすべてのアプリケーションに伝達されなければなりません。これだけの知識と測定結果の正しい解釈を確保することができます。

Sampling methods can be characterized by the Sampling algorithm, the trigger type used for starting a Sampling interval, and the length of the Sampling interval. These parameters are described here in detail. The Sampling algorithm describes the basic process for selection of samples. In accordance to [AmCa89] and [ClPB93], we define the following basic Sampling processes.

サンプリング方法は、サンプリングアルゴリズム、サンプリング間隔を開始するために使用されるトリガータイプ、及びサンプリング間隔の長さによって特徴づけることができます。これらのパラメータは、ここでは詳細に記載されています。サンプリングアルゴリズムは、サンプルの選択のための基本的なプロセスについて説明します。 [ClPB93] [AmCa89]へと従って、我々は次の基本的なサンプリングプロセスを定義します。

5.1. Systematic Sampling
5.1. 体系的サンプリング

Systematic Sampling describes the process of selecting the start points and the duration of the selection intervals according to a deterministic function. This can be for instance the periodic selection of every k-th element of a trace but also the selection of all packets that arrive at predefined points in time. Even if the selection process does not follow a periodic function (e.g., if the time between the Sampling intervals varies over time), we consider this as systematic Sampling as long as the selection is deterministic.

系統的サンプリングは、決定論的関数に従って開始点および選択区間の継続時間を選択するプロセスを記載しています。これは、例えば、トレースのすべてのk番目の要素だけでなく、時間的に所定点に到達するすべてのパケットの選択の周期を選択することができます。選択プロセスは、(例えば、サンプリング間隔の間の時間は、時間の経過とともに変化する場合)周期関数に従わない場合であっても、私たちは限り選択が決定的であるとして体系的なサンプリングとしてこれを検討してください。

The use of systematic Sampling always involves the risk of biasing the results. If the systematics in the Sampling process resemble systematics in the observed stochastic process (occurrence of the characteristic of interest in the network), there is a high probability that the estimation will be biased. Systematics in the observed process might not be known in advance.

体系的なサンプリングの使用は、常に結果をバイアスのリスクを伴います。サンプリングプロセスにおける系統性が観察された確率過程(ネットワーク内の関心のある特徴の発生)にシステマティックに似ている場合は、推定バイアスされる可能性が高いです。観察プロセスにおけるシステマティックには、事前に知られていない可能性があります。

Here only equally spaced schemes are considered, where triggers for Sampling are periodic, either in time or in packet count. All packets occurring in a selection interval (either in time or packet count) beyond the trigger are selected.

サンプリングのためのトリガーは、時間やパケット数のいずれかで、周期的であるのはここだけ等間隔スキームは、考慮されます。トリガーを超えて選択期間(いずれかの時間やパケット数で)で発生したすべてのパケットが選択されています。

Systematic count-based In systematic count-based Sampling, the start and stop triggers for the Sampling interval are defined in accordance to the spatial packet position (packet count).

系統的カウントベースの系統的カウントベースのサンプリング、スタートでは、サンプリング間隔のトリガを停止し、空間パケットの位置(パケット数)に応じて定義されます。

Systematic time-based In systematic time-based Sampling, time-based start and stop triggers are used to define the Sampling intervals. All packets are selected that arrive at the Observation Point within the time intervals defined by the start and stop triggers (i.e., arrival time of the packet is larger than the start time and smaller than the stop time).

体系的系統的な時間ベースのサンプリング、時間ベースのスタートでは、時間ベースおよびトリガーはサンプリング間隔を定義するために使用されて停止します。すべてのパケットが開始によって定義された時間間隔内で観測ポイントに到達するとトリガを(すなわち、パケットの到着時間が停止時間より開始時刻より大きく、小さい)を停止が選択されます。

Both schemes are content-independent selection schemes. Content-dependent deterministic Selectors are categorized as filters.

どちらの方式では、コンテンツに依存しない選択スキームです。コンテンツ依存の決定論的セレクタは、フィルタとして分類されています。

5.2. Random Sampling
5.2. 無作為抽出

Random Sampling selects the starting points of the Sampling intervals in accordance to a random process. The selection of elements is an independent experiment. With this, unbiased estimations can be achieved. In contrast to systematic Sampling, random Sampling requires the generation of random numbers. One can differentiate two methods of random Sampling: n-out-of-N Sampling and probabilistic Sampling.

ランダムサンプリングはランダムプロセスに応じてサンプリング間隔の開始点を選択します。要素の選択は、独立した実験です。これにより、公平な推定を実現することができます。体系的なサンプリングとは対照的に、ランダムサンプリングは、乱数の生成を必要とします。 N-アウトオブNサンプリングおよび確率的サンプリング:一つは、ランダムサンプリングの二つの方法を区別することができます。

5.2.1. n-out-of-N Sampling
5.2.1. N-アウトオブNサンプリング

In n-out-of-N Sampling, n elements are selected out of the parent Population that consists of N elements. One example would be to generate n different random numbers in the range [1,N] and select all packets that have a packet position equal to one of the random numbers. For this kind of Sampling, the Sample Size n is fixed.

N-アウトオブNサンプリングでは、n個の要素は、N個の要素から成る母集団の中から選択されます。一例では、範囲[1、N]内のN個の異なる乱数を生成し、乱数の1に等しいパケット位置を有するすべてのパケットを選択することであろう。サンプリングのこの種のために、サンプルサイズnが固定されています。

5.2.2. Probabilistic Sampling
5.2.2. 確率的サンプリング

In probabilistic Sampling, the decision whether or not an element is selected is made in accordance to a predefined selection probability. An example would be to flip a coin for each packet and select all packets for which the coin showed the head. For this kind of Sampling, the Sample Size can vary for different trials. The selection probability does not necessarily have to be the same for each packet. Therefore, we distinguish between uniform probabilistic Sampling (with the same selection probability for all packets) and non-uniform probabilistic Sampling (where the selection probability can vary for different packets).

確率的サンプリングでは、要素が選択されているか否かの決定は、所定の選択確率に基づいて行われます。例では、各パケットのためにコインを投げると、コインヘッドを示しているすべてのパケットを選択することであろう。サンプリングのこの種のために、サンプルサイズが異なる試験のために異なる場合があります。選択確率は、必ずしも各パケットに対して同じである必要はありません。したがって、我々は、(すべてのパケットのために同じ選択確率で)均一な確率的サンプリングと(選択確率が異なるパケットに対して変化させることができる)は、非一様な確率的サンプリングを区別します。

5.2.2.1. Uniform Probabilistic Sampling
5.2.2.1。制服確率サンプリング

For Uniform Probabilistic Sampling, packets are selected independently with a uniform probability p. This Sampling can be count-driven, and is sometimes referred to as geometric random Sampling, since the difference in count between successive selected packets is an independent random variable with a geometric distribution of mean 1/p. A time-driven analog, exponential random Sampling, has the time between triggers exponentially distributed.

一様確率的サンプリングのため、パケットは一様な確率pで独立して選択されます。このサンプリングは、従動カウントすることができ、連続した選択されたパケットとの間の数の差は、平均1 / Pの幾何学的分布を有する独立ランダム変数であるので、時々、幾何学的ランダムサンプリングと呼ばれます。時間駆動型のアナログ、指数関数的ランダムサンプリングは、指数分布トリガー間の時間を有しています。

Both geometric and exponential random Sampling are examples of what is known as additive random Sampling, defined as Sampling where the intervals or counts between successive samples are independent identically distributed random variables.

両方の幾何学的および指数関数的ランダムサンプリングは、連続するサンプル間の間隔又は数が独立同一分布確率変数でサンプリングとして定義添加ランダムサンプリング、として知られているものの例です。

5.2.2.2. Non-Uniform Probabilistic Sampling
5.2.2.2。非一様確率サンプリング

This is a variant of Probabilistic Sampling in which the Sampling probabilities can depend on the selection process input. This can be used to weight Sampling probabilities in order, e.g., to boost the chance of Sampling packets that are rare but are deemed important. Unbiased estimators for quantitative statistics are recovered by re-normalization of sample values; see [HT52].

これは、サンプリング確率は、選択プロセスの入力に依存することが可能な確率的サンプリングの変異体です。これはまれですが、重要なものとみなされるサンプリングパケットのチャンスを高めるために、例えば、順番に確率をサンプリング重み付けするために使用することができます。定量的統計の公正な推定は、サンプル値の再正規化することによって回収されます。 [HT52]を参照してください。

5.2.2.3. Non-Uniform Flow State Dependent Sampling
5.2.2.3。非均一な流れ状態依存サンプリング

Another type of Sampling that can be classified as probabilistic Non-Uniform is closely related to the flow concept as defined in [RFC3917], and it is only used jointly with a flow monitoring function (IPFIX Metering Process). Packets are selected, dependent on a Selection State. The point, here, is that the Selection State is determined also by the state of the flow the packet belongs to and/or by the state of the other flows currently being monitored by the associated flow monitoring function. An example for such an algorithm is the "sample and hold" method described in [EsVa01]:

[RFC3917]で定義されるように確率的非一様に分類することができるサンプリングの別のタイプは密接フロー概念に関連して、それが唯一の流量監視機能(IPFIX計量プロセス)と共同で使用されます。パケットは、選択状態に応じて、選択されています。ポイントは、ここで、選択状態はパケットがおよび/または現在関連付けられている流量監視機能によって監視されている他のフローの状態に属する流れの状態によっても決定されることです。そのようなアルゴリズムの例として、「サンプルホールド」である[EsVa01]に記載の方法。

- If a packet accounts for a Flow Record that already exists in the IPFIX flow recording process, it is selected (i.e., the Flow Record is updated).

- パケットが既にIPFIXフロー記録プロセスに存在するフローレコードを占めている場合、(すなわち、フローレコードが更新される)が選択されます。

- If a packet doesn't account for any existing Flow Record, it is selected with probability p. If it has been selected, a new Flow Record has to be created.

- パケットが既存のフローレコードを考慮していない場合は、確率pで選択されています。それが選択されている場合は、新しいフローレコードを作成する必要があります。

A further algorithm that fits into the category of non-uniform flow state dependent Sampling is described in [Moli03].

不均一な流動状態に依存するサンプリングの範疇に収まるさらなるアルゴリズムは[Moli03]に記載されています。

This type of Sampling is content dependent because the identification of the flow the packet belongs to requires analyzing part of the Packet Content. If the packet is selected, then it is passed as an input to the IPFIX monitoring function (this is called "Local Export" in [RFC5474]). Selecting the packet depending on the state of a flow cache is useful when memory resources of the flow monitoring function are scarce (i.e., there is no room to keep all the flows that have been scheduled for monitoring).

パケットが属するフローの識別は、パケットの内容の一部を解析する必要があるためサンプリングこのタイプのコンテンツに依存します。パケットが選択された場合、それはIPFIX監視機能(これは[RFC5474]に「ローカルエクスポート」と呼ばれる)への入力として渡されます。流量監視機能のメモリリソースが(すなわち、監視のためにスケジュールされたすべてのフローを維持する余地がない)不足しているとき、フローキャッシュの状態に応じてパケットを選択すると便利です。

5.2.2.4. Configuration of Non-Uniform Probabilistic and Flow State Sampling

5.2.2.4。非一様確率とフロー状態サンプリングの設定

Many different specific methods can be grouped under the terms non-uniform probabilistic and flow state Sampling. Dependent on the Sampling goal and the implemented scheme, a different number and type of input parameters are required to configure such a scheme.

多くの異なる特定の方法は、確率の不均一な状態のサンプリングを流れ条件の下でグループ化することができます。サンプリング目標と実装方式に依存し、入力パラメータの異なる数及びタイプは、このような方式を構成するために必要とされます。

Some concrete proposals for such methods exist from the research community (e.g., [EsVa01], [DuLT01], [Moli03]). Some of these proposals are still in an early stage and need further investigations to prove their usefulness and applicability. It is not our aim to indicate preference among these methods. Instead, we only describe here the basic methods and leave the specification of explicit schemes and their parameters up to vendors (e.g., as an extension of the information model).

そのような方法のためのいくつかの具体的な提案は、研究団体(例えば、[EsVa01]、[DuLT01]、[Moli03])から存在します。これらの提案のいくつかは、初期段階にまだあるし、その有用性と適用性を証明するためにさらなる調査が必要です。これらの方法の中で優先順位を示すために、私たちの目標ではありません。代わりに、我々はここでしか基本的な方法を説明し、明示的なスキームと(例えば、情報モデルの拡張として)ベンダーまでそれらのパラメータの仕様を残します。

6. Filtering
6.フィルタリング

Filtering is the deterministic selection of packets based on the Packet Content, the treatment of the packet at the Observation Point, or deterministic functions of these occurring in the Selection State. The packet is selected if these quantities fall into a specified range. The role of Filtering, as the word itself suggest, is to separate all the packets having a certain property from those not having it. A distinguishing characteristic from Sampling is that the selection decision does not depend on the packet position in time or in space, or on a random process.

フィルタリングはObservation Pointのパケットの処理、パケットの内容に基づいてパケットの決定論的選択である、またはこれらの決定的関数は、選択状態で発生します。これらの量は、指定された範囲内に落ちる場合、パケットが選択されます。フィルタリングの役割は、言葉自体が示唆として、それを持っていないものの中から、特定の性質を持つすべてのパケットを分離することです。サンプリングから際立った特徴は、選択決定は、時間や空間に、またはランダムなプロセス上のパケット位置に依存しないということです。

We identify and describe in the following two Filtering techniques.

我々は特定して次の二つのフィルタリング技術で説明します。

6.1. Property Match Filtering
6.1. プロパティマッチフィルタリング

With this Filtering method, a packet is selected if specific fields within the packet and/or properties of the router state equal a predefined value. Possible filter fields are all IPFIX flow attributes specified in [RFC5102]. Further fields can be defined by proposing new information elements or defining vendor-specific extensions.

特定のパケット内のフィールド及び/又はルータの状態の特性が所定の値に等しい場合、このフィルタリング方法で、パケットが選択されます。可能なフィルタフィールドは、[RFC5102]で指定されたすべてのIPFIXフロー属性です。さらに、フィールドは、新たな情報要素を提案するか、ベンダー固有の拡張機能を定義することによって定義することができます。

A packet is selected if Field=Value. Masks and ranges are only supported to the extent to which [RFC5102] allows them, e.g., by providing explicit fields like the netmasks for source and destination addresses.

フィールド=値場合、パケットが選択されます。マスクおよび範囲のみ[RFC5102]は、送信元と宛先アドレスのネットマスクのような明示的なフィールドを提供することによって、例えば、それらを可能にする程度に支持されています。

AND operations are possible by concatenating filters, thus producing a composite selection operation. In this case, the ordering in which the Filtering happens is implicitly defined (outer filters come after inner filters). However, as long as the concatenation is on filters only, the result of the cascaded filter is independent from the order, but the order may be important for implementation purposes, as the first filter will have to work at a higher rate. In any case, an implementation is not constrained to respect the filter ordering, as long as the result is the same, and it may even implement the composite Filtering in one single step.

AND演算は、このように複合選択操作を生成、フィルタを連結することによって可能です。この場合、フィルタリングが発生している順序は、暗黙的に(外フィルタは、内部のフィルターの後に来る)が定義されています。しかし、限り、連結がフィルタのみであるとして、カスケードフィルタの結果は、オーダーから独立しているが、第一のフィルタは、高いレートで動作する必要がありますよう順序は、実装の目的のために重要であるかもしれません。いずれの場合においても、実装があれば、結果が同じであるように、フィルタの順序を尊重するように制約されず、それも一つの工程で複合フィルタを実装することができます。

OR operations are not supported with this basic model. More sophisticated filters (e.g., supporting bitmasks, ranges, or OR operations) can be realized as vendor-specific schemes.

OR演算は、この基本的なモデルではサポートされていません。より洗練されたフィルタ(例えば、支持ビットマスク、範囲、またはOR演算)は、ベンダー固有のスキームとして実現することができます。

All IPFIX flow attributes defined in [RFC5102] can be used for Property Match Filtering. Further information elements can be easily defined. Property match operations should be available for different protocol portions of the packet header:

[RFC5102]で定義されたすべてのIPFIXフローの属性はプロパティマッチフィルタリングのために使用することができます。さらに情報要素を容易に定義することができます。プロパティマッチ操作は、パケットヘッダの異なるプロトコル部分のために利用可能であるべきです。

         (i) IP header (excluding options in IPv4, stacked headers in
             IPv6)
        

(ii) transport protocol header (e.g., TCP, UDP)

(ii)は、トランスポートプロトコルヘッダ(例えば、TCP、UDP)

(iii) encapsulation headers (e.g., the MPLS label stack, if present)

(iii)のカプセル化ヘッダー(例えば、MPLSラベルスタック、存在する場合)

When the PSAMP Device offers Property Match Filtering, and, in its usual capacity other than in performing PSAMP functions, identifies or processes information from IP, transport protocol or encapsulation protocols, then the information should be made available for Filtering. For example, when a PSAMP Device routes based on destination IP address, that field should be made available for Filtering. Conversely, a PSAMP Device that does not route is not expected to be able to locate an IP address within a packet, or make it available for Filtering, although it may do so.

PSAMPデバイスは、トランスポートプロトコルまたはカプセル化プロトコルをプロパティマッチフィルタリングを提供し、そして、PSAMP機能を実行する以外のその通常の容量で、IPからの情報を識別または処理するとき、その情報は、フィルタリングのために利用可能にされるべきです。例えば、PSAMPデバイスのルートが宛先IPアドレスに基づく場合、そのフィールドは、フィルタリングのために利用できるようにすべきです。それはそうかもしれないが、逆に、ルートが期待されていないないPSAMPデバイスは、パケット内のIPアドレスを探し、またはフィルタリングのためにそれを利用できるようにすることができるようにします。

Since packet encryption conceals the real values of encrypted fields, Property Match Filtering must be configurable to ignore encrypted packets, when detected.

パケットの暗号化は、暗号化されたフィールドの実際の値を隠しているので、プロパティマッチフィルタリングは、検出されたとき、暗号化されたパケットを無視するように設定可能でなければなりません。

The Selection Process may support Filtering based on the properties of the router state:

選択プロセスは、ルータの状態のプロパティに基づいてフィルタリングをサポートすることがあります。

         (i) Ingress interface at which a packet arrives equals a
             specified value
        

(ii) Egress interface to which a packet is routed to equals a specified value

パケットにルーティングされる(ii)の出力インターフェイスは、指定された値に等しいです

(iii) Packet violated Access Control List (ACL) on the router

(ⅲ)パケットは、ルータのアクセス制御リスト(ACL)を違反しました

(iv) Failed Reverse Path Forwarding (RPF)

(ⅳ)に失敗しましたリバースパス転送(RPF)

(v) Failed Resource Reservation Protocol (RSVP)

(v)は失敗したリソース予約プロトコル(RSVP)

(vi) No route found for the packet

(VI)のパケットが見つかりませんルート

(vii) Origin Border Gateway Protocol (BGP) Autonomous System (AS) [RFC4271] equals a specified value or lies within a given range

(VII)を原点ボーダーゲートウェイプロトコル(BGP)は、自律システム(AS)[RFC4271]は、指定された値と等しいまたは所定の範囲内にあります

(viii) Destination BGP AS equals a specified value or lies within a given range

(VIII)宛先BGP ASは、指定された値に等しいまたは所定の範囲内にあります

Packets that match the failed Reverse Path Forwarding (RPF) condition are packets for which ingress Filtering failed as defined in [RFC3704].

失敗したリバースパス転送(RPF)の条件に一致するパケットは、[RFC3704]で定義されるようにフィルタ処理が失敗した進入のためのパケットです。

Packets that match the failed Resource Reservation Protocol (RSVP) condition are packets that do not fulfill the RSVP specification as defined in [RFC2205].

失敗したリソース予約プロトコル(RSVP)の条件に一致するパケットは、[RFC2205]で定義されるようにRSVP仕様を満たさないパケットです。

Router architectural considerations may preclude some information concerning the packet treatment being available at line rate for selection of packets. For example, the Selection Process may not be implemented in the fast path that is able to access router state at line rate. However, when Filtering follows Sampling (or some other selection operation) in a Composite Selector, the rate of the Packet Stream output from the sampler and input to the filter may be sufficiently slow that the filter could select based on router state.

ルータアーキテクチャの考慮事項は、パケットの選択のためのラインレートで利用可能であるパケットの処理に関するいくつかの情報を排除することができます。例えば、選択プロセスは、ラインレートでルータの状態にアクセスすることができるファストパスに実装されなくてもよいです。フィルタリング複合セレクタでサンプリング(またはいくつかの他の選択動作)以下しかし、フィルタのサンプラーと、入力からのパケットストリームの出力の速度は、フィルタがルータ状態に基づいて選択することができるように十分に遅いことができます。

6.2. Hash-Based Filtering
6.2. ハッシュベースのフィルタリング

A Hash Function h maps the Packet Content c, or some portion of it, onto a Hash Range R. The packet is selected if h(c) is an element of S, which is a subset of R called the Hash Selection Range. Thus, Hash-Based selection is a particular case of Filtering. The object is selected if c is in inv(h(S)). But for desirable Hash Functions, the inverse image inv(h(S)) will be extremely complex, and hence h would not be expressible as, say, a Property Match Filter or a simple combination of these.

ハッシュ関数Hは、H(c)はRの部分集合ハッシュ選択範囲と呼ばれるSの要素である場合、パケットが選択されたハッシュ範囲R.にパケットコンテンツC、またはその一部を、マッピングします。したがって、ハッシュベースの選択は、フィルタリングの特定のケースです。 cはINV(H(S))にある場合、オブジェクトが選択されます。しかし、望ましいハッシュ関数のために、逆画像INV(H(S))は、非常に複雑になり、ひいてはhはプロパティ整合フィルタまたはこれらの単純な組み合わせ、たとえば、として表現ではないでしょう。

Hash-based Selection is mainly used to realize a coordinated packet selection. That means that the same packets are selected at different Observation Points. This is useful for instance to observe the path (trajectory) that a packet took through the network or to apply packet selection to passive one-way measurements.

ハッシュベースの選択は、主に協調パケット選択を実現するために使用されます。すなわち、同一のパケットが異なる観測点で選択されていることを意味しています。これは、パケットがネットワークを介した又は受動一方向測定をパケット選択を適用すること経路(軌跡)を観察する場合に有用です。

A prerequisite for the method to work and to ensure interoperability is that the same Hash Function with the same parameters (e.g., input vector) is used at the Observation Points.

方法動作するようにとの相互運用性を確保するための前提条件は、同じパラメータ(例えば、入力ベクトル)と同じハッシュ関数が観測点で使用されることです。

A consistent packet selection is also possible with Property Match Filtering. Nevertheless, Hash-based Selection can be used to approximate a random selection. The desired statistical properties are discussed in Section 6.2.2.

一貫性のあるパケットの選択は、プロパティマッチフィルタリングでも可能です。それにもかかわらず、ハッシュベースの選択は、ランダムな選択を近似するために使用することができます。所望の統計的特性は、セクション6.2.2に記載されています。

In the following subsections, we give some application examples for coordinated packet selection.

以下のサブセクションでは、我々は協調パケット選択のためのいくつかの応用例を与えます。

6.2.1. Application Examples for Coordinated Packet Selection
6.2.1. 協調パケット選択のためのアプリケーション例
6.2.1.1. Trajectory Sampling
6.2.1.1。軌道サンプリング

Trajectory Sampling is the consistent selection of a subset of packets at either all of a set of Observation Points or none of them. Trajectory Sampling is realized by Hash-based Selection if all Observation Points in the set use a common Hash Function, Hash Domain, and Selection Range. The Hash Domain comprises all or part of the Packet Content that is invariant along the packet path. Fields such as Time-to-Live, which is decremented per hop, and header CRC [RFC1624], which is recalculated per hop, are thus excluded from the Hash Domain. The Hash Domain needs to be wider than just a flow key, if packets are to be selected quasi-randomly within flows.

軌道サンプリングは、観測点の集合またはそれらのどれものいずれかのすべてのパケットのサブセットの一貫した選択です。セット内のすべての観測点は、共通のハッシュ関数、ハッシュドメイン、および選択範囲を使用する場合、軌道サンプリングは、ハッシュベースの選択によって実現されます。ハッシュドメインは、パケットの経路に沿って不変であり、パケットの内容の全部または一部を含みます。このような時間 - ライブにホップ毎に再計算されるホップ毎のデクリメント、及びCRC [RFC1624]をヘッダである、、、などのフィールドは、このようにハッシュドメインから除外されます。ハッシュドメインは、パケットフロー内の擬似ランダムに選択される場合、単に流れキーよりも広くする必要があります。

The trajectory (or path) followed by a packet is reconstructed from PSAMP reports on it that reach a Collector. Reports on a given packet originating from different Observation Points are associated by matching a label from the reports. The label may comprise that portion of the invariant Packet Content that is reported, or possibly some digest of the invariant Packet Content that is inserted into the packet report at the Observation Point. Such a digest may be constructed by applying a second Hash Function to the invariant Packet Content. The reconstruction of trajectories and methods for dealing with possible ambiguities due to label collisions (identical labels reported for different packets) and potential loss of reports in transmission are dealt with in [DuGr00], [DuGG02], and [DuGr04].

パケットが続く軌道(またはパス)がコレクターに達することにPSAMPレポートから再構築されます。異なる観測ポイントから発信与えられたパケットのレポートは、レポートからラベルを照合することによって関連しています。ラベルは、報告された、または場合によって観測ポイントにおけるパケットレポートに挿入された不変のパケットの内容の一部消化された不変のパケット内容の部分を含んでもよいです。そのようなダイジェストは不変のパケットの内容に第2ハッシュ関数を適用することによって構築することができます。ラベルの衝突の可能な曖昧性(異なるパケットに関して報告同じ標識)および送信内のレポートの潜在的な損失に対処するための軌道と方法の再構成は[DuGr04] [DuGG02]、[DuGr00]で取り扱われており。

Applications of trajectory Sampling include (i) estimation of the network path matrix, i.e., the traffic intensities according to network path, broken down by flow key; (ii) detection of routing loops, as indicated by self-intersecting trajectories; (iii) passive performance measurement: prematurely terminating trajectories indicate packet loss, packet one-way delay can be determined if reports include (synchronized) timestamps of packet arrival at the Observation Point; and (iv) network attack tracing, of the actual paths taken by attack packets with spoofed source addresses.

軌道サンプリングのアプリケーションは、フローキーによって分解ネットワークパス、(I)に従うネットワーク路行列の推定、即ち、トラフィック強度を含みます。 (ii)のルーティングループの検出を、自己交差軌道によって示されるように。 (iii)の受動性能測定:早期終了軌道がパケット損失を示すレポートが観測ポイントにおけるパケット到着の(同期)タイムスタンプを含む場合、パケットの一方向遅延を決定することができます。及び(iv)ネットワーク攻撃は、スプーフィングされた送信元アドレスを持つ攻撃パケットによって取られる実際のパスで、トレース。

6.2.1.2. Passive One-Way Measurements
6.2.1.2。パッシブ一方向の測定

Coordinated packet selection can be applied for instance to one-way delay measurements in order to reduce the required resources. In one-way delay measurements, packets are collected at different Observation Points in the network. A packet digest is generated for each packet that helps to identify the packet. The packet digest and the arrival time of the packet at the Observation Point are reported to a process that calculates the delay. The delay is calculated by subtracting the arrival time of the same packet at the Observation Points (e.g., [ZsZC01]). With high data rates, capturing all packets can require a lot of resources for storage, transfer, and processing. To reduce resource consumption, packet selection methods can be applied. But for such selection techniques, it has to be ensured that the same packets are collected at different Observation Points. Hash-based Selection provides this feature.

協調パケットの選択は必要なリソースを低減するために一方向遅延測定をインスタンスに適用することができます。一方向遅延測定では、パケットがネットワーク内の異なる観測点で収集されます。パケットダイジェストは、パケットを識別するのに役立ちますパケットごとに生成されます。 Observation Pointのパケットダイジェストと、パケットの到着時間は、遅延を計算するプロセスに報告されています。遅延は、観測点(例えば、[ZsZC01])で同じパケットの到着時刻を減算することによって計算されます。高いデータレートでは、すべてのパケットをキャプチャして保存、転送、および処理のために多くのリソースを必要とすることができます。リソースの消費を減らすために、パケットの選択方法を適用することができます。しかし、そのような選択技術のために、それは同じパケットが異なる観測ポイントで収集されていることを確実にしなければなりません。ハッシュベースの選択は、この機能を提供します。

6.2.1.3. Generation of Pseudorandom Numbers
6.2.1.3。擬似乱数の生成

Although pseudorandom number generators with well-understood properties have been developed, they may not be the method of choice in settings where computational resources are scarce. A convenient alternative is to use Hash Functions of Packet Content as a source of randomness. The hash (suitably re-normalized) is a pseudorandom variate in the interval [0,1]. Other schemes may use packet fields in iterators for pseudorandom numbers. However, the statistical properties of an ideal packet selection law (such as independent

よく理解さ特性を持つ擬似乱数が開発されているが、彼らは計算リソースが不足している設定で選択した方法ではないかもしれません。便利な代替は、乱数の発生源として、パケットの内容のハッシュ関数を使用することです。ハッシュ(適当に再正規化された)は、区間[0,1]内の擬似ランダム変量です。他の方式は、擬似乱数のためのイテレータでパケットフィールドを使用することができます。しかし、そのような独立したとして理想的なパケット選択法の統計的性質(

Sampling for different packets, or independence on Packet Content) may not be exactly rendered by an implementation, but only approximately so.

異なるパケット、またはパケット内容の独立性)のためのサンプリングは正確にだけ約ので、実装によってレンダリングされない場合があります。

Use of Packet Content to generate pseudorandom variates shares with non-uniform probabilistic Sampling (see Section 5.2.2.2 above) the property that selection decisions depend on Packet Content. However, there is a fundamental difference between the two. In the former case, the content determines pseudorandom variates. In the latter case, the content only determines the selection probabilities: selection could then proceed, e.g., by use of random variates obtained by an independent pseudorandom number generator.

パケットの内容を使用すると、擬似ランダムに不均一な確率的サンプリング(上記セクション5.2.2.2を参照)を選択決定は、パケットの内容に依存プロパティで株式を変量生成します。しかし、2つの間の根本的な違いがあります。前者の場合、コンテンツは、擬似ランダム変量を決定します。後者の場合、コンテンツは、選択確率を決定する:選択は、その後独立擬似乱数生成器によって得られたランダム変量を使用することによって、例えば、進行できました。

6.2.2. Desired Properties of Hash Functions
6.2.2. ハッシュ関数の所望の特性

Here we formulate desired properties for Hash Functions. For this, we have to distinguish whether a Hash Function is used for packet selection or just as a packet digest. The main focus of this document is on packet selection. Nevertheless, we also provide some requirements for the use of Hash Functions as packet digest.

ここでは、ハッシュ関数のための所望の特性を定式化します。このために、我々は、ハッシュ関数は、パケット選択のためか、単にパケットダイジェストとして使用されているかどうかを区別しなければなりません。このドキュメントの主な焦点は、パケットの選択にあります。それにもかかわらず、我々はまた、パケットダイジェストとしてハッシュ関数を使用するためのいくつかの要件を提供しています。

First of all, we need to define suitable input fields from the packet. In accordance to [DuGr00], input field should be:

まず第一に、私たちは、パケットからの適切な入力フィールドを定義する必要があります。 【DuGr00]によれば、入力フィールドがあるべきです。

- invariant on the path - variable among packets

- 経路上不変 - パケットのうち変数

Only if the input fields are the same at different Observation Points is it possible to recognize the packet. The input fields should be variable among packets in order to distribute the hash results over the selection range.

入力フィールドが異なる観測点で同じである場合にのみ、それはパケットを認識することが可能です。入力フィールドは、選択範囲に亘ってハッシュ結果を分配するためにパケットのうち可変であるべきです。

6.2.2.1. Requirements for Packet Selection
6.2.2.1。パケット選択のための要件

In accordance to considerations in [MoND05] and [Henk08], we define the following desired properties of Hash Functions used for packet selection:

【MoND05]および[Henk08]考察によれば、我々は、パケットの選択のために使用されるハッシュ関数の次の所望の特性を定義します。

         (i) Speed: The Hash Function has to be applied to each packet
             that traverses the Observation Point.  Therefore, it has to
             be fast in order to cope with the high packet rates.  In
             the ideal case, the hash operation should not influence the
             performance on the PSAMP Device.
        

(ii) Uniformity: The Hash Function h should have good mixing properties, in the sense that small changes in the input (e.g., the flipping of a single bit) cause large changes in the output (many bits change). Then any local clump of values of c is spread widely over R by h, and so the distribution of h(c) is fairly uniform even if the distribution of c is not. Then the Attained Selection Fraction gets close to the Configured Selection Fraction (#S/#R), which can be tuned by choice of S.

(ii)の均一性:ハッシュ関数Hは、入力の小さな変化(例えば、単一ビットのフリッピング)は出力の大きな変化を(多くのビットが変化)を引き起こすという意味で良好な混合特性を有するべきです。次に、Cの値の任意のローカル塊をh R上に広く普及し、H(C)のように分布Cの分布がない場合でも、かなり均一です。そして、得られセレクション画分は、Sの選択によって調整することができる構成された選択画分(#1 S /#のR)、に近づきます

(iii) Unbiasedness: The selection decision should be as independent of packet attributes as possible. The set of selected packets should not be biased towards a specific type of packets.

(iii)の不偏:選択決定は、パケット可能な属性のような独立しなければなりません。選択されたパケットのセットは、パケットの特定の型に偏ってはいけません。

(iv) Representativeness of sample: The sample should be as representative as possible for the observed traffic.

(IV)試料の代表性:試料を観察トラフィックのできるだけ代表しなければなりません。

(v) Non-linearity: The function should not be linear. This increases the mixing properties (uniformity criterion). In addition to this, it decreases the predictability of the output and therefore the vulnerabilities against attacks.

(v)の非直線性:関数は、線形であってはなりません。これは、混合性(均一性基準)を増加させます。これに加えて、出力の予測可能性及び攻撃に対するしたがって脆弱性を減少させます。

(vi) Robustness against vulnerabilities: The Hash Function should be robust against attacks. Potential vulnerabilities are described in Section 6.2.3.

(VI)の脆弱性に対する頑健性:ハッシュ関数は、攻撃に対する堅牢でなければなりません。潜在的な脆弱性は、セクション6.2.3で説明されています。

6.2.2.2. Requirements for Packet Digesting
6.2.2.2。パケット消化するための要件

For digesting Packet Content for inclusion in a reported label, the most important property is a low collision frequency. A secondary requirement is the ability to accept variable-length input, in order to allow inclusion of maximal amount of packet as input. Execution speed is of secondary importance, since the digest need only be formed from selected packets.

報告されたラベルに含めるためパケットの内容を消化するために、最も重要な特性は、低衝突周波数です。第二の要件は、入力として、パケットの最大量の包含を可能にするために、可変長の入力を受け入れることができることです。ダイジェストは、選択されたパケットから形成さだけ必要があるため、実行速度は、二次的に重要です。

6.2.3. Security Considerations for Hash Functions
6.2.3. ハッシュ関数のセキュリティに関する注意点

A concern for Hash-based Selection is whether some large set of related packets could be disproportionately sampled, i.e., that the Attained Selection Fraction is significantly different from the Configured Selection Fraction. This can happen either

ハッシュベースの選択のための関心は、関連するパケットのいくつかの大規模なセットが偏っ達成選択画分が構成された選択画分から有意に異なっていること、即ち、サンプリングすることができるかどうかです。これは、いずれかの発生する可能性があります

(i) through unanticipated behavior in the Hash Function, or

ハッシュ関数で予期しない動作から(I)、または

(ii) because the packets had been deliberately crafted to have this property.

(ⅱ)のパケットが意図的にこの特性を持つように細工されたため。

The first point underlines the importance of using a Hash Function with good mixing properties. For this, the statistical properties of candidate Hash Functions need to be evaluated. Since the hash output depends on the traffic mix, the evaluation should be done preferably on up-to-date packet traces from the network in which the Hash-based Selection will be deployed.

最初のポイントは、良好な混合特性を有するハッシュ関数を使用することの重要性を強調しています。このため、候補ハッシュ関数の統計的特性を評価する必要があります。ハッシュ出力は、トラフィックミックスに依存するため、評価はハッシュベースの選択が展開される中で、ネットワークから最新のパケットトレース上で好ましく行われるべきです。

However, Hash Functions that perform well on typical traffic may not be sufficiently strong to withstand attacks specifically targeted against them. Such potential attacks have been described in [GoRe07].

しかし、典型的なトラフィックにも行ってハッシュ関数は、特にそれらに対して標的型攻撃に耐えるために十分に強くないかもしれません。このような潜在的な攻撃は、[GoRe07]に記載されています。

In the following subsections, we point out different potential attack scenarios. We encourage the use of standardized Hash Functions. Therefore, we assume that the Hash Function itself is public and hence known to an attacker.

以下のサブセクションでは、我々は別の潜在的な攻撃のシナリオを指摘しています。私たちは、標準化されたハッシュ関数の使用を奨励します。したがって、我々は、ハッシュ関数自体は公共ので、攻撃者に知られていることを前提としています。

Nevertheless, we also assume the possibility of using a private input parameter for the Hash Function that is kept secret. Such an input parameter can for instance be attached to the hash input before the hash operation is applied. With this, at least parts of the hash operation remain secret.

それにもかかわらず、我々はまた、秘密にされたハッシュ関数のための民間の入力パラメータを使用する可能性を想定しています。ハッシュ演算が適用される前に、例えば、そのような入力パラメータ缶は、ハッシュ入力に結合させること。これにより、ハッシュ演算の少なくとも一部が秘密のまま。

For the attack scenarios, we assume that an attacker uses its knowledge of the Hash Function to craft packets that are then dispatched, either as the attack itself or to elicit further information that can be used to refine the attack.

攻撃シナリオのために、私たちは、攻撃者は、攻撃のまま、あるいは攻撃を改良するために使用することができ、さらに情報を引き出すためにいずれか、派遣されているクラフトパケットにハッシュ関数の知識を使用していることを前提としています。

Two scenarios are considered. In the first scenario, the attacker has no knowledge about whether or not the crafted packets are selected. In the second scenario, the attacker uses some knowledge of Sampling outcomes. The means by which this might be acquired is discussed below. Some additional attacks that involve tampering with Export Packets in transit, as opposed to attacking the PSAMP Device, are discussed in [GoRe07].

2つのシナリオが考えられています。最初のシナリオでは、攻撃者は、細工されたパケットが選択されているか否かについての知識を有していません。第2のシナリオでは、攻撃者は、サンプリング結果のいくつかの知識を使用します。これが取得される可能性がありますする手段については後述します。 PSAMPデバイスを攻撃するとは対照的に、輸送中にエクスポートパケットの改ざん伴ういくつかの追加の攻撃は、[GoRe07]で議論されています。

6.2.3.1. Vulnerabilities of Hash-Based Selection without Knowledge of Selection Outcomes

6.2.3.1。選定結果の知識がなくても、ハッシュベースの選択の脆弱性

(i) The Hash Function does not use a private parameter.

(I)ハッシュ関数は、プライベート・パラメータを使用しません。

If no private input parameter is used, potential attackers can easily calculate which packets result in which hash values. If the selection range is public, an attacker can craft packets whose selection properties are known in advance. If the selection range is private, an attacker cannot determine whether a crafted packet is selected. However, by computing the hash on different trial crafted packets, and selecting those yielding a given hash value, the attacker can construct an arbitrarily large set of distinct packets with a common selection properties, i.e., packets that will be either all selected or all not selected. This can be done whatever the strength of the Hash Function.

何のプライベート入力パラメータが使用されていない場合は、潜在的な攻撃者は簡単にそのハッシュ値になるどのパケットを計算することができます。選択範囲がパブリックである場合、攻撃者はその選択特性が予め分かっているパケットを作ることができます。選択範囲がプライベートの場合、攻撃者は、細工されたパケットが選択されているかどうかを判断することはできません。しかし、異なる試験に細工されたパケットにハッシュを計算し、与えられたハッシュ値を生じるものを選択することによって、攻撃者は、共通の選択特性を有する選択されたすべての、またはすべてではないであろういずれか、すなわち、パケットを異なるパケットの任意の大きなセットを構築することができます選択されました。これは、ハッシュ関数のどのような強さを行うことができます。

(ii) The Hash Function is not cryptographically strong.

(ⅱ)ハッシュ関数は、暗号強力ではありません。

If the Hash Function is not cryptographically strong, it may be possible to construct sequences of distinct packets with the common selection property even if a private parameter is used.

ハッシュ関数は、暗号強くない場合は、プライベート・パラメータが使用されている場合でも、共通の選択性を有する個別のパケットのシーケンスを構築することも可能です。

An example is the standard CRC-32 Hash Function used with a private modulus (but without a private string post-pended to the input). It has weak mixing properties for low-order bits. Consequently, simply by incrementing the hash input, one obtains distinct packets whose hashes mostly fall in a narrow range, and hence are likely commonly selected; see [GoRe07].

例では、プライベート弾性率を有する(ただし、プライベート文字列入力後保留せずに)使用される標準的なCRC-32ハッシュ関数です。これは、下位ビット用の弱混合特性を有します。したがって、単にハッシュ入力を増分することによって、一つはそのハッシュほとんど狭い範囲に明確なパケットを取得し、それゆえおそらく一般に選択されます。 [GoRe07]を参照してください。

Suitable parameterization of the Hash Function can make such attacks more difficult. For example, post-pending a private string to the input before hashing with CRC-32 will give stronger mixing properties over all bits of the input. However, with a Hash Function, such as CRC-32, that is not cryptographically strong, the possibility of discovering a method to construct packet sets with the common selected property cannot be ruled out, even when a private modulus or post-pended string is used.

ハッシュ関数の適したパラメータは、このような攻撃をより困難にすることができます。例えば、入力の全ビットにわたって強力な混合特性を与えるCRC-32をハッシュする前に、入力にプライベート文字列をポスト係属。しかし、そのようなCRC-32などのハッシュ関数、で、それはプライベートな弾性またはポスト保留文字列がある場合でも、共通の選択したプロパティでパケットのセットを構築する方法を発見する可能性は排除できない、暗号的に強力ではありません中古。

6.2.3.2. Vulnerabilities of Hash-Based Selection Using Knowledge of Selection Outcomes

6.2.3.2。選定結果の知識を使用してハッシュベースの選択の脆弱性

Knowledge of the selection outcomes of crafted packets can be used by an attacker to more easily construct sets of packets that are disproportionately sampled and/or are commonly selected. For this, the attacker does not need any a priori knowledge about the Hash Function or selection range.

細工されたパケットの選択結果の知識は、より容易に偏っサンプリングされ、および/または一般的に選択されたパケットのセットを構築するために攻撃者によって使用することができます。このため、攻撃者は、ハッシュ関数または選択範囲についての先験的な知識を必要としません。

There are several ways an attacker might acquire this knowledge about the selection outcome:

攻撃者が選択結果については、この知識を得るかもしれないいくつかの方法があります。

         (i) Billing Reports: If samples are used for billing purposes,
             then the selection outcomes of packets may be able to be
             inferred by correlating a crafted Packet Stream with the
             billing reports that it generates.  However, the rate at
             which knowledge of selection outcomes can be acquired
             depends on the temporal and spatial granularity of the
             billing reports; being slower the more aggregated the
             reports are.
        

(ii) Feedback from an Intrusion Detection System: e.g., a botmaster adversary learns if his packets were detected by the intrusion detection system by seeing if one of his bots is blocked by the network.

(ii)の侵入検知システムからのフィードバックは:自分のパケットが彼のボットの一つがネットワークによってブロックされた場合に見て、侵入検出システムによって検出された場合、例えば、ボットマスターの敵対者は学習します。

(iii) Observation of the Report Stream: Export Packets sent across a public network may be eavesdropped on by an adversary. Encryption of the Export Packets provides only a partial defense, since it may be possible to infer the selection outcomes of packets by correlating a crafted Packet Stream with the occurrence (not the content) of packets in the export stream that it generates. The rate at which such knowledge could be acquired is limited by the temporal resolution at which reports can be associated with packets, e.g., due to processing and propagation variability, and difficulty in distinguishing report on attack packets from those of background traffic, if present. The association between packets and their reports on which this depends could be removed by padding Export Packets to a constant length and sending them at a constant rate.

(iii)のレポートストリームの観察:公衆ネットワークを介して送信されたエクスポートパケットは、敵によってで盗聴されてもよいです。生成するエクスポート・ストリーム内のパケットの発生(ないコンテンツ)で細工されたパケットストリームを相関させることによってパケットの選択結果を推測することが可能であるので、エクスポートパケットの暗号化は、部分的にしか防御を提供します。そのような知識を取得することができる速度は、存在する場合、レポートは、起因処理及び伝播の変動、およびバックグラウンドトラフィックのものから攻撃パケットに区別レポートに困難に、たとえば、パケットに関連付けられた可能な時間分解能によって制限されます。これが依存するパケットとそれらのレポート間の関連付けは、一定の長さにエクスポートパケットをパディングし、一定の速度でそれらを送信することにより除去することができました。

We now turn to attacks that can exploit knowledge of selection outcomes. First, with a non-cryptographic Hash Function, knowledge of selection outcomes for a trial stream may be used to further craft a packet set with the common selection property. This has been demonstrated for the modular hash f(x) = a x + b mod k, for private parameters a, b, and k. With Sampling rate p, knowledge of the Sampling outcomes of roughly 2/p is sufficient for the attack to succeed, independent of the values of a, b, and k. With knowledge of the selection outcomes of a larger number of packets, the parameters a, b, and k can be determined; see [GoRe07].

現在の選択の結果の知識を活用することができ、攻撃に向けます。まず、非暗号ハッシュ関数を用いて、トライアル・ストリームの選択結果の知識は、さらに、共通の選択性で設定パケットを作るために使用されてもよいです。これは、モジュラーハッシュf(x)がプライベート・パラメータ、B、及びkについて、X + Bのmod kは=ために実証されています。サンプリングレートPでのサンプリング結果の知識は、約2 / Pは、B、Kの値とは無関係に、攻撃を成功させるために十分です。パケットのより多くの選択結果の知識を用いて、パラメータは、B、およびKを決定することができます。 [GoRe07]を参照してください。

A cryptographic Hash Function employing a private parameter and operating in one of the pseudorandom function modes specified above is not vulnerable to these attacks, even if the selection range is known.

プライベート・パラメータを使用し、上記指定された擬似ランダム関数のいずれかのモードで動作する暗号ハッシュ関数は、選択範囲が既知である場合でも、これらの攻撃に対して脆弱ではありません。

6.2.3.3. Vulnerabilities to Replay Attacks
6.2.3.3。リプレイ攻撃する脆弱性

Since Hash-based Selection is deterministic, any packet or set of packets with known selection properties can be replayed into a network and experience the same selection outcomes provide the Hash Function and its parameters are not changed. Repetition of a single packet may be noticeable to other measurement methods if employed (e.g., collection of flow statistics), whereas a set of distinct packets that appears statistically similar to regular traffic may be less noticeable.

ハッシュベースの選択が確定的であるため、任意のパケットまたは既知の選択特性を有するパケットの集合は、ネットワークに再生し、同一の選択結果は、ハッシュ関数を提供し、そのパラメータが変更されていない経験をすることができます。使用される場合、単一のパケットの繰り返しが他の測定方法に顕著であってもよい(例えば、フロー統計情報の収集)、一方、通常のトラフィックに統計的に類似した表示異なるパケットのセットが目立たなくすることができます。

Replay attacks may be mitigated by repeated changing of Hash Function parameters. This also prevents attacks that exploit knowledge of Sampling outcomes, at least if the parameters are changed at least as fast as the knowledge can be acquired by an attacker. In order to preserve the ability to perform trajectory Sampling, parameter change would have to be simultaneous (or approximately so) across all Observation Points.

リプレイ攻撃は、ハッシュ関数のパラメータの繰り返し変更によって軽減することができます。これはまた、パラメータは、少なくとも同じ速さの知識が攻撃者によって取得することができますように変更されている場合は、少なくとも、サンプリング結果の知識を悪用した攻撃を防ぐことができます。軌道サンプリングを実行する能力を維持するためには、パラメータの変更は、すべての観測点間で同時(または約そう)でなければならないであろう。

6.2.4. Choice of Hash Function
6.2.4. ハッシュ関数の選択

The specific choice of Hash Function represents a trade-off between complexity and ease of implementation. Ideally, a cryptographically strong Hash Function employing a private parameter and operating in pseudorandom function mode as specified above would be used, yielding a good emulation of a random packet selection at a target Sampling rate, and giving maximal robustness against the attacks described in the previous section. Unfortunately, there is currently no single Hash Function that fulfills all the requirements.

ハッシュ関数の具体的な選択は、複雑さと実装の容易さとのトレードオフを表しています。理想的には、上記の指定されたプライベート・パラメータを使用すると、擬似ランダム関数モードで動作し、暗号強度の高いハッシュ関数は、目標サンプリングレートでランダムパケット選択の良いエミュレーションを得て、以前に説明された攻撃に対する最大の堅牢性を与え、使用されますセクション。残念ながら、すべての要件を満たして単一のハッシュ関数は現在ありません。

As detailed in Section 6.2.3, only cryptographic Hash Functions employing a private parameter operating in pseudorandom function mode are sufficiently strong to withstand the range of conceivable attacks. For example, fixed- or variable-length inputs could be hashed using a block cipher (like Advanced Encryption Standard (AES)) in cipher-block-chaining mode. Fixed-length inputs could also be hashed using an iterated cryptographic Hash Function (like MD5 or SHA1), with a private initial vector. For variable-length inputs, an iterated cryptographic Hash Function (like MD5 or SHA1) should employ private string post-pended to the data in addition to a private initial vector. For more details, see the "append-cascade" construction of [BeCK96]. We encourage the use of such cryptographically strong Hash Functions wherever possible.

6.2.3項に詳述されるように、擬似ランダム関数モードで動作するプライベート・パラメータを使用するだけで、暗号ハッシュ関数は、考えられる攻撃の範囲を耐えるために十分に強いです。例えば、固定または可変長の入力は、暗号ブロック連鎖モード(高度暗号化標準(AES)のような)ブロック暗号を使用してハッシュすることができます。固定長の入力もプライベート初期ベクトルで、(MD5またはSHA1など)反復暗号ハッシュ関数を使用してハッシュすることができます。可変長入力の場合、(MD5またはSHA1など)反復暗号ハッシュ関数は、プライベート初期ベクトルに加えて、データに後処理保留プライベート文字列を使用すべきです。詳細については、[BeCK96]の「追加・カスケード」建設を参照してください。我々は可能な限り、そのような暗号的に強いハッシュ関数の使用を奨励します。

However, a problem with using such functions is the low performance. As shown for instance in [Henk08], the computation times for MD5 and SHA are about 7-10 times higher compared to non-cryptographic functions. The difference increases for small hash input lengths.

しかし、このような機能を使用しての問題は、低パフォーマンスです。 【Henk08]に例えば示されるように、MD5やSHAのための計算時間は、非暗号化機能と比較して約7-10倍高いです。差が小さいハッシュ入力の長さのために増加します。

Therefore, it is not assumed that all PSAMP Devices will be capable of applying a cryptographically strong Hash Function to every packet at line rate. For this reason, the Hash Functions listed in this section will be of a weaker variety. Future protocol extensions that employ stronger Hash Functions are highly welcome.

したがって、すべてのPSAMPデバイスは、ラインレートですべてのパケットを暗号的に強いハッシュ関数を適用することができるであろうことが想定されていません。このため、このセクションに記載されているハッシュ関数は弱い多様のものであろう。より強力なハッシュ関数を使用し、将来のプロトコル拡張は非常に歓迎されています。

Comparisons of Hash Functions for packet selection and packet digesting with regard to various criteria can be found in [MoND05] and [Henk08].

様々な基準に関して消化パケット選択及びパケットのハッシュ関数の比較は[Henk08] [MoND05]に見出すことができます。

6.2.4.1. Hash Functions for Packet Selection
6.2.4.1。パケット選択のためのハッシュ関数

If Hash-based packet Selection is applied, the BOB function MUST be used for packet selection operations in order to be compliant with PSAMP. The specification of BOB is given in the appendix. Both the parameter (the init value) and the selection range should be kept private. The initial vector of the Hash Function MUST be configurable out of band to prevent security breaches like exposure of the initial vector content.

ハッシュベースのパケットの選択が適用される場合、BOB機能はPSAMPに準拠するために、パケットの選択操作のために使用しなければなりません。 BOBの仕様は付録に与えられています。パラメータ(初期化値)と選択範囲の両方を秘密にされるべきです。ハッシュ関数の初期ベクトルは、初期ベクトルコンテンツの露出のようなセキュリティ侵害を防ぐために、帯域外構成可能でなければなりません。

Other functions, such as CRC-32 and IPSX, MAY be used. The IPSX function is described in the appendix, and the CRC-32 function is described in [RFC1141]. If CRC-32 is used, the input should first be post-pended with a private string that acts as a parameter, and the modulus of the CRC should also be kept private.

例えばCRC-32およびIPSXなどの他の機能は、使用してもよいです。 IPSX関数は付録に記載され、及びCRC-32機能は、[RFC1141]に記載されています。 CRC-32が使用される場合、入力は、最初のパラメータとして作用し、CRCの弾性率は、プライベートに保たれるべきプライベート文字列と後保留であるべきです。

IPSX is simple to implement and was correspondingly about an order of magnitude faster to execute per packet than BOB or CRC-32 [MoND05].

IPSXは、実装が簡単であり、高速BOBまたはCRC-32 [MoND05]よりもパケットごとに実行する大きさの順序について対応しました。

All three Hash Functions evaluated showed relatively poor uniformity with 16-byte input that was drawn from only invariant fields in the IP and TCP/UDP headers (i.e., header fields that do not change from hop to hop). IPSX is inherently limited to 16 bytes.

評価したすべての3つのハッシュ関数は、IPおよびTCP / UDPヘッダ(ホップするホップから変化しない、すなわち、ヘッダ・フィールド)にのみ不変のフィールドから引き出された16バイトの入力と比較的貧弱な均一性を示しました。 IPSXは、本質的に16バイトに制限されています。

BOB and CRC-32 exhibit noticeably better uniformity when 4 or more bytes from the payload are also included in the input [MoND05]. Also with other criteria BOB performed quite well [Henk08].

BOBとCRC-32展示ペイロードから4バイト以上は、入力【MoND05]に含まれている著しく良好な均一性。また、他の基準でBOBは[Henk08]非常によく行きました。

Although the characteristics have been checked for different traffic traces, results cannot be generalized to arbitrary traffic. Since Hash-based Selection is a deterministic function on the Packet Content, it can always be biased towards packets with specific attributes. Furthermore, it should be noted that all Hash Functions were evaluated only for IPv4.

特性が異なるトラフィック跡がチェックされているが、結果は任意のトラフィックに一般化することはできません。ハッシュベースの選択は、パケットの内容に決定的関数であるので、それは常に、特定の属性を持つパケットに偏っすることができます。さらに、すべてのハッシュ関数は、IPv4のみを評価したことに留意すべきです。

None of these Hash Functions is recommended for cryptographic purposes. Please also note that the use of a private parameter only slightly reduces the vulnerabilities against attacks. As shown in Section 6.2.3, functions that are not cryptographically strong (e.g., BOB and CRC) cannot prevent attackers from crafting packets that are disproportionally selected even if a private parameter is used and the selection range is kept secret.

これらのハッシュ関数はいずれも暗号化の目的のために推奨されません。また、プライベート・パラメータの使用はほんの少しだけ攻撃に対する脆弱性を減少させることに注意してください。セクション6.2.3に示すように、(例えば、ボブとCRC)暗号強くない機能は、プライベート・パラメータが使用され、選択範囲が秘密にされていても不均衡選択されたパケットを作り上げるから攻撃を防ぐことはできません。

As described in Section 6.2.2, the input bytes for the Hash Function need to be invariant along the path the packet is traveling. Only with this it is ensured that the same packets are selected at different Observation Points. Furthermore, they should have a high variability between different packets to generate a high variation in the Hash Range. An evaluation of the variability of different packet header fields can be found in [DuGr00], [HeSZ08], and [Henk08].

6.2.2項で説明したように、入力は、ハッシュ関数のバイトパケットの走行経路に沿って不変である必要があります。これだけで同じパケットが異なる観測点で選択されていることが保証されます。さらに、彼らは、ハッシュ範囲で高い変動を生成するために、異なるパケット間の大きな変動を持つべきです。異なるパケットヘッダフィールドの変動の評価は、[Henk08] [HeSZ08]、[DuGr00]で発見することができ。

If a Hash-based Selection with the BOB function is used with IPv4 traffic, the following input bytes MUST be used.

BOB機能付きハッシュベースの選択は、IPv4トラフィックで使用される場合、次の入力バイトを使用しなければなりません。

- IP identification field

- IP識別フィールド

- Flags field

- Flagsフィールド

- Fragment offset

- フラグメントオフセット

- Source IP address

- 送信元IPアドレス

- Destination IP address

- 送信先のIPアドレス

- A configurable number of bytes from the IP payload, starting at a configurable offset

- IPペイロードのバイトの設定数は、オフセット設定始まります

Due to the lack of suitable IPv6 packet traces, all candidate Hash Functions in [DuGr00], [MoND05], and [Henk08] were evaluated only for IPv4. Due to the IPv6 header fields and address structure, it is expected that there is less randomness in IPv6 packet headers than in IPv4 headers. Nevertheless, the randomness of IPv6 traffic has not yet been evaluated sufficiently to get any evidence. In addition to this, IPv6 traffic profiles may change significantly in the future when IPv6 is used by a broader community.

適切なIPv6パケットトレースの欠如、全ての候補ハッシュ関数[DuGr00]において、[MoND05]、および[Henk08]にIPv4のみを評価しました。 IPv6ヘッダフィールドおよびアドレス構造に起因し、IPv4のヘッダよりもIPv6パケットヘッダーの少ないランダムであることが予想されます。それにもかかわらず、IPv6トラフィックのランダム性はまだ証拠を得るために十分に評価されていません。 IPv6はより広範なコミュニティによって使用されたときにこれに加えて、IPv6トラフィックプロファイルは、将来的には大幅に変更されることがあります。

If a Hash-based Selection with the BOB function is used with IPv6 traffic, the following input bytes MUST be used.

BOB機能付きハッシュベースの選択は、IPv6トラフィックで使用されている場合は、次の入力バイトを使用しなければなりません。

- Payload length (2 bytes)

- ペイロード長(2バイト)

- Byte number 10,11,14,15,16 of the IPv6 source address

- IPv6ソースアドレスのバイト数10,11,14,15,16

- Byte number 10,11,14,15,16 of the IPv6 destination address

- IPv6宛先アドレスのバイト数10,11,14,15,16

- A configurable number of bytes from the IP payload, starting at a configurable offset. It is recommended to use at least 4 bytes from the IP payload.

- IPペイロードのバイトの構成可能な数、構成可能で開始オフセット。 IPペイロードから少なくとも4つのバイトを使用することをお勧めします。

The payload itself is not changing during the path. Even if some routers process some extension headers, they are not going to strip them from the packet. Therefore, the payload length is invariant along the path. Furthermore, it usually differs for different packets. The IPv6 address has 16 bytes. The first part is the network part and contains low variation. The second part is the host part and contains higher variation. Therefore, the second part of the address is used. Nevertheless, the uniformity has not been checked for IPv6 traffic.

ペイロード自体は、パス間変更されません。一部のルータは、いくつかの拡張ヘッダを処理する場合でも、彼らはパケットからそれらを除去するつもりはありません。したがって、ペイロード長は、経路に沿って不変です。さらに、それは通常、異なるパケットごとに異なります。 IPv6アドレスは16バイトです。最初の部分は、ネットワークの一部であり、低い変動が含まれています。第二部は、ホスト部であり、より高い変動が含まれています。したがって、アドレスの第2の部分は、使用されます。それにもかかわらず、均一性は、IPv6トラフィックのためにチェックされていません。

6.2.4.2. Hash Functions Suitable for Packet Digesting
6.2.4.2。パケット消化するための適切なハッシュ関数

For this purpose also the BOB function SHOULD be used. Other functions (such as CRC-32) MAY be used. Among the functions capable of operating with variable-length input, BOB and CRC-32 have the fastest execution, BOB being slightly faster. IPSX is not recommended for digesting because it has a significantly higher collision rate and takes only a fixed-length input.

この目的のためにも、BOB機能を使用する必要があります。 (例えばCRC-32のような)他の機能が使用されてもよいです。可変長入力で動作可能な機能のうち、BOBとCRC-32は、BOBはわずかに速いされ、最速の実行を持っています。 IPSXは、それが顕著に高い衝突速度を持っており、唯一の固定長の入力を要するため、消化のために推奨されていません。

7. Parameters for the Description of Selection Techniques
選択技術の説明7.パラメータ

This section gives an overview of different alternative selection schemes and their required parameters. In order to be compliant with PSAMP, at least one of proposed schemes MUST be implemented.

このセクションでは、さまざまな代替の選択スキームとその必要なパラメータの概要を示しています。 PSAMPに準拠するために、提案されたスキームの少なくとも一方が実施されなければなりません。

The decision whether or not to select a packet is based on a function that is performed when the packet arrives at the selection process. Packet selection schemes differ in the input parameters for the selection process and the functions they require to do the packet selection. The following table gives an overview.

パケットを選択するための決定かどうかは、パケットが選択プロセスに到着したときに実行される機能に基づいています。パケット選択スキームは、選択プロセスのための入力パラメータと、彼らはパケットの選択を行うために必要な機能が異なります。次の表は、概要を示します。

     Scheme       |   Input parameters     |     Functions
   ---------------+------------------------+-------------------
    systematic    |    packet position     |  packet counter
    count-based   |    Sampling pattern    |
   ---------------+------------------------+-------------------
    systematic    |      arrival time      |  clock or timer
    time-based    |     Sampling pattern   |
   ---------------+------------------------+-------------------
    random        |  packet position       |  packet counter,
    n-out-of-N    |  Sampling pattern      |  random numbers
                  | (random number list)   |
   ---------------+------------------------+-------------------
    uniform       |        Sampling        |  random function
    probabilistic |      probability       |
   ---------------+------------------------+-------------------
    non-uniform   |e.g., packet position,  | selection function,
    probabilistic |  Packet Content(parts) |  probability calc.
   ---------------+------------------------+-------------------
    non-uniform   |e.g., flow state,       | selection function,
    flow-state    |  Packet Content(parts) |  probability calc.
   ---------------+------------------------+-------------------
    property      | Packet Content(parts)  |  filter function or
    match         | or router state        |  state discovery
   ---------------+------------------------+-------------------
    hash-based    |  Packet Content(parts) |  Hash Function
   ---------------+------------------------+-------------------
        
7.1. Description of Sampling Techniques
7.1. サンプリング技術の説明

In this section, we define what elements are needed to describe the most common Sampling techniques. Here the selection function is predefined and given by the Selector ID.

このセクションでは、要素は、最も一般的なサンプリング技術を記述するために必要なものを定義します。ここで選択機能は、事前に定義し、セレクタIDで与えられます。

Sampler Description: SELECTOR_ID SELECTOR_TYPE SELECTOR_PARAMETERS

サンプラー説明:SELECTOR_ID SELECTOR_TYPE SELECTOR_PARAMETERS

Where:

どこ:

SELECTOR_ID: Unique ID for the packet sampler.

SELECTOR_ID:パケットサンプラーの一意のID。

SELECTOR_TYPE: For Sampling processes, the SELECTOR TYPE defines what Sampling algorithm is used. Values: Systematic count-based | Systematic time-based | Random |n-out-of-N | uniform probabilistic | Non-uniform probabilistic | Non-uniform flow state

SELECTOR_TYPEは:サンプリングプロセスでは、SELECTORのTYPEは、サンプリングアルゴリズムが使用されているものを定義します。値:系統的数ベース|系統的な時間ベース|ランダム| nはアウト・オブ・N |均一な確率論|不均一な確率論|不均一な流動状態

SELECTOR_PARAMETERS: For Sampling processes, the SELECTOR PARAMETERS define the input parameters for the process. Interval length in systematic Sampling means that all packets that arrive in this interval are selected. The spacing parameter defines the spacing in time or number of packets between the end of one Sampling interval and the start of the next succeeding interval.

SELECTOR_PARAMETERS:プロセスをサンプリングするためのセレクタパラメータは、プロセスの入力パラメータを定義します。系統的サンプリングにおける間隔長は、この間隔で到着するすべてのパケットが選択されることを意味します。間隔パラメータは、時間または1サンプリング間隔の終わりと次に続く間隔の開始との間のパケット数の間隔を定義します。

Case n-out-of-N: - Population Size N, Sample size n

ケースN-アウト・オブ・N: - 人口サイズN、サンプルサイズn

Case systematic time-based: - Interval length (in usec), Spacing (in usec)

ケース系統的な時間ベース: - 間隔の長さ(マイクロ秒で)、間隔(マイクロ秒単位)

Case systematic count-based: - Interval length (in packets), Spacing (in packets)

ケース系統的な数ベース: - 間隔の長さ(パケット単位)、(パケットで)間隔

Case uniform probabilistic (with equal probability per packet): - Sampling probability p

ケース制服(パケットあたり等しい確率で)確率論: - サンプリング確率p

Case non-uniform probabilistic: - Calculation function for Sampling probability p (see also Section 5.2.2.4)

ケースは、不均一な確率論: - サンプリング確率pの計算機能(セクション5.2.2.4を参照してください)

Case flow state: - Information reported for flow state Sampling is not defined in this document (see also Section 5.2.2.4)

ケース流状態: - フロー状態サンプリングのために報告された情報は、この文書で定義されていません(セクション5.2.2.4を参照してください)

7.2. Description of Filtering Techniques
7.2. フィルタリング技術の説明

In this section, we define what elements are needed to describe the most common Filtering techniques. The structure closely parallels the one presented for the Sampling techniques.

このセクションでは、要素は、最も一般的なフィルタリング技術を記述するために必要なものを定義します。構造は密接にサンプリング技術のために提示された1つに匹敵します。

Filter Description: SELECTOR_ID SELECTOR_TYPE SELECTOR_PARAMETERS

フィルタの説明:SELECTOR_ID SELECTOR_TYPE SELECTOR_PARAMETERS

Where:

どこ:

SELECTOR_ID: Unique ID for the packet filter. The ID can be calculated under consideration of the SELECTION SEQUENCE and a local ID.

SELECTOR_ID:パケットフィルタの一意のID。 IDは、選択シーケンスとローカルIDを考慮して計算することができます。

SELECTOR_TYPE: For Filtering processes, the SELECTOR TYPE defines what Filtering type is used. Values: Matching | Hashing | Router_state

SELECTOR_TYPEは:フィルタリングプロセスでは、SELECTORのTYPEは、フィルタリングの種類が使用されているものを定義します。値:マッチング|ハッシング| Router_state

SELECTOR_PARAMETERS: For Filtering processes, the SELECTOR PARAMETERS define formally the common property of the packet being filtered. For the filters of type matching and hashing, the definitions have a lot of points in common.

SELECTOR_PARAMETERSは:フィルタリングプロセスでは、SELECTORパラメータが正式にフィルタリングされたパケットの共通プロパティを定義します。タイプマッチングとハッシュのフィルタの場合、定義は共通点がたくさんあります。

Values:

値:

Case matching: - Information Element (from [RFC5102]) - Value (type in accordance to [RFC5102])

ケースマッチング: - 情報要素(から[RFC5102]) - 値([RFC5102]に従ったタイプ)

In case of multiple match criteria, multiple "case matching" has to be bound by a logical AND.

複数の一致基準、複数の「ケース・マッチング」の場合には論理積によって拘束されなければなりません。

Case hashing: - Hash Domain (input bits from packet) - <Header type = IPv4> - <Input bit specification, header part> - <Header type = IPv6> - <Input bit specification, header part> - <payload byte number N> - <Input bit specification, payload part> - Hash Function - Hash Function name - Length of input key (eliminate 0x bytes) - Output value (length M and bitmask) - Hash Selection Range, as a list of non-overlapping intervals [start value, end value] where value is in [0,2^M-1] - Additional parameters are dependent on specific Hash Function (e.g., hash input bits (seed))

ケースハッシュ - ハッシュドメイン(パケットからの入力ビット) - <ヘッダタイプ= IPv4の> - <入力ビットの指定、ヘッダ部> - <ヘッダタイプ= IPv6の> - <入力ビットの指定、ヘッダ部> - <ペイロードバイト数N > - <入力ビット仕様、ペイロード部> - ハッシュ関数 - ハッシュ関数名 - 入力キーの長さ(0Xバイトをなくす) - 出力値(長さMとビットマスク) - ハッシュの選択範囲、非重複区間のリストとして[値が[0,2 ^ M-1]にある値、終了値]を起動 - 追加のパラメータは、特定のハッシュ関数(例えば、ハッシュ入力ビット(シード))に依存しています

Notes to input bits for case hashing:

ケースハッシュのための入力ビットに関する注記:

- Input bits can be from header part only, from the payload part only, or from both.

- 入力ビットは、ペイロード部からのみ、またはその両方から、唯一のヘッダ部であることができます。

- The bit specification, for the header part, can be specified for IPv4 or IPv6 only, or both.

- ビット仕様は、ヘッダ部に、IPv4またはIPv6のみ、または両方に指定することができます。

- In case of IPv4, the bit specification is a sequence of 20 hexadecimal numbers [00,FF] specifying a 20-byte bitmask to be applied to the header.

- IPv4の場合には、ビット仕様はヘッダに適用される20バイトのビットマスクを指定する20進数[00、FF]の配列です。

- In case of IPv6, it is a sequence of 40 hexadecimal numbers [00,FF] specifying a 40-byte bitmask to be applied to the header.

- IPv6の場合には、ヘッダに適用される40バイトのビットマスクを指定する40進数[00、FF]の配列です。

- The bit specification, for the payload part, is a sequence of hexadecimal numbers [00,FF] specifying the bitmask to be applied to the first N bytes of the payload, as specified by the previous field. In case the hexadecimal number sequence is longer than N, only the first N numbers are considered.

- ビット仕様は、ペイロード部に、前のフィールドで指定され、ペイロードの最初のNバイトに適用されるビットマスクを指定する16進数[00、FF]の配列です。場合進数列は、より長いNよりも、最初のN個の番号が考慮されます。

- In case the payload is shorter than N, the Hash Function cannot be applied. Other options, like padding with zeros, may be considered in the future.

- 場合ペイロードは、ハッシュ関数が適用できないNよりも短くなっています。その他のオプションは、ゼロでパディングのように、将来的に考慮することができます。

- A Hash Function cannot be defined on the options field of the IPv4 header, neither on stacked headers of IPv6.

- ハッシュ関数は、IPv4ヘッダのオプションフィールドに、いずれのIPv6の積層ヘッダーに定義することができません。

- The Hash Selection Range defines a range of hash values (out of all possible results of the hash operation). If the hash result for a specific packet falls in this range, the packet is selected. If the value is outside the range, the packet is not selected. For example, if the selection interval specification is [1:3], [6:9] all packets are selected for which the hash result is 1,2,3,6,7,8, or 9. In all other cases, the packet is not selected.

- ハッシュの選択範囲は、ハッシュ値(ハッシュ操作のすべての可能な結果のうち)の範囲を規定します。特定のパケットのハッシュ結果がこの範囲である場合、パケットが選択されます。値が範囲外である場合、パケットが選択されていません。例えば、選択インターバルの指定がある場合、[1:3]、[6:9]すべてのパケットが、そのためのハッシュ結果は、他のすべての場合において1,2,3,6,7,8、または9で選択されパケットが選択されていません。

Case router state:

ケースルーターの状態:

- Ingress interface at which the packet arrives equals a specified value

- パケットが到着する入力インターフェイスは、指定された値に等しいです

- Egress interface to which the packet is routed equals a specified value

- への出力インターフェイスは、ルーティングされたパケットは、指定された値に等しいです。

- Packet violated Access Control List (ACL) on the router

- パケットルータのアクセス制御リスト(ACL)に違反

- Reverse Path Forwarding (RPF) failed for the packet

- リバースパス転送(RPF)パケットに失敗しました

- Resource Reservation is insufficient for the packet

- リソース予約は、パケットには不十分です

- No route is found for the packet

- Noルートは、パケットが見つかりません

- Origin AS equals a specified value or lies within a given range

- 原点として指定された値と等しいか、与えられた範囲内であります

- Destination AS equals a specified value or lies within a given range

- AS先が指定された値と等しいか、与えられた範囲内であります

Note to case router state:

ルータの状態をケースの注:

- All router state entries can be linked by AND operators

- すべてのルータの状態エントリは、AND演算子でリンクすることができます

8. Composite Techniques
8.コンポジットテクニック

Composite schemes are realized by combining the Selector IDs into a Selection Sequence. The Selection Sequence contains all Selector IDs that are applied to the Packet Stream subsequently. Some examples of composite schemes are reported below.

コンポジット方式が選択順序にセレクタIDを組み合わせることで実現されます。選択順序はその後、パケットストリームに適用されているすべてのセレクタのIDが含まれています。複合スキームのいくつかの例を以下に報告します。

8.1. Cascaded Filtering->Sampling or Sampling->Filtering
8.1. カスケードFiltering->サンプリングやSampling->フィルタリング

If a filter precedes a Sampling process, the role of Filtering is to create a set of "parent populations" from a single stream that can then be fed independently to different Sampling functions, with different parameters tuned for the Population itself (e.g., if streams of different intensity result from Filtering, it may be good to have different Sampling rates). If Filtering follows a Sampling process, the same Selection Fraction and type are applied to the whole stream, independently of the relative size of the streams resulting from the Filtering function. Moreover, also packets not destined to be selected in the Filtering operation will "load" the Sampling function. So, in principle, Filtering before Sampling allows a more accurate tuning of the Sampling procedure, but if filters are too complex to work at full line rate (e.g., because they have to access router state information), Sampling before Filtering may be a need.

フィルタは、サンプリング処理に先行した場合、フィルタの役割が流れた場合、その後、人口自体(例えばために調整され、異なるパラメータを使用して、独立して異なるサンプリング関数に供給することができる単一のストリームから「親集団」のセットを作成することですフィルタリングは異なる強度の結果、)異なるサンプリングレートを持つことが良いかもしれません。フィルタリングはサンプリング処理を次の場合、同じ選択画分およびタイプは、独立して、フィルタリング機能に起因する流れの相対的な大きさの、全体ストリームに適用されます。また、また、フィルタリング操作意志「負荷」サンプリング機能で選択する宛先としないパケット。だから、原則的には、サンプリングの前にフィルタリングはサンプリング手順のより正確なチューニングを許可しますが、フィルタは(彼らはルータの状態情報にアクセスする必要があるため、例えば)フルラインレートで動作するにはあまりにも複雑であれば、サンプリングフィルタリングは必要かもしれ前に。

8.2. Stratified Sampling
8.2. 層化抽出法

Stratified Sampling is one example for using a composite technique. The basic idea behind stratified Sampling is to increase the estimation accuracy by using a priori information about correlations of the investigated characteristic with some other characteristic that is easier to obtain. The a priori information is used to perform an intelligent grouping of the elements of the parent Population. In this manner, a higher estimation accuracy can be achieved with the same sample size or the sample size can be reduced without reducing the estimation accuracy.

層化サンプリングは、複合技術を使用するための一例です。層化抽出の基本的な考え方は、入手が容易である他のいくつかの特性を持つ調査特性の相関関係についての事前情報を利用して推定精度を高めることです。アプリオリ情報は、母集団の要素のインテリジェントなグループ化を実行するために使用されます。このように、より高い推定精度は、同じサンプルサイズを用いて達成することができ、またはサンプルサイズが推定精度を低下させることなく低減することができます。

Stratified Sampling divides the Sampling process into multiple steps. First, the elements of the parent Population are grouped into subsets in accordance to a given characteristic. This grouping can be done in multiple steps. Then samples are taken from each subset.

層化抽出には、複数のステップにサンプリング処理を分割します。まず、母集団の要素は、所与の特性に応じて、サブセットにグループ化されます。このグループ化は、複数のステップで行うことができます。次いで、試料を、各サブセットから取られます。

The stronger the correlation between the characteristic used to divide the parent Population (stratification variable) and the characteristic of interest (for which an estimate is sought after), the easier is the consecutive Sampling process and the higher is the stratification gain. For instance, if the dividing characteristic were equal to the investigated characteristic, each element of the subgroup would be a perfect representative of that characteristic. In this case, it would be sufficient to take one arbitrary element out of each subgroup to get the actual distribution of the characteristic in the parent Population. Therefore, stratified Sampling can reduce the costs for the Sampling process (i.e., the number of samples needed to achieve a given level of confidence).

母集団(層化変数)を分割するために使用される特性と(推定値が後に求められている)目的の特性との相関関係より強力な、より簡単には、連続サンプリング処理であり、以降は成層ゲインです。分割特性が調べ特性に等しかった場合、例えば、サブグループの各要素は、その特性の完全な代表であろう。この場合、親集団における特性の実際の分布を得るために、各サブグループのうちの任意の一つの要素を取るのに十分であろう。したがって、成層サンプリングサンプリング処理のコストを低減することができる(すなわち、信頼度の所定のレベルを達成するために必要なサンプルの数)。

For stratified Sampling, one has to specify classification rules for grouping the elements into subgroups and the Sampling scheme that is used within the subgroups. The classification rules can be expressed by multiple filters. For the Sampling scheme within the subgroups, the parameters have to be specified as described above. The use of stratified Sampling methods for measurement purposes is described for instance in [ClPB93] and [Zseb03].

層状サンプリングするため、一つのサブグループおよびサブグループ内で使用されるサンプリング方式に要素をグループ化するための分類規則を指定しなければなりません。分類規則は、複数のフィルタによって表現することができます。サブグループ内のサンプリング・スキームのために、パラメータは、上記のように指定されなければなりません。測定目的のために層化抽出法の使用は、[Zseb03] [ClPB93]に例えば記載されています。

9. Security Considerations
9.セキュリティの考慮事項

Security considerations concerning the choice of a Hash Function for Hash-based Selection have been discussed in Section 6.2.3. That section discussed a number of potential attacks to craft Packet Streams that are disproportionately detected and/or discover the Hash Function parameters, the vulnerabilities of different Hash Functions to these attacks, and practices to minimize these vulnerabilities.

ハッシュベースの選択のためのハッシュ関数の選択に関するセキュリティ上の考慮事項は、第6.2.3項で説明されています。そのセクションは、これらの攻撃に偏っ検出および/またはハッシュ関数パラメータを発見されたパケットストリームを作るための潜在的な攻撃の数、異なるハッシュ関数の脆弱性を議論し、これらの脆弱性を最小限にする実践。

In addition to this, a user can gain knowledge about the start and stop triggers in time-based systematic Sampling, e.g., by sending test packets. This knowledge might allow users to modify their send schedule in a way that their packets are disproportionately selected or not selected [GoRe07].

これに加えて、ユーザは、開始についての知識を得ることができ、テストパケットを送信することによって、例えば、時間ベースの体系的サンプリングにトリガを停止します。この知識は、ユーザーが自分のパケットが不釣り合い選択または[GoRe07]が選択されていないような方法で自分の送信スケジュールを変更することが可能かもしれません。

For random Sampling, a cryptographically strong random number generator should be used in order to prevent that an advisory can predict the selection decision [GoRe07].

ランダムサンプリングのために、暗号的に強い乱数発生器は顧問が選択決定[GoRe07]を予測することができることを防止するために使用されるべきです。

Further security threats can occur when Sampling parameters are configured or communicated to other entities. The configuration and reporting of Sampling parameters are out of scope of this document. Therefore, the security threats that originate from this kind of communication cannot be assessed with the information given in this document.

サンプリングパラメータが設定されるか、または他のエンティティに伝達されたときにまた、セキュリティの脅威が発生する可能性があります。サンプリングパラメータの設定や報告は、この文書の範囲外です。そのため、通信のこの種由来のセキュリティの脅威は、この文書に記載された情報を用いて評価することはできません。

Some of these threats can probably be addressed by keeping configuration information confidential and by authenticating entities that configure Sampling. Nevertheless, a full analysis and assessment of threats for configuration and reporting has to be done if configuration or reporting methods are proposed.

これらの脅威のいくつかは、おそらく機密設定情報を維持することによってとサンプリングを設定するエンティティを認証することによって対処することができます。それにもかかわらず、構成、およびレポート作成のための脅威の完全な分析と評価は、設定やレポート作成方法が提案されている場合は行う必要があります。

10. Contributors
10.協力者

Sharon Goldberg contributed to the security considerations for Hash-based Selection.

シャロン・ゴールドバーグは、ハッシュベースの選択のためのセキュリティの考慮事項に貢献しました。

Sharon Goldberg Department of Electrical Engineering Princeton University F210-K EQuad Princeton, NJ 08544, USA EMail: goldbe@princeton.edu

電気のシャロン・ゴールドバーグ工学科プリンストン大学F210-K EQuadプリンストン、NJ 08544、USA電子メール:goldbe@princeton.edu

11. Acknowledgments
11.謝辞

We would like to thank the PSAMP group, especially Benoit Claise and Stewart Bryant, for fruitful discussions and for proofreading the document. We thank Sharon Goldberg for her input on security issues concerning Hash-based Selection.

私たちは、実りある議論をし、文書を校正するために、PSAMP基であり、特にブノワClaiseとスチュワートブライアントに感謝したいと思います。私たちは、ハッシュベースの選択に関するセキュリティ問題の彼女の入力のためのシャロン・ゴールドバーグに感謝します。

12. References
12.参考文献
12.1. Normative References
12.1. 引用規格

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119]ブラドナーの、S.、 "要件レベルを示すためにRFCsにおける使用のためのキーワード"、BCP 14、RFC 2119、1997年3月。

12.2. Informative References
12.2. 参考文献

[AmCa89] Paul D. Amer, Lillian N. Cassel, "Management of Sampled Real-Time Network Measurements", 14th Conference on Local Computer Networks, October 1989, Minneapolis, pages 62-68, IEEE, 1989.

[AmCa89]ポール・D.アメア、リリアンN.カッセル、「サンプリングリアルタイム・ネットワーク測定の管理」、ローカルコンピュータネットワーク上の第14回大会、1989年10月、ミネアポリス、ページ62-68、IEEE、1989。

[BeCK96] M. Bellare, R. Canetti and H. Krawczyk, "Pseudorandom Functions Revisited: The Cascade Construction and its Concrete Security", Symposium on Foundations of Computer Science, 1996.

[BeCK96] M.ベラー、R.カネッティとH. Krawczyk、「再考擬似ランダム機能:カスケード構築とその具体的なセキュリティ」、シンポジウムコンピュータサイエンス、1996年の基礎に。

[ClPB93] K.C. Claffy, George C. Polyzos, Hans-Werner Braun, "Application of Sampling Methodologies to Network Traffic Characterization", Proceedings of ACM SIGCOMM'93, San Francisco, CA, USA, September 13 - 17, 1993.

【ClPB93] K.C. Claffy、ジョージ・C. Polyzos、ハンス・ヴェルナー・ブラウン、 "ネットワークトラフィックの特徴付けにサンプリング手法の応用"、ACM SIGCOMM'93、サンフランシスコ、CA、USA、9月13日の議事録 - 17、1993。

[DuGG02] N.G. Duffield, A. Gerber, M. Grossglauser, "Trajectory Engine: A Backend for Trajectory Sampling", IEEE Network Operations and Management Symposium 2002, Florence, Italy, April 15-19, 2002.

【DuGG02] N.G.ダッフィールド、A.ガーバー、M. Grossglauser、「軌道エンジン:軌道サンプリングのためのバックエンド」、IEEEネットワークオペレーションとマネジメントシンポジウム2002、フィレンツェ、イタリア、4月15-19、2002。

[DuGr00] N.G. Duffield, M. Grossglauser, "Trajectory Sampling for Direct Traffic Observation", Proceedings of ACM SIGCOMM 2000, Stockholm, Sweden, August 28 - September 1, 2000.

【DuGr00] N.G.ダッフィールド、M. Grossglauser、 "ノーリファラー観察のための軌道サンプリング"、ACMのSIGCOMM 2000の議事録、ストックホルム、スウェーデン、2000年8月28日から9月1日まで。

[DuGr04] N.G. Duffield and M. Grossglauser "Trajectory Sampling with Unreliable Reporting", Proc IEEE Infocom 2004, Hong Kong, March 2004.

【DuGr04] N.G.ダッフィールドとM. Grossglauser「信頼できない報告と軌道サンプリング」、PROC IEEEインフォコム2004年、香港、2004年3月。

[DuLT01] N.G. Duffield, C. Lund, and M. Thorup, "Charging from Sampled Network Usage", ACM Internet Measurement Workshop IMW 2001, San Francisco, USA, November 1-2, 2001.

【DuLT01] N.G.ダッフィールド、C.ルンド、およびM. Thorup、 "サンプリングネットワーク使用率から充電"、ACMインターネット測定ワークショップIMW 2001、サンフランシスコ、USA、11月1-2、2001。

[EsVa01] C. Estan and G. Varghese, "New Directions in Traffic Measurement and Accounting", ACM SIGCOMM Internet Measurement Workshop 2001, San Francisco (CA) Nov. 2001.

[EsVa01] C. EstanとG. Varghese、 "トラフィック測定および会計の新しい方向"、ACM SIGCOMMインターネット測定ワークショップ2001年、サンフランシスコ(カリフォルニア州)2001年11月。

[GoRe07] S. Goldberg, J. Rexford, "Security Vulnerabilities and Solutions for Packet Sampling", IEEE Sarnoff Symposium, Princeton, NJ, May 2007.

[GoRe07] S.ゴールドバーグ、J. Rexfordの、 "セキュリティの脆弱性とパケットサンプリングのためのソリューション"、IEEEサーノフシンポジウム、プリンストン、NJ、2007年5月。

[HT52] D.G. Horvitz and D.J. Thompson, "A Generalization of Sampling without replacement from a Finite Universe" J. Amer. Statist. Assoc. Vol. 47, pp. 663-685, 1952.

[HT52] D.G. HorvitzとD.J.トンプソン、J.アメル「有限ユニバースから交換せずにサンプリングの一般化」。 Statist。准巻。 47頁663から685、1952。

[Henk08] Christian Henke, Evaluation of Hash Functions for Multipoint Sampling in IP Networks, Diploma Thesis, TU Berlin, April 2008.

[Henk08]クリスチャン・ヘンケ、IPネットワークにおけるマルチサンプリングのためのハッシュ関数の評価、卒業論文、TUベルリン、2008年4月。

[HeSZ08] Christian Henke, Carsten Schmoll, Tanja Zseby, Evaluation of Header Field Entropy for Hash-Based Packet Selection, Proceedings of Passive and Active Measurement Conference PAM 2008, Cleveland, Ohio, USA, April 2008.

ハッシュベースのパケット選択のための[HeSZ08]クリスチャン・ヘンケ、カールステンSchmoll、ターニャZseby、ヘッダーフィールドエントロピーの評価、パッシブとアクティブ測定会議PAM 2008、クリーブランド、オハイオ州、USA、2008年4月の議事。

[Jenk97] B. Jenkins, "Algorithm Alley", Dr. Dobb's Journal, September 1997. http://burtleburtle.net/bob/hash/doobs.html.

[Jenk97] B.ジェンキンス、「アルゴリズム路地」、博士ドッブのジャーナル、1997年9月http://burtleburtle.net/bob/hash/doobs.html。

[JePP92] Jonathan Jedwab, Peter Phaal, Bob Pinna, "Traffic Estimation for the Largest Sources on a Network, Using Packet Sampling with Limited Storage", HP technical report, Managemenr, Mathematics and Security Department, HP Laboratories, Bristol, March 1992, http://www.hpl.hp.com/techreports/92/HPL-92-35.html.

「限られた記憶とパケットサンプリングを使用して、ネットワーク上の最大の源のためのトラフィックの推定、」[JePP92]ジョナサンJedwab、ピーターPhaal、ボブ・耳介、HPテクニカルレポート、Managemenr、数学とセキュリティ部門、HP研究所、ブリストル、1992年3月、 http://www.hpl.hp.com/techreports/92/HPL-92-35.html。

[Moli03] M. Molina, "A scalable and efficient methodology for flow monitoring in the Internet", International Teletraffic Congress (ITC-18), Berlin, Sep. 2003.

【Moli03] M.モリナ、「インターネットでフローモニタリングのためのスケーラブルで効率的な方法」、国際トラヒック会議(ITC-18)、ベルリン、2003年9月。

[MoND05] M. Molina, S. Niccolini, N.G. Duffield, "A Comparative Experimental Study of Hash Functions Applied to Packet Sampling", International Teletraffic Congress (ITC-19), Beijing, August 2005.

【MoND05] M.モリナ、S.ニッコリーニ、N.G.ダッフィールド、国際トラヒック会議(ITC-19)、北京、2005年8月「パケットサンプリングに適用されるハッシュ関数の比較実験的研究」。

[RFC1141] Mallory, T. and A. Kullberg, "Incremental updating of the Internet checksum", RFC 1141, January 1990.

[RFC1141]マロリー、T.とA. Kullberg、 "インターネットチェックサムのインクリメンタル更新"、RFC 1141、1990年1月。

[RFC1624] Rijsinghani, A., Ed., "Computation of the Internet Checksum via Incremental Update", RFC 1624, May 1994.

[RFC1624] Rijsinghani、A.編、 "増分更新を経由してインターネットチェックサムの計算"、RFC 1624、1994年5月。

[RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification", RFC 2205, September 1997.

[RFC2205]ブレーデン、R.、エド、チャン、L.、Berson氏、S.、ハーツォグ、S.、およびS.ヤミン、 "リソース予約プロトコル(RSVP) - バージョン1の機能的な仕様"。、RFC 2205、9月1997。

[RFC3704] Baker, F. and P. Savola, "Ingress Filtering for Multihomed Networks", BCP 84, RFC 3704, March 2004.

[RFC3704]ベイカー、F.およびP. Savola、 "マルチホームネットワークの入力フィルタリング"、BCP 84、RFC 3704、2004年3月。

[RFC3917] Quittek, J., Zseby, T., Claise, B., and S. Zander, "Requirements for IP Flow Information Export (IPFIX)", RFC 3917, October 2004.

[RFC3917] Quittek、J.、Zseby、T.、Claise、B.、およびS.ザンダー、 "IPフロー情報エクスポート(IPFIX)のための要件"、RFC 3917、2004年10月。

[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, January 2006.

[RFC4271] Rekhter、Y.、エド。、李、T.、エド。、およびS.野兎、編、 "ボーダーゲートウェイプロトコル4(BGP-4)"、RFC 4271、2006年1月。

[RFC5101] Claise, B., Ed., "Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of IP Traffic Flow Information", RFC 5101, January 2008.

[RFC5101] Claise、B.、エド。、RFC 5101、2008年1月 "IPトラフィックフロー情報を交換するためのIPフロー情報のエクスポート(IPFIX)プロトコルの仕様"。

[RFC5102] Quittek, J., Bryant, S., Claise, B., Aitken, P., and J. Meyer, "Information Model for IP Flow Information Export", RFC 5102, January 2008.

[RFC5102] Quittek、J.、ブライアント、S.、Claise、B.、エイトケン、P.、およびJ.マイヤー、 "IPフロー情報のエクスポートのための情報モデル"、RFC 5102、2008年1月。

[RFC5474] Duffield, N., Ed., "A Framework for Packet Selection and Reporting", RFC 5474, March 2009.

[RFC5474]ダッフィールド、N.、エド。、 "パケット選択のためのフレームワークとの報告"、RFC 5474、2009年3月。

[RFC5476] Claise, B., Ed., "Packet Sampling (PSAMP) Protocol Specifications", RFC 5476, March 2009.

[RFC5476] Claise、B.、エド。、 "パケットサンプリング(PSAMP)プロトコル仕様"、RFC 5476、2009年3月。

[RFC5477] Dietz, T., Claise, B., Aitken, P., Dressler, F., and G. Carle, "Information Model for Packet Sampling Exports", RFC 5477, March 2009.

[RFC5477]ディーツ、T.、Claise、B.、エイトケン、P.、ドレスラー、F.、およびG.カール、RFC 5477 "情報モデルパケットサンプリングの輸出について"、2009年3月。

[Zseb03] T. Zseby, "Stratification Strategies for Sampling-based Non-intrusive Measurement of One-way Delay", Proceedings of Passive and Active Measurement Workshop (PAM 2003), La Jolla, CA, USA, pp. 171-179, April 2003.

[Zseb03] T. Zseby、パッシブとアクティブ計測ワークショップ(PAM 2003)、ラ・ホーヤ、CA、USA、PPの議事録「一方向遅延のサンプリングベースの非侵入測定のための階層化戦略」。171-179、 2003年4月。

[ZsZC01] Tanja Zseby, Sebastian Zander, Georg Carle. Evaluation of Building Blocks for Passive One-way-delay Measurements. Proceedings of Passive and Active Measurement Workshop (PAM 2001), Amsterdam, The Netherlands, April 23-24, 2001.

【ZsZC01]タンジェZseby、セバスチャンザンダー、ゲオルク・カール。パッシブ一方向遅延測定のためのビルディング・ブロックの評価。パッシブとアクティブ計測ワークショップの議事録(2001 PAM)、アムステルダム、オランダ、4月23-24、2001。

Appendix A. Hash Functions

付録A.ハッシュ関数

A.1. IP Shift-XOR (IPSX) Hash Function

A.1。 IPシフト-XOR(IPSX)ハッシュ関数

The IPSX Hash Function is tailored for acting on IP version 4 packets. It exploits the structure of IP packets and in particular the variability expected to be exhibited within different fields of the IP packet in order to furnish a hash value with little apparent correlation with individual packet fields. Fields from the IPv4 and TCP/UDP headers are used as input. The IPSX Hash Function uses a small number of simple instructions.

IPSXハッシュ関数は、IPバージョン4つのパケットに作用するために調整されています。これは、IPパケットの構造を利用し、特定の変動は、個々のパケットフィールドとほとんど明らか相関してハッシュ値を供給するために、IPパケットの異なるフィールド内に発揮することが期待します。 IPv4とTCP / UDPヘッダのフィールドは、入力として使用されます。 IPSXハッシュ関数は、単純な少数の命令を使用しています。

Input parameters: None

入力パラメータ:なし

Built-in parameters: None

内蔵パラメータ:なし

Output: The output of the IPSX is a 16-bit number

出力:IPSXの出力は16ビットの数値です

Functioning:

機能:

The functioning can be divided into two parts: input selection, whose forms are composite input from various portions of the IP packet, followed by computation of the hash on the composite.

入力選択、そのフォーム複合上のハッシュの計算に続いて、IPパケットの様々な部分からのコンポジット入力、次のとおり機能は二つの部分に分けることができます。

Input Selection:

入力選択:

The raw input is drawn from the first 20 bytes of the IP packet header and the first 8 bytes of the IP payload. If IP options are not used, the IP header has 20 bytes, and hence the two portions adjoin and comprise the first 28 bytes of the IP packet. We now use the raw input as four 32-bit subportions of these 28 bytes. We specify the input by bit offsets from the start of IP header or payload.

生の入力は、IPパケットヘッダの最初の20のバイトとIPペイロードの最初の8バイトから引き出されます。 IPオプションが使用されていない場合、IPヘッダは20バイトを有し、したがって2つの部分は、IPパケットの最初の28のバイトに隣接し、含みます。現在、これらの28バイトの4つの32ビットサブ部分として生の入力を使用します。我々は、IPヘッダやペイロードの先頭からビットオフセットによって入力を指定します。

f1 = bits 32 to 63 of the IP header, comprising the IP identification field, flags, and fragment offset.

オフセットIP識別フィールド、フラグ、断片を含む、IPヘッダの63〜32ビット= F1。

f2 = bits 96 to 127 of the IP header, the source IP address.

F2 = 96 IPヘッダ、送信元IPアドレスの127ビット。

f3 = bits 128 to 159 of the IP header, the destination IP address.

F3 = 128 IPヘッダは、宛先IPアドレスの159ビット。

f4 = bits 32 to 63 of the IP payload. For a TCP packet, f4 comprises the TCP sequence number followed by the message length. For a UDP packet, f4 comprises the UDP checksum.

F4 = 32 IPペイロードの63ビット。 TCPパケットのために、F4は、メッセージの長さに続くTCPシーケンス番号を含みます。 UDPパケットのために、F4は、UDPチェックサムを含みます。

Hash Computation:

ハッシュ計算:

The hash is computed from f1, f2, f3, and f4 by a combination of XOR (^), right shift (>>), and left shift (<<) operations. The intermediate quantities h1, v1, and v2 are 32-bit numbers.

ハッシュのXOR(^)との組み合わせにより、F1、F2、F3、およびF4から計算され、右シフト(>>)、および左シフト(<<)操作。中間量のH1、V1、V2は、32ビットの数です。

      1.    v1 = f1 ^ f2;
      2.    v2 = f3 ^ f4;
      3.    h1 = v1 << 8;
      4.    h1 ^= v1 >> 4;
      5.    h1 ^= v1 >> 12;
      6.    h1 ^= v1 >> 16;
      7.    h1 ^= v2 << 6;
      8.    h1 ^= v2 << 10;
      9.    h1 ^= v2 << 14;
      10.   h1 ^= v2 >> 7;
        

The output of the hash is the least significant 16 bits of h1.

ハッシュの出力は、H1の最下位16ビットです。

A.2. BOB Hash Function

A.2。 BOBハッシュ関数

The BOB Hash Function is a Hash Function designed for having each bit of the input affecting every bit of the return value and using both 1-bit and 2-bit deltas to achieve the so-called avalanche effect [Jenk97]. This function was originally built for hash table lookup with fast software implementation.

BOBハッシュ関数は戻り値のすべてのビットに影響を与える入力の各ビットを有し、いわゆるアバランシェ効果[Jenk97]を達成するために、両方の1ビットと2ビットのデルタを使用するために設計されたハッシュ関数です。この機能は、もともと速いソフトウェア実装とハッシュテーブルルックアップのために建てられました。

Input parameters:

入力パラメータ:

The input parameters of such a function are:

そのような関数の入力パラメータは次のとおりです。

- the length of the input string (key) to be hashed, in bytes. The elementary input blocks of BOB hash are the single bytes; therefore, no padding is needed.

- (キー)入力文字列の長さはバイト単位で、ハッシュされます。 BOBハッシュの基本入力ブロックは、単一のバイトです。そのため、パディングは必要ありません。

- an init value (an arbitrary 32-bit number).

- 初期化値(任意の32ビットの数)。

Built-in parameters:

内蔵のパラメータ:

The BOB hash uses the following built-in parameter:

BOBハッシュは、次のビルトインパラメータを使用しています。

- the golden ratio (an arbitrary 32-bit number used in the Hash Function computation: its purpose is to avoid mapping all zeros to all zeros).

- 黄金比(ハッシュ関数の計算に使用される任意の32ビットの数:その目的は、すべてゼロにすべてゼロをマッピング回避するためです)。

Note: The mix sub-function (see mix (a,b,c) macro in the reference code below) has a number of parameters governing the shifts in the registers. The one presented is not the only possible choice.

注:ミックスサブ機能(下記参照コード内のミックス(A、B、C)マクロを参照)レジスタのシフトを支配するパラメータの数を有しています。提示された1つは、唯一の可能な選択肢ではありません。

It is an open point whether these may be considered additional built-in parameters to specify at function configuration.

これらは機能構成で指定するために、追加の組み込みのパラメータを考慮することができるかどうかをオープン点です。

Output:

出力:

The output of the BOB function is a 32-bit number. It should be specified:

BOB関数の出力は、32ビットの数値です。これは、指定する必要があります。

- A 32-bit mask to apply to the output

- 出力に適用する32ビット・マスク

- The Selection Range as a list of non-overlapping intervals [start value, end value] where value is in [0,2^32]

- 非重複区間のリストとして選択範囲の値が[^ 32 0,2]にある[開始値、終了値]

Functioning:

機能:

The hash value is obtained computing first an initialization of an internal state (composed of three 32-bit numbers, called a, b, c in the reference code below), then, for each input byte of the key the internal state is combined by addition and mixed using the mix sub-function. Finally, the internal state mixed one last time and the third number of the state (c) is chosen as the return value.

ハッシュ値は、第1の内部状態はによって結合されているキーの各入力バイトに対して、次いで、(以下参照コードで、A、B、Cと呼ばれる3つの32ビット数からなる、)内部状態の初期化を計算得られますミックスサブ関数を使用して添加し、混合しました。最後に、内部状態は、最後の時間を混合し、状態(C)の第3の数は、戻り値として選択されます。

   typedef unsigned long int  ub4;   /* unsigned 4-byte quantities
   */
   typedef unsigned      char ub1;   /* unsigned 1-byte quantities
   */
        

#define hashsize(n) ((ub4)1<<(n)) #define hashmask(n) (hashsize(n)-1)

#define HASHSIZE(N)((するub4)1 <<(N))(N)の#define hashmask(HASHSIZE(N)-1)

   /* ------------------------------------------------------
     mix -- mix three 32-bit values reversibly.
        

For every delta with one or two bits set, and the deltas of all three high bits or all three low bits, whether the original value of a,b,c is almost all zero or is uniformly distributed, * If mix() is run forward or backward, at least 32 bits in a,b,c have at least 1/4 probability of changing. * If mix() is run forward, every bit of c will change between 1/3 and 2/3 of the time (well, 22/100 and 78/100 for some 2- bit deltas) mix() was built out of 36 single-cycle latency instructions in a structure that could support 2x parallelism, like so:

元の値は、Bは、Cがほぼすべてゼロ又は均一に分布され、*ミックス()が実行される場合であるか否かを1ビットまたは2ビットに設定し、すべての3つの上位ビットまたはすべての3つの下位ビットのデルタを有するすべてのデルタのために、Bに前方または後方に、少なくとも32ビットは、変化の少なくとも1/4の確率を有するcは。 *ミックスは、()前方に実行された場合は、Cのすべてのビットは(一部2 - ビットデルタのためにも、100分の22と78/100)1/3と時間の2/3の間でミックスを()の外に建てられた変更されますこれと同様に、2倍の並列処理をサポートすることができる構造で36単一サイクル待ち時間命令:

           a -= b;
           a -= c; x = (c>>13);
           b -= c; a ^= x;
           b -= a; x = (a<<8);
           c -= a; b ^= x;
           c -= b; x = (b>>13);
           ...
   Unfortunately, superscalar Pentiums and Sparcs can't take
   advantage of that parallelism.  They've also turned some of
   those single-cycle latency instructions into multi-cycle latency
   instructions
        
   ------------------------------------------------------------*/
        

#define mix(a,b,c) \ { \ a -= b; a -= c; a ^= (c>>13); \ b -= c; b -= a; b ^= (a<<8); \ c -= a; c -= b; c ^= (b>>13); \ a -= b; a -= c; a ^= (c>>12); \ b -= c; b -= a; b ^= (a<<16); \ c -= a; c -= b; c ^= (b>>5); \ a -= b; a -= c; a ^= (c>>3); \ b -= c; b -= a; b ^= (a<<10); \ c -= a; c -= b; c ^= (b>>15); \ }

#defineミックス(A、B、C)\ {\ - = B。 A - = C。 ^ =(C >> 13)。 \ B - = C; B - =。 B ^ =(<< 8)。 \ C - = A; C - = B。 C ^ =(B >> 13)。 \ - = Bと、 A - = C。 ^ =(C >> 12)。 \ B - = C; B - =。 B ^ =(<< 16)。 \ C - = A; C - = B。 C ^ =(B >> 5)。 \ - = Bと、 A - = C。 ^ =(C >> 3)。 \ B - = C; B - =。 B ^ =(<< 10)。 \ C - = A; C - = B。 C ^ =(B >> 15)。 \}

     /* -----------------------------------------------------------
   hash() -- hash a variable-length key into a 32-bit value
   k       : the key (the unaligned variable-length array of bytes)
   len     : the length of the key, counting by bytes
   initval : can be any 4-byte value
   Returns a 32-bit value.  Every bit of the key affects every bit
   of the return value.  Every 1-bit and 2-bit delta achieves
   avalanche.  About 6*len+35 instructions.
        

The best hash table sizes are powers of 2. There is no need to do mod a prime (mod is so slow!). If you need less than 32 bits, use a bitmask. For example, if you need only 10 bits, do h = (h & hashmask(10)), in which case, the hash table should have hashsize(10) elements.

最高のハッシュテーブルのサイズが2の累乗のMODプライム行う必要はありません(modがとても遅いです!)。あなたは32ビット未満が必要な場合は、ビットマスクを使用します。たとえば、わずか10ビットを必要とする場合、H =(H&hashmask(10))を行い、その場合、ハッシュテーブルはHASHSIZE(10)の要素を有していなければなりません。

If you are hashing n strings (ub1 **)k, do it like this: for (i=0, h=0; i<n; ++i) h = hash( k[i], len[i], h);

あなたはn個の文字列をハッシュ(UB1 **)kのであれば、このようにそれを行うための:(I = 0、H = 0; iがN <; ++ I)H =ハッシュ(K [i]は、lenの[i]は、 H)。

   By Bob Jenkins, 1996.  bob_jenkins@burtleburtle.net.  You may use
   this code any way you wish, private, educational, or commercial.
   It's free.  See http://burtleburtle.net/bob/hash/evahash.html.
   Use for hash table lookup, or anything where one collision in 2^^32
   is acceptable.  Do NOT use for cryptographic purposes.
    ----------------------------------------------------------- */
        
     ub4 bob_hash(k, length, initval)
     register ub1 *k;        /* the key */
     register ub4  length;   /* the length of the key */
     register ub4  initval;  /* an arbitrary value */
     {
        register ub4 a,b,c,len;
        
        /* Set up the internal state */
        len = length;
        a = b = 0x9e3779b9; /*the golden ratio; an arbitrary value
   */
        c = initval;         /* another arbitrary value */
        
   /*------------------------------------ handle most of the key */
        
        while (len >= 12)
        {
           a += (k[0] +((ub4)k[1]<<8) +((ub4)k[2]<<16)
   +((ub4)k[3]<<24));
           b += (k[4] +((ub4)k[5]<<8) +((ub4)k[6]<<16)
   +((ub4)k[7]<<24));
           c += (k[8] +((ub4)k[9]<<8)
   +((ub4)k[10]<<16)+((ub4)k[11]<<24));
           mix(a,b,c);
           k += 12; len -= 12;
        }
        
        /*---------------------------- handle the last 11 bytes */
        c += length;
        switch(len)       /* all the case statements fall through*/
        {
        case 11: c+=((ub4)k[10]<<24);
        case 10: c+=((ub4)k[9]<<16);
        case 9 : c+=((ub4)k[8]<<8);
           /* the first byte of c is reserved for the length */
        case 8 : b+=((ub4)k[7]<<24);
        case 7 : b+=((ub4)k[6]<<16);
        case 6 : b+=((ub4)k[5]<<8);
        case 5 : b+=k[4];
        case 4 : a+=((ub4)k[3]<<24);
        case 3 : a+=((ub4)k[2]<<16);
        
        case 2 : a+=((ub4)k[1]<<8);
        case 1 : a+=k[0];
          /* case 0: nothing left to add */
        }
        mix(a,b,c);
        /*-------------------------------- report the result */
        return c;
     }
        

Authors' Addresses

著者のアドレス

Tanja Zseby Fraunhofer Institute for Open Communication Systems Kaiserin-Augusta-Allee 31 10589 Berlin Germany Phone: +49-30-34 63 7153 EMail: tanja.zseby@fokus.fraunhofer.de

オープン通信システムカイザリンオーガスタダレ31のためのターニャZsebyフラウンホーファー研究所10589ベルリンドイツ電話:+ 49-30-34 63 7153 Eメール:tanja.zseby@fokus.fraunhofer.de

Maurizio Molina DANTE City House 126-130 Hills Road Cambridge CB21PQ United Kingdom Phone: +44 1223 371 300 EMail: maurizio.molina@dante.org.uk

マウリツィオ・モリーナDANTE市ハウス126から130ヒルズの道ケンブリッジCB21PQイギリス電話:+44 1223 371 300 Eメール:maurizio.molina@dante.org.uk

Nick Duffield AT&T Labs - Research Room B-139 180 Park Ave Florham Park, NJ 07932 USA Phone: +1 973-360-8726 EMail: duffield@research.att.com

ニックダッフィールドAT&T研究所 - 研究室B-139 180パークアベニューフローラムパーク、NJ 07932 USA電話:+1 973-360-8726電子メール:duffield@research.att.com

Saverio Niccolini Network Laboratories, NEC Europe Ltd. Kurfuerstenanlage 36 69115 Heidelberg Germany Phone: +49-6221-9051118 EMail: saverio.niccolini@netlab.nec.de

サヴェリオニッコリーニネットワーク研究所、NECヨーロッパ社Kurfuerstenanlage 36 69115ハイデルベルクドイツ電話:+ 49-6221-9051118 Eメール:saverio.niccolini@netlab.nec.de

Frederic Raspall EPSC-UPC Dept. of Telematics Av. del Canal Olimpic, s/n Edifici C4 E-08860 Castelldefels, Barcelona Spain EMail: fredi@entel.upc.es

フレデリックブラシEPSC-UPC部門AVのテレマティクス。カナルオリンピック、S / N E-08860ビルC4カステルデフェルス、スペインバルセロナメール:fredi@entel.upc.es