[要約] RFC 7729は、ForCESアーキテクチャにおけるLFBのサブ管理に関するものであり、LFBの機能的な管理を提供することを目的としています。

Internet Engineering Task Force (IETF)                     B. Khasnabish
Request for Comments: 7729                                  ZTE TX, Inc.
Category: Standards Track                                  E. Haleplidis
ISSN: 2070-1721                                     University of Patras
                                                      J. Hadi Salim, Ed.
                                                       Mojatatu Networks
                                                           December 2015
        

Forwarding and Control Element Separation (ForCES) Logical Functional Block (LFB) Subsidiary Management

転送と制御要素分離(ForCES)論理機能ブロック(LFB)の補助管理

Abstract

概要

Deployment experience has demonstrated the value of using the Forwarding and Control Element Separation (ForCES) architecture to manage resources other than packet forwarding. In that spirit, the Forwarding Element Manager (FEM) is modeled by creating a Logical Functional Block (LFB) to represent its functionality. We refer to this LFB as the Subsidiary Mechanism (SM) LFB. A Control Element (CE) that controls a Forwarding Element's (FE) resources can also manage its configuration via the SM LFB. This document introduces the SM LFB class, an LFB class that specifies the configuration parameters of an FE. The configuration parameters include new LFB class loading and CE associations; they also provide manipulation of debug mechanisms along with a general purpose attribute definition to describe configuration information.

展開経験は、転送および制御要素分離(ForCES)アーキテクチャを使用して、パケット転送以外のリソースを管理することの価値を実証しています。その精神で、Forwarding Element Manager(FEM)は、その機能を表す論理機能ブロック(LFB)を作成することによってモデル化されます。このLFBを補助メカニズム(SM)LFBと呼びます。 Forwarding Element(FE)リソースを制御するControl Element(CE)も、SM LFBを介してその構成を管理できます。このドキュメントでは、FEの構成パラメーターを指定するLFBクラスであるSM LFBクラスを紹介します。構成パラメーターには、新しいLFBクラスのロードとCEの関連付けが含まれます。また、構成情報を記述するための汎用属性定義とともに、デバッグメカニズムの操作も提供します。

Status of This Memo

本文書の状態

This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 5741のセクション2をご覧ください。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7729.

このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc7729で入手できます。

Copyright Notice

著作権表示

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

Copyright(c)2015 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。

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

この文書は、BCP 78およびIETF文書に関するIETFトラストの法的規定(http://trustee.ietf.org/license-info)の対象であり、この文書の発行日に有効です。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

Table of Contents

目次

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   5
     1.2.  Definitions . . . . . . . . . . . . . . . . . . . . . . .   5
   2.  Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . .   6
     2.1.  High Availability . . . . . . . . . . . . . . . . . . . .   6
     2.2.  Scalability . . . . . . . . . . . . . . . . . . . . . . .   6
     2.3.  Adding New Resources to an NE . . . . . . . . . . . . . .   6
     2.4.  New LFB Class Installation  . . . . . . . . . . . . . . .   6
     2.5.  Logging Mechanism . . . . . . . . . . . . . . . . . . . .   7
     2.6.  General-Purpose Attribute Definition  . . . . . . . . . .   7
   3.  Applicability Statement . . . . . . . . . . . . . . . . . . .   8
     3.1.  FE Integrated . . . . . . . . . . . . . . . . . . . . . .   8
     3.2.  Virtual FEs . . . . . . . . . . . . . . . . . . . . . . .   8
   4.  SM Library  . . . . . . . . . . . . . . . . . . . . . . . . .   8
     4.1.  Frame Definitions . . . . . . . . . . . . . . . . . . . .   8
     4.2.  Data Type Definitions . . . . . . . . . . . . . . . . . .   9
     4.3.  Metadata Definitions  . . . . . . . . . . . . . . . . . .   9
     4.4.  SM  . . . . . . . . . . . . . . . . . . . . . . . . . . .   9
       4.4.1.  Data Handling . . . . . . . . . . . . . . . . . . . .  10
       4.4.2.  Components  . . . . . . . . . . . . . . . . . . . . .  10
       4.4.3.  Capabilities  . . . . . . . . . . . . . . . . . . . .  10
       4.4.4.  Events  . . . . . . . . . . . . . . . . . . . . . . .  11
   5.  XML for SM LFB  . . . . . . . . . . . . . . . . . . . . . . .  11
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  17
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
     7.1.  LFB Class Names and LFB Class Identifiers . . . . . . . .  18
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  18
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  18
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  19
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  20
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  20
        
1. Introduction
1. はじめに

Deployment experience has demonstrated the value of using the Forwarding and Control Element Separation (ForCES) architecture to manage resources other than packet forwarding. In that spirit, the Forwarding Element Manager (FEM) is modeled by creating a Logical Functional Block (LFB) to represent its functionality. We refer to this LFB as the Subsidiary Mechanism (SM) LFB. A Control Element (CE) that controls a Forwarding Element's (FE) resources can also manage its configuration via the SM LFB. This document introduces the SM LFB class, an LFB that specifies the configuration parameters of an FE.

展開経験は、転送および制御要素分離(ForCES)アーキテクチャを使用して、パケット転送以外のリソースを管理することの価値を実証しています。その精神で、Forwarding Element Manager(FEM)は、その機能を表す論理機能ブロック(LFB)を作成することによってモデル化されます。このLFBを補助メカニズム(SM)LFBと呼びます。 Forwarding Element(FE)リソースを制御するControl Element(CE)も、SM LFBを介してその構成を管理できます。このドキュメントでは、FEの構成パラメーターを指定するLFBであるSM LFBクラスを紹介します。

On a running FE, a CE application may update an FE's runtime configuration via the SM LFB instance.

実行中のFEでは、CEアプリケーションはSM LFBインスタンスを介してFEのランタイム構成を更新できます。

                              ForCES Network Element
                             +-------------------------------------+
                             |         +---------------------+     |
                             |         | Control Application |     |
                             |         +--+--------------+---+     |
                             |            |              |         |
                             |            |              |         |
      --------------   Fc    | -----------+--+      +-----+------+ |
      | CE Manager |---------+-|     CE 1    |------|    CE 2    | |
      --------------         | |             |  Fr  |            | |
            |                | +-+---------+-+      +------------+ |
            | Fl             |   |         | Fp        /           |
            |                |   |         +--------+ /            |
            |                |   | Fp               |/             |
            |                |   |                  |              |
            |                |   |         Fp      /|----+         |
            |                |   |       /--------/      |         |
      --------------     Ff  | ---+----------      --------------  |
      | FE Manager |---------+-|     FE 1   |  Fi  |     FE 2   |  |
      --------------         | |            |------|            |  |
                             | --------------      --------------  |
                             |   |  |  |  |          |  |  |  |    |
                             ----+--+--+--+----------+--+--+--+-----
                                 |  |  |  |          |  |  |  |
                                 |  |  |  |          |  |  |  |
                                   Fi/f                   Fi/f
          Fp: CE-FE interface
          Fr: CE-CE interface
          Fc: Interface between the CE Manager and a CE
          Ff: Interface between the FE Manager and an FE
          Fl: Interface between the CE Manager and the FE Manager
          Fi/f: FE external interface
        

Figure 1: ForCES Architectural Diagram

図1:ForCESのアーキテクチャ図

Figure 1 shows a control application manipulating, at runtime, FE configuration via the SM LFB control. It would appear that this control application is playing the part of the FE Manager and thus appears as the messaging for Ff (FEM to FE interface) going via the standard Fp plane. However, the SM LFB describes a subset of the operations that can be performed over Ff; it does not suggest moving away from the Ff interface.

図1は、SM LFB制御を介して実行時にFE構成を操作する制御アプリケーションを示しています。この制御アプリケーションはFEマネージャーの役​​割を果たしているため、標準のFpプレーンを経由するFf(FEMからFEへのインターフェイス)のメッセージングとして表示されます。ただし、SM LFBはFfで実行できる操作のサブセットを記述します。 Ffインターフェースから離れることはお勧めしません。

The SM LFB class describes the configuration parameters of an FE, namely the LFB classes it should load, the CEs it should be associated with, as well the respective CE IP addresses. Additionally, the SM LFB provides a general purpose attribute definition to describe configuration information, as well as the ability to manipulate the debug logging mechanism.

SM LFBクラスは、FEの構成パラメーター、つまり、それがロードする必要があるLFBクラス、それが関連付けられるべきCE、およびそれぞれのCE IPアドレスを記述します。さらに、SM LFBは、構成情報を説明するための汎用属性定義と、デバッグロギングメカニズムを操作する機能を提供します。

This document assumes that FEs are already booted. The FE's configuration can then be updated at runtime via the SM LFB for runtime configuration purposes. This document does not specify or standardize the FEM-FE (Ff) interface as depicted in [RFC3746]. This document describes a mechanism with which a CE can instruct the SM for FE management using ForCES.

このドキュメントは、FEがすでに起動されていることを前提としています。 FEの構成は、ランタイム構成の目的で、SM LFBを介してランタイムに更新できます。このドキュメントでは、[RFC3746]に示されているFEM-FE(Ff)インターフェイスを指定または標準化していません。このドキュメントでは、CEがForCESを使用してFE管理のためにSMに指示できるメカニズムについて説明します。

This work item makes no assumption of whether FE resources are physical or virtual. In fact, the LFB library provided here is applicable to both. Thus, it can also be useful in addressing control of virtual FEs where individual FEMs can be addressed to control the creation, configuration, and resource assignment of such virtual FEs within a physical FE.

このワークアイテムは、FEリソースが物理的であるか仮想であるかを想定していません。実際、ここで提供されるLFBライブラリは両方に適用できます。したがって、物理FE内のそのような仮想FEの作成、構成、およびリソース割り当てを制御するために個々のFEMをアドレス指定できる仮想FEの制御をアドレス指定する際にも役立ちます。

1.1. Requirements Language
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 [RFC2119].

このドキュメントのキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、 [RFC2119]で説明されているように解釈されます。

1.2. Definitions
1.2. 定義

This document follows the terminology defined by [RFC3654], [RFC3746], [RFC5810], and [RFC5812]. In particular, the reader is expected to be familiar with the following terms:

このドキュメントは、[RFC3654]、[RFC3746]、[RFC5810]、および[RFC5812]によって定義された用語に従います。特に、読者は次の用語に精通している必要があります。

o Logical Functional Block (LFB)

o 論理機能ブロック(LFB)

o Forwarding Element (FE)

o 転送要素(FE)

o Control Element (CE)

o 制御要素(CE)

o ForCES Network Element (NE)

o ForceSネットワーク要素(NOT)

o FE Manager (FEM)

o FEマネージャー(FEM)

o CE Manager

o CEマネージャー

o ForCES Protocol

o ForCESプロトコル

o ForCES Protocol Layer (ForCES PL)

o ForCESプロトコル層(ForCES PL)

o ForCES Protocol Transport Mapping Layer (ForCES TML)

o ForCESプロトコルトランスポートマッピングレイヤー(ForCES TML)

2. Use Cases
2. ユースケース

In this section, we present sample use cases to illustrate the need and usefulness of the SM LFB.

このセクションでは、SM LFBの必要性と有用性を説明するためのサンプルユースケースを示します。

All use cases assume that an FE is already booted up and tied to at least one CE. A control application can delete a CE from an FE's table of CEs, which instructs the FE to terminate the connection with that removed CE. Likewise, the control application via the master CE instructs an FE to establish a ForCES association with a new CE by adding a particular CE to the FE's CEs table.

すべての使用例は、FEがすでに起動され、少なくとも1つのCEに関連付けられていることを前提としています。制御アプリケーションは、CEのFEのテーブルからCEを削除できます。これは、削除されたCEとの接続を終了するようにFEに指示します。同様に、マスターCEを介した制御アプリケーションは、特定のCEをFEのCEテーブルに追加することにより、新しいCEとのForCESアソシエーションを確立するようにFEに指示します。

2.1. High Availability
2.1. 高可用性

Assume an FE associated to only one CE. At runtime, a CE management application may request, for redundancy reasons, that an FE be associated to another CE as a backup. To achieve this goal, the CE management application specifies the Control Element ID (CEID) of the new backup CE (to be uniquely identified within the NE) and the CE's IP address (IPv4 or IPv6).

1つのCEにのみ関連付けられたFEを想定します。実行時に、CE管理アプリケーションは、冗長性の理由で、FEをバックアップとして別のCEに関連付けるよう要求する場合があります。この目標を達成するために、CE管理アプリケーションは、新しいバックアップCEの制御要素ID(CEID)(NE内で一意に識別される)とCEのIPアドレス(IPv4またはIPv6)を指定します。

2.2. Scalability
2.2. スケーラビリティ

Assume an NE cluster that has FEs connected to multiple CEs, possibly in an active backup setup. Assume that system analytics discover that the CE is becoming a bottleneck. A new CE could be booted and some FEs moved to it. To achieve this goal, the CE management application will first ask an FE to connect to a new CE and would then instruct that FE to change its master to the new CE as described in [RFC7121].

アクティブなバックアップセットアップで、FEが複数のCEに接続されているNEクラスタを想定します。システム分析が、CEがボトルネックになっていることを発見したと想定します。新しいCEを起動でき、一部のFEはそれに移動しました。この目標を達成するために、CE管理アプリケーションは最初にFEに新しいCEに接続するように要求し、次に[RFC7121]で説明されているように、そのFEにマスターを新しいCEに変更するように指示します。

2.3. Adding New Resources to an NE
2.3. NEへの新しいリソースの追加

Assume a resource pooling setup with multiple FEs belonging to a resource pool all connected to a dormant resource pool CE. An NE system manager by demand could move an FE from the resource pool to a working NE by asking it first to connect to a CE on the working NE and then asking it to disconnect from the resource pool manager CE.

すべてが休止状態のリソースプールCEに接続されているリソースプールに属する複数のFEを持つリソースプーリング設定を想定します。 NEシステムマネージャーは、要求に応じて、まずFEをリソースプールから作業NEに移動し、まず作業NEのCEに接続してから、リソースプールマネージャーCEから切断するように要求します。

2.4. New LFB Class Installation
2.4. 新しいLFBクラスのインストール

A CE can learn, via the DynamicLFBLoading capability of the SM LFB, whether an FE is capable of loading new LFB classes. Provided that the FE supports new LFB class loading, the CE can request a new LFB to be installed and supported by the FE.

CEは、SM LFBのDynamicLFBLoading機能を介して、FEが新しいLFBクラスをロードできるかどうかを学習できます。 FEが新しいLFBクラスのロードをサポートしている場合、CEは新しいLFBをインストールしてFEがサポートするように要求できます。

To load an LFB class on an FE, the CE will have to provide the following parameters:

FEにLFBクラスをロードするには、CEは次のパラメーターを提供する必要があります。

o LFB class - The LFB class ID

o LFBクラス-LFBクラスID

o LFB version - The version of the LFB class

o LFBバージョン-LFBクラスのバージョン

o LFB class name - Optional, the LFB name

o LFBクラス名-オプション、LFB名

o Parameters - Optional parameters. These parameters are implementation specific. For example, in one implementation they may contain the path where the LFB class implementation resides.

o パラメータ-オプションのパラメータ。これらのパラメータは実装固有です。たとえば、1つの実装では、それらにLFBクラス実装が存在するパスを含めることができます。

The parameters are fields that need to be described in documentation, depending on the implementation; one example is the location of the LFB class to be installed and/or mechanism to download it. The exact detail of the location semantics is implementation specific and out of scope of this document. However, this LFB library provides a placeholder, namely the SupportedParameters capability, which will host any standardized parameters.

パラメータは、実装に応じて、ドキュメントで説明する必要があるフィールドです。 1つの例は、インストールされるLFBクラスの場所および/またはそれをダウンロードするメカニズムです。ロケーションセマンティクスの正確な詳細は実装固有であり、このドキュメントの範囲外です。ただし、このLFBライブラリは、プレースホルダー、つまり、SupportedParameters機能を提供し、標準化されたパラメーターをホストします。

This document does not standardize these parameters. It is expected that some future document will perform that task. These parameters are placeholders for future use, in order not to redefine the LFB class versions each time. They are simple strings that define the parameters supported by the LFB. The CE is expected to read this capability in order to understand the parameters it can use.

このドキュメントでは、これらのパラメータを標準化していません。今後のドキュメントでそのタスクが実行される予定です。これらのパラメーターは、毎回LFBクラスのバージョンを再定義しないために、将来使用するためのプレースホルダーです。これらはLFBがサポートするパラメーターを定義する単純な文字列です。 CEは、使用できるパラメータを理解するために、この機能を読むことが期待されています。

2.5. Logging Mechanism
2.5. ロギングメカニズム

The SM LFB class also provides a useful log-level manipulation. Experience has proven that the CE may be required to increase or decrease the debug levels of parts of the FE, whether that be LFBs, portions of LFBs, or generic processing code (all called "modules"). The module granularity is implementation specific and is not discussed in this document. The debug levels are derived from the "syslog Message Severities" registry <http://www.iana.org/assignments/syslog-parameters> defined in [RFC3164].

SM LFBクラスは、便利なログレベルの操作も提供します。経験から、CEはLFB、LFBの一部、または汎用処理コード(すべて「モジュール」と呼ばれる)であっても、FEのパーツのデバッグレベルを増減する必要がある場合があります。モジュールの粒度は実装固有であり、このドキュメントでは説明しません。デバッグレベルは、[RFC3164]で定義されている「syslog Message Severities」レジストリ<http://www.iana.org/assignments/syslog-parameters>から取得されます。

2.6. General-Purpose Attribute Definition
2.6. 汎用属性の定義

Experience has shown that a generic attribute name-value pair is useful for describing configuration information. This LFB class defines such a generic attribute name-value pair defined as a table of attribute name-value pair values. The attribute name-value pair is implementation specific and at the moment there is nothing to standardize. As an example, consider switches that have exactly the same LFB classes and capabilities but need to be used in different roles. A good example would be a switch that could be used either as Spine or Top-of-Rack (ToR) in data-center setups. An attribute that defines the role could be retrieved from the FE, which will then dictate how it is controlled and configured. However, as in the case of LFB class loading parameters, this LFB class library provides a placeholder, namely the SupportedArguments capability, which will host any standardized arguments. This document does not standardize these parameters. The CE is expected to read the SupportedArguments capability in order to know what attributes it can use.

経験から、一般的な属性の名前と値のペアは構成情報を説明するのに役立つことがわかっています。このLFBクラスは、属性の名前と値のペアの値のテーブルとして定義される、このような一般的な属性の名前と値のペアを定義します。属性の名前と値のペアは実装固有であり、現時点では標準化するものはありません。例として、まったく同じLFBクラスと機能を備えているが、異なる役割で使用する必要があるスイッチを考えてみます。良い例は、データセンターのセットアップでスパインまたはトップオブラック(ToR)として使用できるスイッチです。ロールを定義する属性をFEから取得できます。これにより、FEを制御および構成する方法が決まります。ただし、LFBクラスロードパラメーターの場合のように、このLFBクラスライブラリはプレースホルダー、つまり、サポートされているArguments機能を提供し、標準化された引数をホストします。このドキュメントでは、これらのパラメータを標準化していません。 CEは、使用できる属性を知るために、SupportedArguments機能を読み取る必要があります。

3. Applicability Statement
3. 適用性ステートメント

Examples of SM usage include, but are not limited to, the following two usage scenarios. These two scenarios are not implementation details, but rather depict how the SM class can be used to achieve the intended SM for manipulating the configuration of FEs.

SMの使用例には、次の2つの使用シナリオが含まれますが、これらに限定されません。これらの2つのシナリオは実装の詳細ではなく、SMクラスを使用して、FEの構成を操作する目的のSMを実現する方法を示しています。

3.1. FE Integrated
3.1. FE統合

Only one instance of the SM LFB class can exist and is directly related to the FE.

SM LFBクラスのインスタンスは1つしか存在できず、FEに直接関連しています。

3.2. Virtual FEs
3.2. 仮想FE

In the case of the FE software that has hierarchical virtual FEs, multiple instances of the SM LFB class can exist, one per each virtual FE.

階層型仮想FEを備えたFEソフトウェアの場合、SM LFBクラスの複数のインスタンスが、仮想FEごとに1つ存在できます。

4. SM Library
4. SMライブラリ
4.1. Frame Definitions
4.1. フレーム定義

This LFB class does not define any frames.

このLFBクラスはフレームを定義しません。

4.2. Data Type Definitions
4.2. データ型定義

This library defines the following data types.

このライブラリは、次のデータ型を定義します。

   +------------+--------------------------------------+---------------+
   | Data Type  | Type                                 | Synopsis      |
   | Name       |                                      |               |
   +------------+--------------------------------------+---------------+
   | loglevels  | An enumerated char-based atomic data | The possible  |
   |            | type.                                | debug log     |
   |            |                                      | levels.       |
   |            |                                      | Derived from  |
   |            |                                      | syslog.       |
   | LogRowType | A struct containing three            | The logging   |
   |            | components: the LogModule (string),  | module row.   |
   |            | the optional ModuleFilename          |               |
   |            | (string), and the optional           |               |
   |            | DebugLevel, which is one of the      |               |
   |            | enumerated loglevels.                |               |
   | CERow      | A struct that contains three         | A struct that |
   |            | components: the address family of    | defines the   |
   |            | the CE IP (uchar), the CE's IPs      | CE table row. |
   |            | (octetstring[16]), and the CE's ID   |               |
   |            | (uint32).                            |               |
   | LCRowtype  | A struct that contains four          | The LFB Class |
   |            | components: the LFB class ID         | Configuration |
   |            | (uint32), the LFB version            | Definition.   |
   |            | (string[8]), the optional LFB Name   |               |
   |            | (string), and the optional           |               |
   |            | Parameters (string).                 |               |
   | NameVal    | A struct that contains two           | Arbitrary     |
   |            | components: an attribute name        | Name Value    |
   |            | (string) and an attribute value      | struct.       |
   |            | (string).                            |               |
   +------------+--------------------------------------+---------------+
        

FEM Data Types

FEMデータ型

4.3. Metadata Definitions
4.3. メタデータ定義

This LFB does not define any metadata definitions.

このLFBはメタデータ定義を定義しません。

4.4. SM
4.4. CM

The Subsidiary Mechanism LFB is an LFB that standardizes configuration of the FE parameters.

補助メカニズムLFBは、FEパラメータの構成を標準化するLFBです。

4.4.1. Data Handling
4.4.1. データ処理

The SM LFB does not handle any packets. Its function is to provide the configuration parameters to the CE to be updated at runtime.

SM LFBはパケットを処理しません。その機能は、実行時に更新される構成パラメーターをCEに提供することです。

4.4.2. Components
4.4.2. 部品

This LFB class has four components specified.

このLFBクラスには、4つのコンポーネントが指定されています。

The Debug component (ID 1) is a table to support changing of an FE's module debug levels. Changes in an FE's debug table rows will alter the debug level of the corresponding module.

デバッグコンポーネント(ID 1)は、FEのモジュールデバッグレベルの変更をサポートするテーブルです。 FEのデバッグテーブルの行を変更すると、対応するモジュールのデバッグレベルが変更されます。

The LFBLoad component (ID 2) is a table of LFB classes that the FE loads. Adding new rows in this table instructs the FE to load new LFB classes, and removing rows will unload them when possible. These two actions will, in effect, alter the SupportedLFBs capabilities table of FEObject LFB [RFC5812]. Each such row MUST provide (and is specified by this library) the LFB class ID. Optionally, the LFB class ID version may be specified, and the FE MUST assume that version 1.0 is used when the version is unspecified.

LFBLoadコンポーネント(ID 2)は、FEがロードするLFBクラスのテーブルです。このテーブルに新しい行を追加すると、FEは新しいLFBクラスをロードするように指示され、行を削除すると、可能な場合はアンロードされます。これら2つのアクションは、事実上、FEObject LFB [RFC5812]のSupportedLFBs機能テーブルを変更します。このような各行は、LFBクラスIDを提供する必要があります(このライブラリによって指定されます)。必要に応じて、LFBクラスIDバージョンを指定できます。FEは、バージョンが指定されていない場合、バージョン1.0が使用されていると想定する必要があります。

The AttributeValues component (ID 3) is the AttributeValues table, a generic attribute-value pair.

AttributeValuesコンポーネント(ID 3)は、一般的な属性と値のペアであるAttributeValuesテーブルです。

The CEs (ID 4) is the table of runtime CEs we are asking the FE to be able to connect with. By adding a row in this table, the CE instructs the FE to be able to connect with the specified CE. By doing a delete on this table, the CE instructs the FE to terminate any connection with that CE. How the FE interacts with the new CEs is dependent on the operations discussed in [RFC7121].

CE(ID 4)は、FEが接続できるように要求しているランタイムCEのテーブルです。このテーブルに行を追加することにより、CEは指定されたCEに接続できるようにFEに指示します。このテーブルで削除を行うことにより、CEはFEにそのCEとの接続を終了するように指示します。 FEが新しいCEと対話する方法は、[RFC7121]で説明されている操作に依存します。

It is worth noting that the generic attribute-value pairs, the LFBload parameters, and the module information are all strings. To cope with string sizes, a CE application can extract that information from the component properties as defined in [RFC5812].

一般的な属性と値のペア、LFBloadパラメーター、およびモジュール情報はすべて文字列であることは注目に値します。文字列サイズに対処するために、CEアプリケーションは、[RFC5812]で定義されているコンポーネントプロパティからその情報を抽出できます。

4.4.3. Capabilities
4.4.3. 能力

This LFB provides three capabilities. The first, DynamicLFBLoading, specifies whether this FE supports dynamic loading of new LFB classes. The second, SupportedParameters, is a placeholder and will store all the supported parameters for LFB class loading. The final, SupportedAttributes, is also a placeholder and will store all the supported attributes for the attribute-value pair table.

このLFBは3つの機能を提供します。最初のDynamicLFBLoadingは、このFEが新しいLFBクラスの動的ロードをサポートするかどうかを指定します。 2番目のSupportedParametersはプレースホルダーであり、LFBクラスのロードでサポートされるすべてのパラメーターを格納します。最後のSupportedAttributesもプレースホルダーであり、属性と値のペアのテーブルでサポートされているすべての属性を格納します。

4.4.4. Events
4.4.4. イベント

This LFB has four events specified.

このLFBには4つのイベントが指定されています。

Two events reflect CE additions and report to the CE whether an entry of the CEs information has been added or deleted. In both cases, the event report constitutes the added or deleted row contents.

2つのイベントはCEの追加を反映し、CE情報のエントリが追加または削除されたかどうかをCEに報告します。どちらの場合も、イベントレポートは追加または削除された行コンテンツを構成します。

The other two events reflect LFB class loading and notify whether an entry of the LFBLoad table is added or deleted.

他の2つのイベントはLFBクラスのロードを反映し、LFBLoadテーブルのエントリが追加または削除されたかどうかを通知します。

5. XML for SM LFB
5. SM LFBのXML
   <LFBLibrary xmlns="urn:ietf:params:xml:ns:forces:lfbmodel:1.1"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" provides="SM">
     <!-- XXX  -->
     <dataTypeDefs>
       <dataTypeDef>
         <name>loglevels</name>
         <synopsis>The possible debug log levels. Derived from syslog.
         </synopsis>
         <atomic>
           <baseType>char</baseType>
           <specialValues>
             <specialValue value="-1">
               <name>DEB_OFF</name>
               <synopsis> The logs are totally turned off </synopsis>
             </specialValue>
             <specialValue value="0">
               <name>DEB_EMERG</name>
               <synopsis> Emergency level </synopsis>
             </specialValue>
             <specialValue value="1">
               <name>DEB_ALERT</name>
               <synopsis> Alert level </synopsis>
             </specialValue>
             <specialValue value="2">
               <name>DEB_CRIT</name>
               <synopsis> Critical level </synopsis>
             </specialValue>
             <specialValue value="3">
               <name>DEB_ERR</name>
               <synopsis> error level </synopsis>
             </specialValue>
             <specialValue value="4">
               <name>DEB_WARNING</name>
               <synopsis> warning level </synopsis>
             </specialValue>
        
             <specialValue value="5">
               <name>DEB_NOTICE</name>
               <synopsis>Notice level </synopsis>
             </specialValue>
             <specialValue value="6">
               <name>DEB_INFO</name>
               <synopsis>Info level </synopsis>
             </specialValue>
             <specialValue value="7">
               <name>DEB_DEBUG</name>
               <synopsis>Debug level </synopsis>
             </specialValue>
           </specialValues>
         </atomic>
       </dataTypeDef>
       <dataTypeDef>
         <name>LogRowtype</name>
         <synopsis>The logging module row</synopsis>
         <struct>
           <component componentID="1">
             <name>lmodule</name>
             <synopsis>The LOG Module Name</synopsis>
             <typeRef>string</typeRef>
           </component>
           <component componentID="2">
             <name>filename</name>
             <synopsis>The Module File Name</synopsis>
             <optional/>
             <typeRef>string</typeRef>
           </component>
           <component componentID="3">
             <name>deblvl</name>
             <synopsis>debug level</synopsis>
             <optional/>
             <typeRef>loglevels</typeRef>
           </component>
         </struct>
       </dataTypeDef>
       <dataTypeDef>
         <name>CERow</name>
         <synopsis>The CE Table Row</synopsis>
         <struct>
           <component componentID="1">
             <name>AddressFamily</name>
             <synopsis>The address family</synopsis>
             <atomic>
               <baseType>uchar</baseType>
               <specialValues>
        
                 <specialValue value="2">
                   <name>IFA_AF_INET</name>
                   <synopsis>IPv4</synopsis>
                 </specialValue>
                 <specialValue value="10">
                   <name>IFA_AF_INET6</name>
                   <synopsis>IPv6</synopsis>
                 </specialValue>
               </specialValues>
             </atomic>
           </component>
           <component componentID="2">
             <name>CEIP</name>
             <synopsis>CE ip v4 or v6(selected by family)</synopsis>
             <typeRef>octetstring[16]</typeRef>
           </component>
           <component componentID="3">
             <name>CEID</name>
             <synopsis>The CE ID</synopsis>
             <optional/>
             <typeRef>uint32</typeRef>
           </component>
         </struct>
       </dataTypeDef>
       <dataTypeDef>
         <name>LCRowtype</name>
         <synopsis>The LFB Class Configuration Definition</synopsis>
         <struct>
           <component componentID="1">
             <name>LFBClassID</name>
             <synopsis>The LFB Class ID</synopsis>
             <typeRef>uint32</typeRef>
           </component>
           <component componentID="2">
             <name>LFBVersion</name>
             <synopsis>The LFB Class Version</synopsis>
             <optional/>
             <typeRef>string</typeRef>
           </component>
           <component componentID="3">
             <name>LFBName</name>
             <synopsis>The LFB Class Name</synopsis>
             <optional/>
             <typeRef>string</typeRef>
           </component>
           <component componentID="4">
             <name>Parameters</name>
             <synopsis>Optional parameters such as where the LFB is
             located</synopsis>
             <optional/>
             <typeRef>string</typeRef>
           </component>
         </struct>
       </dataTypeDef>
       <dataTypeDef>
         <name>NameVal</name>
         <synopsis>Arbitrary Name Value struct</synopsis>
         <struct>
           <component componentID="1">
             <name>AttrName</name>
             <synopsis>The Attribute Name</synopsis>
             <typeRef>string</typeRef>
           </component>
           <component componentID="2">
             <name>AttrVal</name>
             <synopsis>The Attribute Value</synopsis>
             <typeRef>string</typeRef>
           </component>
         </struct>
       </dataTypeDef>
     </dataTypeDefs>
     <LFBClassDefs>
       <LFBClassDef LFBClassID="19">
         <name>SM</name>
         <synopsis>
            The Subsidiary Management LFB
         </synopsis>
         <version>1.0</version>
         <components>
           <component componentID="1" access="read-write">
             <name>Debug</name>
             <synopsis>A table to support changing of all debug levels
             </synopsis>
             <array type="variable-size">
               <typeRef>LogRowtype</typeRef>
             </array>
           </component>
           <component componentID="2" access="write-only">
             <name>LFBLoad</name>
             <synopsis>An LFB Class to Load</synopsis>
             <array type="variable-size">
               <typeRef>LCRowtype</typeRef>
             </array>
           </component>
           <component componentID="3" access="read-write">
             <name>AttributeValues</name>
        
             <synopsis>Table of general purpose SM attribute Values
             </synopsis>
             <array type="variable-size">
               <typeRef>NameVal</typeRef>
             </array>
           </component>
           <component componentID="4" access="write-only">
             <name>CEs</name>
             <synopsis>Table of CEs we are asking the FE to associate
              with</synopsis>
             <array type="variable-size">
               <typeRef>CERow</typeRef>
             </array>
           </component>
         </components>
         <!---->
         <capabilities>
           <capability componentID="10">
             <name>DynamicLFBLoading</name>
            <synopsis>This capability specifies whether this FE supports
              dynamic loading of new LFBs</synopsis>
             <typeRef>boolean</typeRef>
           </capability>
           <capability componentID="11">
             <name>SupportedParameters</name>
             <synopsis>This capability contains all the supported
              parameters</synopsis>
             <array type="variable-size">
               <typeRef>string</typeRef>
             </array>
           </capability>
           <capability componentID="12">
             <name>SupportedAttributes</name>
             <synopsis>This capability contains all the supported
              attributes names</synopsis>
             <array type="variable-size">
               <typeRef>string</typeRef>
             </array>
           </capability>
         </capabilities>
         <events baseID="20">
           <event eventID="1">
             <name>CEAdded</name>
             <synopsis>An CE has been added</synopsis>
             <eventTarget>
               <eventField>CEs</eventField>
             </eventTarget>
             <eventCreated/>
        
             <eventReports>
               <eventReport>
                 <eventField>CEs</eventField>
                 <eventSubscript>_CEIDsrowid_</eventSubscript>
               </eventReport>
             </eventReports>
           </event>
           <event eventID="2">
             <name>CEDeleted</name>
             <synopsis>An CE has been deleted</synopsis>
             <eventTarget>
               <eventField>CEs</eventField>
               <eventSubscript>_CEIDsrowid_</eventSubscript>
             </eventTarget>
             <eventDeleted/>
             <eventReports>
               <eventReport>
                 <eventField>CEs</eventField>
                 <eventSubscript>_CEIDsrowid_</eventSubscript>
               </eventReport>
             </eventReports>
           </event>
           <event eventID="3">
             <name>LFBLoaded</name>
             <synopsis>An LFB has been loaded</synopsis>
             <eventTarget>
               <eventField>LFBLoad</eventField>
             </eventTarget>
             <eventCreated/>
             <eventReports>
               <eventReport>
                 <eventField>LFBLoad</eventField>
                 <eventSubscript>_LFBLoadrowid_</eventSubscript>
               </eventReport>
             </eventReports>
           </event>
           <event eventID="4">
             <name>LFBUnloaded</name>
             <synopsis>An CE has been unloaded</synopsis>
             <eventTarget>
               <eventField>LFBLoad</eventField>
               <eventSubscript>_LFBLoadrowid_</eventSubscript>
             </eventTarget>
             <eventDeleted/>
             <eventReports>
               <eventReport>
                 <eventField>LFBLoad</eventField>
                 <eventSubscript>_LFBLoadrowid_</eventSubscript>
        
               </eventReport>
             </eventReports>
           </event>
         </events>
       </LFBClassDef>
     </LFBClassDefs>
   </LFBLibrary>
        

Figure 2: FEM XML LFB Library

図2:FEM XML LFBライブラリ

6. Security Considerations
6. セキュリティに関する考慮事項

This document does not alter the ForCES model [RFC5812] or the ForCES protocol [RFC5810]. As such, it has no impact on their security considerations. This document simply defines the operational parameters and capabilities of an LFB that manage the SM for loading LFBs and create new connections between FEs and CEs.

このドキュメントは、ForCESモデル[RFC5812]またはForCESプロトコル[RFC5810]を変更しません。そのため、セキュリティに関する考慮事項には影響しません。このドキュメントでは、LFBをロードするためのSMを管理し、FEとCE間の新しい接続を作成するLFBの操作パラメーターと機能を簡単に定義します。

On the issue of trust, a designer should take into account that the CE that creates new connections to CEs is either:

信頼の問題では、設計者は、CEへの新しい接続を作成するCEが次のいずれかであることを考慮する必要があります。

o The FE manager that is responsible for managing the FEs, or

o FEの管理を担当するFEマネージャー、または

o An already associated CE

o すでに関連付けられているCE

In both of these cases, the entity making the connections should already be trusted to perform such activities. If the entity making the connections is faulty, rogue, or hacked, there is no way for the FE to know this, and it will perform any action that the CE requests. Therefore, this document does not attempt to analyze the security issues that may arise from misuse of the SM LFB. Any such issues, if they exist, and mitigation strategies are for the designers of the particular SM implementation, not the general mechanism.

これらのどちらの場合でも、接続を行うエンティティは、そのようなアクティビティを実行するためにすでに信頼されている必要があります。接続を行うエンティティに欠陥があるか、不正であるか、ハッキングされている場合、FEがこれを知る方法はなく、CEが要求するアクションを実行します。したがって、このドキュメントでは、SM LFBの誤用から発生する可能性のあるセキュリティ問題の分析を試みていません。そのような問題が存在する場合は、緩和戦略は特定のSM実装の設計者向けであり、一般的なメカニズムではありません。

The reader is also referred to the ForCES framework [RFC3746] document, particularly Section 8, for an analysis of potential threats introduced by ForCES and how the ForCES architecture addresses them.

ForCESによってもたらされる潜在的な脅威の分析とForCESアーキテクチャがそれらにどのように対処するかについて、読者はForCESフレームワーク[RFC3746]ドキュメント、特にセクション8も参照されます。

7. IANA Considerations
7. IANAに関する考慮事項
7.1. LFB Class Names and LFB Class Identifiers
7.1. LFBクラス名とLFBクラス識別子

LFB classes defined by this document belong to LFBs defined by Standards Track RFCs. The registration procedure is Standards Action for the range 0 to 65535 and First Come First Served with any publicly available specification for identifiers over 65535 [RFC5226]. This specification registers the following LFB class name and LFB class identifier in the "Logical Functional Block (LFB) Class Names and Class Identifiers" registry:

このドキュメントで定義されているLFBクラスは、Standards Track RFCで定義されているLFBに属しています。登録手順は、0〜65535の範囲の標準アクションであり、65535 [RFC5226]を超える識別子の公開仕様を先着順で提供します。この仕様は、次のLFBクラス名とLFBクラス識別子を「論理機能ブロック(LFB)クラス名とクラス識別子」レジストリに登録します。

   +------------+--------+---------+-----------------------+-----------+
   | LFB Class  |  LFB   |   LFB   |      Description      | Reference |
   | Identifier | Class  | Version |                       |           |
   |            |  Name  |         |                       |           |
   +------------+--------+---------+-----------------------+-----------+
   |     19     |   SM   |   1.0   |      An SM LFB to     |  RFC 7729 |
   |            |        |         |      standardize      |   (this   |
   |            |        |         | subsidiary management | document) |
   |            |        |         |   for ForCES Network  |           |
   |            |        |         |        Elements       |           |
   +------------+--------+---------+-----------------------+-----------+
        

Logical Functional Block (LFB) Class Name and Class Identifier

論理機能ブロック(LFB)クラス名とクラス識別子

8. References
8. 参考文献
8.1. Normative References
8.1. 引用文献

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、DOI 10.17487 / RFC2119、1997年3月、<http://www.rfc-editor.org/info/ rfc2119>。

[RFC5810] Doria, A., Ed., Hadi Salim, J., Ed., Haas, R., Ed., Khosravi, H., Ed., Wang, W., Ed., Dong, L., Gopal, R., and J. Halpern, "Forwarding and Control Element Separation (ForCES) Protocol Specification", RFC 5810, DOI 10.17487/RFC5810, March 2010, <http://www.rfc-editor.org/info/rfc5810>.

[RFC5810]ドリア、A。、編、ハディサリム、J。、編、ハース、R。、編、コスラビ、H。、編、王、W。、編、ドン、L。、ゴパル、R。、およびJ. Halpern、「Forwarding and Control Element Separation(ForCES)Protocol Specification」、RFC 5810、DOI 10.17487 / RFC5810、2010年3月、<http://www.rfc-editor.org/info/rfc5810> 。

[RFC5812] Halpern, J. and J. Hadi Salim, "Forwarding and Control Element Separation (ForCES) Forwarding Element Model", RFC 5812, DOI 10.17487/RFC5812, March 2010, <http://www.rfc-editor.org/info/rfc5812>.

[RFC5812] Halpern、J。およびJ. Hadi Salim、「Forwarding and Control Element Separation(ForCES)Forwarding Element Model」、RFC 5812、DOI 10.17487 / RFC5812、March 2010、<http://www.rfc-editor.org / info / rfc5812>。

[RFC7121] Ogawa, K., Wang, W., Haleplidis, E., and J. Hadi Salim, "High Availability within a Forwarding and Control Element Separation (ForCES) Network Element", RFC 7121, DOI 10.17487/RFC7121, February 2014, <http://www.rfc-editor.org/info/rfc7121>.

[RFC7121] Ogawa、K.、Wang、W.、Haleplidis、E.、and J. Hadi Salim、 "High Availability within a Forwarding and Control Element Separation(ForCES)Network Element"、RFC 7121、DOI 10.17487 / RFC7121、February 2014、<http://www.rfc-editor.org/info/rfc7121>。

8.2. Informative References
8.2. 参考引用

[RFC3164] Lonvick, C., "The BSD Syslog Protocol", RFC 3164, DOI 10.17487/RFC3164, August 2001, <http://www.rfc-editor.org/info/rfc3164>.

[RFC3164] Lonvick、C。、「The BSD Syslog Protocol」、RFC 3164、DOI 10.17487 / RFC3164、2001年8月、<http://www.rfc-editor.org/info/rfc3164>。

[RFC3654] Khosravi, H., Ed. and T. Anderson, Ed., "Requirements for Separation of IP Control and Forwarding", RFC 3654, DOI 10.17487/RFC3654, November 2003, <http://www.rfc-editor.org/info/rfc3654>.

[RFC3654] Khosravi、H.、Ed。 T.アンダーソン編、「IP制御と転送の分離の要件」、RFC 3654、DOI 10.17487 / RFC3654、2003年11月、<http://www.rfc-editor.org/info/rfc3654>。

[RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, "Forwarding and Control Element Separation (ForCES) Framework", RFC 3746, DOI 10.17487/RFC3746, April 2004, <http://www.rfc-editor.org/info/rfc3746>.

[RFC3746] Yang、L.、Dantu、R.、Anderson、T。、およびR. Gopal、「Forwarding and Control Element Separation(ForCES)Framework」、RFC 3746、DOI 10.17487 / RFC3746、2004年4月、<http:/ /www.rfc-editor.org/info/rfc3746>。

[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, DOI 10.17487/RFC5226, May 2008, <http://www.rfc-editor.org/info/rfc5226>.

[RFC5226] Narten、T。およびH. Alvestrand、「RFCでIANAの考慮事項セクションを作成するためのガイドライン」、BCP 26、RFC 5226、DOI 10.17487 / RFC5226、2008年5月、<http://www.rfc-editor.org / info / rfc5226>。

Acknowledgments

謝辞

The authors would like to thank Damascene Joachimpillai, Joel Halpern, Chuanhuang Li, and many others for their discussions and support.

著者は、彼らの議論とサポートのために、ダマシン・ジョアヒンピライ、ジョエル・ハルパーン、チュアンファン・リー、および他の多くの人々に感謝したいと思います。

The authors are grateful to Joel Halpern for shepherding this document. The authors would also like to thank Alia Atlas for taking on the role of sponsoring this document. Finally, thanks to Juergen Schoenwaelder for his operational directorate's review and Alexey Melnikov for his security review.

著者は、この文書を提出してくれたJoel Halpernに感謝します。著者はまた、このドキュメントを後援する役割を引き受けてくれたAlia Atlasに感謝します。最後に、運用部門のレビューを行ったJuergen Schoenwaelderとセキュリティレビューを行ったAlexey Melnikovに感謝します。

Authors' Addresses

著者のアドレス

Bhumip Khasnabish ZTE TX, Inc. 55 Madison Avenue, Suite 160 Morristown, New Jersey 07960 United States

Bhumip Khasnabish ZTE TX、Inc. 55 Madison Avenue、Suite 160 Morristown、New Jersey 07960 United States

   Phone: +001-781-752-8003
   Email: vumip1@gmail.com, bhumip.khasnabish@ztetx.com
   URI:   http://tinyurl.com/bhumip/
        

Evangelos Haleplidis University of Patras Department of Electrical and Computer Engineering Patras 26500 Greece

エヴァンジェロスハレプリディスパトラス大学電気電子工学科パトラス26500ギリシャ

   Email: ehalep@ece.upatras.gr
        

Jamal Hadi Salim (editor) Mojatatu Networks Suite 200, 15 Fitzgerald Road Ottawa, Ontario K2H 9G1 Canada

Jamal Hadi Salim(編集者)Mojatatu Networks Suite 200、15 Fitzgerald Roadオタワオンタリオ州K2H 9G1カナダ

   Email: hadi@mojatatu.com