[要約] RFC 7829は、Stream Control Transmission Protocol(SCTP)のためのクイックフェイルオーバーアルゴリズムであるSCTP-PFについての要約です。このRFCの目的は、SCTPの信頼性と可用性を向上させるために、効率的なフェイルオーバー機能を提供することです。

Internet Engineering Task Force (IETF)                        Y. Nishida
Request for Comments: 7829                            GE Global Research
Category: Standards Track                                   P. Natarajan
ISSN: 2070-1721                                            Cisco Systems
                                                                 A. Caro
                                                        BBN Technologies
                                                                 P. Amer
                                                  University of Delaware
                                                              K. Nielsen
                                                                Ericsson
                                                              April 2016
        

SCTP-PF: A Quick Failover Algorithm for the Stream Control Transmission Protocol

SCTP-PF:ストリーム制御伝送プロトコルのクイックフェイルオーバーアルゴリズム

Abstract

概要

The Stream Control Transmission Protocol (SCTP) supports multihoming. However, when the failover operation specified in RFC 4960 is followed, there can be significant delay and performance degradation in the data transfer path failover. This document specifies a quick failover algorithm and introduces the SCTP Potentially Failed (SCTP-PF) destination state in SCTP Path Management.

ストリーム制御伝送プロトコル(SCTP)はマルチホーミングをサポートしています。ただし、RFC 4960で指定されているフェイルオーバー操作を実行すると、データ転送パスのフェイルオーバーで大幅な遅延とパフォーマンスの低下が発生する可能性があります。このドキュメントでは、クイックフェイルオーバーアルゴリズムを指定し、SCTPパス管理でのSCTP潜在的障害(SCTP-PF)宛先状態を紹介します。

This document also specifies a dormant state operation of SCTP that is required to be followed by an SCTP-PF implementation, but it may equally well be applied by a standard SCTP implementation, as described in RFC 4960.

このドキュメントでは、SCTP-PF実装が従う必要があるSCTPの休止状態の動作も指定されていますが、RFC 4960で説明されているように、標準のSCTP実装でも同様に適用できます。

Additionally, this document introduces an alternative switchback operation mode called "Primary Path Switchover" that will be beneficial in certain situations. This mode of operation applies to both a standard SCTP implementation and an SCTP-PF implementation.

さらに、このドキュメントでは、特定の状況で役立つ「プライマリパススイッチオーバー」と呼ばれる代替スイッチバック操作モードを紹介しています。この動作モードは、標準のSCTP実装とSCTP-PF実装の両方に適用されます。

The procedures defined in the document require only minimal modifications to the specification in RFC 4960. The procedures are sender-side only and do not impact the SCTP receiver.

このドキュメントで定義されている手順では、RFC 4960の仕様を最小限に変更するだけで済みます。手順は送信側のみであり、SCTP受信側には影響しません。

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/rfc7829.

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

Copyright Notice

著作権表示

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

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

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

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

Table of Contents

目次

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Conventions and Terminology . . . . . . . . . . . . . . . . .   5
   3.  SCTP with Potentially Failed (SCTP-PF) Destination State  . .   5
     3.1.  Overview  . . . . . . . . . . . . . . . . . . . . . . . .   5
     3.2.  Specification of the SCTP-PF Procedures . . . . . . . . .   6
   4.  Dormant State Operation . . . . . . . . . . . . . . . . . . .  10
     4.1.  SCTP Dormant State Procedure  . . . . . . . . . . . . . .  11
   5.  Primary Path Switchover . . . . . . . . . . . . . . . . . . .  11
   6.  Suggested SCTP Protocol Parameter Values  . . . . . . . . . .  13
   7.  Socket API Considerations . . . . . . . . . . . . . . . . . .  13
     7.1.  Support for the Potentially Failed Path State . . . . . .  14
     7.2.  Peer Address Thresholds (SCTP_PEER_ADDR_THLDS) Socket
           Option  . . . . . . . . . . . . . . . . . . . . . . . . .  15
     7.3.  Exposing the Potentially Failed Path State
           (SCTP_EXPOSE_POTENTIALLY_FAILED_STATE) Socket Option  . .  16
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  16
   9.  MIB Considerations  . . . . . . . . . . . . . . . . . . . . .  17
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  17
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  17
     10.2.  Informative References . . . . . . . . . . . . . . . . .  18
   Appendix A.  Discussion of Alternative Approaches . . . . . . . .  20
     A.1.  Reduce PMR  . . . . . . . . . . . . . . . . . . . . . . .  20
     A.2.  Adjust RTO-Related Parameters . . . . . . . . . . . . . .  21
   Appendix B.  Discussion of the Path-Bouncing Effect . . . . . . .  21
   Appendix C.  SCTP-PF for SCTP Single-Homed Operation  . . . . . .  22
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  22
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  23
        
1. Introduction
1. はじめに

The Stream Control Transmission Protocol (SCTP) specified in [RFC4960] supports multihoming at the transport layer. SCTP's multihoming features include failure detection and failover procedures to provide network interface redundancy and improved end-to-end fault tolerance. In SCTP's current failure detection procedure, the sender must experience Path.Max.Retrans (PMR) number of consecutive failed timer-based retransmissions on a destination address before detecting a path failure. Until detecting the path failure, the sender continues to transmit data on the failed path. The prolonged time in which SCTP as described in [RFC4960] continues to use a failed path severely degrades the performance of the protocol. To address this problem, this document specifies a quick failover algorithm called "SCTP-PF" based on the introduction of a new Potentially Failed (PF) path state in SCTP path management. The performance deficiencies of the failover operation described in RFC 4960, and the improvements obtainable from the introduction of a PF state in SCTP, were proposed and documented in [NATARAJAN09] for Concurrent Multipath Transfer SCTP [IYENGAR06].

[RFC4960]で指定されているストリーム制御伝送プロトコル(SCTP)は、トランスポート層でのマルチホーミングをサポートしています。 SCTPのマルチホーミング機能には、ネットワークインターフェイスの冗長性とエンドツーエンドのフォールトトレランスの向上を提供する障害検出とフェイルオーバー手順が含まれています。 SCTPの現在の障害検出手順では、送信者は、パスの障害を検出する前に、宛先アドレスでPath.Max.Retrans(PMR)の連続した失敗したタイマーベースの再送信を経験する必要があります。パスの障害を検出するまで、送信側は障害のあるパスでデータを送信し続けます。 [RFC4960]で説明されているようにSCTPが長時間継続すると、障害が発生したパスが使用され、プロトコルのパフォーマンスが大幅に低下します。この問題に対処するために、このドキュメントでは、SCTPパス管理での新しい潜在的障害(PF)パス状態の導入に基づいて、「SCTP-PF」と呼ばれるクイックフェイルオーバーアルゴリズムを指定します。 RFC 4960で説明されているフェイルオーバー操作のパフォーマンスの欠陥、およびSCTPでのPF状態の導入から得られる改善点は、[NATARAJAN09]で提案され、同時マルチパス転送SCTP [IYENGAR06]で文書化されました。

While SCTP-PF can accelerate the failover process and improve performance, the risk that an SCTP endpoint might enter the dormant state where all destination addresses are inactive can be increased. [RFC4960] leaves the protocol operation during dormant state to implementations and encourages avoiding entering the state as much as possible by careful tuning of the PMR and Association.Max.Retrans (AMR) parameters. We specify a dormant state operation for SCTP-PF, which makes SCTP-PF provide the same disruption tolerance as [RFC4960] despite the fact that the dormant state may be entered more quickly. The dormant state operation may equally well be applied by an implementation of [RFC4960] and will serve here to provide added fault tolerance for situations where the tuning of the PMR and AMR parameters fail to provide adequate prevention of the entering of the dormant state.

SCTP-PFはフェイルオーバープロセスを高速化してパフォーマンスを向上させることができますが、SCTPエンドポイントがすべての宛先アドレスが非アクティブである休止状態になる可能性があるリスクは増加する可能性があります。 [RFC4960]は、休止状態の間のプロトコル操作を実装に任せ、PMRおよびAssociation.Max.Retrans(AMR)パラメータを注意深く調整することで、可能な限り状態に入らないようにします。 SCTP-PFには休止状態の操作を指定します。これにより、SCTP-PFは[RFC4960]と同じ破壊耐性を提供しますが、休止状態に入る時間が短くなる可能性があります。休止状態の操作は[RFC4960]の実装によっても同様に適用でき、PMRおよびAMRパラメータのチューニングが休止状態に入ることの適切な防止を提供できない状況に対して追加のフォールトトレランスを提供するためにここで役立ちます。

The operation after the recovery of a failed path also impacts the performance of the protocol. With the procedures specified in [RFC4960], SCTP will (after a failover from the primary path) switch back to use the primary path for data transfer as soon as this path becomes available again. From a performance perspective, such a forced switchback of the data transmission path can be suboptimal as the Congestion Window (CWND) towards the original primary destination address has to be rebuilt once data transfer resumes, [CARO02]. As an optional alternative to the switchback operation of [RFC4960], this document specifies an alternative Primary Path Switchover procedure that avoids such forced switchbacks of the data transfer path. The Primary Path Switchover operation was originally proposed in [CARO02].

障害が発生したパスの復旧後の操作も、プロトコルのパフォーマンスに影響を与えます。 [RFC4960]で指定された手順を使用すると、SCTPは(プライマリパスからのフェイルオーバー後に)このパスが再び使用可能になるとすぐに、データ転送にプライマリパスを使用するように切り替わります。パフォーマンスの観点からは、データ転送が再開すると、元のプライマリ宛先アドレスへの輻輳ウィンドウ(CWND)を再構築する必要があるため、このようなデータ伝送パスの強制的なスイッチバックは最適ではない可能性があります[CARO02]。 [RFC4960]のスイッチバック操作のオプションの代替として、このドキュメントでは、データ転送パスのこのような強制的なスイッチバックを回避する代替のプライマリパススイッチオーバー手順を指定します。 Primary Path Switchover操作は、元々[CARO02]で提案されました。

While SCTP-PF is primarily motivated by a desire to improve the multihomed operation, the feature also applies to SCTP single-homed operation. Here the algorithm serves to provide increased failure detection on idle associations, whereas the failover or switchback aspects of the algorithm will not be activated. This is discussed in more detail in Appendix C.

SCTP-PFは主にマルチホームオペレーションを改善したいという欲求によって動機付けられていますが、この機能はSCTPシングルホームオペレーションにも適用されます。ここでは、アルゴリズムがアイドルアソシエーションの障害検出を強化するのに役立ちますが、アルゴリズムのフェイルオーバーまたはスイッチバックの側面はアクティブ化されません。これについては、付録Cで詳しく説明します。

A brief description of the motivation for the introduction of the PF state, including a discussion of alternative approaches to mitigate the deficiencies of the failover operation in [RFC4960], are given in the appendices. Discussion of path-bouncing effects that might be caused by frequent switchovers are also provided there.

付録には、[RFC4960]のフェイルオーバー操作の欠陥を軽減する代替アプローチの説明を含む、PF状態の導入の動機の簡単な説明が記載されています。頻繁な切り替えによって引き起こされる可能性のあるパスバウンス効果についての議論もそこで提供されています。

2. Conventions and Terminology
2. 表記法と用語

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]で説明されているように解釈されます。

3. SCTP with Potentially Failed (SCTP-PF) Destination State
3. 潜在的に失敗した(SCTP-PF)宛先状態のSCTP
3.1. Overview
3.1. 概観

To minimize the performance impact during failover, the sender should avoid transmitting data to a failed destination address as early as possible. In the SCTP path management scheme described in [RFC4960], the sender stops transmitting data to a destination address only after the destination address is marked inactive. This process takes a significant amount of time as it requires the error counter of the destination address to exceed the PMR threshold. The issue cannot simply be mitigated by lowering the PMR threshold because this may result in spurious failure detection and unnecessary prevention of the usage of a preferred primary path. Also, due to the coupled tuning of the PMR and the AMR parameter values in [RFC4960], lowering the PMR threshold may result in lowering the AMR threshold, which would result in a decrease of the fault tolerance of SCTP.

フェイルオーバー中のパフォーマンスへの影響を最小限に抑えるために、送信者は、失敗した宛先アドレスにデータをできるだけ早く送信しないようにする必要があります。 [RFC4960]で説明されているSCTPパス管理方式では、送信者は、宛先アドレスが非アクティブとしてマークされた後にのみ、宛先アドレスへのデータの送信を停止します。このプロセスは、宛先アドレスのエラーカウンターがPMRしきい値を超える必要があるため、かなりの時間がかかります。この問題は、PMRしきい値を下げるだけでは軽減できません。これは、誤った障害を検出し、優先プライマリパスの使用を不必要に防止する可能性があるためです。また、[RFC4960]でのPMRとAMRパラメータ値の結合チューニングにより、PMRしきい値を下げるとAMRしきい値が下がり、SCTPのフォールトトレランスが低下する可能性があります。

The solution provided in this document is to extend the SCTP path management scheme of [RFC4960] by the addition of the PF state as an intermediate state in between the active and inactive state of a destination address in the path management scheme of [RFC4960], and let the failover of data transfer away from a destination address be driven by the entering of the PF state instead of by the entering of the inactive state. Thereby, SCTP may perform quick failover without negatively impacting the overall fault tolerance of SCTP as described in [RFC4960]. At the same time, HEARTBEAT probing based on Retransmission Timeout (RTO) is initiated towards a destination address once it enters PF state. Thereby, SCTP may quickly ascertain whether network connectivity towards the destination address is broken or whether the failover was spurious. In the case where the failover was spurious, data transfer may quickly resume towards the original destination address.

このドキュメントで提供されるソリューションは、[RFC4960]のパス管理スキームで宛先アドレスのアクティブ状態と非アクティブ状態の中間状態としてPF状態を追加することにより、[RFC4960]のSCTPパス管理スキームを拡張することです。また、宛先アドレスから離れたデータ転送のフェイルオーバーが、非アクティブ状態に入ることではなく、PF状態に入ることによって駆動されるようにします。これにより、[RFC4960]で説明されているように、SCTPはSCTPの全体的なフォールトトレランスに悪影響を与えることなく、迅速なフェイルオーバーを実行できます。同時に、宛先アドレスがPF状態になると、再送信タイムアウト(RTO)に基づくHEARTBEATプローブが宛先アドレスに向けて開始されます。これにより、SCTPは、宛先アドレスへのネットワーク接続が切断されているかどうか、またはフェールオーバーが誤っていたかどうかをすばやく確認できます。フェイルオーバーが誤っていた場合、元の宛先アドレスへのデータ転送がすぐに再開されることがあります。

The new failure detection algorithm assumes that loss detected by a timeout implies either severe congestion or network connectivity failure. It recommends that, by default, a destination address be classified as PF at the occurrence of the first timeout.

新しい障害検出アルゴリズムは、タイムアウトによって検出された損失が深刻な輻輳またはネットワーク接続障害のいずれかを意味すると想定しています。デフォルトでは、最初のタイムアウトの発生時に宛先アドレスをPFとして分類することをお勧めします。

3.2. Specification of the SCTP-PF Procedures
3.2. SCTP-PF手順の仕様

The SCTP-PF operation is specified as follows:

SCTP-PF操作は次のように指定されます。

1. The sender maintains a new tunable SCTP Protocol Parameter called PotentiallyFailed.Max.Retrans (PFMR). The PFMR defines the new intermediate PF threshold on the destination address error counter. When this threshold is exceeded, the destination address is classified as PF. The RECOMMENDED value of PFMR is 0. If PFMR is set to be greater than or equal to PMR, the resulting PF threshold will be so high that the destination address will reach the inactive state before it can be classified as PF.

1. 送信者は、PotentiallyFailed.Max.Retrans(PFMR)と呼ばれる調整可能な新しいSCTPプロトコルパラメータを維持します。 PFMRは、宛先アドレスエラーカウンターに新しい中間PFしきい値を定義します。このしきい値を超えると、宛先アドレスはPFとして分類されます。 PFMRの推奨値は0です。PFMRがPMR以上に設定されている場合、結果のPFしきい値が非常に高くなるため、宛先アドレスはPFとして分類される前に非アクティブ状態になります。

2. The error counter of an active destination address is incremented or cleared as specified in [RFC4960]. This means that the error counter of the destination address in active state will be incremented each time the Timer T3 retransmission (T3-rtx) timer expires, or each time a HEARTBEAT chunk is sent when idle and not acknowledged within an RTO. When the value in the destination address error counter exceeds PFMR, the endpoint MUST mark the destination address as in the PF state.

2. [RFC4960]で指定されているように、アクティブな宛先アドレスのエラーカウンターがインクリメントまたはクリアされます。つまり、アクティブ状態の宛先アドレスのエラーカウンターは、タイマーT3再送信(T3-rtx)タイマーが期限切れになるたび、またはアイドル状態でRTO内で確認応答されていないときにHEARTBEATチャンクが送信されるたびに増加します。宛先アドレスエラーカウンターの値がPFMRを超える場合、エンドポイントは、PF状態と同様に宛先アドレスをマークする必要があります。

3. An SCTP-PF sender SHOULD NOT send data to destination addresses in PF state when alternative destination addresses in active state are available. Specifically, this means that:

3. SCTP-PF送信者は、アクティブ状態の代替宛先アドレスが使用可能な場合、PF状態の宛先アドレスにデータを送信してはなりません(SHOULD NOT)。具体的には、これは次のことを意味します。

i. When there is outbound data to send and the destination address presently used for data transmission is in PF state, the sender SHOULD choose a destination address in active state, if one exists, and use this destination address for data transmission.

i. 送信する送信データがあり、データ送信に現在使用されている宛先アドレスがPF状態である場合、送信者は、アクティブ状態の宛先アドレスが存在する場合はそれを選択して、この宛先アドレスをデータ送信に使用する必要があります。

ii. As specified in Section 6.4.1 of [RFC4960], when the sender retransmits data that has timed out, they should attempt to pick a new destination address for data retransmission. In this case, the sender SHOULD choose an alternate destination transport address in active state, if one exists.

ii。 [RFC4960]のセクション6.4.1で指定されているように、送信者はタイムアウトしたデータを再送信するときに、データ再送信用に新しい宛先アドレスを選択する必要があります。この場合、送信者は、アクティブな状態の代替宛先トランスポートアドレスが存在する場合、それを選択する必要があります(SHOULD)。

iii. When there is outbound data to send and the SCTP user explicitly requests to send data to a destination address in PF state, the sender SHOULD send the data to an alternate destination address in active state if one exists.

iii。送信する送信データがあり、SCTPユーザーがPF状態の宛先アドレスにデータを送信することを明示的に要求する場合、送信者は、アクティブ状態の代替宛先アドレスが存在する場合は、そのデータを代替宛先アドレスに送信する必要があります(SHOULD)。

When choosing among multiple destination addresses in active state, an SCTP sender will follow the guiding principles of Section 6.4.1 of [RFC4960] by choosing the most divergent source-destination pairs compared with, for (the aforementioned points i and ii):

アクティブ状態の複数の宛先アドレスの中から選択する場合、SCTP送信者は、[RFC4960]のセクション6.4.1の指針に従って、(前述のポイントiとii)と比較して、最も異なる送信元と宛先のペアを選択します。

i. the destination address in PF state that it performs a failover from, and

i. フェイルオーバーを実行するPF状態の宛先アドレス、および

ii. the destination address towards which the data timed out.

ii。データがタイムアウトした宛先アドレス。

Rules for picking the most divergent source-destination pair are an implementation decision and are not specified within this document.

最も異なる送信元と宛先のペアを選択するためのルールは実装の決定であり、このドキュメントでは指定されていません。

In all cases, the sender MUST NOT change the state of the chosen destination address, whether this state be active or PF, and it MUST NOT clear the error counter of the destination address as a result of choosing the destination address for data transmission.

すべての場合において、送信者は、この状態がアクティブかPFかにかかわらず、選択された宛先アドレスの状態を変更してはならず(MUST NOT)、データ送信の宛先アドレスを選択した結果として、宛先アドレスのエラーカウンターをクリアしてはなりません(MUST NOT)。

4. When the destination addresses are all in PF state, or some are in PF state and some in inactive state, the sender MUST choose one destination address in PF state and SHOULD transmit or retransmit data to this destination address using the following rules:

4. 宛先アドレスがすべてPF状態の場合、または一部がPF状態で一部が非アクティブ状態の場合、送信者はPF状態の宛先アドレスを1つ選択し、次のルールを使用してこの宛先アドレスにデータを送信または再送信する必要があります(SHOULD)。

i. The sender SHOULD choose the destination in PF state with the lowest error count (fewest consecutive timeouts) for data transmission and transmit or retransmit data to this destination.

i. 送信者は、データ送信のためにエラー数が最も少ない(連続したタイムアウトが最も少ない)PF状態の宛先を選択し、この宛先にデータを送信または再送信する必要があります(SHOULD)。

ii. When there are multiple destination addresses in PF state with same error count, the sender should let the choice among the multiple destination addresses in PF state with equal error count be based on the principles of choosing the most divergent source-destination pairs when executing (potentially consecutive) retransmission outlined in Section 6.4.1 of [RFC4960]. Rules for picking the most divergent source-destination pairs are an implementation decision and are not specified within this document.

ii。同じエラー数のPF状態の宛先アドレスが複数ある場合、送信者は、エラー状態が等しいPF状態の複数の宛先アドレスの中から、実行時に最も発散する送信元と宛先のペアを選択するという原則に基づいて選択する必要があります(潜在的に[連続] [RFC4960]のセクション6.4.1で概説されている再送信。最も分岐している送信元と宛先のペアを選択するためのルールは実装の決定であり、このドキュメントでは指定されていません。

The sender MUST NOT change the state and the error counter of any destination addresses as the result of the selection.

送信者は、選択の結果として、宛先アドレスの状態とエラーカウンターを変更してはなりません(MUST NOT)。

5. The HB.Interval of the Path Heartbeat function of [RFC4960] MUST be ignored for destination addresses in PF state. Instead, HEARTBEAT chunks are sent to destination addresses in PF state once per RTO. HEARTBEAT chunks SHOULD be sent to destination addresses in PF state, but the sending of HEARTBEATs MUST honor whether or not the Path Heartbeat function (Section 8.3 of [RFC4960]) is enabled for the destination address. That is, if the Path Heartbeat function is disabled for the destination address in question, HEARTBEATs MUST NOT be sent. Note that when the Path Heartbeat function is disabled, it may take longer to transition a destination address in PF state back to active state.

5. [RFC4960]のパスハートビート機能のHB.Intervalは、PF状態の宛先アドレスでは無視する必要があります。代わりに、HEARTBEATチャンクは、RTOごとに1回、PF状態の宛先アドレスに送信されます。 HEARTBEATチャンクはPF状態の宛先アドレスに送信する必要があります(SHOULD)。ただし、HEARTBEATの送信では、宛先アドレスに対してパスハートビート機能([RFC4960]のセクション8.3)が有効かどうかを尊重する必要があります。つまり、問題の宛先アドレスに対してパスハートビート機能が無効になっている場合、ハートビートを送信してはなりません。パスハートビート機能が無効になっている場合、PF状態の宛先アドレスをアクティブ状態に戻すのに時間がかかることがあります。

6. HEARTBEATs are sent when a destination address reaches the PF state. When a HEARTBEAT chunk is not acknowledged within the RTO, the sender increments the error counter and exponentially backs off the RTO value. If the error counter is less than PMR, the sender transmits another packet containing the HEARTBEAT chunk immediately after timeout expiration on the previous HEARTBEAT. When data is being transmitted to a destination address in the PF state, the transmission of a HEARTBEAT chunk MAY be omitted in the case where the receipt of a Selective Acknowledgment (SACK) of the data or a T3-rtx timer expiration on the data can provide equivalent information, such as the case where the data chunk has been transmitted to a single destination address only. Likewise, the timeout of a HEARTBEAT chunk MAY be ignored if data is outstanding towards the destination address.

6. HEARTBEATは、宛先アドレスがPF状態に達したときに送信されます。 HEARTBEATチャンクがRTO内で確認されない場合、送信者はエラーカウンターをインクリメントし、RTO値を指数的にバックオフします。エラーカウンターがPMR未満の場合、送信者は、前回のHEARTBEATのタイムアウト期限が切れた直後に、HEARTBEATチャンクを含む別のパケットを送信します。データがPF状態の宛先アドレスに送信されている場合、データの選択的確認応答(SACK)の受信またはデータのT3-rtxタイマーの有効期限が切れた場合、HEARTBEATチャンクの送信を省略できます。データチャンクが単一の宛先アドレスにのみ送信された場合など、同等の情報を提供します。同様に、データが宛先アドレスに対して未解決である場合、HEARTBEATチャンクのタイムアウトは無視される場合があります。

7. When the sender receives a HEARTBEAT ACK from a HEARTBEAT sent to a destination address in PF state, the sender SHOULD clear the error counter of the destination address and transition the destination address back to active state. However, there may be a situation where HEARTBEAT chunks can go through while DATA chunks cannot. Hence, in a situation where a HEARTBEAT ACK arrives while there is data outstanding towards the destination address to which the HEARTBEAT was sent, then an implementation MAY choose to not have the HEARTBEAT ACK reset the error counter, but have the error counter reset await the fate of the outstanding data transmission. This situation can happen when data is sent to a destination address in PF state. When the sender resumes data transmission on a destination address after a transition of the destination address from PF to active state, it MUST do this following the prescriptions of Section 7.2 of [RFC4960].

7. 送信者がPF状態の宛先アドレスに送信されたHEARTBEATからHEARTBEAT ACKを受信すると、送信者は宛先アドレスのエラーカウンターをクリアし、宛先アドレスをアクティブ状態に戻す必要があります(SHOULD)。ただし、HEARTBEATチャンクは通過できるが、DATAチャンクは通過できない状況がある可能性があります。したがって、HEARTBEATが送信された宛先アドレスに未処理のデータがある間にHEARTBEAT ACKが到着する状況では、実装はHEARTBEAT ACKがエラーカウンターをリセットしないように選択できますが、エラーカウンターは卓越したデータ伝送の運命。この状況は、データがPF状態の宛先アドレスに送信されたときに発生する可能性があります。送信者が宛先アドレスをPFからアクティブ状態に移行した後、宛先アドレスでのデータ送信を再開する場合、[RFC4960]のセクション7.2の規定に従ってこれを実行する必要があります。

8. Additional PMR - PFMR consecutive timeouts on a destination address in PF state confirm the path failure, upon which the destination address transitions to the inactive state. As described in [RFC4960], the sender SHOULD (i) notify the Upper Layer Protocol (ULP) about this state transition, and (ii) transmit HEARTBEAT chunks to the inactive destination address at a lower HB.Interval frequency as described in Section 8.3 of [RFC4960] (when the Path Heartbeat function is enabled for the destination address).

8.追加のPMR-PF状態の宛先アドレスでのPFMR連続タイムアウトにより、パスの障害が確認され、宛先のアドレスが非アクティブ状態に移行します。 [RFC4960]で説明されているように、送信者は(i)この状態遷移について上位層プロトコル(ULP)に通知し、(ii)セクション8.3で説明されているように、より低いHB.Interval頻度でHEARTBEATチャンクを非アクティブな宛先アドレスに送信する必要があります(SHOULD)。 [RFC4960]の(宛先アドレスに対してパスハートビート機能が有効になっている場合)。

9. Acknowledgments for chunks that have been transmitted to multiple destinations (i.e., a chunk that has been retransmitted to a different destination address than the destination address to which the chunk was first transmitted) SHOULD NOT clear the error count for an inactive destination address and SHOULD NOT move a destination address in PF state back to active state, since a sender cannot disambiguate whether the ACK was for the original transmission or the retransmission(s). An SCTP sender MAY clear the error counter and move a destination address back to active state by information other than acknowledgments, when it can uniquely determine which destination, among multiple destination addresses, the chunk reached. This document makes no reference to what such information could consist of, nor how such information could be obtained.

9. 複数の宛先に送信されたチャンクの確認応答(つまり、チャンクが最初に送信された宛先アドレスとは異なる宛先アドレスに再送信されたチャンク)は、非アクティブな宛先アドレスのエラーカウントをクリアしてはならず(SHOULD NOT)、送信者はACKが元の送信用か再送信用かを明確にすることができないため、PF状態の宛先アドレスをアクティブ状態に戻します。複数の宛先アドレスの中でチャンクが到達した宛先を一意に判別できる場合、SCTP送信者はエラーカウンターをクリアし、確認応答以外の情報によって宛先アドレスをアクティブ状態に戻すことができます。このドキュメントでは、そのような情報の構成要素や、そのような情報を取得する方法については言及していません。

10. Acknowledgments for data chunks that have been transmitted to one destination address only MUST clear the error counter for the destination address and MUST transition a destination address in PF state back to active state. This situation can happen when new data is sent to a destination address in the PF state. It can also happen in situations where the destination address is in the PF state due to the occurrence of a spurious T3-rtx timer and acknowledgments start to arrive for data sent prior to occurrence of the spurious T3-rtx and data has not yet been retransmitted towards other destinations. This document does not specify special handling for detection of, or reaction to, spurious T3-rtx timeouts, e.g., for special operation vis-a-vis the congestion control handling or data retransmission operation towards a destination address that undergoes a transition from active to PF to active state due to a spurious T3-rtx timeout. But it is noted that this is an area that would benefit from additional attention, experimentation, and specification for single-homed SCTP as well as for multihomed SCTP protocol operation.

10. 1つの宛先アドレスにのみ送信されたデータチャンクの確認応答は、宛先アドレスのエラーカウンターをクリアし、PF状態の宛先アドレスをアクティブ状態に戻す必要があります。この状況は、PF状態の宛先アドレスに新しいデータが送信されたときに発生する可能性があります。また、偽のT3-rtxタイマーが発生したために宛先アドレスがPF状態にあり、偽のT3-rtxが発生する前に送信されたデータに対して確認応答が到着し、データがまだ再送信されていない場合にも発生します。他の目的地に向けて。このドキュメントでは、スプリアスT3-rtxタイムアウトの検出または対応のための特別な処理、たとえば、アクティブからアクティブに遷移する宛先アドレスへの輻輳制御処理またはデータ再送信処理に対する特別な処理を指定していません。疑似T3-rtxタイムアウトにより、PFがアクティブ状態になりました。ただし、これは、マルチホームSCTPプロトコルの動作だけでなく、シングルホームSCTPの追加の注意、実験、および仕様の恩恵を受ける領域であることに注意してください。

11. When all destination addresses are in inactive state, and SCTP protocol operation thus is said to be in dormant state, the prescriptions given in Section 4 shall be followed.

11. すべての宛先アドレスが非アクティブ状態にあり、SCTPプロトコル操作が休止状態にあると言われる場合、セクション4に記載されている規定に従う必要があります。

12. The SCTP stack SHOULD expose the PF state of its destination addresses to the ULP as well as provide the means to notify the ULP of state transitions of its destination addresses from active to PF, and vice versa. However, it is recommended that an SCTP stack implementing SCTP-PF also allows for the ULP to be kept ignorant of the PF state of its destinations and the associated state transitions, thus allowing for retention of the simpler state transition model of [RFC4960] in the ULP. For this reason, it is recommended that an SCTP stack implementing SCTP-PF also provide the ULP with the means to suppress exposure of the PF state and the associated state transitions.

12. SCTPスタックは、宛先アドレスのPF状態をULPに公開するだけでなく、宛先アドレスのアクティブからPFへの、およびその逆の状態遷移をULPに通知する手段を提供する必要があります(SHOULD)。ただし、SCTP-PFを実装するSCTPスタックでは、ULPがその宛先のPF状態と関連する状態遷移を知らないようにして、[RFC4960]のより単純な状態遷移モデルを保持できるようにすることをお勧めします。 ULP。このため、SCTP-PFを実装するSCTPスタックがULPに、PF状態の公開と関連する状態遷移を抑制する手段を提供することをお勧めします。

4. Dormant State Operation
4. 休止状態の操作

In a situation with complete disruption of the communication in between the SCTP endpoints, the aggressive HEARTBEAT transmissions of SCTP-PF on destination addresses in PF state may make the association enter dormant state faster than a standard SCTP implementation of [RFC4960] given the same setting of PMR and AMR. For example, an SCTP association with two destination addresses would typically reach dormant state in half the time of an SCTP implementation of [RFC4960] in such situations. This is because an SCTP PF sender will send HEARTBEATs and data retransmissions in parallel with RTO intervals when there are multiple destinations addresses in PF state. This argument presumes that RTO << HB.Interval of [RFC4960]. With the design goal that SCTP-PF shall provide the same level of disruption tolerance as a standard SCTP implementation with the same PMR and AMR setting, we prescribe that an SCTP-PF implementation SHOULD operate as described in Section 4.1 during dormant state.

SCTPエンドポイント間の通信が完全に中断している状況では、PF状態の宛先アドレスでのSCTP-PFの積極的なHEARTBEAT送信により、同じ設定で[RFC4960]の標準SCTP実装よりも速くアソシエーションが休止状態になる場合がありますPMRとAMRの。たとえば、2つの宛先アドレスとのSCTPアソシエーションは通常、このような状況で[RFC4960]のSCTP実装の半分の時間で休止状態に到達します。これは、PF状態に複数の宛先アドレスがある場合、SCTP PF送信者がRTO間隔と並行してHEARTBEATおよびデータ再送信を送信するためです。この引数は、[RFC4960]のRTO << HB.Intervalを想定しています。 SCTP-PFが同じPMRおよびAMR設定の標準SCTP実装と同じレベルの破壊耐性を提供するという設計目標により、SCTP-PF実装は、休止状態の間にセクション4.1で説明されているように動作する必要があります。

An SCTP-PF implementation MAY choose a different dormant state operation than the one described in Section 4.1 provided that the solution chosen does not decrease the fault tolerance of the SCTP-PF operation.

SCTP-PF実装は、選択されたソリューションがSCTP-PF操作のフォールトトレランスを低下させない限り、セクション4.1で説明されているものとは異なる休止状態操作を選択できます。

The prescription below for SCTP-PF dormant state handling MUST NOT be coupled to the value of the PFMR, but solely to the activation of SCTP-PF logic in an SCTP implementation.

以下のSCTP-PF休止状態処理の処方は、PFMRの値に結合してはならず、SCTP実装でのSCTP-PFロジックのアクティブ化のみに結合してはなりません(MUST NOT)。

It is noted that the below dormant state operation can also provide enhanced disruption tolerance to a standard SCTP implementation that doesn't support SCTP-PF. Thus, it can be sensible for a standard SCTP implementation to follow this mode of operation. For a standard SCTP implementation, the continuation of data transmission during dormant state makes the fault tolerance of SCTP be more robust towards situations where some, or all, alternative paths of an SCTP association approach, or reach, inactive state before the primary path used for data transmission observes trouble.

以下の休止状態の操作は、SCTP-PFをサポートしていない標準のSCTP実装に対する破壊耐性の強化も提供できることに注意してください。したがって、標準のSCTP実装がこの動作モードに従うことが理にかなっています。標準のSCTP実装では、休止状態の間のデータ伝送の継続により、SCTPのフォールトトレランスは、SCTPアソシエーションの一部またはすべての代替パスが、プライマリパスが使用される前に非アクティブ状態に到達する、または非アクティブ状態に到達する状況に対して、より堅牢になります。データ伝送はトラブルを観察します。

4.1. SCTP Dormant State Procedure
4.1. SCTP休止状態の手順

1. When the destination addresses are all in inactive state and data is available for transfer, the sender MUST choose one destination and transmit data to this destination address.

1. 宛先アドレスがすべて非アクティブ状態であり、データを転送できる場合、送信者は1つの宛先を選択して、この宛先アドレスにデータを送信する必要があります。

2. The sender MUST NOT change the state of the chosen destination address (it remains in inactive state) and MUST NOT clear the error counter of the destination address as a result of choosing the destination address for data transmission.

2. 送信者は、選択された宛先アドレスの状態を変更してはならず(非アクティブな状態のままです)、データ送信の宛先アドレスを選択した結果として、宛先アドレスのエラーカウンターをクリアしてはなりません。

3. The sender SHOULD choose the destination in inactive state with the lowest error count (fewest consecutive timeouts) for data transmission. When there are multiple destinations with the same error count in inactive state, the sender SHOULD attempt to pick the most divergent source -- destination pair from the last source -- destination pair where failure was observed. Rules for picking the most divergent source-destination pair are an implementation decision and are not specified within this document. To support differentiation of inactive destination addresses based on their error count, SCTP will need to allow for incrementing of the destination address error counters up to some reasonable limit above PMR+1, thus changing the prescriptions of Section 8.3 of [RFC4960] in this respect. The exact limit to apply is not specified in this document, but it is considered reasonable enough to require that the limit be an order of magnitude higher than the PMR value. A sender MAY choose to deploy other strategies than the strategy defined here. The strategy to prioritize the last active destination address, i.e., the destination address with the fewest error counts is optimal when some paths are permanently inactive, but suboptimal when path instability is transient.

3. 送信者は、データ送信のためにエラー数が最も少ない(連続したタイムアウトが最も少ない)非アクティブ状態の宛先を選択する必要があります(SHOULD)。非アクティブ状態で同じエラーカウントの宛先が複数ある場合、送信者は、最も発散した送信元-最後の送信元からの宛先ペア-障害が観察された宛先ペアを選択する必要があります(SHOULD)。最も異なる送信元と宛先のペアを選択するためのルールは実装の決定であり、このドキュメントでは指定されていません。エラー数に基づく非アクティブな宛先アドレスの区別をサポートするには、SCTPは、PMR + 1を超える適切な制限まで宛先アドレスエラーカウンターをインクリメントできるようにする必要があります。したがって、この点に関して[RFC4960]のセクション8.3の規定を変更します。 。適用する正確な制限はこのドキュメントでは指定されていませんが、PMR値よりも1桁高い制限を要求するのに十分な妥当性があると見なされています。送信者は、ここで定義された戦略以外の戦略を展開することを選択できます(MAY)。最後のアクティブな宛先アドレス、つまりエラー数が最も少ない宛先アドレスを優先する方法は、一部のパスが永続的に非アクティブである場合は最適ですが、パスの不安定性が一時的である場合は最適ではありません。

5. Primary Path Switchover
5. プライマリパススイッチオーバー

The objective of the Primary Path Switchover operation is to allow the SCTP sender to continue data transmission on a new working path even when the old primary destination address becomes active again. This is achieved by having SCTP perform a switchover of the primary path to the new working path if the error counter of the primary path exceeds a certain threshold. This mode of operation can be applied not only to SCTP-PF implementations, but also to implementations of [RFC4960].

プライマリパススイッチオーバー操作の目的は、古いプライマリ宛先アドレスが再びアクティブになった場合でも、SCTP送信者が新しい現用パスでデータ伝送を継続できるようにすることです。これは、プライマリパスのエラーカウンターが特定のしきい値を超えた場合に、SCTPにプライマリパスから新しい現用パスへのスイッチオーバーを実行させることによって実現されます。この動作モードは、SCTP-PF実装だけでなく、[RFC4960]の実装にも適用できます。

The Primary Path Switchover operation requires only sender-side changes. The details are:

プライマリパススイッチオーバー操作では、送信側の変更のみが必要です。詳細は次のとおりです。

1. The sender maintains a new tunable parameter, called Primary.Switchover.Max.Retrans (PSMR). For SCTP-PF implementations, the PSMR MUST be set greater than or equal to the PFMR value. For implementations of [RFC4960], the PSMR MUST be set greater than or equal to the PMR value. Implementations MUST reject any other values of PSMR.

1. 送信者は、Primary.Switchover.Max.Retrans(PSMR)と呼ばれる新しい調整可能なパラメーターを維持します。 SCTP-PF実装の場合、PSMRはPFMR値以上に設定する必要があります。 [RFC4960]の実装では、PSMRはPMR値以上に設定する必要があります。実装はPSMRの他の値を拒否する必要があります。

2. When the path error counter on a set primary path exceeds PSMR, the SCTP implementation MUST autonomously select and set a new primary path.

2. 設定されたプライマリパスのパスエラーカウンターがPSMRを超える場合、SCTP実装は自律的に新しいプライマリパスを選択および設定する必要があります。

3. The primary path selected by the SCTP implementation MUST be the path that, at the given time, would be chosen for data transfer. A previously failed primary path can be used as a data transfer path as per normal path selection when the present data transfer path fails.

3. SCTP実装によって選択されるプライマリパスは、所定の時間にデータ転送用に選択されるパスでなければなりません。現在のデータ転送パスに障害が発生した場合、以前に障害が発生したプライマリパスを、通常のパス選択に従ってデータ転送パスとして使用できます。

4. For SCTP-PF, the recommended value of PSMR is PFMR when Primary Path Switchover operation mode is used. This means that no forced switchback to a previously failed primary path is performed. An SCTP-PF implementation of Primary Path Switchover MUST support the setting of PSMR = PFMR. An SCTP-PF implementation of Primary Path Switchover MAY support setting of PSMR > PFMR.

4. SCTP-PFの場合、PSMRの推奨値は、プライマリパススイッチオーバー動作モードが使用される場合のPFMRです。つまり、以前に障害が発生したプライマリパスへの強制的なスイッチバックは実行されません。プライマリパススイッチオーバーのSCTP-PF実装は、PSMR = PFMRの設定をサポートする必要があります。プライマリパススイッチオーバーのSCTP-PF実装は、PSMR> PFMRの設定をサポートする場合があります。

5. For standard SCTP, the recommended value of PSMR is PMR when Primary Path Switchover is used. This means that no forced switchback to a previously failed primary path is performed. A standard SCTP implementation of Primary Path Switchover MUST support the setting of PSMR = PMR. A standard SCTP implementation of Primary Path Switchover MAY support larger settings of PSMR > PMR.

5. 標準SCTPの場合、プライマリパススイッチオーバーが使用される場合、PSMRの推奨値はPMRです。つまり、以前に障害が発生したプライマリパスへの強制的なスイッチバックは実行されません。プライマリパススイッチオーバーの標準SCTP実装は、PSMR = PMRの設定をサポートする必要があります。プライマリパススイッチオーバーの標準SCTP実装は、PSMR> PMRのより大きな設定をサポートする場合があります。

6. It MUST be possible to disable the Primary Path Switchover operation and obtain the standard switchback operation of [RFC4960].

6. プライマリパススイッチオーバー操作を無効にし、[RFC4960]の標準スイッチバック操作を取得できるようにする必要があります。

The manner of switchover operation that is most optimal in a given scenario depends on the relative quality of a set primary path versus the quality of alternative paths available as well as on the extent to which it is desired for the mode of operation to enforce traffic distribution over a number of network paths. That is, load distribution of traffic from multiple SCTP associations may be enforced by distribution of the set primary paths with the switchback operation of [RFC4960]. However, as switchback behavior of [RFC4960] is suboptimal in certain situations, especially in scenarios where a number of equally good paths are available, an SCTP implementation MAY support also, as alternative behavior, the Primary Path Switchover mode of operation and MAY enable it based on applications' requests.

特定のシナリオで最も最適なスイッチオーバー操作の方法は、設定されたプライマリパスの相対的な品質と利用可能な代替パスの品質、および操作モードでトラフィック分散を実施することが望まれる範囲に依存します。多数のネットワークパス上。つまり、複数のSCTPアソシエーションからのトラフィックの負荷分散は、[RFC4960]のスイッチバック操作で設定されたプライマリパスを分散することによって実施できます。ただし、[RFC4960]のスイッチバック動作は特定の状況で最適ではないため、特に同等に良好なパスが多数利用可能なシナリオでは、SCTP実装は、代替動作として、プライマリパススイッチオーバーモードの動作をサポートし、それを有効にする場合があります。アプリケーションのリクエストに基づく。

For an SCTP implementation that implements the Primary Path Switchover operation, this specification RECOMMENDS that the standard switchback operation of [RFC4960] be retained as the default operation.

プライマリパススイッチオーバー操作を実装するSCTP実装の場合、この仕様では、[RFC4960]の標準のスイッチバック操作をデフォルトの操作として保持することを推奨しています。

6. Suggested SCTP Protocol Parameter Values
6. SCTPプロトコルパラメータの推奨値

This document does not alter the value recommendation for the SCTP Protocol Parameters defined in [RFC4960].

このドキュメントは、[RFC4960]で定義されているSCTPプロトコルパラメータの推奨値を変更しません。

The following protocol parameter is RECOMMENDED:

次のプロトコルパラメータを推奨します。

PotentiallyFailed.Max.Retrans (PFMR) - 0

PotentiallyFailed.Max.Retrans(PFMR)-0

7. Socket API Considerations
7. ソケットAPIの考慮事項

This section describes how the socket API defined in [RFC6458] is extended to provide a way for the application to control and observe the SCTP-PF behavior as well as the Primary Path Switchover function.

このセクションでは、[RFC6458]で定義されたソケットAPIを拡張して、アプリケーションがSCTP-PFの動作とプライマリパススイッチオーバー機能を制御および監視する方法を提供する方法について説明します。

Please note that this section is informational only.

このセクションは情報提供のみを目的としています。

A socket API implementation based on [RFC6458] is, by means of the existing SCTP_PEER_ADDR_CHANGE event, extended to provide the event notification when a peer address enters or leaves the PF state as well as the socket API implementation is extended to expose the PF state of a peer address in the existing SCTP_GET_PEER_ADDR_INFO structure.

[RFC6458]に基づくソケットAPI実装は、既存のSCTP_PEER_ADDR_CHANGEイベントによって拡張され、ピアアドレスがPF状態に入るとき、または離れるときにイベント通知を提供します。また、ソケットAPI実装が拡張され、PF状態を公開します。既存のSCTP_GET_PEER_ADDR_INFO構造内のピアアドレス。

Furthermore, two new read/write socket options for the level IPPROTO_SCTP and the name SCTP_PEER_ADDR_THLDS and SCTP_EXPOSE_POTENTIALLY_FAILED_STATE are defined as described below. The first socket option is used to control the values of the PFMR and PSMR parameters described in Sections 3 and 5. The second one controls the exposition of the PF path state.

さらに、レベルIPPROTO_SCTPの2つの新しい読み取り/書き込みソケットオプション、および名前SCTP_PEER_ADDR_THLDSとSCTP_EXPOSE_POTENTIALLY_FAILED_STATEは、以下のように定義されています。最初のソケットオプションは、セクション3と5で説明されているPFMRおよびPSMRパラメータの値を制御するために使用されます。2番目のオプションは、PFパスステートの表示を制御します。

Support for the SCTP_PEER_ADDR_THLDS and SCTP_EXPOSE_POTENTIALLY_FAILED_STATE socket options also needs to be added to the function sctp_opt_info().

SCTP_PEER_ADDR_THLDSおよびSCTP_EXPOSE_POTENTIALLY_FAILED_STATEソケットオプションのサポートも、関数sctp_opt_info()に追加する必要があります。

7.1. Support for the Potentially Failed Path State
7.1. 潜在的に失敗したパス状態のサポート

As defined in [RFC6458], the SCTP_PEER_ADDR_CHANGE event is provided if the status of a peer address changes. In addition to the state changes described in [RFC6458], this event is also provided if a peer address enters or leaves the PF state. The notification as defined in [RFC6458] uses the following structure:

[RFC6458]で定義されているように、ピアアドレスのステータスが変化すると、SCTP_PEER_ADDR_CHANGEイベントが提供されます。 [RFC6458]で説明されている状態の変更に加えて、このイベントは、ピアアドレスがPF状態に入ったとき、またはPF状態から出たときにも提供されます。 [RFC6458]で定義されている通知は、次の構造を使用しています。

   struct sctp_paddr_change {
     uint16_t spc_type;
     uint16_t spc_flags;
     uint32_t spc_length;
     struct sockaddr_storage spc_aaddr;
     uint32_t spc_state;
     uint32_t spc_error;
     sctp_assoc_t spc_assoc_id;
   }
        

[RFC6458] defines the constants SCTP_ADDR_AVAILABLE, SCTP_ADDR_UNREACHABLE, SCTP_ADDR_REMOVED, SCTP_ADDR_ADDED, and SCTP_ADDR_MADE_PRIM to be provided in the spc_state field. This document defines the new additional constant SCTP_ADDR_POTENTIALLY_FAILED, which is reported if the affected address becomes PF.

[RFC6458]は、spc_stateフィールドで提供される定数SCTP_ADDR_AVAILABLE、SCTP_ADDR_UNREACHABLE、SCTP_ADDR_REMOVED、SCTP_ADDR_ADDED、およびSCTP_ADDR_MADE_PRIMを定義します。このドキュメントは、影響を受けるアドレスがPFになる場合に報告される新しい追加の定数SCTP_ADDR_POTENTIALLY_FAILEDを定義します。

The SCTP_GET_PEER_ADDR_INFO socket option defined in [RFC6458] can be used to query the state of a peer address. It uses the following structure:

[RFC6458]で定義されているSCTP_GET_PEER_ADDR_INFOソケットオプションを使用して、ピアアドレスの状態を照会できます。次の構造を使用します。

   struct sctp_paddrinfo {
     sctp_assoc_t spinfo_assoc_id;
     struct sockaddr_storage spinfo_address;
     int32_t spinfo_state;
     uint32_t spinfo_cwnd;
     uint32_t spinfo_srtt;
     uint32_t spinfo_rto;
     uint32_t spinfo_mtu;
   };
        

[RFC6458] defines the constants SCTP_UNCONFIRMED, SCTP_ACTIVE, and SCTP_INACTIVE to be provided in the spinfo_state field. This document defines the new additional constant SCTP_POTENTIALLY_FAILED, which is reported if the peer address is PF.

[RFC6458]は、spinfo_stateフィールドで提供される定数SCTP_UNCONFIRMED、SCTP_ACTIVE、およびSCTP_INACTIVEを定義します。このドキュメントは、ピアアドレスがPFである場合に報告される新しい追加の定数SCTP_POTENTIALLY_FAILEDを定義します。

7.2. Peer Address Thresholds (SCTP_PEER_ADDR_THLDS) Socket Option
7.2. ピアアドレスしきい値(SCTP_PEER_ADDR_THLDS)ソケットオプション

Applications can control the SCTP-PF behavior by getting or setting the number of consecutive timeouts before a peer address is considered PF or unreachable. The same socket option is used by applications to set and get the number of timeouts before the primary path is changed automatically by the Primary Path Switchover function. This socket option uses the level IPPROTO_SCTP and the name SCTP_PEER_ADDR_THLDS.

アプリケーションは、ピアアドレスがPFまたは到達不能と見なされるまでの連続タイムアウトの数を取得または設定することにより、SCTP-PFの動作を制御できます。アプリケーションは同じソケットオプションを使用して、プライマリパススイッチオーバー機能によってプライマリパスが自動的に変更される前に、タイムアウトの数を設定および取得します。このソケットオプションは、レベルIPPROTO_SCTPと名前SCTP_PEER_ADDR_THLDSを使用します。

The following structure is used to access and modify the thresholds:

次の構造は、しきい値にアクセスして変更するために使用されます。

   struct sctp_paddrthlds {
     sctp_assoc_t spt_assoc_id;
     struct sockaddr_storage spt_address;
     uint16_t spt_pathmaxrxt;
     uint16_t spt_pathpfthld;
     uint16_t spt_pathcpthld;
   };
        

spt_assoc_id: This parameter is ignored for one-to-one style sockets. For one-to-many style sockets, the application may fill in an association identifier or SCTP_FUTURE_ASSOC. It is an error to use SCTP_{CURRENT|ALL}_ASSOC in spt_assoc_id.

spt_assoc_id:このパラメーターは、1対1スタイルのソケットでは無視されます。 1対多スタイルのソケットの場合、アプリケーションは関連識別子またはSCTP_FUTURE_ASSOCを入力する場合があります。 spt_assoc_idでSCTP_ {CURRENT | ALL} _ASSOCを使用するとエラーになります。

spt_address: This specifies which peer address is of interest. If a wildcard address is provided, this socket option applies to all current and future peer addresses.

spt_address:対象のピアアドレスを指定します。ワイルドカードアドレスが指定されている場合、このソケットオプションは現在および将来のすべてのピアアドレスに適用されます。

spt_pathmaxrxt: Each peer address of interest is considered unreachable, if its path error counter exceeds spt_pathmaxrxt.

spt_pathmaxrxt:パスエラーカウンターがspt_pathmaxrxtを超える場合、対象の各ピアアドレスは到達不能と見なされます。

spt_pathpfthld: Each peer address of interest is considered PF, if its path error counter exceeds spt_pathpfthld.

spt_pathpfthld:パスエラーカウンターがspt_pathpfthldを超える場合、対象の各ピアアドレスはPFと見なされます。

spt_pathcpthld: Each peer address of interest is not considered the primary remote address anymore, if its path error counter exceeds spt_pathcpthld. Using a value of 0xffff disables the selection of a new primary peer address. If an implementation does not support the automatic selection of a new primary address, it should indicate an error with errno set to EINVAL if a value different from 0xffff is used in spt_pathcpthld. For SCTP-PF, the setting of spt_pathcpthld < spt_pathpfthld should be rejected with errno set to EINVAL. For standard SCTP, the setting of spt_pathcpthld < spt_pathmaxrxt should be rejected with errno set to EINVAL. An SCTP-PF implementation may support only setting of spt_pathcpthld = spt_pathpfthld and spt_pathcpthld = 0xffff and a standard SCTP implementation may support only setting of spt_pathcpthld = spt_pathmaxrxt and spt_pathcpthld = 0xffff. In these cases, SCTP shall reject setting of other values with errno set to EINVAL.

spt_pathcpthld:パスエラーカウンターがspt_pathcpthldを超えた場合、対象の各ピアアドレスは、プライマリリモートアドレスと見なされなくなります。値0xffffを使用すると、新しいプライマリピアアドレスの選択が無効になります。実装が新しいプライマリアドレスの自動選択をサポートしていない場合、0xffffとは異なる値がspt_pathcpthldで使用されていると、errnoがEINVALに設定されたエラーを示すはずです。 SCTP-PFの場合、spt_pathcpthld <spt_pathpfthldの設定は、errnoをEINVALに設定して拒否する必要があります。標準SCTPの場合、srt_pathcpthld <spt_pathmaxrxtの設定は、errnoをEINVALに設定して拒否する必要があります。 SCTP-PF実装は、spt_pathcpthld = spt_pathpfthldおよびspt_pathcpthld = 0xffffの設定のみをサポートし、標準のSCTP実装は、spt_pathcpthld = spt_pathmaxrxtおよびspt_pathcpthld = 0xffffの設定のみをサポートします。これらの場合、SCTPは、errnoがEINVALに設定されている他の値の設定を拒否します。

7.3. Exposing the Potentially Failed Path State (SCTP_EXPOSE_POTENTIALLY_FAILED_STATE) Socket Option

7.3. 潜在的に失敗したパス状態(SCTP_EXPOSE_POTENTIALLY_FAILED_STATE)ソケットオプションの公開

Applications can control the exposure of the PF path state in the SCTP_PEER_ADDR_CHANGE event and the SCTP_GET_PEER_ADDR_INFO as described in Section 7.1. The default value is implementation specific.

セクション7.1で説明されているように、アプリケーションはSCTP_PEER_ADDR_CHANGEイベントとSCTP_GET_PEER_ADDR_INFOでPFパス状態の公開を制御できます。デフォルト値は実装固有です。

This socket option uses the level IPPROTO_SCTP and the name SCTP_EXPOSE_POTENTIALLY_FAILED_STATE.

このソケットオプションは、レベルIPPROTO_SCTPと名前SCTP_EXPOSE_POTENTIALLY_FAILED_STATEを使用します。

The following structure is used to control the exposition of the PF path state:

次の構造は、PFパス状態の公開を制御するために使用されます。

   struct sctp_assoc_value {
     sctp_assoc_t assoc_id;
     uint32_t assoc_value;
   };
        

assoc_id: This parameter is ignored for one-to-one style sockets. For one-to-many style sockets, the application may fill in an association identifier or SCTP_FUTURE_ASSOC. It is an error to use SCTP_{CURRENT|ALL}_ASSOC in assoc_id.

assoc_id:このパラメーターは、1対1スタイルのソケットでは無視されます。 1対多スタイルのソケットの場合、アプリケーションは関連識別子またはSCTP_FUTURE_ASSOCを入力する場合があります。 assoc_idでSCTP_ {CURRENT | ALL} _ASSOCを使用するとエラーになります。

assoc_value: The PF path state is exposed if, and only if, this parameter is non-zero.

assoc_value:このパラメーターがゼロ以外の場合にのみ、PFパス状態が公開されます。

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

Security considerations for the use of SCTP and its APIs are discussed in [RFC4960] and [RFC6458].

SCTPとそのAPIの使用に関するセキュリティの考慮事項は、[RFC4960]と[RFC6458]で説明されています。

The logic introduced by this document does not impact existing SCTP messages on the wire. Also, this document does not introduce any new SCTP messages on the wire that require new security considerations.

このドキュメントで紹介するロジックは、回線上の既存のSCTPメッセージには影響しません。また、このドキュメントでは、新しいセキュリティの考慮事項を必要とする回線上の新しいSCTPメッセージは紹介していません。

SCTP-PF makes SCTP not only more robust during primary path failure/ congestion, but also more vulnerable to network connectivity/ congestion attacks on the primary path. SCTP-PF makes it easier for an attacker to trick SCTP into changing the data transfer path, since the duration of time that an attacker needs to negatively influence the network connectivity is much shorter than used in [RFC4960]. However, SCTP-PF does not constitute a significant change in the duration of time and effort an attacker needs to keep SCTP away from the primary path. With the standard switchback operation in [RFC4960], SCTP resumes data transfer on its primary path as soon as the next HEARTBEAT succeeds.

SCTP-PFは、プライマリパスの障害/輻輳時のSCTPをより堅牢にするだけでなく、プライマリパスでのネットワーク接続/輻輳攻撃に対して脆弱にします。 SCTP-PFを使用すると、攻撃者がSCTPをだましてデータ転送パスを変更することが容易になります。これは、攻撃者がネットワーク接続に悪影響を与える必要のある期間が[RFC4960]で使用されるよりもはるかに短いためです。ただし、SCTP-PFは、攻撃者がSCTPをプライマリパスから遠ざけるために必要な時間と労力の期間に大きな変化をもたらすものではありません。 [RFC4960]の標準のスイッチバック操作では、SCTPは次のハートビートが成功するとすぐに、プライマリパスでのデータ転送を再開します。

On the other hand, usage of the Primary Path Switchover mechanism, does change the threat analysis. This is because on-path attackers can force a permanent change of the data transfer path by blocking the primary path until the switchover of the primary path is triggered by the Primary Path Switchover algorithm. This will especially be the case when the Primary Path Switchover is used together with SCTP-PF with the particular setting of PSMR = PFMR = 0, as Primary Path Switchover here happens already at the first RTO timeout experienced. Users of the Primary Path Switchover mechanism should be aware of this fact.

一方、プライマリパススイッチオーバーメカニズムを使用すると、脅威分析が変わります。これは、パス上の攻撃者が、プライマリパススイッチオーバーアルゴリズムによってプライマリパスのスイッチオーバーがトリガーされるまでプライマリパスをブロックすることにより、データ転送パスの永続的な変更を強制できるためです。これは特に、プライマリパススイッチオーバーがPSTP = PFMR = 0の特定の設定でSCTP-PFと一緒に使用される場合に当てはまります。プライマリパススイッチオーバーは、最初のRTOタイムアウトが発生したときにすでに発生しているためです。プライマリパススイッチオーバーメカニズムのユーザーは、この事実に注意する必要があります。

The event notification of path state transfer from active to PF state and vice versa gives attackers an increased possibility to generate more local events. However, it is assumed that event notifications are rate-limited in the implementation to address this threat.

アクティブからPF状態へのパス状態転送のイベント通知により、攻撃者はより多くのローカルイベントを生成する可能性が高くなります。ただし、この脅威に対処するために、実装ではイベント通知がレート制限されていると想定されています。

9. MIB Considerations
9. MIBに関する考慮事項

SCTP-PF introduces new SCTP algorithms for failover and switchback with associated new state parameters. It is recommended that the SCTP-MIB defined in [RFC3873] is updated to support the management of the SCTP-PF implementation. This can be done by extending the sctpAssocRemAddrActive field of the SCTPAssocRemAddrTable to include information of the PF state of the destination address and by adding new fields to the SCTPAssocRemAddrTable supporting PotentiallyFailed.Max.Retrans (PFMR) and Primary.Switchover.Max.Retrans (PSMR) parameters.

SCTP-PFは、フェイルオーバーおよびスイッチバック用の新しいSCTPアルゴリズムと、関連する新しい状態パラメーターを導入します。 [RFC3873]で定義されているSCTP-MIBを更新して、SCTP-PF実装の管理をサポートすることをお勧めします。これは、SCTPAssocRemAddrTableのsctpAssocRemAddrActiveフィールドを拡張して宛先アドレスのPF状態の情報を含めることによって、およびPotentiallyFailed.Max.Retrans(PFMR)およびPrimary.Switchover.Max.Retrans(PSMRをサポートするSCTPAssocRemAddrTableに新しいフィールドを追加することによって行うことができます。 ) パラメーター。

10. References
10. 参考文献
10.1. Normative References
10.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>。

[RFC4960] Stewart, R., Ed., "Stream Control Transmission Protocol", RFC 4960, DOI 10.17487/RFC4960, September 2007, <http://www.rfc-editor.org/info/rfc4960>.

[RFC4960] Stewart、R.、Ed。、「Stream Control Transmission Protocol」、RFC 4960、DOI 10.17487 / RFC4960、2007年9月、<http://www.rfc-editor.org/info/rfc4960>。

10.2. Informative References
10.2. 参考引用

[CARO02] Caro, A., Iyengar, J., Amer, P., Heinz, G., and R. Stewart, "A Two-level Threshold Recovery Mechanism for SCTP", Tech report, CIS Dept., University of Delaware, July 2002.

[CARO02] Caro、A.、Iyengar、J.、Amer、P.、Heinz、G。、およびR. Stewart、「SCTPの2つのレベルのしきい値回復メカニズム」、Techレポート、CIS部、デラウェア大学、2002年7月。

[CARO04] Caro, A., Amer, P., and R. Stewart, "End-to-End Failover Thresholds for Transport Layer Multihoming", MILCOM 2004, DOI 10.1109/MILCOM.2004.1493253, November 2004.

[CARO04] Caro、A.、Amer、P。、およびR. Stewart、「トランスポート層マルチホーミングのエンドツーエンドフェイルオーバーしきい値」、MILCOM 2004、DOI 10.1109 / MILCOM.2004.1493253、2004年11月。

[CARO05] Caro, A., "End-to-End Fault Tolerance using Transport Layer Multihoming", Ph.D. Thesis, University of Delaware, DOI 10.1007/BF03219970, January 2005.

[CARO05] Caro、A。、「トランスポート層マルチホーミングを使用したエンドツーエンドのフォールトトレランス」、Ph.D。論文、デラウェア大学、DOI 10.1007 / BF03219970、2005年1月。

[FALLON08] Fallon, S., Jacob, P., Qiao, Y., Murphy, L., Fallon, E., and A. Hanley, "SCTP Switchover Performance Issues in WLAN Environments", IEEE CCNC, DOI 10.1109/ccnc08.2007.131, January 2008.

[FALLON08]ファロン、S。、ジェイコブ、P。、チャオ、Y。、マーフィー、L。、ファロン、E。、およびA.ハンリー、「WLAN環境でのSCTPスイッチオーバーパフォーマンスの問題」、IEEE CCNC、DOI 10.1109 / ccnc08 .2007.131、2008年1月。

[GRINNEMO04] Grinnemo, K-J. and A. Brunstrom, "Performance of SCTP-controlled failovers in M3UA-based SIGTRAN networks", Advanced Simulation Technologies Conference, April 2004.

[GRINNEMO04]グリネモ、K-J。 A. Brunstrom、「M3UAベースのSIGTRANネットワークにおけるSCTP制御のフェイルオーバーのパフォーマンス」、Advanced Simulation Technologies Conference、2004年4月。

[IYENGAR06] Iyengar, J., Amer, P., and R. Stewart, "Concurrent Multipath Transfer using SCTP Multihoming over Independent End-to-end Paths", IEEE/ACM Transactions on Networking, DOI 10.1109/TNET.2006.882843, October 2006.

[IYENGAR06] Iyengar、J.、Amer、P。、およびR. Stewart、「独立したエンドツーエンドパス上のSCTPマルチホーミングを使用した同時マルチパス転送」、ネットワーキング上のIEEE / ACMトランザクション、DOI 10.1109 / TNET.2006.882843、10月2006年

[JUNGMAIER02] Jungmaier, A., Rathgeb, E., and M. Tuexen, "On the use of SCTP in failover scenarios", World Multiconference on Systemics, Cybernetics and Informatics, July 2002.

[JUNGMAIER02] Jungmaier、A.、Rathgeb、E。、およびM. Tuexen、「フェイルオーバーシナリオでのSCTPの使用について」、体系、サイバネティックス、および情報学に関する世界会議、2002年7月。

[NATARAJAN09] Natarajan, P., Ekiz, N., Amer, P., and R. Stewart, "Concurrent Multipath Transfer during Path Failure", Computer Communications, DOI 10.1016/j.comcom.2009.05.001, May 2009.

[NATARAJAN09] Natarajan、P.、Ekiz、N.、Amer、P。、およびR. Stewart、「パス障害時の同時マルチパス転送」、コンピュータ通信、DOI 10.1016 / j.comcom.2009.05.001、2009年5月。

[RFC3873] Pastor, J. and M. Belinchon, "Stream Control Transmission Protocol (SCTP) Management Information Base (MIB)", RFC 3873, DOI 10.17487/RFC3873, September 2004, <http://www.rfc-editor.org/info/rfc3873>.

[RFC3873]牧師、J。およびM. Belinchon、「ストリーム制御伝送プロトコル(SCTP)管理情報ベース(MIB)」、RFC 3873、DOI 10.17487 / RFC3873、2004年9月、<http://www.rfc-editor。 org / info / rfc3873>。

[RFC6458] Stewart, R., Tuexen, M., Poon, K., Lei, P., and V. Yasevich, "Sockets API Extensions for the Stream Control Transmission Protocol (SCTP)", RFC 6458, DOI 10.17487/RFC6458, December 2011, <http://www.rfc-editor.org/info/rfc6458>.

[RFC6458] Stewart、R.、Tuexen、M.、Poon、K.、Lei、P。、およびV. Yasevich、「Socket Controls Extensions for the Stream Control Transmission Protocol(SCTP)」、RFC 6458、DOI 10.17487 / RFC6458 、2011年12月、<http://www.rfc-editor.org/info/rfc6458>。

Appendix A. Discussion of Alternative Approaches
付録A.代替アプローチの説明

This section lists alternative approaches for the issues described in this document. Although these approaches do not require updating RFC 4960, we do not recommend them for the reasons described below.

このセクションでは、このドキュメントで説明されている問題の代替アプローチを示します。これらのアプローチではRFC 4960を更新する必要はありませんが、以下で説明する理由により、これらのアプローチはお勧めしません。

A.1. Reduce PMR
A.1. PMRを削減

Smaller values for Path.Max.Retrans shorten the failover duration and in fact, this is recommended in some research results [JUNGMAIER02], [GRINNEMO04], and [FALLON08]. However, to significantly reduce the failover time, it is required to go down (as with PFMR) to Path.Max.Retrans=0 and, with this setting, SCTP switches to another destination address already on a single timeout that may result in spurious failover. Spurious failover is a problem in standard SCTP as the transmission of HEARTBEATs on the left primary path, unlike in SCTP-PF, is governed by HB.Interval also during the failover process. HB.Interval is usually set in the order of seconds (recommended value is 30 seconds) and when the primary path becomes inactive, the next HEARTBEAT may be transmitted only many seconds later: as recommended, only 30 seconds later. Meanwhile, the primary path may have long since recovered, if it needed recovery at all (indeed the failover could be truly spurious). In such situations, post failover, an endpoint is forced to wait in the order of many seconds before the endpoint can resume transmission on the primary path and furthermore, once it returns on the primary path, the CWND needs to be rebuilt anew -- a process that the throughput already had to suffer from on the alternate path. Using a smaller value for HB.Interval might help this situation, but it would result in a general waste of bandwidth as such more frequent HEARTBEATING would take place also when there are no observed troubles. The bandwidth overhead may be diminished by having the ULP use a smaller HB.Interval only on the path that, at any given time, is set to be the primary path; however, this adds complication in the ULP.

Path.Max.Retransの値を小さくするとフェイルオーバー時間が短くなり、実際、これは一部の調査結果[JUNGMAIER02]、[GRINNEMO04]、および[FALLON08]で推奨されています。ただし、フェイルオーバー時間を大幅に短縮するには、(PFMRの場合と同様に)Path.Max.Retrans = 0にダウンする必要があり、この設定では、SCTPは別の宛先アドレスに切り替えます。フェイルオーバー。左側のプライマリパスでのHEARTBEATの送信は、SCTP-PFとは異なり、フェイルオーバープロセス中もHB.Intervalによって制御されるため、標準のSCTPではスプリアスフェイルオーバーが問題になります。 HB.Intervalは通常秒のオーダーで設定され(推奨値は30秒​​です)、プライマリパスが非アクティブになると、次のHEARTBEATは数秒後にのみ送信される可能性があります。一方、プライマリパスは、リカバリがまったく必要な場合は、リカバリされてから長い時間が経過している可能性があります(実際、フェイルオーバーは本当に疑わしい場合があります)。このような状況では、フェイルオーバー後、エンドポイントはプライマリパスでの送信を再開する前に数秒のオーダーで強制的に待機させられ、さらに、プライマリパスで戻ると、CWNDを再構築する必要があります-a代替パスでスループットがすでに低下しているプロセス。 HB.Intervalに小さい値を使用するとこの状況が改善される可能性がありますが、問題が観察されない場合にも頻繁にハートビートが行われるため、帯域幅が一般的に浪費されます。 ULPが、常にプライマリパスとして設定されているパスでのみ、より小さなHB.Intervalを使用することにより、帯域幅のオーバーヘッドを減らすことができます。ただし、これによりULPが複雑になります。

In addition, smaller Path.Max.Retrans values also affect the Association.Max.Retrans value. When the SCTP association's error count exceeds Association.Max.Retrans threshold, the SCTP sender considers the peer endpoint unreachable and terminates the association. Section 8.2 in [RFC4960] recommends that the Association.Max.Retrans value should not be larger than the summation of the Path.Max.Retrans of each of the destination addresses.

さらに、Path.Max.Retransの値が小さいほど、Association.Max.Retransの値にも影響します。 SCTPアソシエーションのエラーカウントがAssociation.Max.Retransしきい値を超えると、SCTP送信者はピアエンドポイントに到達できないと見なし、アソシエーションを終了します。 [RFC4960]のセクション8.2では、Association.Max.Retransの値を、各宛先アドレスのPath.Max.Retransの合計よりも大きくしないことを推奨しています。

Otherwise, the SCTP sender considers its peer reachable even when all destinations are INACTIVE. To avoid this dormant state operation, standard SCTP implementation SHOULD reduce Association.Max.Retrans accordingly whenever it reduces Path.Max.Retrans. However, smaller Association.Max.Retrans value decreases the fault tolerance of SCTP as it increases the chances of association termination during minor congestion events.

そうでない場合、SCTP送信側は、すべての宛先が非アクティブであっても、ピアが到達可能であると見なします。この休止状態の操作を回避するために、標準のSCTP実装は、Path.Max.Retransを削減するたびにAssociation.Max.Retransを適宜削減する必要があります(SHOULD)。ただし、Association.Max.Retransの値を小さくすると、軽度の輻輳イベント中にアソシエーションが終了する可能性が高くなるため、SCTPのフォールトトレランスが低下します。

A.2. RTO関連のパラメーターを調整する

As several research results indicate, we can also shorten the duration of the failover process by adjusting the RTO-related parameters [JUNGMAIER02] and [FALLON08]. During the failover process, RTO keeps being doubled. However, if we can choose a smaller value for RTO.max, we can stop the exponential growth of RTO at some point. Also, choosing smaller values for RTO.initial or RTO.min can contribute to keeping the RTO value small.

いくつかの調査結果が示すように、RTO関連のパラメーター[JUNGMAIER02]と[FALLON08]を調整することで、フェイルオーバープロセスの期間を短縮することもできます。フェイルオーバープロセスの間、RTOは2倍になります。ただし、RTO.maxにより小さい値を選択できる場合は、RTOの指数関数的な増加をある時点で停止できます。また、RTO.initialまたはRTO.minに小さい値を選択すると、RTO値を小さく保つのに役立ちます。

Similar to reducing Path.Max.Retrans, the advantage of this approach is that it requires no modification to the current specification, although it needs to ignore several recommendations described in Section 15 of [RFC4960]. However, this approach requires having enough knowledge about the network characteristics between endpoints. Otherwise, it can introduce adverse side effects such as spurious timeouts.

Path.Max.Retransの削減と同様に、このアプローチの利点は、[RFC4960]のセクション15で説明されているいくつかの推奨事項を無視する必要があるものの、現在の仕様を変更する必要がないことです。ただし、このアプローチには、エンドポイント間のネットワーク特性に関する十分な知識が必要です。そうしないと、偽のタイムアウトなどの悪影響が生じる可能性があります。

The significant issue with this approach, however, is that even if the RTO.max is lowered to an optimal low value, as long as the Path.Max.Retrans is kept at the recommended value from [RFC4960], the reduction of the RTO.max doesn't reduce the failover time sufficiently enough to prevent severe performance degradation during failover.

ただし、このアプローチの重要な問題は、RTO.maxを最適な低い値に下げても、Path.Max.Retransが[RFC4960]の推奨値に保たれている限り、RTOの削減.maxは、フェイルオーバー時の重大なパフォーマンス低下を防ぐのに十分なだけフェイルオーバー時間を短縮しません。

Appendix B. Discussion of the Path-Bouncing Effect
付録B.パスバウンス効果の考察

The methods described in the document can accelerate the failover process. Hence, they might introduce a path-bouncing effect in which the sender keeps changing the data transmission path frequently. This sounds harmful to the data transfer; however, several research results indicate that there is no serious problem with SCTP in terms of the path-bouncing effect (see [CARO04] and [CARO05]).

このドキュメントで説明されている方法は、フェイルオーバープロセスを加速することができます。したがって、送信者がデータ伝送パスを頻繁に変更し続けるというパスバウンス効果が生じる可能性があります。これはデータ転送に有害なように思えます。ただし、いくつかの調査結果では、パスバウンス効果の点でSCTPに重大な問題はないことが示されています([CARO04]および[CARO05]を参照)。

There are two main reasons for this. First, SCTP is basically designed for multipath communication, which means SCTP maintains all path-related parameters (CWND, ssthresh, RTT, error count, etc.) per each destination address. These parameters cannot be affected by path bouncing. In addition, when SCTP migrates the data transfer to another path, it starts with the minimal or the initial CWND. Hence, there is little chance for packet reordering or duplicating.

これには主に2つの理由があります。まず、SCTPは基本的にマルチパス通信用に設計されています。つまり、SCTPは各宛先アドレスごとにすべてのパス関連パラメーター(CWND、ssthresh、RTT、エラーカウントなど)を維持します。これらのパラメータは、パスバウンスの影響を受けません。さらに、SCTPがデータ転送を別のパスに移行する場合、最小または初期のCWNDから開始します。したがって、パケットの並べ替えや複製の可能性はほとんどありません。

Second, even if all communication paths between the end nodes share the same bottleneck, the SCTP-PF results in a behavior already allowed by [RFC4960].

第2に、エンドノード間のすべての通信パスが同じボトルネックを共有していても、SCTP-PFは、[RFC4960]ですでに許可されている動作を引き起こします。

Appendix C. SCTP-PF for SCTP Single-Homed Operation
付録C. SCTPシングルホーム操作用のSCTP-PF

For a single-homed SCTP association, the only tangible effect of the activation of SCTP-PF operation is enhanced failure detection in terms of potential notification of the PF state of the sole destination address as well as, for idle associations, more rapid entering, and notification, of inactive state of the destination address and more rapid endpoint failure detection. It is believed that neither of these effects are harmful, provided adequate dormant state operation is implemented. Furthermore, it is believed that they may be particularly useful for applications that deploy multiple SCTP associations for load-balancing purposes. The early notification of the PF state may be used for preventive measures as the entering of the PF state can be used as a warning of potential congestion. Depending on the PMR value, the aggressive HEARTBEAT transmission in PF state may speed up the endpoint failure detection (exceed of AMR threshold on the sole path error counter) on idle associations in the case with a relatively large HB.Interval value compared to RTO (e.g., 30 seconds) is used.

シングルホームSCTPアソシエーションの場合、SCTP-PF操作のアクティブ化の具体的な効果は、単一の宛先アドレスのPF状態の潜在的な通知、およびアイドルアソシエーションの場合のより迅速な入力に関する障害検出の強化のみです。宛先アドレスの非アクティブ状態の通知と、より迅速なエンドポイント障害検出。適切な休止状態の操作が実装されていれば、これらの影響はどちらも有害ではないと考えられています。さらに、それらは、負荷分散の目的で複数のSCTPアソシエーションを展開するアプリケーションに特に役立つ可能性があると考えられています。 PF状態の開始は、潜在的な輻輳の警告として使用できるため、PF状態の早期通知は予防策として使用できます。 RTOと比較してHB.Interval値が比較的大きい場合、PFR値に応じて、PF状態での積極的なHEARTBEAT送信により、アイドルアソシエーションのエンドポイント障害検出(単一パスエラーカウンターのAMRしきい値を超える)が高速​​化される場合があります(たとえば、30秒)が使用されます。

Acknowledgments

謝辞

The authors would like to acknowledge members of the IETF Transport Area Working Group (tsvwg) for continuing discussions on this document and insightful feedback, and we appreciate continuous encouragement and suggestions from the Chairs of the tsvwg. We especially wish to thank Michael Tuexen for his many invaluable comments and for his substantial supports with the making of the document.

著者は、このドキュメントに関する議論と洞察に満ちたフィードバックについてIETFトランスポートエリアワーキンググループ(tsvwg)のメンバーに感謝します。tsvwgの議長からの継続的な励ましと提案に感謝します。 Michael Tuexen氏の貴重なコメントと文書作成への多大な支援に特に感謝いたします。

Authors' Addresses

著者のアドレス

Yoshifumi Nishida GE Global Research 2623 Camino Ramon San Ramon, CA 94583 United States

よしふみ にしだ げ Gぉばl れせあrch 2623 かみの らもん さん らもん、 か 94583 うにてd Sたてs

   Email: nishida@wide.ad.jp
        

Preethi Natarajan Cisco Systems 510 McCarthy Blvd. Milpitas, CA 95035 United States

Preethi Natarajan Cisco Systems 510 McCarthy Blvd.ミルピタス、CA 95035アメリカ合衆国

   Email: prenatar@cisco.com
        

Armando Caro BBN Technologies 10 Moulton St. Cambridge, MA 02138 United States

Armando Caro BBN Technologies 10 Moulton St. Cambridge、MA 02138 United States

   Email: acaro@bbn.com
        

Paul D. Amer University of Delaware Computer Science Department - 434 Smith Hall Newark, DE 19716-2586 United States

Paul D. Amerデラウェア大学コンピュータサイエンス学部-434 Smith Hall Newark、DE 19716-2586 United States

   Email: amer@udel.edu
        

Karen E. E. Nielsen Ericsson Kistavaegen 25 Stockholm 164 80 Sweden

カレンE. E.ニールセンエリクソンKistavaegen 25ストックホルム164 80スウェーデン

   Email: karen.nielsen@tieto.com