[要約] RFC 7510は、MPLSパケットをUDPパケットにカプセル化するための仕様です。その目的は、MPLSネットワークをトラフィックエンジニアリングやネットワーク仮想化などの目的でより柔軟に利用することです。
Internet Engineering Task Force (IETF) X. Xu Request for Comments: 7510 Huawei Technologies Category: Standards Track N. Sheth ISSN: 2070-1721 Juniper Networks L. Yong Huawei USA R. Callon Juniper Networks D. Black EMC Corporation April 2015
Encapsulating MPLS in UDP
UDPでのMPLSのカプセル化
Abstract
概要
This document specifies an IP-based encapsulation for MPLS, called MPLS-in-UDP for situations where UDP (User Datagram Protocol) encapsulation is preferred to direct use of MPLS, e.g., to enable UDP-based ECMP (Equal-Cost Multipath) or link aggregation. The MPLS-in-UDP encapsulation technology must only be deployed within a single network (with a single network operator) or networks of an adjacent set of cooperating network operators where traffic is managed to avoid congestion, rather than over the Internet where congestion control is required. Usage restrictions apply to MPLS-in-UDP usage for traffic that is not congestion controlled and to UDP zero checksum usage with IPv6.
このドキュメントでは、MPLSを直接使用するよりもUDP(ユーザーデータグラムプロトコル)カプセル化が好まれる状況でMPLS-in-UDPと呼ばれるMPLSのIPベースのカプセル化を指定します。たとえば、UDPベースのECMP(等コストマルチパス)を有効にするなどリンク集約。 MPLS-in-UDPカプセル化テクノロジは、輻輳制御が行われているインターネット上ではなく、輻輳を回避するためにトラフィックが管理されている協力ネットワークオペレーターの隣接セットの単一ネットワーク(単一ネットワークオペレーターを使用)またはネットワーク内にのみ展開する必要があります。必須。使用制限は、輻輳制御されていないトラフィックのMPLS-in-UDPの使用、およびIPv6でのUDPゼロチェックサムの使用に適用されます。
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/rfc7510.
このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc7510で入手できます。
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. Existing Encapsulations . . . . . . . . . . . . . . . . . 3 1.2. Motivations for MPLS-in-UDP Encapsulation . . . . . . . . 4 1.3. Applicability Statements . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Encapsulation in UDP . . . . . . . . . . . . . . . . . . . . 5 3.1. UDP Checksum Usage with IPv6 . . . . . . . . . . . . . . 6 3.2. Middlebox Considerations for IPv6 UDP Zero Checksums . . 10 4. Processing Procedures . . . . . . . . . . . . . . . . . . . . 10 5. Congestion Considerations . . . . . . . . . . . . . . . . . . 11 6. Security Considerations . . . . . . . . . . . . . . . . . . . 13 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 15 8.1. Normative References . . . . . . . . . . . . . . . . . . 15 8.2. Informative References . . . . . . . . . . . . . . . . . 16 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 17 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19
This document specifies an IP-based encapsulation for MPLS, i.e., MPLS-in-UDP, which is applicable in some circumstances where IP-based encapsulation for MPLS is required and further fine-grained load balancing of MPLS packets over IP networks over Equal-Cost Multipath (ECMP) and/or Link Aggregation Groups (LAGs) is required as well. There are already IP-based encapsulations for MPLS that allow for fine-grained load balancing by using some special field in the encapsulation header as an entropy field. However, MPLS-in-UDP can be advantageous since networks have used the UDP port number fields as a basis for load-balancing solutions for some time.
このドキュメントでは、MPLSのIPベースのカプセル化、つまりMPLS-in-UDPを指定します。これは、MPLSのIPベースのカプセル化が必要な状況に適用され、IPネットワーク上のMPLSパケットのEqual-コストマルチパス(ECMP)やリンク集約グループ(LAG)も必要です。カプセル化ヘッダーの特別なフィールドをエントロピーフィールドとして使用することにより、きめ細かな負荷分散を可能にするMPLSのIPベースのカプセル化がすでに存在します。ただし、ネットワークはUDPポート番号フィールドをしばらくの間ロードバランシングソリューションの基礎として使用しているため、MPLS-in-UDPは有利です。
Like other IP-based encapsulation methods for MPLS, this encapsulation allows for two Label Switching Routers (LSR) to be adjacent on a Label Switched Path (LSP), while separated by an IP network. In order to support this encapsulation, each LSR needs to know the capability to decapsulate MPLS-in-UDP by the remote LSRs. This specification defines only the data-plane encapsulation and does not concern itself with how the knowledge to use this encapsulation is conveyed. Specifically, this capability can be either manually configured on each LSR or dynamically advertised in manners that are outside the scope of this document.
MPLSの他のIPベースのカプセル化方法と同様に、このカプセル化では、2つのラベルスイッチングルーター(LSR)がラベルスイッチドパス(LSP)で隣接し、IPネットワークで分離されていることが可能です。このカプセル化をサポートするために、各LSRは、リモートLSRによってMPLS-in-UDPをカプセル化解除する機能を認識する必要があります。この仕様は、データプレーンのカプセル化のみを定義し、このカプセル化を使用するための知識がどのように伝えられるかには関係しません。具体的には、この機能は、各LSRで手動で構成するか、このドキュメントの範囲外の方法で動的にアドバタイズできます。
Similarly, the MPLS-in-UDP encapsulation format defined in this document by itself cannot ensure the integrity and privacy of data packets being transported through the MPLS-in-UDP tunnels and cannot enable the tunnel decapsulators to authenticate the tunnel encapsulator. Therefore, in the case where any of the above security issues is concerned, the MPLS-in-UDP SHOULD be secured with IPsec [RFC4301] or Datagram Transport Layer Security (DTLS) [RFC6347]. For more details, please see Section 6 (Security Considerations).
同様に、このドキュメントで定義されているMPLS-in-UDPカプセル化形式だけでは、MPLS-in-UDPトンネルを介して転送されるデータパケットの整合性とプライバシーを保証できず、トンネルのカプセル化解除機能がトンネルのカプセル化を認証できません。したがって、上記のセキュリティ問題のいずれかが懸念される場合は、MPLS-in-UDPをIPsec [RFC4301]またはデータグラムトランスポート層セキュリティ(DTLS)[RFC6347]で保護する必要があります(SHOULD)。詳細については、セクション6(セキュリティに関する考慮事項)を参照してください。
Currently, there are several IP-based encapsulations for MPLS such as MPLS-in-IP, MPLS-in-GRE (Generic Routing Encapsulation) [RFC4023], and MPLS-in-L2TPv3 (Layer 2 Tunneling Protocol Version 3) [RFC4817]. In all these methods, the IP addresses can be varied to achieve load balancing.
現在、MPLS-in-IP、MPLS-in-GRE(Generic Routing Encapsulation)[RFC4023]、MPLS-in-L2TPv3(Layer 2 Tunneling Protocol Version 3)[RFC4817]など、MPLSにはIPベースのカプセル化がいくつかあります。 。これらすべての方法で、ロードバランシングを実現するためにIPアドレスを変更できます。
All these IP-based encapsulations for MPLS are specified for both IPv4 and IPv6. In the case of IPv6-based encapsulations, the IPv6 Flow Label can be used for ECMP and LAGs [RFC6438]. However, there is no such entropy field in the IPv4 header.
MPLSのこれらすべてのIPベースのカプセル化は、IPv4とIPv6の両方に指定されています。 IPv6ベースのカプセル化の場合、IPv6フローラベルはECMPおよびLAG [RFC6438]に使用できます。ただし、IPv4ヘッダーにはそのようなエントロピーフィールドはありません。
For MPLS-in-GRE as well as MPLS-in-L2TPv3, protocol fields (the GRE Key and the L2TPv3 Session ID, respectively) can be used as the load-balancing key as described in [RFC5640]. For this, intermediate routers need to understand these fields in the context of being used as load-balancing keys.
MPLS-in-GREおよびMPLS-in-L2TPv3の場合、[RFC5640]で説明されているように、プロトコルフィールド(それぞれGREキーとL2TPv3セッションID)をロードバランシングキーとして使用できます。このため、中間ルーターは、負荷分散キーとして使用される状況でこれらのフィールドを理解する必要があります。
Most existing routers in IP networks are already capable of distributing IP traffic "microflows" [RFC2474] over ECMPs and/or LAG based on the hash of the five-tuple of UDP [RFC768] and TCP packets (i.e., source IP address, destination IP address, source port, destination port, and protocol). By encapsulating the MPLS packets into a UDP tunnel and using the source port of the UDP header as an entropy field, the existing load-balancing capability as mentioned above can be leveraged to provide fine-grained load balancing of MPLS traffic over IP networks.
IPネットワーク内のほとんどの既存のルーターは、UDP [RFC768]の5タプルのハッシュとTCPパケット(つまり、送信元IPアドレス、宛先)のハッシュに基づいて、ECMPやLAGを介してIPトラフィック「マイクロフロー」[RFC2474]をすでに分散できますIPアドレス、送信元ポート、宛先ポート、およびプロトコル)。 MPLSパケットをUDPトンネルにカプセル化し、UDPヘッダーの送信元ポートをエントロピーフィールドとして使用することにより、前述の既存のロードバランシング機能を活用して、IPネットワーク上のMPLSトラフィックのきめ細かなロードバランシングを提供できます。
The MPLS-in-UDP encapsulation technology MUST only be deployed within a single network (with a single network operator) or networks of an adjacent set of cooperating network operators where traffic is managed to avoid congestion, rather than over the Internet where congestion control is required. Furthermore, packet filters SHOULD be added to prevent MPLS-in-UDP packets from escaping from the network due to misconfiguration or packet errors.
MPLS-in-UDPカプセル化テクノロジーは、輻輳制御が行われているインターネットではなく、輻輳を回避するためにトラフィックが管理されている単一のネットワーク(単一のネットワークオペレーターを使用)または隣接する協力ネットワークオペレーターのネットワーク内にのみ配置する必要があります。必須。さらに、設定ミスやパケットエラーが原因でMPLS-in-UDPパケットがネットワークからエスケープしないように、パケットフィルタを追加する必要があります(SHOULD)。
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]で説明されているように解釈されます。
MPLS-in-UDP encapsulation format is shown as follows:
MPLS-in-UDPカプセル化形式は次のとおりです。
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port = Entropy | Dest Port = MPLS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | UDP Length | UDP Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ MPLS Label Stack ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | ~ Message Body ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Source Port of UDP
UDPの送信元ポート
This field contains a 16-bit entropy value that is generated by the encapsulator to uniquely identify a flow. What constitutes a flow is locally determined by the encapsulator and therefore is outside the scope of this document. What algorithm is actually used by the encapsulator to generate an entropy value is outside the scope of this document.
このフィールドには、フローを一意に識別するためにカプセル化プログラムによって生成される16ビットのエントロピー値が含まれています。フローを構成するものは、カプセル化装置によってローカルに決定されるため、このドキュメントの範囲外です。エントロピー値を生成するためにカプセル化プログラムによって実際に使用されるアルゴリズムは、このドキュメントの範囲外です。
In case the tunnel does not need entropy, this field of all packets belonging to a given flow SHOULD be set to a randomly selected constant value so as to avoid packet reordering.
トンネルがエントロピーを必要としない場合、特定のフローに属するすべてのパケットのこのフィールドは、ランダムに選択された定数値に設定して、パケットの並べ替えを回避する必要があります。
To ensure that the source port number is always in the range 49152 to 65535 (note that those ports less than 49152 are reserved by IANA to identify specific applications/protocols), which may be required in some cases, instead of calculating a 16-bit hash, the encapsulator SHOULD calculate a 14-bit hash and use those 14 bits as the least significant bits of the source port field. Also, the most significant two bits SHOULD be set to binary 11. That still conveys 14 bits of entropy information, which would be enough in practice.
送信元ポート番号が常に49152から65535の範囲にあることを確認するには(49152未満のポートは、特定のアプリケーション/プロトコルを識別するためにIANAによって予約されていることに注意してください)、場合によっては、16ビットを計算するのではなく、ハッシュでは、カプセル化装置は14ビットのハッシュを計算し、それらの14ビットを送信元ポートフィールドの最下位ビットとして使用する必要があります(SHOULD)。また、最上位の2ビットはバイナリ11に設定する必要があります(SHOULD)。これは、実際には十分な14ビットのエントロピー情報を伝えます。
Destination Port of UDP
UDPの宛先ポート
This field is set to a value (6635) allocated by IANA to indicate that the UDP tunnel payload is an MPLS packet.
このフィールドは、UDAトンネルペイロードがMPLSパケットであることを示すために、IANAによって割り当てられた値(6635)に設定されます。
UDP Length
UDPの長さ
The usage of this field is in accordance with the current UDP specification [RFC768].
このフィールドの使用法は、現在のUDP仕様[RFC768]に準拠しています。
UDP Checksum
UDPチェックサム
For IPv4 UDP encapsulation, this field is RECOMMENDED to be set to zero for performance or implementation reasons because the IPv4 header includes a checksum and use of the UDP checksum is optional with IPv4, unless checksum protection of VPN labels is important (see Section 6). For IPv6 UDP encapsulation, the IPv6 header does not include a checksum, so this field MUST contain a UDP checksum that MUST be used as specified in [RFC768] and [RFC2460] unless one of the exceptions that allows use of UDP zero-checksum mode (as specified in [RFC6935]) applies. See Section 3.1 for specification of these exceptions and additional requirements that apply when UDP zero-checksum mode is used for MPLS-in-UDP traffic over IPv6.
IPv4 UDPカプセル化の場合、IPv4ヘッダーにはチェックサムが含まれており、VPNラベルのチェックサム保護が重要でない限り、IPv4のUDPチェックサムの使用はオプションであるため、このフィールドは、パフォーマンスまたは実装上の理由からゼロに設定することをお勧めします(セクション6を参照)。 。 IPv6 UDPカプセル化の場合、IPv6ヘッダーにはチェックサムが含まれていないため、このフィールドには、UDPゼロチェックサムモードの使用を許可する例外の1つを除いて、[RFC768]および[RFC2460]での指定に従って使用する必要があるUDPチェックサムを含める必要があります([RFC6935]で指定)が適用されます。これらの例外の仕様と、IPv6上のMPLS-in-UDPトラフィックにUDPゼロチェックサムモードが使用される場合に適用される追加要件については、セクション3.1を参照してください。
MPLS Label Stack
MPLSラベルスタック
This field contains an MPLS Label Stack as defined in [RFC3032].
このフィールドには、[RFC3032]で定義されているMPLSラベルスタックが含まれます。
Message Body
メッセージ本文
This field contains one MPLS message body.
このフィールドには、1つのMPLSメッセージ本文が含まれます。
When UDP is used over IPv6, the UDP checksum is relied upon to protect both the IPv6 and UDP headers from corruption and MUST be used unless the requirements in [RFC6935] and [RFC6936] for use of UDP zero-checksum mode with a tunnel protocol are satisfied. MPLS-in-UDP is a tunnel protocol, and there is significant successful deployment of MPLS-in-IPv6 without UDP (i.e., without a checksum that covers the IPv6 header or the MPLS label stack), as described in Section 3.1 of [RFC6936]:
UDPがIPv6で使用される場合、UDPチェックサムはIPv6ヘッダーとUDPヘッダーの両方を破損から保護するために依存し、[RFC6935]および[RFC6936]でトンネルプロトコルでUDPゼロチェックサムモードを使用するための要件でない限り、使用する必要があります満足しています。 [RFC6936のセクション3.1で説明されているように、MPLS-in-UDPはトンネルプロトコルであり、UDPなしで(つまり、IPv6ヘッダーまたはMPLSラベルスタックをカバーするチェックサムなしで)MPLS-in-IPv6の展開が大幅に成功しています。 ]:
There is extensive experience with deployments using tunnel protocols in well-managed networks (e.g., corporate networks and service provider core networks). This has shown the robustness of methods such as Pseudowire Emulation Edge-to-Edge (PWE3) and MPLS that do not employ a transport protocol checksum and that have not specified mechanisms to protect from corruption of the unprotected headers (such as the VPN Identifier in MPLS).
適切に管理されたネットワーク(企業ネットワークやサービスプロバイダーのコアネットワークなど)でトンネルプロトコルを使用した展開には、豊富な経験があります。これは、トランスポートプロトコルチェックサムを使用せず、保護されていないヘッダー(VPN IDなどの)の破損から保護するメカニズムを指定していない、疑似配線エミュレーションエッジツーエッジ(PWE3)やMPLSなどのメソッドの堅牢性を示しています。 MPLS)。
The UDP checksum MUST be implemented and MUST be used in accordance with [RFC768] and [RFC2460] for MPLS-in-UDP traffic over IPv6 unless one or more of the following exceptions applies and the additional requirements stated below are complied with. There are three exceptions that allow use of UDP zero-checksum mode for IPv6 with MPLS-in-UDP, subject to the additional requirements stated below in this section. The three exceptions are:
UDPチェックサムを実装する必要があり、[RFC768]および[RFC2460]に従ってIPv6上のMPLS-in-UDPトラフィックに使用する必要があります。ただし、以下の例外の1つ以上が適用され、下記の追加要件が満たされている場合を除きます。このセクションで後述する追加要件に従って、MPLS-in-UDPでIPv6のUDPゼロチェックサムモードを使用できるようにする3つの例外があります。 3つの例外は次のとおりです。
a. Use of MPLS-in-UDP in networks under single administrative control (such as within a single operator's network) where it is known (perhaps through knowledge of equipment types and lower-layer checks) that packet corruption is exceptionally unlikely and where the operator is willing to take the risk of undetected packet corruption.
a. 単一の管理制御下にあるネットワーク(単一のオペレーターのネットワーク内など)でMPLS-in-UDPを使用している場合(おそらく、機器の種類と下位層のチェックにより)、パケットの破損が非常に起こりにくく、オペレーターがいる場所検出されないパケット破損のリスクを喜んで受けます。
b. Use of MPLS-in-UDP in networks under single administrative control (such as within a single operator's network) where it is judged through observational measurements (perhaps of historic or current traffic flows that use a non-zero checksum) that the level of packet corruption is tolerably low and where the operator is willing to take the risk of undetected packet corruption.
b. 単一の管理制御下のネットワーク(単一のオペレーターのネットワーク内など)でのMPLS-in-UDPの使用。観測測定(おそらくゼロ以外のチェックサムを使用する履歴または現在のトラフィックフローの可能性)によってパケットのレベルが判断されます。破損は許容範囲内であり、オペレーターが検出されないパケット破損のリスクを負う意思がある場合。
c. Use of MPLS-in-UDP for traffic delivery for applications that are tolerant of misdelivered or corrupted packets (perhaps through higher-layer checksum, validation, and retransmission or transmission redundancy) where the operator is willing to rely on the applications using the tunnel to survive any corrupt packets.
c. パケットの誤配信または破損を許容するアプリケーションのトラフィック配信にMPLS-in-UDPを使用する(おそらく、上位層のチェックサム、検証、再送信または送信の冗長性により)。破損したパケットを生き残る。
These exceptions may also be extended to the use of MPLS-in-UDP within a set of closely cooperating network administrations (such as network operators who have agreed to work together in order to jointly provide specific services). Even when one of the above exceptions applies, use of UDP checksums may be appropriate when VPN services are provided over MPLS-in-UDP; see Section 6.
これらの例外は、密接に協力し合う一連のネットワーク管理(特定のサービスを共同で提供するために協力することに同意したネットワークオペレーターなど)内でのMPLS-in-UDPの使用にも拡張できます。上記の例外のいずれかが当てはまる場合でも、VPNサービスがMPLS-in-UDPを介して提供される場合は、UDPチェックサムの使用が適切な場合があります。セクション6を参照してください。
As such, for IPv6, the UDP checksum for MPLS-in-UDP MUST be used as specified in [RFC768] and [RFC2460] for tunnels that span multiple networks whose network administrations do not cooperate closely, even if each non-cooperating network administration independently satisfies one or more of the exceptions for UDP zero-checksum mode usage with MPLS-in-UDP over IPv6.
そのため、IPv6の場合、MPLS-in-UDPのUDPチェックサムは、[RFC768]と[RFC2460]で指定されているように使用しなければなりません。 IPv6を介したMPLS-in-UDPでのUDPゼロチェックサムモードの使用に関する1つ以上の例外を個別に満たします。
The following additional requirements apply to implementation and use of UDP zero-checksum mode for MPLS-in-UDP over IPv6:
次の追加要件は、IPv6を介したMPLS-in-UDPのUDPゼロチェックサムモードの実装と使用に適用されます。
a. Use of the UDP checksum with IPv6 MUST be the default configuration of all MPLS-in-UDP implementations.
a. IPv6でのUDPチェックサムの使用は、すべてのMPLS-in-UDP実装のデフォルト構成である必要があります。
b. The MPLS-in-UDP implementation MUST comply with all requirements specified in Section 4 of [RFC6936] and with requirement 1 specified in Section 5 of [RFC6936].
b. MPLS-in-UDP実装は、[RFC6936]のセクション4で指定されているすべての要件と、[RFC6936]のセクション5で指定されている要件1に準拠している必要があります。
c. The tunnel decapsulator SHOULD only allow the use of UDP zero-checksum mode for IPv6 on a single received UDP Destination Port regardless of the encapsulator. The motivation for this requirement is possible corruption of the UDP Destination Port, which may cause packet delivery to the wrong UDP port. If that other UDP port requires the UDP checksum, the misdelivered packet will be discarded
c. トンネルカプセル開放装置は、カプセル化装置に関係なく、受信した単一のUDP宛先ポートでIPv6のUDPゼロチェックサムモードの使用のみを許可する必要があります(SHOULD)。この要件の動機は、UDP宛先ポートの破損の可能性であり、これにより、間違ったUDPポートにパケットが配信される可能性があります。他のUDPポートがUDPチェックサムを必要とする場合、誤って配信されたパケットは破棄されます
d. The tunnel decapsulator MUST check that the source and destination IPv6 addresses are valid for the MPLS-in-UDP tunnel on which the packet was received if that tunnel uses UDP zero-checksum mode and discard any packet for which this check fails.
d. トンネルカプセル化解除機能は、そのトンネルがUDPゼロチェックサムモードを使用する場合、パケットが受信されたMPLS-in-UDPトンネルに対して送信元と宛先のIPv6アドレスが有効であることを確認し、この確認が失敗したパケットを破棄する必要があります。
e. The tunnel encapsulator SHOULD use different IPv6 addresses for each MPLS-in-UDP tunnel that uses UDP zero-checksum mode (regardless of decapsulator) in order to strengthen the decapsulator's check of the IPv6 source address (i.e., the same IPv6 source address SHOULD NOT be used with more than one IPv6 destination address, independent of whether that destination address is a unicast or multicast address). When this is not possible, it is RECOMMENDED to use each source IPv6 address for as few UDP zero-checksum mode MPLS-in-UDP tunnels (i.e., with as few destination IPv6 addresses) as is feasible.
e. トンネルカプセル化装置は、UDPゼロチェックサムモードを使用する各MPLS-in-UDPトンネルに異なるIPv6アドレスを使用する必要があり(SHOULD)、カプセル化解除プログラムによるIPv6送信元アドレスのチェックを強化します(つまり、同じIPv6送信元アドレスはすべきではありません(SHOULD NOT)宛先アドレスがユニキャストアドレスかマルチキャストアドレスかに関係なく、複数のIPv6宛先アドレスで使用できます)。これが不可能な場合は、可能な限り少数のUDPゼロチェックサムモードのMPLS-in-UDPトンネル(つまり、宛先IPv6アドレスが少ない)に各ソースIPv6アドレスを使用することをお勧めします。
f. Any middlebox support for MPLS-in-UDP with UDP zero-checksum mode for IPv6 MUST comply with requirements 1 and 8-10 in Section 5 of [RFC6936].
f. IPv6のUDPゼロチェックサムモードでのMPLS-in-UDPのミドルボックスサポートは、[RFC6936]のセクション5の要件1および8-10に準拠する必要があります。
g. Measures SHOULD be taken to prevent IPv6 traffic with zero UDP checksums from "escaping" to the general Internet; see Section 5 for examples of such measures.
g. UDPチェックサムがゼロのIPv6トラフィックが一般的なインターネットに「エスケープ」しないようにするための対策を講じる必要があります。このような対策の例については、セクション5を参照してください。
h. IPv6 traffic with zero UDP checksums MUST be actively monitored for errors by the network operator.
h. UDPチェックサムがゼロのIPv6トラフィックは、ネットワークオペレーターによるエラーを積極的に監視する必要があります。
The above requirements do not change either the requirements specified in [RFC2460] as modified by [RFC6935] or the requirements specified in [RFC6936].
上記の要件は、[RFC6935]によって変更された[RFC2460]で指定された要件も、[RFC6936]で指定された要件も変更しません。
The requirement to check the source IPv6 address in addition to the destination IPv6 address, plus the strong recommendation against reuse of source IPv6 addresses among MPLS-in-UDP tunnels collectively provide some mitigation for the absence of UDP checksum coverage of the IPv6 header. In addition, the MPLS data plane only forwards packets with valid labels (i.e., labels that have been distributed by the tunnel egress LSR), providing some additional opportunity to detect MPLS-in-UDP packet misdelivery when the misdelivered packet contains a label that is not valid for forwarding at the receiving LSR. The expected result for IPv6 UDP zero-checksum mode for MPLS-in-UDP is that corruption of the destination IPv6 address will usually cause packet discard, as offsetting corruptions to the source IPv6 and/or MPLS top label are unlikely. Additional assurance is provided by the restrictions in the above exceptions that limit usage of IPv6 UDP zero-checksum mode to well-managed networks for which MPLS packet corruption has not been a problem in practice.
宛先IPv6アドレスに加えてソースIPv6アドレスをチェックする要件と、MPLS-in-UDPトンネル間でソースIPv6アドレスを再利用しないことを強く推奨することにより、IPv6ヘッダーのUDPチェックサムカバレッジが存在しない場合の緩和策が提供されます。さらに、MPLSデータプレーンは有効なラベル(つまり、トンネル出力LSRによって配布されたラベル)のパケットのみを転送するため、誤って配信されたパケットに次のようなラベルが含まれている場合に、MPLS-in-UDPパケットの誤配信を検出する追加の機会が提供されます。受信LSRでの転送には無効です。 MPLS-in-UDPのIPv6 UDPゼロチェックサムモードで予期される結果は、ソースIPv6やMPLSトップラベルへの破損のオフセットが起こりそうにないため、宛先IPv6アドレスの破損は通常パケット破棄を引き起こすことです。 IPv6 UDPゼロチェックサムモードの使用を、MPLSパケットの破損が実際に問題になっていない適切に管理されたネットワークに制限する上記の例外の制限によって、追加の保証が提供されます。
Hence, MPLS-in-UDP is suitable for transmission over lower layers in the well-managed networks that are allowed by the exceptions stated above, and the rate of corruption of the inner IP packet on such networks is not expected to increase by comparison to MPLS traffic that is not encapsulated in UDP. For these reasons, MPLS-in-UDP does not provide an additional integrity check when UDP zero-checksum mode is used with IPv6, and this design is in accordance with requirements 2, 3, and 5 specified in Section 5 of [RFC6936].
したがって、MPLS-in-UDPは、上記の例外で許可されている適切に管理されたネットワークの下位層での送信に適しています。そのようなネットワーク上の内部IPパケットの破損率は、 UDPでカプセル化されていないMPLSトラフィック。これらの理由により、IPv6でUDPゼロチェックサムモードが使用されている場合、MPLS-in-UDPは追加の整合性チェックを提供せず、この設計は[RFC6936]のセクション5で指定された要件2、3、および5に準拠しています。
MPLS does not accumulate incorrect state as a consequence of label stack corruption. A corrupt MPLS label results in either packet discard or forwarding (and forgetting) of the packet without accumulation of MPLS protocol state. Active monitoring of MPLS-in-UDP traffic for errors is REQUIRED as occurrence of errors will result in some accumulation of error information outside the MPLS protocol for operational and management purposes. This design is in accordance with requirement 4 specified in Section 5 of [RFC6936].
ラベルスタックの破損の結果として、MPLSは誤った状態を蓄積しません。 MPLSラベルが破損していると、MPLSプロトコル状態が蓄積されずに、パケットが破棄されるか、パケットが転送(および忘却)されます。 MPLS-in-UDPトラフィックのエラーをアクティブに監視する必要があります。エラーが発生すると、運用と管理の目的でMPLSプロトコルの外部にエラー情報が蓄積されるためです。この設計は、[RFC6936]のセクション5で指定されている要件4に準拠しています。
The remaining requirements specified in Section 5 of [RFC6936] are inapplicable to MPLS-in-UDP. Requirements 6 and 7 do not apply because MPLS does not have an MPLS-generic control feedback mechanism. Requirements 8-10 are middlebox requirements that do not apply to MPLS-in-UDP tunnel endpoints, but see Section 3.2 for further middlebox discussion.
[RFC6936]のセクション5で指定されている残りの要件は、MPLS-in-UDPには適用されません。 MPLSにはMPLS汎用制御フィードバックメカニズムがないため、要件6および7は適用されません。要件8〜10は、MPLS-in-UDPトンネルエンドポイントには適用されないミドルボックス要件ですが、ミドルボックスの詳細については、セクション3.2を参照してください。
In summary, UDP zero-checksum mode for IPv6 is allowed to be used with MPLS-in-UDP when one of the three exceptions specified above applies, provided that the additional requirements specified in this section are complied with. Otherwise, the UDP checksum MUST be used for IPv6 as specified in [RFC768] and [RFC2460].
要約すると、IPv6のUDPゼロチェックサムモードは、上記で指定された3つの例外の1つが適用される場合、このセクションで指定された追加の要件が満たされていれば、MPLS-in-UDPで使用できます。それ以外の場合、[RFC768]および[RFC2460]で指定されているように、IPv6にはUDPチェックサムを使用する必要があります。
This entire section and its requirements apply only to use of UDP zero-checksum mode for IPv6; they can be avoided by using the UDP checksum as specified in [RFC768] and [RFC2460].
このセクション全体とその要件は、IPv6のUDPゼロチェックサムモードの使用にのみ適用されます。 [RFC768]と[RFC2460]で指定されているUDPチェックサムを使用することで回避できます。
IPv6 datagrams with a zero UDP checksum will not be passed by any middlebox that validates the checksum based on [RFC2460] or that updates the UDP checksum field, such as NATs or firewalls. Changing this behavior would require such middleboxes to be updated to correctly handle datagrams with zero UDP checksums. The MPLS-in-UDP encapsulation does not provide a mechanism to safely fall back to using a checksum when a path change occurs redirecting a tunnel over a path that includes a middlebox that discards IPv6 datagrams with a zero UDP checksum. In this case, the MPLS-in-UDP tunnel will be black-holed by that middlebox. Recommended changes to allow firewalls, NATs, and other middleboxes to support use of an IPv6 zero UDP checksum are described in Section 5 of [RFC6936].
UDPチェックサムがゼロのIPv6データグラムは、[RFC2460]に基づいてチェックサムを検証したり、NATやファイアウォールなどのUDPチェックサムフィールドを更新したりするミドルボックスによって渡されません。この動作を変更するには、このようなミドルボックスを更新して、UDPチェックサムがゼロのデータグラムを正しく処理する必要があります。 UDPのチェックサムがゼロのIPv6データグラムを破棄するミドルボックスを含むパスを経由するトンネルをリダイレクトするパス変更が発生した場合、MPLS-in-UDPカプセル化は、チェックサムの使用に安全にフォールバックするメカニズムを提供しません。この場合、MPLS-in-UDPトンネルはそのミドルボックスによってブラックホール化されます。ファイアウォール、NAT、その他のミドルボックスがIPv6ゼロUDPチェックサムの使用をサポートできるようにするための推奨される変更については、[RFC6936]のセクション5で説明されています。
This MPLS-in-UDP encapsulation causes MPLS packets to be forwarded through "UDP tunnels". When performing MPLS-in-UDP encapsulation by the encapsulator, the entropy value would be generated by the encapsulator and then be filled in the Source Port field of the UDP header. The Destination Port field is set to a value (6635) allocated by IANA to indicate that the UDP tunnel payload is an MPLS packet. As for whether the top label of the encapsulated MPLS packet is downstream-assigned or upstream-assigned, it is determined according to the following criteria, which are compatible with [RFC5332]:
このMPLS-in-UDPカプセル化により、MPLSパケットは「UDPトンネル」を介して転送されます。エンキャプスレータによってMPLS-in-UDPカプセル化を実行する場合、エントロピー値はエンキャプスレータによって生成され、UDPヘッダーの送信元ポートフィールドに入力されます。宛先ポートフィールドは、UDAトンネルペイロードがMPLSパケットであることを示すために、IANAによって割り当てられた値(6635)に設定されます。カプセル化されたMPLSパケットのトップラベルがダウンストリーム割り当てかアップストリーム割り当てかは、[RFC5332]と互換性のある次の基準に従って決定されます。
a. If the tunnel destination IP address is a unicast address, the top label MUST be downstream-assigned;
a. トンネルの宛先IPアドレスがユニキャストアドレスの場合、トップラベルをダウンストリームに割り当てなければなりません。
b. If the tunnel destination IP address is an IP multicast address, either all encapsulated MPLS packets in the particular tunnel have a downstream-assigned label at the top of the stack, or all encapsulated MPLS packets in that tunnel have an upstream-assigned label at the top of the stack. The means by which this is determined for a particular tunnel is outside the scope of this specification. In the absence of any knowledge about a specific tunnel, the label SHOULD be presumed to be upstream-assigned.
b. トンネルの宛先IPアドレスがIPマルチキャストアドレスである場合、特定のトンネル内のすべてのカプセル化されたMPLSパケットには、スタックの最上部にダウンストリームが割り当てられたラベルがあるか、そのトンネル内のすべてのカプセル化されたMPLSパケットには、上流に割り当てられたラベルがありますスタックのトップ。これが特定のトンネルに対して決定される手段は、この仕様の範囲外です。特定のトンネルに関する知識がない場合、ラベルは上流に割り当てられていると見なされるべきです(SHOULD)。
Intermediate routers, upon receiving these UDP encapsulated packets, could balance these packets based on the hash of the five-tuple of UDP packets. Upon receiving these UDP-encapsulated packets, the decapsulator would decapsulate them by removing the UDP headers and then process them accordingly. For other common processing procedures associated with tunneling encapsulation technologies including but not limited to Maximum Transmission Unit (MTU) and preventing fragmentation and reassembly, Time to Live (TTL), and differentiated services, the corresponding "Common Procedures" defined in [RFC4023], which are applicable for MPLS-in-IP and MPLS-in-GRE encapsulation formats SHOULD be followed.
中間ルーターは、これらのUDPカプセル化パケットを受信すると、UDPパケットの5タプルのハッシュに基づいてこれらのパケットのバランスをとることができます。これらのUDPカプセル化されたパケットを受信すると、カプセル化解除プログラムは、UDPヘッダーを削除してそれらをカプセル化解除し、それに応じて処理します。最大伝送ユニット(MTU)や断片化と再構成の防止、存続時間(TTL)、差別化されたサービスなど、トンネルカプセル化テクノロジに関連するその他の一般的な処理手順については、[RFC4023]で定義されている対応する「共通手順」、 MPLS-in-IPおよびMPLS-in-GREカプセル化フォーマットに適用できるものに従う必要があります。
Note: Each UDP tunnel is unidirectional, as MPLS-in-UDP traffic is sent to the IANA-allocated UDP Destination Port, and in particular, is never sent back to any port used as a UDP Source Port (which serves solely as a source of entropy). This is at odds with a typical middlebox (e.g., firewall) assumption that bidirectional traffic uses a common pair of UDP ports. As a result, arranging to pass bidirectional MPLS-in-UDP traffic through middleboxes may require separate configuration for each direction of traffic.
注:MPLS-in-UDPトラフィックはIANAで割り当てられたUDP宛先ポートに送信され、特に、UDP送信元ポートとして使用されるポート(送信元としてのみ機能する)に送り返されることはないため、各UDPトンネルは単方向です。エントロピーの)。これは、双方向トラフィックが共通のUDPポートのペアを使用するという典型的なミドルボックス(ファイアウォールなど)の想定とは矛盾しています。その結果、ミドルボックスを介して双方向のMPLS-in-UDPトラフィックを渡すように設定するには、トラフィックの方向ごとに個別の構成が必要になる場合があります。
Section 3.1.3 of [RFC5405] discussed the congestion implications of UDP tunnels. As discussed in [RFC5405], because other flows can share the path with one or more UDP tunnels, congestion control [RFC2914] needs to be considered.
[RFC5405]のセクション3.1.3は、UDPトンネルの輻輳の影響について説明しました。 [RFC5405]で説明されているように、他のフローは1つ以上のUDPトンネルとパスを共有できるため、輻輳制御[RFC2914]を考慮する必要があります。
A major motivation for encapsulating MPLS in UDP is to improve the use of multipath (such as ECMP) in cases where traffic is to traverse routers that are able to hash on UDP Port and IP address. As such, in many cases this may reduce the occurrence of congestion and improve usage of available network capacity. However, it is also necessary to ensure that the network, including applications that use the network, responds appropriately in more difficult cases, such as when link or equipment failures have reduced the available capacity.
UDPでMPLSをカプセル化する主な動機は、トラフィックがUDPポートとIPアドレスでハッシュできるルーターを通過する場合のマルチパス(ECMPなど)の使用を改善することです。そのため、多くの場合、これにより輻輳の発生が減少し、使用可能なネットワーク容量の使用率が向上します。ただし、リンクや機器の障害によって使用可能な容量が減少した場合など、ネットワークを使用するアプリケーションを含め、ネットワークがより困難な場合に適切に応答するようにすることも必要です。
The impact of congestion must be considered both in terms of the effect on the rest of the network of a UDP tunnel that is consuming excessive capacity, and in terms of the effect on the flows using the UDP tunnels. The potential impact of congestion from a UDP tunnel depends upon what sort of traffic is carried over the tunnel, as well as the path of the tunnel.
輻輳の影響は、過剰な容量を消費しているUDPトンネルの残りのネットワークへの影響と、UDPトンネルを使用するフローへの影響の両方の観点から考慮する必要があります。 UDPトンネルからの輻輳の潜在的な影響は、トンネルを介して伝送されるトラフィックの種類と、トンネルのパスによって異なります。
MPLS is widely used to carry an extensive range of traffic. In many cases, MPLS is used to carry IP traffic. IP traffic is generally assumed to be congestion controlled, and thus a tunnel carrying general IP traffic (as might be expected to be carried across the Internet) generally does not need additional congestion control mechanisms. As specified in [RFC5405]:
MPLSは、広範囲のトラフィックを伝送するために広く使用されています。多くの場合、MPLSはIPトラフィックの伝送に使用されます。 IPトラフィックは一般に輻輳制御されていると想定されているため、一般的なIPトラフィックを伝送するトンネル(インターネット経由で伝送されることが予想される)は、通常、追加の輻輳制御メカニズムを必要としません。 [RFC5405]で指定されているとおり:
IP-based traffic is generally assumed to be congestion-controlled, i.e., it is assumed that the transport protocols generating IP-based traffic at the sender already employ mechanisms that are sufficient to address congestion on the path. Consequently, a tunnel carrying IP-based traffic should already interact appropriately with other traffic sharing the path, and specific congestion control mechanisms for the tunnel are not necessary.
IPベースのトラフィックは一般に輻輳制御されていると想定されます。つまり、送信元でIPベースのトラフィックを生成するトランスポートプロトコルは、パス上の輻輳に対処するのに十分なメカニズムをすでに採用していると想定されます。したがって、IPベースのトラフィックを伝送するトンネルは、パスを共有する他のトラフィックとすでに適切に相互作用しているはずであり、トンネルに特定の輻輳制御メカニズムは必要ありません。
For this reason, where MPLS-in-UDP tunneling is used to carry IP traffic that is known to be congestion controlled, the UDP tunnels MAY be used within a single network or across multiple networks, with cooperating network operators. Internet IP traffic is generally assumed to be congestion controlled. Similarly, in general, Layer 3 VPNs are carrying IP traffic that is similarly assumed to be congestion controlled.
このため、MPLS-in-UDPトンネリングを使用して、輻輳制御されていることがわかっているIPトラフィックを伝送する場合、UDPトンネルは、協力するネットワークオペレーターと共に、単一のネットワーク内または複数のネットワーク間で使用できます。インターネットIPトラフィックは通常、輻輳制御されていると想定されています。同様に、一般に、レイヤ3 VPNは、輻輳制御されていると同様に想定されているIPトラフィックを伝送します。
Whether or not Layer 2 VPN traffic is congestion controlled may depend upon the specific services being offered and what use is being made of the Layer 2 services.
レイヤ2 VPNトラフィックが輻輳制御されているかどうかは、提供されている特定のサービスと、レイヤ2サービスの用途によって異なります。
However, MPLS is also used in many cases to carry traffic that is not necessarily congestion controlled. For example, MPLS may be used to carry pseudowire or VPN traffic where specific bandwidth guarantees are provided to each pseudowire or to each VPN.
ただし、MPLSは多くの場合、必ずしも輻輳制御されていないトラフィックを運ぶためにも使用されます。たとえば、MPLSは、特定の帯域幅保証が各疑似配線または各VPNに提供される疑似配線またはVPNトラフィックを伝送するために使用できます。
In such cases, network operators may avoid congestion by careful provisioning of their networks, by rate limiting of user data traffic, and/or by using MPLS Traffic Engineering (MPLS-TE) to assign specific bandwidth guarantees to each LSP. Where MPLS is carried over UDP over IP, the identity of each individual MPLS flow is lost, in general, and MPLS-TE cannot be used to guarantee bandwidth to specific flows (since many LSPs may be multiplexed over a single UDP tunnel, and many UDP tunnels may be mixed in an IP network).
このような場合、ネットワークオペレーターは、ネットワークの注意深いプロビジョニング、ユーザーデータトラフィックのレート制限、MPLSトラフィックエンジニアリング(MPLS-TE)を使用して各LSPに特定の帯域幅保証を割り当てることにより、輻輳を回避できます。 MPLSがUDP over IPを介して伝送される場合、一般に個々のMPLSフローのIDは失われ、MPLS-TEを使用して特定のフローへの帯域幅を保証することはできません(多くのLSPが単一のUDPトンネルで多重化される可能性があるため、 UDPトンネルは、IPネットワークで混在させることができます)。
For this reason, where the MPLS traffic is not congestion controlled, MPLS-in-UDP tunnels MUST only be used within a single operator's network that utilizes careful provisioning (e.g., rate limiting at the entries of the network while over-provisioning network capacity) to ensure against congestion, or within a limited number of networks whose operators closely cooperate in order to jointly provide this same careful provisioning.
このため、MPLSトラフィックが輻輳制御されていない場合、MPLS-in-UDPトンネルは、慎重なプロビジョニングを使用する単一のオペレーターのネットワーク内でのみ使用する必要があります(たとえば、ネットワーク容量をオーバープロビジョニングしながら、ネットワークのエントリでのレート制限)。輻輳を防止するため、または限られた数のネットワーク内でオペレーターが密接に協力して、同じ注意深いプロビジョニングを共同で提供する。
As such, MPLS-in-UDP MUST NOT be used over the general Internet, or over non-cooperating network operators, to carry traffic that is not congestion controlled.
そのため、輻輳が制御されていないトラフィックを伝送するために、MPLS-in-UDPを一般的なインターネットまたは非協力的なネットワークオペレーターで使用してはなりません(MUST NOT)。
Measures SHOULD be taken to prevent non-congestion-controlled MPLS-in-UDP traffic from "escaping" to the general Internet, e.g.:
非輻輳制御のMPLS-in-UDPトラフィックが一般的なインターネットに「エスケープ」するのを防ぐための対策を講じる必要があります。例:
a. Physical or logical isolation of the links carrying MPLS-over-UDP from the general Internet.
a. 一般的なインターネットからのMPLS-over-UDPを伝送するリンクの物理的または論理的分離。
b. Deployment of packet filters that block the UDP Destination Ports used for MPLS-over-UDP.
b. MPLS-over-UDPに使用されるUDP宛先ポートをブロックするパケットフィルターの展開。
c. Imposition of restrictions on MPLS-in-UDP traffic by software tools used to set up MPLS-in-UDP tunnels between specific end systems (as might be used within a single data center).
c. 特定のエンドシステム間にMPLS-in-UDPトンネルをセットアップするために使用されるソフトウェアツールによるMPLS-in-UDPトラフィックへの制限の強制(単一のデータセンター内で使用される可能性がある)。
d. Use of a "Managed Circuit Breaker" for the MPLS traffic as described in [CIRCUIT-BREAKER].
d. [CIRCUIT-BREAKER]で説明されているように、MPLSトラフィックに「Managed Circuit Breaker」を使用します。
The security problems faced with the MPLS-in-UDP tunnel are exactly the same as those faced with MPLS-in-IP and MPLS-in-GRE tunnels [RFC4023]. In other words, the MPLS-in-UDP tunnel as defined in this document by itself cannot ensure the integrity and privacy of data packets being transported through the MPLS-in-UDP tunnel and cannot enable the tunnel decapsulator to authenticate the tunnel encapsulator. In the case where any of the above security issues is concerned, the MPLS-in-UDP tunnel SHOULD be secured with IPsec or DTLS. IPsec was designed as a network security mechanism, and therefore it resides at the network layer. As such, if the tunnel is secured with IPsec, the UDP header would not be visible to intermediate routers anymore in either IPsec tunnel or transport mode. As a result, the meaning of adopting the MPLS-in-UDP tunnel as an alternative to the MPLS-in-GRE or MPLS-in-IP tunnel is lost. By comparison, DTLS is better suited for application security and can better preserve network- and transport-layer protocol information. Specifically, if DTLS is used, the destination port of the UDP header MUST be set to an IANA-assigned value (6636) indicating MPLS-in-UDP with DTLS, and that UDP port MUST NOT be used for other traffic. The UDP source port field can still be used to add entropy, e.g., for load-sharing purposes. DTLS usage is limited to a single DTLS session for any specific tunnel encapsulator/decapsulator pair (identified by source and destination IP addresses). Both IP addresses MUST be unicast addresses -- multicast traffic is not supported when DTLS is used. An MPLS-in-UDP tunnel decapsulator implementation that supports DTLS is expected to be able to establish DTLS sessions with multiple tunnel encapsulators. Likewise, an MPLS-in-UDP tunnel encapsulator implementation is expected to be able to establish DTLS sessions with multiple decapsulators. (However, different source and/or destination IP addresses may be involved. See Section 3.1 for discussion of one situation where use of different source IP addresses is important.)
MPLS-in-UDPトンネルが直面するセキュリティ問題は、MPLS-in-IPおよびMPLS-in-GREトンネルが直面するセキュリティ問題とまったく同じです[RFC4023]。つまり、このドキュメントで定義されているMPLS-in-UDPトンネルだけでは、MPLS-in-UDPトンネルを介して転送されるデータパケットの整合性とプライバシーを確保できず、トンネルのカプセル化解除機能がトンネルのカプセル化機能を認証できません。上記のセキュリティ問題のいずれかが懸念される場合は、MPLS-in-UDPトンネルをIPsecまたはDTLSで保護する必要があります(SHOULD)。 IPsecはネットワークセキュリティメカニズムとして設計されたため、ネットワークレイヤーに常駐します。そのため、トンネルがIPsecで保護されている場合、IPsecトンネルまたはトランスポートモードのどちらでも、UDPヘッダーは中間ルーターから見えなくなります。その結果、MPLS-in-GREまたはMPLS-in-IPトンネルの代わりにMPLS-in-UDPトンネルを採用する意味が失われます。比較すると、DTLSはアプリケーションのセキュリティに適し、ネットワーク層とトランスポート層のプロトコル情報をより適切に保持できます。具体的には、DTLSを使用する場合、UDPヘッダーの宛先ポートは、DTLSを使用したMPLS-in-UDPを示すIANA割り当て値(6636)に設定する必要があり、そのUDPポートは他のトラフィックに使用してはなりません(MUST NOT)。 UDPソースポートフィールドは、たとえば負荷分散の目的で、エントロピーを追加するために引き続き使用できます。 DTLSの使用は、特定のトンネルカプセル化/カプセル化解除のペア(送信元と宛先のIPアドレスで識別される)の単一のDTLSセッションに制限されます。両方のIPアドレスはユニキャストアドレスである必要があります。DTLSが使用されている場合、マルチキャストトラフィックはサポートされません。 DTLSをサポートするMPLS-in-UDPトンネルカプセル化解除機能の実装では、複数のトンネルカプセル化機能を使用してDTLSセッションを確立できることが期待されています。同様に、MPLS-in-UDPトンネルカプセル化装置の実装は、複数のカプセル化解除装置とのDTLSセッションを確立できることが期待されています。 (ただし、異なる送信元および/または宛先IPアドレスが含まれる場合があります。異なる送信元IPアドレスの使用が重要である1つの状況については、セクション3.1を参照してください。)
If the tunnel is not secured with IPsec or DTLS, some other method should be used to ensure that packets are decapsulated and forwarded by the tunnel tail only if those packets were encapsulated by the tunnel head. If the tunnel lies entirely within a single administrative domain, address filtering at the boundaries can be used to ensure that no packet with the IP source address of a tunnel endpoint or with the IP destination address of a tunnel endpoint can enter the domain from outside. However, when the tunnel head and the tunnel tail are not in the same administrative domain, this may become difficult, and filtering based on the destination address can even become impossible if the packets must traverse the public Internet. Sometimes only source address filtering (but not destination address filtering) is done at the boundaries of an administrative domain. If this is the case, the filtering does not provide effective protection at all unless the decapsulator of an MPLS-in-UDP validates the IP source address of the packet.
トンネルがIPsecまたはDTLSで保護されていない場合、他の方法を使用して、パケットがトンネルヘッドによってカプセル化されている場合にのみ、パケットがトンネルテールによってカプセル化解除されて転送されるようにする必要があります。トンネルが完全に単一の管理ドメイン内にある場合、境界でのアドレスフィルタリングを使用して、トンネルエンドポイントのIP送信元アドレスまたはトンネルエンドポイントのIP宛先アドレスを持つパケットが外部からドメインに入らないようにします。ただし、トンネルヘッドとトンネルテールが同じ管理ドメインにない場合、これは困難になる可能性があり、パケットがパブリックインターネットを通過する必要がある場合、宛先アドレスに基づくフィルタリングが不可能になることさえあります。場合によっては、管理ドメインの境界で送信元アドレスフィルタリングのみが実行されます(宛先アドレスフィルタリングは実行されません)。この場合、MPLS-in-UDPのカプセル化解除者がパケットのIP送信元アドレスを検証しない限り、フィルタリングは効果的な保護をまったく提供しません。
This document does not require that the decapsulator validate the IP source address of the tunneled packets (with the exception that the IPv6 source address MUST be validated when UDP zero-checksum mode is used with IPv6), but it should be understood that failure to do so presupposes that there is effective destination-based (or a combination of source-based and destination-based) filtering at the boundaries. MPLS-based VPN services rely on a VPN label in the MPLS label stack to identify the VPN. Corruption of that label could leak traffic across VPN boundaries. Such leakage is highly undesirable when inter-VPN isolation is used for privacy or security reasons. When that is the case, UDP checksums SHOULD be used for MPLS-in-UDP with both IPv4 and IPv6, and in particular, UDP zero-checksum mode SHOULD NOT be used with IPv6. Each UDP checksum covers the VPN label, thereby providing increased assurance of isolation among VPNs.
このドキュメントでは、カプセル化解除ツールがトンネルパケットのIP送信元アドレスを検証する必要はありません(ただし、IPv6でUDPゼロチェックサムモードを使用する場合は、IPv6送信元アドレスを検証する必要があります)。ただし、失敗すると、そのため、境界で効果的な宛先ベース(またはソースベースと宛先ベースの組み合わせ)のフィルタリングがあると仮定します。 MPLSベースのVPNサービスは、VPNを識別するためにMPLSラベルスタックのVPNラベルに依存しています。そのラベルが破損すると、VPN境界を越えてトラフィックがリークする可能性があります。プライバシーまたはセキュリティ上の理由でVPN間分離が使用されている場合、このような漏洩は非常に望ましくありません。その場合、IPv4とIPv6の両方でMPLS-in-UDPにUDPチェックサムを使用する必要があります(SHOULD)。特に、IPv6ではUDPゼロチェックサムモードを使用してはなりません(SHOULD NOT)。各UDPチェックサムはVPNラベルをカバーするため、VPN間の分離の保証が強化されます。
One UDP destination port number indicating MPLS has been allocated by IANA:
MPLSがIANAによって割り当てられたことを示す1つのUDP宛先ポート番号:
Service Name: MPLS-UDP
サービス名:MPLS-UDP
Transport Protocol(s): UDP
トランスポートプロトコル:UDP
Assignee: IESG <iesg@ietf.org>
Contact: IETF Chair <chair@ietf.org>.
連絡先:IETF議長<chair@ietf.org>。
Description: Encapsulate MPLS packets in UDP tunnels.
説明:MPLSパケットをUDPトンネルにカプセル化します。
Reference: RFC 7510
リファレンス:RFC 7510
Port Number: 6635
ポート番号:6635
One UDP destination port number indicating MPLS with DTLS has been allocated by IANA:
DTLSを使用するMPLSを示す1つのUDP宛先ポート番号がIANAによって割り当てられています。
Service Name: MPLS-UDP-DTLS
サービス名:MPLS-UDP-DTLS
Transport Protocol(s): UDP
トランスポートプロトコル:UDP
Assignee: IESG <iesg@ietf.org>
Contact: IETF Chair <chair@ietf.org>.
連絡先:IETF議長<chair@ietf.org>。
Description: Encapsulate MPLS packets in UDP tunnels with DTLS.
説明:DTLSを使用して、MPLSパケットをUDPトンネルにカプセル化します。
Reference: RFC 7510
リファレンス:RFC 7510
Port Number: 6636
ポート番号:6636
[RFC768] Postel, J., "User Datagram Protocol", STD 6, RFC 768, August 1980, <http://www.rfc-editor.org/info/rfc768>.
[RFC768] Postel、J。、「User Datagram Protocol」、STD 6、RFC 768、1980年8月、<http://www.rfc-editor.org/info/rfc768>。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>.
[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月、<http://www.rfc-editor.org/info/rfc2119>。
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", RFC 2460, December 1998, <http://www.rfc-editor.org/info/rfc2460>.
[RFC2460] Deering、S。およびR. Hinden、「インターネットプロトコル、バージョン6(IPv6)仕様」、RFC 2460、1998年12月、<http://www.rfc-editor.org/info/rfc2460>。
[RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack Encoding", RFC 3032, January 2001, <http://www.rfc-editor.org/info/rfc3032>.
[RFC3032]ローゼン、E。、タッパン、D。、フェドルコフ、G。、レクター、Y。、ファリナッチ、D。、リー、T。、およびA.コンタ、「MPLSラベルスタックエンコーディング」、RFC 3032、2001年1月、<http://www.rfc-editor.org/info/rfc3032>。
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, December 2005, <http://www.rfc-editor.org/info/rfc4301>.
[RFC4301] Kent、S。およびK. Seo、「インターネットプロトコルのセキュリティアーキテクチャ」、RFC 4301、2005年12月、<http://www.rfc-editor.org/info/rfc4301>。
[RFC5332] Eckert, T., Rosen, E., Ed., Aggarwal, R., and Y. Rekhter, "MPLS Multicast Encapsulations", RFC 5332, August 2008, <http://www.rfc-editor.org/info/rfc5332>.
[RFC5332] Eckert、T.、Rosen、E.、Ed。、Aggarwal、R。、およびY. Rekhter、「MPLS Multicast Encapsulations」、RFC 5332、2008年8月、<http://www.rfc-editor.org / info / rfc5332>。
[RFC5405] Eggert, L. and G. Fairhurst, "Unicast UDP Usage Guidelines for Application Designers", BCP 145, RFC 5405, November 2008, <http://www.rfc-editor.org/info/rfc5405>.
[RFC5405] Eggert、L。およびG. Fairhurst、「アプリケーション設計者のためのユニキャストUDP使用ガイドライン」、BCP 145、RFC 5405、2008年11月、<http://www.rfc-editor.org/info/rfc5405>。
[RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer Security Version 1.2", RFC 6347, January 2012, <http://www.rfc-editor.org/info/rfc6347>.
[RFC6347] Rescorla、E。およびN. Modadugu、「Datagram Transport Layer Security Version 1.2」、RFC 6347、2012年1月、<http://www.rfc-editor.org/info/rfc6347>。
[RFC6935] Eubanks, M., Chimento, P., and M. Westerlund, "IPv6 and UDP Checksums for Tunneled Packets", RFC 6935, April 2013, <http://www.rfc-editor.org/info/rfc6935>.
[RFC6935] Eubanks、M.、Chimento、P。、およびM. Westerlund、「トンネルパケットのIPv6およびUDPチェックサム」、RFC 6935、2013年4月、<http://www.rfc-editor.org/info/rfc6935 >。
[RFC6936] Fairhurst, G. and M. Westerlund, "Applicability Statement for the Use of IPv6 UDP Datagrams with Zero Checksums", RFC 6936, April 2013, <http://www.rfc-editor.org/info/rfc6936>.
[RFC6936] Fairhurst、G。およびM. Westerlund、「ゼロチェックサムを使用したIPv6 UDPデータグラムの使用に関する適用性声明」、RFC 6936、2013年4月、<http://www.rfc-editor.org/info/rfc6936> 。
[CIRCUIT-BREAKER] Fairhurst, G., "Network Transport Circuit Breakers", Work in Progress, draft-ietf-tsvwg-circuit-breaker-01, April 2015.
[CIRCUIT-BREAKER]フェアハースト、G。、「Network Transport Circuit Breakers」、Work in Progress、draft-ietf-tsvwg-circuit-breaker-01、2015年4月。
[RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, December 1998, <http://www.rfc-editor.org/info/rfc2474>.
[RFC2474] Nichols、K.、Blake、S.、Baker、F。、およびD. Black、「Definition of the Differentiated Services Field(DS Field)in the IPv4 and IPv6 Headers」、RFC 2474、1998年12月、<http ://www.rfc-editor.org/info/rfc2474>。
[RFC2914] Floyd, S., "Congestion Control Principles", BCP 41, RFC 2914, September 2000, <http://www.rfc-editor.org/info/rfc2914>.
[RFC2914] Floyd、S。、「Congestion Control Principles」、BCP 41、RFC 2914、2000年9月、<http://www.rfc-editor.org/info/rfc2914>。
[RFC4023] Worster, T., Rekhter, Y., and E. Rosen, Ed., "Encapsulating MPLS in IP or Generic Routing Encapsulation (GRE)", RFC 4023, March 2005, <http://www.rfc-editor.org/info/rfc4023>.
[RFC4023] Worster、T.、Rekhter、Y。、およびE. Rosen、編、「IPまたはGeneric Routing Encapsulation(GRE)でのMPLSのカプセル化」、RFC 4023、2005年3月、<http://www.rfc- editor.org/info/rfc4023>。
[RFC4817] Townsley, M., Pignataro, C., Wainner, S., Seely, T., and J. Young, "Encapsulation of MPLS over Layer 2 Tunneling Protocol Version 3", RFC 4817, March 2007, <http://www.rfc-editor.org/info/rfc4817>.
[RFC4817] Townsley、M.、Pignataro、C.、Wainner、S.、Seely、T。、およびJ. Young、「MPLS over Layer 2 Tunneling Protocol Version 3」、RFC 4817、2007年3月、<http: //www.rfc-editor.org/info/rfc4817>。
[RFC5640] Filsfils, C., Mohapatra, P., and C. Pignataro, "Load-Balancing for Mesh Softwires", RFC 5640, August 2009, <http://www.rfc-editor.org/info/rfc5640>.
[RFC5640] Filsfils、C.、Mohapatra、P。、およびC. Pignataro、「メッシュソフトワイヤーのロードバランシング」、RFC 5640、2009年8月、<http://www.rfc-editor.org/info/rfc5640> 。
[RFC6438] Carpenter, B. and S. Amante, "Using the IPv6 Flow Label for Equal Cost Multipath Routing and Link Aggregation in Tunnels", RFC 6438, November 2011, <http://www.rfc-editor.org/info/rfc6438>.
[RFC6438]カーペンター、B。およびS.アマンテ、「トンネルでの等コストマルチパスルーティングおよびリンク集約のためのIPv6フローラベルの使用」、RFC 6438、2011年11月、<http://www.rfc-editor.org/info / rfc6438>。
Acknowledgements
謝辞
Thanks to Shane Amante, Dino Farinacci, Keshava A K, Ivan Pepelnjak, Eric Rosen, Andrew G. Malis, Kireeti Kompella, Marshall Eubanks, George Swallow, Loa Andersson, Vivek Kumar, Stewart Bryant, Wen Zhang, Joel M. Halpern, Noel Chiappa, Scott Brim, Alia Atlas, Alexander Vainshtein, Joel Jaeggli, Edward Crabbe, Mark Tinka, Lars Eggert, Joe Touch, Lloyd Wood, Gorry Fairhurst, Weiguo Hao, Mark Szczesniak, Stephen Farrell, Martin Stiemerling, Zhenxiao Liu, and Xing Tong for their valuable comments and suggestions on this document.
Shane Amante、Dino Farinacci、Keshava AK、Ivan Pepelnjak、Eric Rosen、Andrew G. Malis、Kireeti Kompella、Marshall Eubanks、George Swallow、Loa Andersson、Vivek Kumar、Stewart Bryant、Wen Zhang、Joel M. Halpern、Noel Chiappaに感謝、スコット・ブリム、アリア・アトラス、アレクサンダー・ヴァインシュテイン、ジョエル・ジャグリ、エドワード・クラブ、マーク・ティンカ、ラース・エガート、ジョー・タッチ、ロイド・ウッド、ゴリー・フェアハースト、ウェイグオ・ハオ、マーク・シュチェスニアック、スティーブン・ファレル、マーティン・スティーマーリング、ジェンシャオ・リュー、シン・トンこのドキュメントに関する貴重なコメントと提案。
Special thanks to Alia Atlas for her insightful suggestion of adding an applicability statement.
適用性ステートメントの追加について洞察に満ちた提案をしてくれたAlia Atlasに特に感謝します。
Thanks to Daniel King, Gregory Mirsky, and Eric Osborne for their valuable MPLS-RT reviews on this document. Thanks to Charlie Kaufman for his SecDir review of this document. Thanks to Nevil Brownlee for the OPS-Dir review of this document. Thanks to Roni Even for the Gen-ART review of this document. Thanks to Pearl Liang for the IANA review of this document.
このドキュメントに関する貴重なMPLS-RTレビューを提供してくれたDaniel King、Gregory Mirsky、およびEric Osborneに感謝します。このドキュメントをSecDirでレビューしてくれたCharlie Kaufmanに感謝します。このドキュメントのOPS-Dirレビューを提供してくれたNevil Brownleeに感謝します。このドキュメントのGen-ARTレビューをしてくれたRoni Evenに感謝します。このドキュメントのIANAレビューを提供してくれたPearl Liangに感謝します。
Contributors
貢献者
Note that contributors are listed in alphabetical order according to their last names.
寄稿者は、姓のアルファベット順にリストされていることに注意してください。
Yongbing Fan China Telecom EMail: fanyb@gsta.com
yo pumpkin pie fan China Telecom Email:@古斯塔.comが2倍に
Adrian Farrel Juniper Networks EMail: adrian@olddog.co.uk
エイドリアン・ファレル・ジュニパーネットワークスEメール:adrian@olddog.co.uk
Zhenbin Li Huawei Technologies EMail: lizhenbin@huawei.com
Zは非常にビンl IH UAは技術メール:李振彬@ Huawei.com
Carlos Pignataro Cisco Systems EMail: cpignata@cisco.com
Carlos PignataroシスコシステムズEメール:cpignata@cisco.com
Curtis Villamizar Outer Cape Cod Network Consulting, LLC EMail: curtis@occnc.com
Curtis Villamizar Outer Cape Cod Network Consulting、LLC Eメール:curtis@occnc.com
Authors' Addresses
著者のアドレス
Xiaohu Xu Huawei Technologies No.156 Beiqing Rd Beijing 100095 China
ξアウトバックXええとUAはテクノロジーナンバー156です。iqingRD北京100095中国
Phone: +86-10-60610041 EMail: xuxiaohu@huawei.com
Nischal Sheth Juniper Networks 1194 N. Mathilda Ave Sunnyvale, CA 94089 United States
Nischal Sheth Juniper Networks 1194 N. Mathilda Ave Sunnyvale、CA 94089アメリカ合衆国
EMail: nsheth@juniper.net
Lucy Yong Huawei USA
米国向けルーシーヨンフーA
EMail: Lucy.yong@huawei.com
Ross Callon Juniper Networks
ロスキャロンジュニパーネットワークス
EMail: rcallon@juniper.net
David Black EMC Corporation 176 South Street Hopkinton, MA 01748 United States
David Black EMC Corporation 176 South Streetホプキントン、MA 01748アメリカ合衆国
EMail: david.black@emc.com