RFC 2 - ホストソフトウェア
- ステータス: 不明
- 発行日: 1969年4月
- ストリーム: Legacy
- エラッタ: RFC 2 エラッタ
文書情報
- RFC Number: 2
- Title: Host Software
- Authors: Bill Duvall (SRI)
- Date: April 1969
- Category: Unknown
注: 原本の第 1 ページは欠落している。アーカイブされたソースは、タイトル行および冒頭のテキストがあったはずの箇所に、プレースホルダ [unknown title] および [page 1 missing] を保持している。上に示したタイトルと著者は、RFC Editor のカタログおよび RFC 3 から取られている。RFC 3 は、RFC 1 と RFC 2 の双方のタイトルが HOST Software であることを記録している。
概要
RFC 2 は、ARPANET のために計画されたホストソフトウェアを概説している。それは 3 種類のリンク — 制御リンク、プライマリ・リンク、補助リンク — を定義し、それぞれがネットワーク・モニタを通じてどのように確立、維持、解放されるかを記述している。次に、メッセージに適用されるエラーチェック、入力と出力を処理しネットワーク状態を追跡するモニタ機能、ユーザー・プログラムがリンクを開いて使用するために呼び出すエグゼクティブ・プリミティブ、そして 2 台のホストを通信状態に導くために計画された初期チェックアウト手順を規定している。
目次
- 1. リンク
- 1a. 制御リンク
- 1b. プライマリ・リンク
- 1b1. 所定の HOST 上のユーザーは、ネットワーク上の他の各 HOST に対してちょうど 1 本のプライマリ・リンクを持てる。
- 1b1a. プライマリ・リンクは、HOST ユーザーと別の HOST との間に確立される最初のリンクでなければならない。
- 1b1b. プライマリ・リンクはユーザーに対してグローバルである。すなわち、ユーザー・プログラムはプライマリ・リンクを開くことができ、そのリンクは明示的に閉じられるまで開いたままである。
- 1b1c. プライマリ・リンクは、遠隔 HOST によって、通常のデータフォンまたは直通回線を介して接続されたテレタイプのように扱われる。すなわち、遠隔 HOST はプライマリ・リンクを通常のテレタイプ・ユーザーと見なす。
- 1b1d. プライマリ・リンクは、(ユーザー) 制御情報を遠隔 HOST に渡すために使用される。例えば、遠隔ホストへのログイン (遠隔ホストの標準ログイン手順を使用) に使用される。
- 1b1. 所定の HOST 上のユーザーは、ネットワーク上の他の各 HOST に対してちょうど 1 本のプライマリ・リンクを持てる。
- 1c. 補助リンク
- 2. リンクの操作
- 2a. 制御リンク
- 2b. プライマリ・リンク
- 2b1. プライマリ・リンクは、ユーザーまたはエグゼクティブによるモニタへの呼び出しによって確立される。
- 2b1a. リンク先の HOST のネットワーク識別番号を呼び出しに含めなければならない。
- 2b1b. 特定の HOST に対して複数のプライマリ・リンクを確立しようとする試みはエラーと見なされ、要求はデフォルト処理される。
- 2b1c. 標準伝送文字セット
- 2b1d. (get link) HOST A から HOST B へのリンクを確立するためのプロトコルは次のとおりである。
- 2b1d1. A は、自身の割り当てテーブルから、HOST B への現在未使用のリンクを選択する。
- 2b1d2. A は、リンク 0 を介して B にリンク接続メッセージを送信する。
- 2b1d3. 次に A は以下を待つ:
- 2b1d4. B からそのリンクに関する通信を受信した場合、それが次のいずれであるかを調べるために検査される:
- 2b1d4a. B からのそのリンクの検証。
- 2b1d4a1. これは、モニタから要求者への成功した復帰をもたらす。リンク番号が要求者に返され、リンクが確立される。
- 2b1d4b. B からのそのリンクを確立する要求。これは、B が A とは独立に A と同じリンクを確立しようとしていることを意味する。
- 2b1d4b1. A のネットワーク ID 番号 (Na) が B のそれ (Nb) より大きい場合、A はその要求を無視し、B からのリンクの確認を待ち続ける。
- 2b1d4b2. 一方、Na<Nb の場合、A は:
- 2b1d4b2a. B からのリンク確立要求を受け入れ、
- 2b1d4b2b. 要求に応じて検証を送信し、
- 2b1d4b2c. 自身の要求を中止し、割り当てプロセスを繰り返す。
- 2b1d4c. B からのそのリンクに関するその他の通信。
- 2b1d4c1. これはエラー状態であり、次のいずれかを意味する:
- 2b1d4c1a. A が、以前に割り当てられたリンクを割り当て用に選択するという誤りを犯した、
- 2b1d4c1b. B が未割り当てのリンク上で情報を送信している、
- 2b1d4c1c. または、B から A への割り当てに関するメッセージが伝送中に文字化けした。
- 2b1d4c2. この場合、A の行動は次のとおりである:
- 2b1d4c2a. 試みられた接続に関して B にリンク切断メッセージを送信する
- 2b1d4c2b. HOST B の状態がエラーであると見なし、パニック・ルーチン (エラー) への移行を開始する。
- 2b1d5. 規定の時間内に B からそのリンクに関する通信を受信しない場合、HOST B はエラー状態にあると見なされる。
- 2b1. プライマリ・リンクは、ユーザーまたはエグゼクティブによるモニタへの呼び出しによって確立される。
- 2c. 補助リンク
- 3. エラーチェック
- 3a. ネットワーク上で送信されるすべてのメッセージは、ソフトウェアおよびハードウェアのバグの切り分けを助けるために、当初はエラーチェックされる。
- 3b. 各メッセージにはチェックサムが関連付けられ、それは順序に依存する。
- 3b1. 次に挙げるアルゴリズムは、使用される可能性のあるものの一つである:
- 3b1a. 長さ 1 のチェックサムは、検査対象の文字列中の連続するフィールドを直列に加算し、その和の最下位ビット位置に桁上げビットを加えることによって形成できる。
- 3b1b. メッセージがフィールドのグループに分割され、各グループがこの方法でチェックサムされる場合、順序に依存するチェックサムは、各グループのチェックサムをシフトし、それを (逐次) 次のグループのチェックサムに加算することによって得られる。
- 3b1. 次に挙げるアルゴリズムは、使用される可能性のあるものの一つである:
- 3c. 2 つの HOST が、すべてのメッセージの肯定的な検証を要求するモードに入れる機能が提供される。この検証は制御リンクを介して送信される。
- 4. モニタ機能
- 5. エグゼクティブ・プリミティブ
- 6. 初期チェックアウト
関連リソース
- 公式テキスト: RFC 2
- DataTracker: RFC 2 Info
- エラッタ: RFC Editor Errata