[要約] RFC 5972は、General Internet Signaling Transport (GIST) State Machineに関する仕様であり、GISTプロトコルの状態遷移を定義しています。このRFCの目的は、GISTプロトコルの実装者に対して、正確な状態遷移の手順を提供することです。
Internet Engineering Task Force (IETF) T. Tsenov Request for Comments: 5972 H. Tschofenig Category: Informational Nokia Siemens Network ISSN: 2070-1721 X. Fu, Ed. Univ. Goettingen C. Aoun Consultant E. Davies Folly Consulting October 2010
General Internet Signaling Transport (GIST) State Machine
一般的なインターネットシグナル伝達輸送(GIST)状態マシン
Abstract
概要
This document describes state machines for the General Internet Signaling Transport (GIST). The states of GIST nodes for a given flow and their transitions are presented in order to illustrate how GIST may be implemented.
このドキュメントでは、一般的なインターネットシグナリング輸送(GIST)の状態マシンについて説明しています。特定のフローのGISTノードの状態とその遷移は、GISTの実装方法を説明するために提示されます。
Status of This Memo
本文書の位置付け
This document is not an Internet Standards Track specification; it is published for informational purposes.
このドキュメントは、インターネット標準の追跡仕様ではありません。情報目的で公開されています。
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). Not all documents approved by the IESG are a candidate for any level of Internet Standard; see Section 2 of RFC 5741.
このドキュメントは、インターネットエンジニアリングタスクフォース(IETF)の製品です。IETFコミュニティのコンセンサスを表しています。公開レビューを受けており、インターネットエンジニアリングステアリンググループ(IESG)からの出版が承認されています。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/rfc5972.
このドキュメントの現在のステータス、任意のERRATA、およびそのフィードバックを提供する方法に関する情報は、http://www.rfc-editor.org/info/rfc5972で取得できます。
Copyright Notice
著作権表示
Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved.
Copyright(c)2010 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ドキュメント(http://trustee.ietf.org/license-info)に関連するIETF Trustの法的規定の対象となります。この文書に関するあなたの権利と制限を説明するので、これらの文書を注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、セクション4.Eで説明されている法的規定のセクション4.Eで説明されており、単純化されたBSDライセンスで説明されているように保証なしで提供される簡略化されたBSDライセンステキストを含める必要があります。
This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.
このドキュメントには、2008年11月10日までに公開または公開されたIETFドキュメントまたはIETFの寄付からの資料が含まれている場合があります。IETF標準プロセスの外。そのような資料の著作権を制御する人から適切なライセンスを取得せずに、このドキュメントはIETF標準プロセスの外側に変更されない場合があり、その派生作業は、ITF標準プロセスの外側で作成されない場合があります。RFCとしての出版またはそれを英語以外の言語に翻訳するため。
Table of Contents
目次
1. Introduction ....................................................3 2. Terminology .....................................................3 3. Notational Conventions Used in State Diagrams ...................3 4. State Machine Symbols ...........................................5 5. Common Rules ....................................................6 5.1. Common Procedures ..........................................7 5.2. Common Events ..............................................8 5.3. Common Variables ...........................................9 6. State Machines .................................................11 6.1. Diagram Notations .........................................12 6.2. State Machine for GIST Querying Node ......................12 6.3. State Machine for GIST Responding Node ....................16 7. Security Considerations ........................................18 8. Acknowledgments ................................................18 9. References .....................................................18 9.1. Normative References ......................................18 9.2. Informative References ....................................18 Appendix A. State Transition Tables ...............................20 A.1. State Transition Tables for GIST Querying Node ............20 A.2. State Transition Tables for GIST Responding Node ..........24
The state machines described in this document are illustrative of how the GIST protocol defined in [1] may be implemented for the GIST nodes in different locations of a flow path. Where there are differences, [1] is authoritative. The state machines are informative only. Implementations may achieve the same results using different methods.
このドキュメントで説明されている状態マシンは、[1]で定義されているGISTプロトコルが、フローパスの異なる位置のGISTノードに対してどのように実装されるかを示しています。違いがある場合、[1]は権威です。状態マシンは有益です。実装は、異なる方法を使用して同じ結果を達成する場合があります。
There are two types of possible entities for GIST signaling:
GISTシグナル伝達には2種類の可能なエンティティがあります。
- GIST querying node: GIST node that initiates the discovery of the next peer;
- GISTクエリノード:次のピアの発見を開始するGISTノード。
- GIST responding node: GIST node that is the discovered next peer.
- GIST応答ノード:発見された次のピアであるGISTノード。
We describe a set of state machines for these entities to illustrate how GIST may be implemented.
これらのエンティティの一連の状態マシンについて説明して、GISTの実装方法を説明します。
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 [2].
「必須」、「そうしない」、「必須」、「必要」、「しない」、「そうしない」、「そうではない」、「そうでない」、「推奨」、「5月」、および「オプション」は、[2]で説明されているように解釈される。
The following text is reused from [3], and the state diagrams are based on the conventions specified in [4], Section 8.2.1. Additional state machine details are taken from [5].
次のテキストは[3]から再利用され、状態図は[4]、セクション8.2.1で指定されている規則に基づいています。追加の状態マシンの詳細は[5]から取得されます。
RFC 4137 [3] reproduced the following text from Section 8.2.1 of IEEE 802-1X-2004 [4].
RFC 4137 [3]は、IEEE 802-1x-2004 [4]のセクション8.2.1から次のテキストを再現しました。
State diagrams are used to represent the operation of the protocol by a number of cooperating state machines, each comprising a group of connected, mutually exclusive states. Only one state of each machine can be active at any given time.
状態図は、それぞれが接続された相互に排他的な状態のグループで構成される多くの協力状態マシンによるプロトコルの動作を表すために使用されます。いつでもアクティブにできるのは、各マシンの1つの状態のみです。
. . .
。。。
All permissible transitions between states are represented by arrows, the arrowhead denoting the direction of the possible transition. Labels attached to arrows denote the condition(s) that must be met in order for the transition to take place. All conditions are expressions that evaluate to TRUE or FALSE; if a condition evaluates to TRUE, then the condition is met. The label UCT denotes an unconditional transition (i.e., UCT always evaluates to TRUE). A transition that is global in nature (i.e., a transition that occurs from any of the possible states if the condition attached to the arrow is met) is denoted by an open arrow; i.e., no specific state is identified as the origin of the transition. When the condition associated with a global transition is met, it supersedes all other exit conditions including UCT. The special global condition BEGIN supersedes all other global conditions, and once asserted it remains asserted until all state blocks have executed to the point that variable assignments and other consequences of their execution remain unchanged.
状態間の許容されるすべての遷移は、矢印で表され、矢印は遷移の可能性の方向を示します。矢印に添付されたラベルは、移行が行われるために満たさなければならない条件を示します。すべての条件は、真またはfalseを評価する式です。条件がtrueに評価された場合、条件は満たされます。ラベルUCTは、無条件の遷移を示します(つまり、UCTは常にTRUEに評価されます)。本質的にグローバルな遷移(つまり、矢印に付随する条件が満たされている場合に可能な状態のいずれかから発生する遷移)は、開いた矢印で示されます。つまり、遷移の起源として特定された特定の状態はありません。グローバルな移行に関連する状態が満たされると、UCTを含む他のすべての出口条件に取って代わります。特別なグローバルな条件は、他のすべてのグローバル条件に取って代わることが始まり、一度主張されたと、すべての州ブロックが変数の割り当てや実行の他の結果が変更されないようになるまで実行されるまで主張されたままです。
On entry to a state, the procedures defined for the state (if any) are executed exactly once, in the order that they appear on the page. Each action is deemed to be atomic; i.e., execution of a procedure completes before the next sequential procedure starts to execute. No procedures execute outside a state block. The procedures in only one state block execute at a time, even if the conditions for execution of state blocks in different state machines are satisfied, and all procedures in an executing state block complete execution before the transition to and execution of any other state block occurs. That is, the execution of any state block appears to be atomic with respect to the execution of any other state block, and the transition condition to that state from the previous state is TRUE when execution commences. The order of execution of state blocks in different state machines is undefined except as constrained by their transition conditions. A variable that is set to a particular value in a state block retains this value until a subsequent state block executes a procedure that modifies the value.
州への入場時に、州に対して定義された手順(ある場合)は、ページに表示される順序で正確に1回実行されます。各アクションは原子と見なされます。つまり、手順の実行は、次の順次手順が実行される前に完了します。ステートブロックの外で実行される手順はありません。さまざまな状態マシンでの状態ブロックの実行条件が満たされていても、1つの状態ブロックのみの手順は一度に実行され、他の状態ブロックの移行と実行が発生する前に、実行する状態ブロックの完全な実行のすべての手順が満たされています。。つまり、任意の状態ブロックの実行は、他の状態ブロックの実行に関してアトミックであるように見え、実行が開始されるときに前の状態からその状態への遷移条件は真です。異なる状態マシンでの状態ブロックの実行順序は、移行条件によって制約される場合を除き、未定義です。状態ブロック内の特定の値に設定される変数は、その後の状態ブロックが値を変更する手順を実行するまで、この値を保持します。
On completion of all the procedures within a state, all exit conditions for the state (including all conditions associated with global transitions) are evaluated continuously until one of the conditions is met. The label ELSE denotes a transition that occurs if none of the other conditions for transitions from the state are met (i.e., ELSE evaluates to TRUE if all other possible exit conditions from the state evaluate to FALSE). Where two or more exit conditions with the same level of precedence become TRUE simultaneously, the choice as to which exit condition causes the state transition to take place is arbitrary.
州内のすべての手順が完了すると、状態のすべての出口条件(グローバル遷移に関連するすべての条件を含む)は、条件の1つが満たされるまで継続的に評価されます。ラベルは、状態からの移行の他の条件のいずれも満たされない場合に発生する遷移を示します(つまり、州から他のすべての可能な出口条件が虚偽に評価された場合、そうでなければtrueを評価します)。同じレベルの優先順位を持つ2つ以上の出口条件が同時に真実になる場合、どの出口条件が状態移行が発生するかに関する選択はarbitrary意的です。
In addition to the above notation, there are a couple of clarifications specific to this document. First, all boolean variables are initialized to FALSE before the state machine execution begins. Second, the following notational shorthand is specific to this document:
上記の表記に加えて、このドキュメントに固有のいくつかの説明があります。まず、すべてのブール変数は、状態マシンの実行が開始される前にfalseに初期化されます。第二に、次の表記の速記はこのドキュメントに固有のものです。
<variable> = <expression1> | <expression2> | ...
Execution of a statement of this form will result in <variable> having a value of exactly one of the expressions. The logic for which of those expressions gets executed is outside of the state machine and could be environmental, configurable, or based on another state machine such as that of the method.
このフォームのステートメントを実行すると、<変数>は式の1つの値を持つことになります。これらの式の実行が実行されるロジックは、状態マシンの外側であり、環境、構成可能、またはメソッドのような別の状態マシンに基づいている可能性があります。
( ) Used to force the precedence of operators in boolean expressions and to delimit the argument(s) of actions within state boxes.
()ブール表現のオペレーターの優先順位を強制し、ステートボックス内のアクションの引数を区切るために使用されます。
; Used as a terminating delimiter for actions within state boxes. Where a state box contains multiple actions, the order of execution follows the normal English language conventions for reading text.
;ステートボックス内のアクションの終了デリミターとして使用されます。ステートボックスに複数のアクションが含まれている場合、実行の順序は、テキストを読むための通常の英語規則に従います。
= Assignment action. The value of the expression to the right of the operator is assigned to the variable to the left of the operator. Where this operator is used to define multiple assignments, e.g., a = b = X, the action causes the value of the expression following the right-most assignment operator to be assigned to all of the variables that appear to the left of the right-most assignment operator.
=割り当てアクション。オペレーターの右側の式の値は、オペレーターの左側の変数に割り当てられます。この演算子が複数の割り当てを定義するために使用される場合、たとえばa = b = x、アクションにより、右の割り当て演算子に続く式の値が右側の左側の左側に表示されるすべての変数に割り当てられます。ほとんどの課題演算子。
! Logical NOT operator.
!論理的ではないオペレーター。
&& Logical AND operator.
&&論理および演算子。
|| Logical OR operator.
||論理または演算子。
if...then... Conditional action. If the boolean expression following the "if" evaluates to TRUE, then the action following the "then" is executed.
if ... then ...条件付きアクション。「if」に続くブール式がtrueに評価される場合、「then」に続くアクションが実行されます。
{ statement 1, ... statement N } Compound statement. Braces are used to group statements that are executed together as if they were a single statement.
{ステートメント1、...ステートメントn}複合ステートメント。ブレースは、まるで単一のステートメントであるかのように一緒に実行されるステートメントをグループ化するために使用されます。
!= Inequality. Evaluates to TRUE if the expression to the left of the operator is not equal in value to the expression to the right.
!=不平等。演算子の左側の式の式が右の式との値が等しくない場合、trueに評価します。
== Equality. Evaluates to TRUE if the expression to the left of the operator is equal in value to the expression to the right.
==平等。演算子の左側の式の式が右側の式との値に等しい場合、trueに評価します。
> Greater than. Evaluates to TRUE if the value of the expression to the left of the operator is greater than the value of the expression to the right.
>より大きい。オペレーターの左側の式の値が右側の式の値よりも大きい場合、trueに評価します。
<= Less than or equal to. Evaluates to TRUE if the value of the expression to the left of the operator is either less than or equal to the value of the expression to the right.
<=以下。オペレーターの左側の式の値が右側の式の値以下である場合、trueに評価します。
++ Increment the preceding integer operator by 1.
前の整数演算子を1で増分します。
+ Arithmetic addition operator.
+ 算術追加演算子。
& Bitwise AND operator.
&ビットワイズとオペレーター。
Throughout the document we use terms defined in [1], such as Query, Response, and Confirm.
ドキュメント全体で、クエリ、応答、確認など、[1]で定義されている用語を使用します。
The state machine represents the handling of GIST messages that match a Message Routing State's Message Routing Information (MRI), NSIS Signaling Layer Protocol identifier (NSLPID), and session identifier (SID) and with no protocol errors. Separate parallel instances of the state machines should handle messages for different Message Routing States (MRSs).
状態マシンは、メッセージをルーティングしているメッセージルーティング情報(MRI)、NSISシグナルレイヤープロトコル識別子(NSLPID)、およびセッション識別子(SID)とプロトコルエラーなしで、メッセージをルーティングするメッセージルーティングルーティングルーティング情報(MRI)に一致するGISTメッセージの取り扱いを表します。状態マシンの個別の並列インスタンスは、異なるメッセージルーティング状態(MRSS)のメッセージを処理する必要があります。
The state machine represents the states and transitions of the upstream and downstream peers of the Message Routing State.
州のマシンは、メッセージルーティング状態の上流および下流のピアの状態と移行を表しています。
For simplification, not all objects included in a message are shown. Only those that are significant for the case are shown. State machines do not present handling of messages that are not significant for management of the states.
単純化のために、メッセージに含まれるすべてのオブジェクトが表示されるわけではありません。ケースにとって重要なもののみが表示されます。州のマシンは、州の管理に重要ではないメッセージの処理を提示しません。
The state machines presented in this document do not cover all functions of a GIST node. Functionality of message forwarding, transmission of NSLP data without MRS establishment, and providing of the received messages to the appropriate MRS, we refer to as "lower-level pre-processing" step. Pre-processing provides to the appropriate MRS state machine only the messages that are matched against waiting Query/Response cookies, or the triplet (MRI, NSLPID, SID) of the established MRS. This is represented by "rx_*" events in the state machines.
このドキュメントに示されている状態マシンは、GISTノードのすべての機能をカバーするものではありません。メッセージ転送の機能、MRSの設立なしのNSLPデータの送信、および受信したメッセージの適切なMRSへの提供の提供では、「低レベルの前処理」ステップと呼ばれます。前処理は、適切なMRSステートマシンに、待機中のクエリ/応答Cookieと一致するメッセージ、または確立されたMRSのトリプレット(MRI、NSLPID、SID)のみを提供します。これは、州のマシンの「RX_*」イベントで表されます。
Management of messaging associations (MAs) is considered in the document via procedures, events, and variables, which describe MA interaction with the MRS state machines. A state machine for MA management is not explicitly presented.
メッセージング協会の管理(MAS)は、MRS州のマシンとのMAの相互作用を説明する手順、イベント、および変数を介してドキュメントで考慮されます。MA管理用の状態マシンは明示的に提示されていません。
Tx_Query: Transmit of Query message.
TX_Query:クエリメッセージの送信。
Tx_Response: Transmit of Response message.
TX_Response:応答メッセージの送信。
Tx_Confirm: Transmit of Confirm message.
TX_CONFIRM:確認メッセージの送信。
Tx_Data: Transmit of Data message.
TX_DATA:データメッセージの送信。
Tg_MessageStatus: NSLP/GIST API message informing NSLP application of unsuccessful delivery of a message
TG_MESSAGESTATUS:NSLP/GIST APIメッセージNSLPの通知メッセージの配信に失敗したアプリケーション
Tg_RecvMsg: NSLP/GIST API message that provides received message to NSLP application.
TG_RECVMSG:NSLPアプリケーションに受信メッセージを提供するNSLP/GIST APIメッセージ。
Tg_NetworkNotification: NSLP/GIST API message that informs NSLP application of change in MRS.
TG_NETWORKNOTIFICATION:NSLP/GIST APIメッセージMRSの変化をNSLPアプリケーションに通知する。
Install downstream/upstream MRS: Install new Message Routing State and save the corresponding peer state info (IP address and UDP port, or pointer to the used MA) for the current Message Routing State or update the corresponding peer state info.
ダウンストリーム/アップストリームMRSをインストールする:新しいメッセージルーティング状態をインストールし、対応するピアステート情報(IPアドレスとUDPポート、または使用したMAへのポインター)を現在のメッセージルーティング状態に保存するか、対応するピアステート情報を更新します。
Delete MRS: Delete installed downstream/upstream peer's info for the current Message Routing State, and delete the Message Routing State if required.
MRSの削除:現在のメッセージルーティング状態の下流/上流のピアの情報を削除し、必要に応じてメッセージルーティング状態を削除します。
Refresh MRS: Refreshes installed MRS.
MRSの更新:リフレッシュインストールMRS。
Queue NSLP info: Save NSLP messages in a queue until conditions for their sending are present, e.g., a required MA association is established.
キューNSLP情報:送信条件が存在するまで、nslpメッセージをキューに保存します。たとえば、必要なMA関連が確立されます。
CheckPeerInfo: The sender of the received data message is matched against the installed peer info in the MRS.
CheckPeerInfo:受信したデータメッセージの送信者は、MRSのインストールされたピア情報と一致します。
Delete MA: Delete/disconnect used MA.
MAを削除:使用されているMAを削除/切断します。
Stop using shared MA: Stop using shared MA. If the shared MA is no longer being used by any other MRSs, it depends on the local policy whether it is deleted or kept.
共有MAの使用を停止します:共有MAの使用を停止します。共有MAが他のMRSによって使用されなくなった場合、それが削除されているか保持されているかにかかわらず、ローカルポリシーに依存します。
Tg_Establish_MA: Triggers establishment of a new MA.
TG_ESTABLISH_MA:新しいMAの確立をトリガーします。
Start/Restart a timer variable (Section 5.3): Start/Restart of a certain timer.
タイマー変数を起動/再起動します(セクション5.3):特定のタイマーの起動/再起動。
Install/Update/Delete UpstreamPeerInfo variable (Section 5.3): Management of upstream peer info in state machine of responding node.
upstreampeerinfo変数をインストール/更新/削除(セクション5.3):応答ノードの状態マシンにおける上流のピア情報の管理。
Rx_Query: Receive of Query message.
rx_query:クエリメッセージの受信。
Rx_Response: Receive of Response message.
rx_response:応答メッセージの受信。
Rx_Confirm: Receive of Confirm message.
RX_CONFIRM:確認メッセージの受信。
Rx_Data: Receive of Data message.
RX_DATA:データメッセージの受信。
Tg_SendMsg: NSLP/GIST API message from NSLP application that requests transmission of a NSLP message.
TG_SENDMSG:NSLPメッセージの送信を要求するNSLPアプリケーションからのNSLP/GIST APIメッセージ。
Tg_SetStateLifetime(time_period): NSLP/GIST API message providing info for the lifetime of a Routing State (RS), required by the application. "Time_period = 0" represents the cancellation of established RSs/MAs, invoked by the NSLP application.
TG_SETSTATELIFETIME(TIME_PERIOD):NSLP/GIST APIメッセージアプリケーションで必要なルーティング状態(RS)の寿命の情報を提供します。「time_period = 0」は、NSLPアプリケーションによって呼び出される確立されたRSS/MASのキャンセルを表します。
Tg_InvalidRoutingState: NSLP/GIST API notification from NSLP application for path change.
TG_INVALIDROUTINGSTATE:NSLP/GIST API通知NSLPアプリケーションのパス変更。
Tg_ERROR: General Error event / system level error.
TG_ERROR:一般的なエラーイベント /システムレベルエラー。
Tg_MA_Established: A new MA has been successfully established.
TG_MA_ESTABLIDED:新しいMAが正常に確立されました。
Tg_MA_Error: Error event with used MA.
TG_MA_ERROR:使用したMAを使用したエラーイベント。
Timeout a timer variable (Section 5.3): Timeout of a certain timer.
タイムアウトタイマー変数(セクション5.3):特定のタイマーのタイムアウト。
Variables listed in this section are defined as:
このセクションにリストされている変数は、次のように定義されています。
- Specific information carried in the received messages.
- 受信したメッセージに含まれる特定の情報。
- Conditions that are results of processes not defined in the state machine model.
- ステートマシンモデルでは定義されていないプロセスの結果である条件。
State machine logic is based on these general conditions and message parameters.
状態マシンロジックは、これらの一般的な条件とメッセージパラメーターに基づいています。
The type of mode and destination info is determined by NSLP application parameters and local GIST policy. Here it is represented by the common variables D-mode, C-mode, and MAinfo.
モードのタイプと宛先情報は、NSLPアプリケーションパラメーターとローカルGISTポリシーによって決定されます。ここでは、共通変数Dモード、Cモード、およびMainFOで表されます。
C-mode: The message MUST be transmitted in C-mode. This is specified by "Message transfer attributes" set by NSLP application to any of the following values:
Cモード:メッセージはCモードで送信する必要があります。これは、NSLPアプリケーションによって設定された「メッセージ転送属性」によって指定されています。
"Reliability" is set to TRUE.
「信頼性」はTrueに設定されています。
"Security" is set to values that request secure handling of a message.
「セキュリティ」は、メッセージの安全な処理を要求する値に設定されています。
"Local processing" is set to values that require services offered by C-mode (e.g., congestion control) [1].
「ローカル処理」は、Cモード(渋滞制御など)で提供されるサービスを必要とする値に設定されています[1]。
D-mode: The message MUST be transmitted in D-mode. This is specified by local policy rules. If the "Message transfer attributes" are not set by NSLP application to any of the following values, then:
Dモード:メッセージはDモードで送信する必要があります。これは、ローカルポリシールールによって指定されています。「メッセージ転送属性」がNSLPアプリケーションによって以下の値のいずれかに設定されていない場合、次のようになります。
"Reliability" is set to TRUE.
「信頼性」はTrueに設定されています。
"Security" is set to values that request special security handling of a message.
「セキュリティ」は、メッセージの特別なセキュリティ処理を要求する価値に設定されています。
"Local processing" is set to values that require services offered by C-mode [1].
「ローカル処理」は、Cモード[1]によって提供されるサービスを必要とする値に設定されています。
MAinfo: GIST message parameters describing the required MA or proposed MA, e.g., "Stack-proposal" and "Stack-Configuration-Data" [1].
MAINFO:必要なMAまたは提案されたMAを記述するGISTメッセージパラメーター、例えば「スタックプロポザル」および「スタックコンフィグラーデータ」[1]。
NSLPdata: NSLP application data.
NSLPDATA:NSLPアプリケーションデータ。
RespCookie: Responder Cookie that is being sent by the responding node with the Response message in case that its local policy requires a confirmation from the querying node.
RespCookie:ローカルポリシーがクエリノードからの確認が必要な場合に備えて、応答ノードによって応答ノードによって送信されているResponder Cookie。
ConfirmRequired: Indicator that a Confirm message is required by the local policy rule for installation of a new MRS.
確認済み:新しいMRSのインストールのためにローカルポリシールールで確認メッセージが必要であることを指標。
NewPeer: Indicator that a Response message is received from a new responding peer.
NewPeer:新しい応答ピアから応答メッセージが受信されることを指標。
MAexist: Indicator that an existing MA will be reused in data transfer between peers.
MAEXIST:既存のMAがピア間のデータ転送で再利用されることを指標。
UpstreamPeerInfo: Upstream peer info that is saved in an established MRS.
upstreampeerinfo:確立されたMRSに保存されている上流のピア情報。
T_Inactive_QNode: Message Routing State lifetime timer in querying node.
T_INACTIVE_QNODE:メッセージノードのクエリにおける[状態]ライフタイムタイマーをメッセージ。
T_Expired_RNode: Message Routing State lifetime timer in responding node.
T_EXPIRED_RNODE:応答ノードの[状態]ライフタイムタイマーをルーティングするメッセージ。
T_Refresh_QNode: Message Routing State refresh timer in querying node.
T_REFRESH_QNODE:メッセージルーティング状態リフレッシュタイマーのクエリノード。
T_No_Response: Timer for the waiting period for Response message in querying node.
T_NO_RESPONSE:ノードのクエリにおける応答メッセージの待機期間のタイマー。
T_No_Confirm: Timer for the waiting period for Confirm message in responding node.
T_NO_CONFIRM:応答ノードのメッセージを確認するための待機期間のタイマー。
No_MRS_Installed: Data sent by responding node via a Response message that indicates loss of Confirm message.
NO_MRS_INSTALLED:確認メッセージの損失を示す応答メッセージを介してノードを応答することによって送信されたデータ。
The following section presents the state machine diagrams of GIST peers. RFC 5972 is published as a .txt file. A supplementary .pdf is being published as well.
次のセクションでは、要点ピアの状態マシン図を示します。RFC 5972は.txtファイルとして公開されています。補足.pdfも公開されています。
In the .pdf document, the state machine diagrams are depicted in detail. All state machine information (triggering event, action taken, and variable status) is represented in the diagrams.
.pdfドキュメントでは、状態マシン図を詳細に示します。すべての状態マシン情報(トリガーイベント、アクションが取られた、および可変ステータス)は、図に表されます。
In the .txt document, state machine diagrams depict only transition numbers. Following each diagram is a list of state transition descriptions. Complete transition details (triggering event, action taken, and variable status) are given in state transition tables in Appendix A.
.txtドキュメントでは、状態マシン図は遷移数のみを示しています。各図に従うことは、状態遷移の説明のリストです。完全な移行の詳細(トリガーイベント、アクション、および変動ステータス)は、付録Aの状態遷移表に記載されています。
Please use the .pdf version whenever possible. It is the clearer representation of the state machine. In case of a difference between the two documents, please refer to the .pdf version.
可能な限り.pdfバージョンを使用してください。それは状態マシンのより明確な表現です。2つのドキュメント間に違いがある場合は、.pdfバージョンを参照してください。
+--------------------------------+ | STATE | +--------------+-----------------+ | | ooooo o N o Transition N ooooo | v +--------------------------------+ | STATE | +--------------------------------+
Figure 1: Diagram notations
図1:図表記
The state machine diagram of the GIST querying node is below. Transition descriptions follow.
GISTクエリノードのステートマシン図は以下にあります。遷移の説明が続きます。
Please refer to Appendix A.1 for complete transition details (triggering event, action taken, and variable status).
完全な移行の詳細については、付録A.1を参照してください(イベントのトリガー、アクション、および変動ステータス)。
+-----------+ ooooo | Any State +----------o 18 o +-----------+ ooooo | v +-----------------------------------------------------------------+ | IDLE | +--+--------------------------------------------------------------+ | ^ ^ ^ | | | | ooooo ooooo ooooo ooooo ooooo | | o 1 o o 2 o +o 3 o+ +o 4 o+ +o 5 o+ | | ooooo ooooo | ooooo | | ooooo | | ooooo | | | | | | | | | | | | | v | | v | v | v | | +-----------+-----+----------+----------+--------+ | | | Wait Response | | | +--+-------------------------------------+-------+ | | | ^ | | | | | | | | ooooo | ooooo ooooo ooooo | o 6 o | +o 5 o+ o 7 o o 8 o | ooooo | | ooooo | ooooo ooooo | | | | | | | | | | | v v | | | | +----+-------------------------------+---+ | | | | Wait MA Establishment | | | | +------------------------------+---------+ | | | ^ | | | | | | | | ooooo ooooo ooooo ooooo ooooo | o 9 o o 11 o +o 13 o+ o 12 o o 10 o | ooooo ooooo | ooooo | ooooo ooooo | | | | | | | v | | | v v | +----------+----------+--------+------------------------------+---+ | Established Downstream MRS | +--+-----------+-----------+-----------+-----------+--------------+ | ^ | ^ | ^ | ^ | ^ | | | | | | | | | | | ooooo | | ooooo | | ooooo | | ooooo | | ooooo | +o 16 o+ +o 14 o+ +o 15 o+ +o 4 o+ +o 17 o+ ooooo ooooo ooooo ooooo ooooo
Figure 2: State Machine for GIST Querying Node
図2:GISTクエリノードのステートマシン
1**) An initial request from the NSLP application is received, which triggers Query messages requesting either D-mode or C-mode. Depending on the node's local policy, the NSLP data might be piggybacked in the Query requesting D-mode. The Query may carry MAinfo if C-mode transport is needed.
1 **)NSLPアプリケーションからの初期リクエストが受信されます。これにより、DモードまたはCモードのいずれかを要求するメッセージがクエリがトリガーされます。ノードのローカルポリシーに応じて、NSLPデータは、Dモードを要求するクエリでピギーバックされる可能性があります。Cモードトランスポートが必要な場合、クエリにはMainFOが搭載される場合があります。
2) T_No_Response timer expires, and the maximum number of retries has been reached. The NSLP application is notified of the GIST peer discovery failure.
2) T_NO_RESPONSEタイマーは期限切れになり、RETRIESの最大数に達しました。NSLPアプリケーションには、GISTピアディスカバリー障害が通知されます。
3) T_No_Response timer expires. The Query is resent.
3) T_NO_RESPONSEタイマーは期限切れになります。クエリはresしています。
4) A Data message is received. It is checked to see whether its sender matches the installed downstream peer info in the MRS; if so, it is processed. In WaitResponse state, this event might happen in the process of an MA upgrade, when the downstream peer is still not aware of establishment of the new MA.
4) データメッセージが受信されます。その送信者がMRSにインストールされている下流のピア情報と一致するかどうかを確認するためにチェックされます。もしそうなら、それは処理されます。WaitResponse状態では、このイベントは、下流のピアがまだ新しいMAの確立を認識していない場合、MAアップグレードの過程で発生する可能性があります。
5) The NSLP application provides data for sending. NSLP data is queued because the downstream peer is not discovered or the required MA is still not established.
5) NSLPアプリケーションは、送信用のデータを提供します。下流のピアが発見されていないか、必要なMAがまだ確立されていないため、NSLPデータがキューに掲載されています。
6) A Response message is received. If a D-mode connection is requested or the available MA can be reused for the requested C-mode, the MRS is established.
6) 応答メッセージが受信されます。D-Mode接続が要求されるか、使用可能なMAを要求されたCモードに再利用できる場合、MRSが確立されます。
7*) Response message is received. If a C-mode connection must be established, and there is no available MA to be reused, MA establishment is initiated and the system waits for it to be completed.
7*)応答メッセージが受信されます。Cモード接続を確立する必要があり、利用可能なMAが再利用されない場合、MA施設が開始され、システムが完了するのを待っています。
8) MA establishment fails. NSLP application is notified for unsuccessful message delivery.
8) MA施設は失敗します。NSLPアプリケーションには、メッセージ配信の失敗について通知されます。
9) The NSLP application provides data for sending, and the requested transport parameters require an upgrade of the established MRS from D-mode/C-mode to C-mode. Or, the NSLP application notifies the GIST instance of the path change. As a result, downstream GIST peer discovery is initiated.
9) NSLPアプリケーションは送信用のデータを提供し、要求された輸送パラメーターには、Dモード/CモードからCモードへの確立されたMRSのアップグレードが必要です。または、NSLPアプリケーションは、パス変更のGISTインスタンスに通知します。その結果、下流のGISTピアディスカバリーが開始されます。
10) The MRS lifetime expires or the NSLP application notifies that the MRS is no longer needed. The MRS is deleted. If not needed, the MA is deleted, too. The NSLP application is notified of the MRS change.
10)Mrs Lifetimeの有効期限が切れるか、NSLPアプリケーションがMRSが不要になったことを通知します。MRSが削除されます。必要でない場合は、MAも削除されます。NSLPアプリケーションには、MRSの変更が通知されます。
11*) The path change is detected as a Response message from a new downstream GIST peer is received. A new MA must be established for the requested C-mode.
11*)パスの変更は、新しい下流のGISTピアからの応答メッセージが受信されると検出されます。要求されたCモードのために新しいMAを確立する必要があります。
12*) A new MA is established. The MRS is installed. The queued NSLP data is sent.
12*)新しいMAが確立されています。MRSがインストールされています。キューに囲まれたNSLPデータが送信されます。
13) T_Refresh_QNode timer expires. The Query message is sent.
13)T_REFRESH_QNODEタイマーは期限切れです。クエリメッセージが送信されます。
14) The NSLP application provides data for sending. It is sent via Data message towards the downstream GIST peer.
14)NSLPアプリケーションは、送信用のデータを提供します。データメッセージを介して下流のGISTピアに向かって送信されます。
15) The Response message from the downstream GIST peer is received. The peer is not changed. The MRS is refreshed (T_Refresh_QNode timer is restarted).
15)下流のGISTピアからの応答メッセージが受信されます。ピアは変更されていません。MRSは更新されます(T_REFRESH_QNODEタイマーが再起動されます)。
16) The path change is detected as a Response message from a new downstream GIST peer is received. D-mode is requested, or the existing MA can be reused for the requested C-mode.
16)パスの変更は、新しい下流のGISTピアからの応答メッセージが受信されると検出されます。Dモードが要求されるか、既存のMAを要求されたCモードに再利用できます。
17) The responding peer indicates that it has not received a Confirm message and it has no established upstream MRS. The Confirm message is resent.
17)応答するピアは、確認メッセージを受信しておらず、上流のMRSが確立されていないことを示しています。確認メッセージがresしています。
18) A general error or system-level error occurs. The MRS is deleted. If not needed, the MA is deleted, too. The NSLP application is notified of the MRS change.
18)一般的なエラーまたはシステムレベルのエラーが発生します。MRSが削除されます。必要でない場合は、MAも削除されます。NSLPアプリケーションには、MRSの変更が通知されます。
Remarks:
備考:
*) Response and Confirm messages might be sent either in D-mode or C-mode, before or after MA establishment, depending on the node's local three-way handshake policy and the availability of the MAs to be reused. See [1] for details.
*)ノードのローカルスリーウェイハンドシェイクポリシーと再利用されるMASの可用性に応じて、MA施設の前または後に、応答および確認メッセージは、MA施設の前または後のいずれかで送信される場合があります。詳細については[1]を参照してください。
**) Depending on GIST local policy, NSLPdata might be sent as the payload of Query and Confirm messages (piggybacking).
**)GISTローカルポリシーに応じて、NSLPDATAはクエリのペイロードとして送信され、メッセージを確認することができます(ピギーバック)。
The GIST responding node state machine diagram is below. Transition descriptions follow.
GIST応答するノード状態マシン図は以下にあります。遷移の説明が続きます。
Please refer to Appendix A.2 for complete transition details (triggering event, action taken, and variable status).
完全な移行の詳細については、付録A.2を参照してください(イベントのトリガー、アクション、および変動ステータス)。
+-----------+ ooooo | Any State +----------o 14 o +-----------+ ooooo | v +-----------------------------------------------------------------+ | IDLE | +--+-------------------------------+------------------------------+ | ^ | ^ | | | | ooooo | ooooo ooooo ooooo o 1 o | o 2 o +o 4 o+ o 3 o ooooo | ooooo | ooooo | ooooo | | | | | | | | v | v | | | +--------------------+---------------+---+ | | | Wait Confirm | | | +---------+------------------+-----------+ | | | ^ | ^ | | | | | | | ooooo ooooo ooooo ooooo | ooooo | | +o 13 o+ o 8 o o 5 o o 7 o +o 6 o+ | | ooooo | ooooo ooooo ooooo ooooo | | | | | | v | v | v | +------+-------------+------------------------+-------------------+ | Established Upstream MRS | +------+-------------+-------------+------------+-----------------+ | ^ | ^ | ^ | ^ | | | | | | | | | ooooo | | ooooo | | ooooo | | ooooo | +o 9 o+ +o 11 o+ +o 12 o+ +o 10 o+ ooooo ooooo ooooo ooooo
Figure 3: State Machine for GIST Responding Node
図3:GIST応答ノードの状態マシン
1) A Query message is received. The MRS is installed immediately because local policy permits it. The Query message might carry piggybacked NSLP data that will be provided to the NSLP application.
1) クエリメッセージが受信されます。MRSは、ローカルポリシーが許可しているため、すぐにインストールされます。クエリメッセージには、NSLPアプリケーションに提供されるピギーバックNSLPデータが付属する場合があります。
2) A Query message is received. Local policy requires an explicit Confirm message for MRS installation. The Query message might carry piggybacked NSLP data that will be provided to the NSLP application.
2) クエリメッセージが受信されます。ローカルポリシーには、MRSのインストールに関する明示的な確認メッセージが必要です。クエリメッセージには、NSLPアプリケーションに提供されるピギーバックNSLPデータが付属する場合があります。
3) T_No_Confirm timer expires. Note that all cases of lost handshake GIST messages are handled only by the GIST querying node via resend of the Query message.
3) T_NO_CONFIRMタイマーは期限切れになります。失われたハンドシェイクGISTメッセージのすべてのケースは、クエリメッセージの再送信を介してGISTクエリノードによってのみ処理されることに注意してください。
4) A Query message is received again. This means that the sent Response message has not been received by the upstream GIST peer. The Response message is resent.
4) クエリメッセージが再び受信されます。これは、上流のGISTピアによって送信された応答メッセージが受信されていないことを意味します。応答メッセージはresしています。
5) A Confirm message is received that causes installation of the upstream MRS.
5) アップストリームMRSの設置を引き起こす確認メッセージが受信されます。
6) In case of a lost Confirm message, data messages might be received from the upstream GIST node (it is unaware of the lost Confirm message). A Response message indicating the loss of the Confirm is sent back to the upstream GIST node.
6) 紛失した確認メッセージの場合、上流のGISTノードからデータメッセージが受信される可能性があります(失われた確認メッセージに気付いていません)。確認の損失を示す応答メッセージは、上流のGISTノードに送り返されます。
7) A Query message is received (from either an existing upstream GIST node or a new upstream GIST node) with a request to change the used GIST operation mode (from D-mode/C-mode to C-mode, if available; otherwise, it stays the same). Local policy requires an explicit Confirm message for MRS installation.
7) クエリメッセージは(既存のアップストリームGISTノードまたは新しいアップストリームGISTノードのいずれかから)を受信します。使用済みのGIST操作モードを変更するリクエスト(Dモード/CモードからCモードまで、利用可能な場合、そうでない場合、同じままです)。ローカルポリシーには、MRSのインストールに関する明示的な確認メッセージが必要です。
8) The MRS lifetime expires or the NSLP application notifies that the MRS is no longer needed. The MRS is deleted. If used and not needed, the MA is deleted, too. The NSLP application is notified of the MRS change.
8) Mrs Lifetimeの有効期限が切れるか、NSLPアプリケーションがMRSが不要になったことを通知します。MRSが削除されます。使用されていない場合、MAも削除されます。NSLPアプリケーションには、MRSの変更が通知されます。
9) The NSLP application provides data for sending. NSLP data is sent if the discovery process is successfully accomplished, or it is queued if a Confirm message is still expected to confirm establishment of an MA.
9) NSLPアプリケーションは、送信用のデータを提供します。発見プロセスが正常に達成された場合、NSLPデータが送信されます。または、確認メッセージがまだMAの確立を確認することが予想される場合はキューになります。
10) A Query message is received. If it is sent from a new upstream GIST node, then there is a path change. Local policy does not need an explicit Confirm message for MRS installation. The MRS data is updated.
10)クエリメッセージが受信されます。新しいアップストリームGISTノードから送信された場合、パス変更があります。ローカルポリシーでは、MRSインストールのための明示的な確認メッセージは必要ありません。MRSデータが更新されます。
11) A Query message is received with a request to change the used GIST operation mode (from D-mode/C-mode to C-mode, if available; otherwise, it stays the same). Local policy does not need an explicit Confirm message for MRS installation. The MRS data is updated.
11)クエリメッセージは、使用されているGIST操作モードを変更するリクエストで受信されます(D-Mode/C-ModeからC-Mode(利用可能な場合は、同じまま)。ローカルポリシーでは、MRSインストールのための明示的な確認メッセージは必要ありません。MRSデータが更新されます。
12) A Data message is received. Data messages are accepted only if the complete MRS is installed, e.g., the upstream peer info is installed. If not, then a Confirm message is expected and the Data message is not accepted. A Response message indicating the loss of the Confirm is sent back to the upstream GIST node.
12)データメッセージが受信されます。データメッセージは、完全なMRSがインストールされている場合にのみ受け入れられます。たとえば、上流のピア情報がインストールされます。そうでない場合は、確認メッセージが予想され、データメッセージは受け入れられません。確認の損失を示す応答メッセージは、上流のGISTノードに送り返されます。
13) A Confirm message is received. It accomplishes assignment of an existing MA (or establishment of a new MA) needed for data transfer between peers. The information for the used MA is installed as the upstream peer info.
13)確認メッセージが受信されます。ピア間のデータ転送に必要な既存のMA(または新しいMAの確立)の割り当てを達成します。使用済みのMAの情報は、上流のピア情報としてインストールされます。
14) A general error or system-level error occurs. The MRS is deleted. If not needed, the MA is deleted, too. The NSLP application is notified of the MRS change.
14)一般的なエラーまたはシステムレベルのエラーが発生します。MRSが削除されます。必要でない場合は、MAも削除されます。NSLPアプリケーションには、MRSの変更が通知されます。
This document does not raise new security considerations. Security considerations are addressed in the GIST specification [1] and in [6].
このドキュメントは、新しいセキュリティ上の考慮事項を提起しません。セキュリティの考慮事項は、GIST仕様[1]および[6]で対処されています。
The authors would like to thank Christian Dickmann who contributed to refining of the state machine.
著者は、州の機械の精製に貢献したクリスチャン・ディックマンに感謝したいと思います。
The authors would like to thank Robert Hancock, Ingo Juchem, Andreas Westermaier, Alexander Zrim, Julien Abeille Youssef Abidi, and Bernd Schloer for their insightful comments.
著者は、ロバート・ハンコック、インゴ・ジュシェム、アンドレアス・ウェスターマイヤー、アレクサンダー・ズリム、ジュリエン・アベイユ・ユーセフ・アビディ、ベルン・シュローアーの洞察に満ちたコメントに感謝したいと思います。
[1] Schulzrinne, H. and R. Hancock, "GIST: General Internet Signalling Transport", RFC 5971, October 2010.
[1] Schulzrinne、H。およびR. Hancock、「Gist:General Internet Signaling Transport」、RFC 5971、2010年10月。
[2] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[2] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。
[3] Vollbrecht, J., Eronen, P., Petroni, N., and Y. Ohba, "State Machines for Extensible Authentication Protocol (EAP) Peer and Authenticator", RFC 4137, August 2005.
[3] Vollbrecht、J.、Eronen、P.、Petroni、N。、およびY. Ohba、「拡張可能な認証プロトコル(EAP)ピアおよび認証器のための状態マシン」、RFC 4137、2005年8月。
[4] Institute of Electrical and Electronics Engineers, "Standard for Local and Metropolitan Area Networks: Port-Based Network Access Control", IEEE 802-1X-2004, December 2004.
[4] Institute of Electrical and Electronics Engineers、「地元および大都市圏ネットワークの標準:ポートベースのネットワークアクセス制御」、IEEE 802-1x-2004、2004年12月。
[5] Fajardo, V., Ed., Ohba, Y., and R. Marin-Lopez, "State Machines for the Protocol for Carrying Authentication for Network Access (PANA)", RFC 5609, August 2009.
[5] Fajardo、V.、ed。、Ohba、Y.、およびR. Marin-Lopez、「ネットワークアクセスのための認証を運ぶためのプロトコルのための状態マシン(PANA)」、RFC 5609、2009年8月。
[6] Tschofenig, H. and D. Kroeselberg, "Security Threats for Next Steps in Signaling (NSIS)", RFC 4081, June 2005.
[6] Tschofenig、H。およびD. Kroeselberg、「シグナル伝達の次のステップに対するセキュリティの脅威(NSIS)」、RFC 4081、2005年6月。
The state transition tables below represent the state diagrams in ASCII format. Please use the .pdf version whenever possible. It is the clearer representation of the state machine.
以下の状態遷移表は、ASCII形式の状態図を表しています。可能な限り.pdfバージョンを使用してください。それは状態マシンのより明確な表現です。
For each state there is a separate table that lists in each row: - an event that triggers a transition, - actions taken as a result of the incoming event, - and the new state at which the transitions ends.
各状態について、各行にリストする別のテーブルがあります。-移行をトリガーするイベント - 着信イベントの結果としてとられたアクション、および移行が終了する新しい状態。
Please refer to the state machine diagram in Figure 2.
図2の状態マシン図を参照してください。
----------- State: IDLE -----------
+Transition | |Condition |Action |State V--+------------------------+-------------------------+----------- 1) |tg_SendMsg |tx_Query |Wait ** | |start T_No_Response |Response | |Queue NSLP data | | | | 18)|Tg_ERROR |Delete MRS |IDLE | |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
----------- State: WaitResponse -----------
+Transition | |Condition |Action |State V--+------------------------+-------------------------+----------- 2) |(timeout T_No_Response) |tg_MessageStatus |IDLE |&&(MaxRetry) | | | | | 3) |(timeout T_No_Response) |Tx_Query |Wait |&&(!MaxRetry) |restart T_No_Response |Response | | | 4) |rx_Data |IF(CheckPeerInfo) |Wait | | tg_RecvMsg to Appl.|Response | | | 5) |tg_SendMsg |Queue NSLP data |Wait | | |Response | | | 6) |rx_Response)|| |Install MRS |Established |(rx_Response(MAinfo)&& |IF (RespCookie) |Downstream |(MAexist)) | tx_Confirm(RespCookie)|MRS | |tx_Data(Queued NSLP data)| | | | 7) |rx_Response(MAinfo)&& |tg_Establish_MA |Wait MA * |(!MAexist) |(tx_Confirm) |Establish. | | | | | | 18)|Tg_ERROR |(Delete MRS) |IDLE | |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
----------- State: Established Downstream MRS -----------
+Transition | |Condition |Action |State V--+------------------------+-------------------------+----------- 4) |rx_Data |IF(CheckPeerInfo) |Established | | tg_RecvMsg to Appl.|Downstream | | |MRS | | | 9) |((tg_SendMsg)&&(C-mode) |tx_Query |Wait |&&(!MAexist))|| |Queue NSLP data |Response |(tg_MA_error)|| | | |(tg_InvalidRoutingState)| | | | | 10)|(timeout T_Inactive_ |Delete MRS |IDLE | QNode)|||IF (MA is used) | |(tg_SetStateLifetime(0))| (Delete MA)|| | | | (Stop using shared MA)| | |Tg_NetworkNotification | | | | 11)|(rx_Response(MAinfo)&& |((Delete MA)|| |Wait MA * |(NewPeer)&&(!MA_exist)) |(Stop using shared MA)) |Establish. | |tg_Establish_MA | | |(tx_Confirm) | | | | 13)|timeout T_Refresh_QNode |tx_Query |Established | | |Downstream | | |MRS | | | 14)|tg_SendMsg |tx_Data |Established | |restart T_Inactive_QNode |Downstream | | |MRS | | | 15)|(rx_Response)&& |Refresh MRS |Established |(!NewPeer) |restart T_Inactive_QNode |Downstream | | |MRS | | | 16)|(rx_Response)|| |IF (MA is used) |Established |(rx_Response(Mainfo)&& | (Delete MA)|| |Downstream |(MAexist)))&&(NewPeer) | (Stop using shared MA)|MRS | |Install MRS | | |restart T_Inactive_QNode | | |IF (RespCookie) | | | tx_Confirm(RespCookie)| | | |
17)|rx_Response(No_MRS_ |tx_Confirm(RespCookie) |Established | installed)|tx_Data(Queued NSLP data)|Downstream | | |MRS | | | 18)|Tg_ERROR |(Delete MRS) |IDLE | |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
----------- State: Wait MA Establishment -----------
+Transition | |Condition |Action |State V--+------------------------+-------------------------+----------- 5) |tg_SendMsg |Queue NSLP data |Wait MA | | |Establish. | | | 8) |tg_MA_error |Delete MRS |IDLE | |tg_MessageStatus | | | | 12)|tg_MA_Established |Install MRS |Established * | |(tx_Confirm) |Downstream | |tx_Data(Queued NSLP data)|MRS | | | 18)|Tg_ERROR |Delete MRS |IDLE | |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
Please refer to the state machine diagram in Figure 3.
図3の状態マシン図を参照してください。
----------- State: IDLE -----------
+Transition | |Condition |Action |State v--+------------------------+-------------------------+----------- 1) |rx_Query&& |tx_Response |Established |(!ConfirmRequired) |Install MRS |Upstream | |IF(NSLPdata) |MRS | | tg_RecvMsg(NSLPdata)| | | to Appl.| | | | 2) |rx_Query&& |tx_Response |Wait |(ConfirmRequired) |start T_No_Confirm |Confirm | |IF(NSLPdata) | | | tg_RecvMsg(NSLPdata)| | | to Appl.| | | | ---+------------------------+-------------------------+-----------
----------- State: WAIT CONFIRM -----------
+Transition | |Condition |Action |State v--+------------------------+-------------------------+----------- 3) |timeout T_No_Confirm | |IDLE | | | 4) |rx_Query&& |tx_Response |Wait |(ConfirmRequired) |start T_No_Confirm |Confirm | |IF(NSLPdata) | | | tg_RecvMsg(NSLPdata)| | | to Appl.| | | | 5) |rx_Confirm |Install Upstream MRS |Established | | |Upstream | | |MRS | | | 6) |rx_Data |tx_Response(No_MRS_ |Wait | | installed)|Confirm | | |
14)|(Tg_ERROR)|| |(Delete MRS) |IDLE |(Tg_MA_Error) |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
----------- State: Established Upstream MRS -----------
+Transition | |Condition |Action |State v--+------------------------+-------------------------+----------- 7) |(rx_Query)&& |Delete MRS |Wait |(ConfirmRequired) |tx_Response |Confirm | |start T_No_Confirm | | |IF(MA is used) | | | (Delete MA)|| | | | (Stop using shared MA)| | |IF(NSLPdata) | | | tg_RecvMsg(NSLPdata) | | | to Appl.| | | | 8) |(timeout T_Expire_RNode)|Delete MRS |IDLE ||| |tg_NetworkNotification | |(tg_SetStateLifetime(0))|IF(MA is used) | | | (Delete MA)|| | | | (Stop using shared MA)| | | | 9) |tg_SendMsg |IF(!UpstreamPeerInfo) |Established | | Queue NSLP data |Upstream | |ELSE tx_Data |MRS | | | 10)|rx_Query |IF (NewPeer) |Established | | Update UpstreamPeerInfo|Upstream | |tx_Response |MRS | |restart T_Expire_RNode | | | | 11)|rx_Query(MAinfo)&& |Delete UpstreamPeerInfo |Established |(!ConfirmRequired) |restart T_Expire_RNode |Upstream | |tx_Response(MAinfo) |MRS | | |
12)|rx_Data |IF(UpstreamPeerInfo) |Established | | (tg_RecvMsg to Appl.)|Upstream | | &&(restart_T_Expire_ |MRS | | RNode)| | |ELSE | | | tx_Error(No_MRS_ | | | installed)| | | | 13)|rx_Confirm |Install UpstreamPeerInfo |Established | |tx_Data(queued_NSLP_data)|Upstream | | |MRS | | | 14)|(Tg_ERROR)|| |(Delete MRS) |IDLE |(Tg_MA_Error) |IF (MA is used) | | | ((Delete MA)|| | | | (Stop using shared MA))| | |Tg_NetworkNotification | | | | ---+------------------------+-------------------------+-----------
Authors' Addresses
著者のアドレス
Tseno Tsenov Sofia, Bulgaria
Tseno Tsenov Sofia、ブルガリア
EMail: tseno.tsenov@mytum.de
Hannes Tschofenig Nokia Siemens Networks Linnoitustie 6 Espoo 02600 Finland
Hannes Tschofenig Nokia Siemens Networks Linnoitustie 6 Espoo 02600フィンランド
EMail: Hannes.Tschofenig@nsn.com
Xiaoming Fu (editor) University of Goettingen Computer Networks Group Goldschmidtstr. 7 Goettingen 37077 Germany
Xiaoming Fu(編集者)Goettingen大学コンピューターネットワークグループGoldschmidtstr。7 Goettingen 37077ドイツ
EMail: fu@cs.uni-goettingen.de
Cedric Aoun Consultant Paris, France
セドリックAONコンサルタントパリ、フランス
EMail: cedaoun@yahoo.fr
Elwyn B. Davies Folly Consulting Soham, Cambs, UK
Elwyn B. Davies Folly Consulting Soham、Cambs、UK
Phone: +44 7889 488 335 EMail: elwynd@dial.pipex.com