I-D"SDN Layers and Architecture Terminology"読んでみた(1)
注意事項
- 元文書はこれ:
- 用語や基本的なモデルの定義と整理、周辺技術サーベイの基礎的なドキュメントとして有用だと思うので、英語のトレーニングというのもかねて読んでみました。兼トレーニングなので、なるべく本文の字義通りになるようにしたつもりですが、変に直訳調だったりで、わかりやすい形にはなってないと思われます。もうちょっと正直にいうと、正確に意味を理解し切れてないところも多々あるので正しい解釈になってるかどうか怪しいところが結構あります。
- ページヘッダ部分が邪魔だったので削ってます。
- 訳文間に入れた時点で印刷レイアウト考慮に入れても仕方がないので、見やすさ重視にしてます。
[追記 2014/10/20]
- 10/15 に draft-irtf-sdnrg-layer-terminology-03 が出たのに気づいておらず -02 でやってたけど、(1) 公開直後に -03 が出ていることに気づいた……ので -03 に更新します。まあ大して差分なかったし。
- まだ draft だから変更あるだろうけど……まあ気が向いたら更新するかもしれない。
[追記ここまで]
Abstract
SDNRG E. Haleplidis, Ed. Internet-Draft University of Patras Intended status: Informational K. Pentikousis, Ed. Expires: April 18, 2015 EICT S. Denazis University of Patras J. Hadi Salim Mojatatu Networks D. Meyer Brocade O. Koufopavlou University of Patras October 15, 2014 SDN Layers and Architecture Terminology draft-irtf-sdnrg-layer-terminology-03 Abstract Software-Defined Networking (SDN) refers to a new approach for network programmability, that is, the capacity to initialize, control, change, and manage network behavior dynamically via open interfaces. SDN emphasizes the role of software in running networks through the introduction of an abstraction for the data forwarding plane and, by doing so, separates it from the control plane. This separation allows faster innovation cycles at both planes as experience has already shown. However, there is increasing confusion as to what exactly SDN is, what is the layer structure in an SDN architecture and how do layers interface with each other. This document, a product of the IRTF Software-Defined Networking Research Group (SDNRG), addresses these questions and provides a concise reference for the SDN research community based on relevant peer- reviewed literature, the RFC series, and relevant documents by other standards organizations.
Software-Defined Networking (SDN) はネットワークのプログラム可能性のための新しいアプローチに注意を向ける。ネットワークのプログラム可能性とはつまり、オープンインタフェースを通して、ネットワークのふるまいを動的に初期化・制御・変更・管理するための能力である。SDNは、稼働しているネットワークにおいて、データフォワーディングプレーンを抽象化し、フォワーディングプレーンとコントロールプレーンを分離することによって、ソフトウェアの役割を強調する。これまでの事例を通して実証されているように、この分離はより速いイノベーションサイクルを、両方のプレーンにおいて実現する。しかし、そこには、SDNとは厳密には何か、SDNにおけるレイヤ構造とは何か、レイヤ・インタフェースにおいてそれぞれは何をすべきか、…についての混乱がある。IRTF Software-Defined networking Research Group (SDNRG) の成果物である本書では、これらの疑問に注意を向け、SDN研究コミュニティのために、相互レビューされた関連文献、一連のRFC、そのほかの標準化団体による関連文書に基づいた簡潔な参照を提供する。
Status of This Memo and Copyright Notice
Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on April 18, 2015. Copyright Notice Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved. 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.
Table of Contents
Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. SDN Layers and Architecture . . . . . . . . . . . . . . . . . 6 3.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . 7 3.2. Network Devices . . . . . . . . . . . . . . . . . . . . . 11 3.3. Control Plane . . . . . . . . . . . . . . . . . . . . . . 12 3.4. Management Plane . . . . . . . . . . . . . . . . . . . . 13 3.5. Control and Management Plane Discussion . . . . . . . . . 14 3.5.1. Timescale . . . . . . . . . . . . . . . . . . . . . . 15 3.5.2. Persistence . . . . . . . . . . . . . . . . . . . . . 15 3.5.3. Locality . . . . . . . . . . . . . . . . . . . . . . 15 3.5.4. CAP Theorem Insights . . . . . . . . . . . . . . . . 15 3.6. Network Services Abstraction Layer . . . . . . . . . . . 16 3.7. Application Plane . . . . . . . . . . . . . . . . . . . . 17 4. SDN Model View . . . . . . . . . . . . . . . . . . . . . . . 18 4.1. ForCES . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.2. NETCONF/YANG . . . . . . . . . . . . . . . . . . . . . . 19 4.3. OpenFlow . . . . . . . . . . . . . . . . . . . . . . . . 19 4.4. Interface to the Routing System . . . . . . . . . . . . . 20 4.5. SNMP . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.6. PCEP . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.7. BFD . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 23 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 23 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 9. Security Considerations . . . . . . . . . . . . . . . . . . . 24 10. Informative References . . . . . . . . . . . . . . . . . . . 24 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 32
1. Introduction
1. Introduction Software-Defined Networking (SDN) is a term of the programmable networks paradigm [PNSurvey99][OF08]. In short, SDN refers to the ability of software applications to program individual network devices dynamically and therefore control the behavior of the network as a whole [NV09]. Boucadair and Jacquenet [RFC7149] point out that SDN is a set of techniques used to facilitate the design, delivery and operation of network services in a deterministic, dynamic, and scalable manner.
Software-Defined Networking (SDN) は、プログラム可能なネットワークのパラダイム(理論的枠組み)を表す用語である[PNSurvey99][OF08]。つまり、SDN はソフトウェア・アプリケーションが個々のネットワーク機器を動的にプログラムし、その結果ネットワーク全体のふるまいを制御するための能力を指す[NV09]。Boucadair と Jacquenet [RFC7149] は、SDN は設計を容易にし、決定論的・動的・拡張可能な方法でネットワークサービスの運用とサービスデリバリを行うために使われる技術の集合である、と指摘している。
A key element in SDN is the introduction of an abstraction between the (traditional) forwarding and control planes in order to separate them and provide applications with the means necessary to programmatically control the network. The goal is to leverage this separation, and the associated programmability, in order to reduce complexity and enable faster innovation at both planes [A4D05].
SDN の鍵となる要素は、(伝統的な)フォワーディングプレーンとコントロールプレーンを分離し、プログラム的にネットワークを制御するために必要な手段を提供するための、プレーン間の抽象化の導入である。その目的は、複雑さを軽減し、速いイノベーションを両方のプレーンで可能にするために、このレイヤ分離と付随するプログラム可能性を活用することである[A4D05]。
The historical evolution of the programmable networks R&D area is reviewed in detail in [SDNHistory][SDNSurvey], starting with efforts dating back to the 1980s. As Feamster et al. [SDNHistory] document, many of the ideas, concepts and concerns are applicable to the latest R&D in SDN, and SDN standardization we may add, and have been under extensive investigation and discussion in the research community for quite some time. For example, Rooney et al. [Tempest] discuss how to allow third-party access to the network without jeopardizing network integrity, or how to accommodate legacy networking solutions in their (then new) programmable environment. Further, the concept of separating the control and forwarding planes, which is prominent in SDN, has been extensively discussed even prior to 1998 [Tempest][P1520], in SS7 networks [ITUSS7], Ipsilon Flow Switching [RFC1953][RFC2297] and ATM [ITUATM].
1980 年代からのプログラム可能なネットワークについての研究開発の領域に関する歴史的な変遷は、[SDNHistory][SDNSurvey] で詳細に考察されている。Feamster ら [SDNHistory] によると、アイデア・概念・関心事の多くは、最新の SDN に関する研究開発や我々が加えようとしている SDN 標準化に適用可能であり、研究者コミュニティにおいて、時間をかけた広範囲な調査や議論を受けている。たとえば、Rooney ら [Tempest] は、ネットワークの整合性(integrity)を危険にさらすことなくサードパーティのアクセスをネットワークへ許可する方法、または、古いネットワーク・ソリューションと新しいプログラム可能な環境を適合させる方法について検討している。さらに、SDN の顕著な特徴であるコントロールプレーンとフォワーディングプレーンを分離させるという概念は、SS7 networks [ITUSS7], Ipsilon Flow Switching [RFC1953][RFC2297], ATM [ITUATM] など、1998 年以前に広範囲に議論されてきた [Tempest][P1520]。
SDN research often focuses on varying aspects of programmability, and we are frequently confronted with conflicting points of view regarding what exactly SDN is. For instance, we find that for various reasons (e.g. work focusing on one domain and therefore not necessarily applicable as-is to other domains), certain well-accepted definitions do not correlate well with each other. For example, both OpenFlow [OpenFlow] and NETCONF [RFC6241] have been characterized as SDN interfaces, but they refer to control and management respectively.
SDN 研究はしばしばプログラム可能性の様相の変化に焦点を当て、そして、我々は頻繁に見解の矛盾に直面する: SDN とは厳密には何か、について。たとえば、我々は、様々な理由によって (たとえば、活動はひとつの領域に焦点を当てるため、ほかの領域に対しては現状のままで必ずしも適用されない)、特定の十分受け入れられている定義同士がうまく相関しないことに気づく。例として、OpenFlow [OpenFlow] と NETCONF [RFC6241] はどちらも SDN インタフェースとして特徴づけられているが、それらはそれぞれ制御と管理を参照する。
This motivates us to consolidate the definitions of SDN in the literature and correlate them with earlier work at the IETF and the research community. Of particular interest is, for example, to determine which layers comprise the SDN architecture and which interfaces and their corresponding attributes are best suitable to be used between them. As such, the aim of this document is not to standardize any particular layer or interface but rather to provide a concise reference which reflects current approaches regarding the SDN layers architecture. We expect that this document would be useful to upcoming work in SDNRG as well as future discussions within the SDN community as a whole.
これは、IETF と研究コミュニティのこれまでの成果を相関させ、文献中の SDN の定義を統合するよう我々を動機づける。特に興味深いのは、たとえば、どのレイヤが SDN アーキテクチャから成るか、そのレイヤ間で使うためにどのインタフェースとそれに対応する属性が最も適しているかを決定することである。このように、本書の目的は、特定のレイヤまたはインタフェースを標準化することではなく、SDN レイヤ・アーキテクチャに関して現在のアプローチを反映した簡潔なリファレンスを提供することである。我々は、本書が SDNRG で行われる活動に対してだけでなく、SDN コミュニティ全体の中での今後の議論に対しても有用なものであることを期待している。
This document addresses the work item in the SDNRG charter entitled "Survey of SDN approaches and Taxonomies", fostering better understanding of prominent SDN technologies in a technology-impartial and business-agnostic manner but does not constitute a new IETF standard. It is meant as a common base for further discussion. As such, we do not make any value statements nor discuss the applicability of any of the frameworks examined in this draft for any particular purpose. Instead, we document their characteristics and attributes and classify them, thus providing a taxonomy. This document does not intend to provide an exhaustive list of SDN research issues; interested readers should consider reviewing [SLTSDN] and [SDNACS]. In particular, Nunes et al. [SLTSDN] overview SDN-related research topics, e.g. control partitioning, which is related to the CAP theorem discussed in Section 3.5.4.
本書は、"SDN アプローチと分類法の調査" と名付けられた、SDNRG charter の作業項目に位置づけらる。本書は、SDN 技術の特徴に対するよい理解を、技術中立かつ特定のビジネスに依存しない方法で促進するものであり、新しい IETF 標準を構成するものではない。本書は、今後の議論における共通の基盤として意図されている。したがって我々は、この draft の中で分析されるフレームワークの適用可能性にも述べられていることにも、特定の目的のための評価をつけない。その代わり、我々はそれらの特性や属性を文書化し、分類し、分類法を提供する。本書では、SDN 研究の論点についての包括的なリストを提供する想定はない。興味のある読者は、[SLTSDN] や [SDNACS] を調査するべきである。特に Nunes ら [SLTSDN] は SDN 関連の研究トピック (たとえば、3.5.4 項で説明する、CAP定理に関連した制御のパーティショニング) を概観している。
This document has been extensively reviewed, discussed, and commented by the vast majority of SDNRG members, a community which certainly exceeds 100 individuals. It is the consensus of SDNRG that this document should be published in the IRTF Stream RFC Series [RFC5743].
本書は、100人を超えるコミュニティである SDNRG のメンバの大多数による広範囲なレビューや論評を受けている。それは、本書が IRTF Stream RFC Series [RFC5743] の形で発表されるべきものであるという SDNRG 内の合意である。
The remainder of this document is organized as follows. Section 2 explains the terminology used in this document. Section 3 introduces a high-level overview of current SDN architecture abstractions. Finally, Section 4 discusses how the SDN Layer Architecture relates with prominent SDN-enabling technologies.
本書のこれ以降の部分は、以下のような内容で構成されている。2章では、本書で使用する用語について説明している。3章では、現時点の SDN アーキテクチャにおける抽象化について上位レベルの概要を紹介する。最後に、4章では、SDN Layer Architecture が、どのように SDN を実現する技術の主要な技術と関連するかについて説明する。
2. Terminology
2. Terminology This document uses the following terms:
本書は、以下の用語を使う:
Software-Defined Networking (SDN) - A programmable networks approach that supports the separation of control and forwarding planes via standardized interfaces.
- Software-Defined Networking (SDN)
- プログラム可能なネットワークのアプローチ。このアプローチは、標準化されたインタフェースを通して、コントロールプレーンとフォワーディングプレーンの分離をサポートする。
Resource - A physical or virtual component available within a system. Resources can be very simple or fine-grained, e.g. a port or a queue, or complex, comprised of multiple resources, e.g. a network device.
- Resource
- 資源/リソース。システム内で利用可能な、物理的もしくは仮想的な構成要素。リソースは、とても単純なもの、または、粒度の細かいもの(たとえばポートやキューのようなもの)にすることができる。また、複雑で、複数のリソースを包含するようなもの(たとえばネットワーク機器)にすることもできる。
Network Device - A device that performs one or more network operations related to packet manipulation and forwarding. This reference model makes no distinction whether a network device is physical or virtual. A device can also be considered as a container for resources and can be a resource in itself.
- Network Device
- ネットワーク機器。パケットの操作と転送について、一つ以上のネットワーク操作をいつゲンするための機器。この参照モデルは、ネットワーク機器が物理的なものか仮想的なものかを区別しない。ひとつのデバイスは複数のリソースのための入れ物とも、複数のリソースをそれ自体に含むものとも考えることができる。
Interface - A point of interaction between two entities. When the entities are placed at different locations, the interface is usually implemented through a network protocol. If the entities are collocated in the same physical location the interface can be implemented using a software application programming interface (API), inter-process communication (IPC), or a network protocol.
- Interface
- インタフェース。ふたつのエンティティ(実体)間の相互作用のポイント。各エンティティが異なる場所に置かれている場合、インタフェースは通常ネットワークプロトコルを介して実装される。もし各エンティティが同じ物理位置に配置されているのであれば、インタフェースはソフトウェアAPI(プロセス間通信(IPC)またはネットワークプロトコル)で実装される。
Application (App) - An application in the context of SDN is a piece of software that utilizes underlying services to perform a function. Application operation can be parametrized, for example by passing certain arguments at call time, but it is meant to be a standalone piece of software: an App does not offer any interfaces to other applications or services.
- Application (App)
- アプリケーション。SDN の文脈において、アプリケーションは、下位(下層)のサービスを何らかの機能を実現するために利用するソフトウェアの一部である。アプリケーション操作は、たとえば呼び出し時に適切な引数を渡すことによって、パラメタ化することができるが、それはソフトウェアの独立した一部分であることを意味する: アプリケーションは、ほかのアプリケーションあるいはサービスに対して何もインタフェースを提供しない。
Service - A piece of software that performs one or more functions and provides one or more APIs to applications or other services of the same or different layers to make use of said functions and returns one or more results. Services can be combined with other services, or called in a certain serialized manner, to create a new service.
- Service
- サービス。ひとつ以上の機能を実行し、その機能を利用しひとつ以上の結果を返すために、ひとつ以上のAPIを同じあるいは異なるレイヤにあるサービスに対して提供する、ソフトウェアの一部。サービスはほかのサービスと組み合わせたり、新しいサービスを作るためにシリアル化された形で呼び出したりできる。
Forwarding Plane (FP) - The collection of resources across all network devices responsible for forwarding traffic.
Operational Plane (OP) - The collection of resources responsible for managing the overall operation of individual network devices.
- Operational Plane (OP)
- オペレーショナルプレーン。個々のネットワーク機器の全体的な操作(オペレーション)の管理を受け持つリソースの集合。
Control plane (CP) - The collection of functions responsible for controlling one or more network devices. CP instructs network devices with respect to how to process and forward packets. The control plane interacts primarily with the forwarding plane and to a lesser extent with the operational plane.
- Control plane (CP)
- コントロールプレーン。ひとつ以上のネットワーク機器を制御するための機能の集合。CP は、パケットを処理し、転送する方法に関して、ネットワーク機器に指示を与える。コントロールプレーンは主にフォワーディングプレーンに対して指示を与える。オペレーショナルプレーンに対しても(フォワーディングプレーンより)少ない頻度で指示を与える。
Management plane (MP) - The collection of functions responsible for monitoring, configuring and maintaining one or more network devices or parts of network devices. The management plane is mostly related with the operational plane and less with the forwarding plane.
- Management plane (MP)
- マネジメントプレーン。ひとつ以上のネットワーク機器あるいはネットワーク機器の一部分を監視、構成変更、メンテナンスをするための機能の集合。マネジメントプレーンは主にオペレーショナルプレーンとの相関があり、フォワーディングプレーンとの関連は少ない。
Application Plane - The collection of applications and services which program network behavior.
- Application Plane
- アプリケーションプレーン。ネットワークの振る舞いをプログラムするアプリケーションやサービスの集合。
Device and resource Abstraction Layer (DAL) - The device's resource abstraction layer based on one or more models. If it is a physical device it may be referred to as the Hardware Abstraction Layer (HAL). DAL provides a uniform point of reference for the device's forwarding and operational plane resources.
- Device and resource Abstraction Layer (DAL)
- 機器/リソース抽象化レイヤ。機器のリソース抽象化レイヤはひとつ以上のモデルに基づいている。もしそれが物理機器であれば、モデルはハードウェア抽象化レイヤ (Hardware Abstraction Layer, HAL) として参照されるだろう。DAL は機器のフォワーディングプレーンとオペレーショナルプレーンのリソースのために、一様な参照ポイントを提供する。
Control Abstraction Layer (CAL) - The control plane's abstraction layer. CAL provides access to the control plane southbound interface.
- Control Abstraction Layer (CAL)
- 制御抽象化レイヤ。コントロールプレーンの抽象化レイヤ。CAL はコントロールプレーンのサウスバウンド・インタフェースへのアクセスを提供する。
Management Abstraction Layer (MAL) - The management plane's abstraction layer. MAL provides access to the management plane southbound interface.
- Management Abstraction Layer (MAL)
- 管理抽象化レイヤ。マネジメントプレーンの抽象化レイヤ。MAL はマネジメントプレーンのサウスバウンド・インタフェースへのアクセスを提供する。
Network Services Abstraction Layer (NSAL) - Provides service abstractions that can be used by applications and services.
- Network Service Abstraction Layer (NSAL)
- ネットワークサービス抽象化レイヤ。アプリケーションやサービスによって利用可能なサービスの抽象化を提供する。