要約

  • RFC 869は、監視センターがホストを照会し、応答を対応づけ、状態や統計を取得し、発生したトラップを受け取る共通のメッセージ形式を定めた。ただし、すべての機器が同じ内容を報告するようにはしていない。
  • 1982年のRFC 823には、その違いがゲートウェイでどう表れるかが記録されている。インターフェース、隣接ゲートウェイ、到達可能なネットワーク、トラフィック・マトリクス、破棄カウンターを報告できたが、測定項目や制御データの形式は機器の種類に依存した。

分析

ゲートウェイの内側を遠隔から読めるようにする

Host Monitoring Protocol(HMP)は、機器が応答するかだけを確かめる仕組みではなかった。1982年のDARPA Internet Gateway仕様では、HMPでゲートウェイの測定値と状態を集める設計が説明されている。状態メッセージには、インターフェース、隣接するゲートウェイ、到達できるネットワークが含まれた。Host Traffic Matrixは、IPの送信元・宛先アドレスとプロトコル番号ごとにデータグラム数を記録した。スループット・メッセージには、受信、転送、送信、破棄のカウンターがあり、インターフェース別、隣接先別に分けられていた。

こうした値は、ゲートウェイの内部処理をネットワーク上の別の場所から観察する手がかりになった。マトリクスから通過した通信の組み合わせを確認でき、破棄カウンターからは機器内のどの処理で損失が生じたかを絞り込める。ただし、どの値も単独では、利用者のアプリケーションが宛先まで届いたことを証明しない。RFC 823は実装設計の記録であり、実際に稼働した機器の全数調査ではない。

共通化されたのはメッセージの枠だった

Robert HindenのRFC 869は1983年12月に発行され、先行文書のIEN 197を置き換えた。HMPは、コネクションレスでトランザクション指向のトランスポート・プロトコルとして定義された。ヘッダーにはシステム種別、メッセージ種別、シーケンス番号、「パスワードまたは返送シーケンス番号」のフィールド、チェックサムが置かれた。データの解釈はシステム種別とメッセージ種別の組み合わせで決まる。IMP、端末アクセス制御装置(TAC)、ゲートウェイなどの種別が定められ、HMPのIPプロトコル番号は20だった。

共通のヘッダーがあれば、監視センターとホストは照会や応答を識別できる。しかし、ゲートウェイのスループット・カウンターがあらゆるホストの状態を表す共通語になるわけではない。RFC 869は、メッセージ種別をシステムごとの必要に応じて定めるとしている。IMP、TAC、ゲートウェイのメッセージ形式は付録に例示されているが、導入部は、それらがHMP本体の一部ではないと明記する。標準化したのは、どう照会し、どう応答を対応づけるかだった。応答が何を意味するかは、依然として機器固有の形式に委ねられていた。

トラップ、状態、統計は同じ証拠ではない

RFC 869では監視の知能の多くをセンター側に置いた。ホストはデータを集め、照会に応じるか自発的に送る。要求したデータを確実に受け取る責任は監視センターにあった。状態や統計を取得するにはセンターがポーリングし、タイムアウトすれば同じ要求を再送できる。シーケンス番号は、応答を照会と結びつけたり、重複した統計メッセージを見分けたりするために使われた。統計値は収集期間ごとに保持され、応答が失われても再要求できる設計だった。

一方、トラップは別の扱いだった。イベントが起きるとホストがデータグラムを送るが、HMPは受領確認や再送を定めていない。トラップは速い通知にはなっても、イベント履歴が必ず届く保証にはならなかった。状態にも限界がある。監視センターはポーリングへの応答からホストの稼働を判断できるが、返事がなければ、ホスト、経路、照会、応答のどこで失敗したかは分からない。応答があっても、上位のサービスが正常とは限らない。

監視センターは機器を制御することもできた

ポーリングは読み取りだけではない。RFC 869ではパラメーターの取得や制御データの送信もできた。測定用のスイッチやタイマーの設定に加え、ホストを再起動するスイッチも例に挙がる。ホストはデータを処理して制御確認を返し、処理できなければエラーを返す。データの形式と意味はホスト固有だった。その確認が証明するのはプロトコル上の応答であり、利用者向けサービスがその後動いたことではない。

1990年のSNMP仕様RFC 1157は比較材料にはなるが、HMPからの直接的な継承を裏づけるものではない。RFC 1157はSimple Gateway Monitoring Protocol(SGMP)をSNMPの先行規格として挙げ、変数の読み取りと変更を中心に、限られたトラップを用いる構成を説明している。HMPはそれ自体の設計として読むべきだ。共通のメッセージ枠の上で、機器ごとの報告と制御データを扱えるようにした。

1983年4月の公式プロトコル一覧RFC 840はHMPを「Elective」と分類し、インターネット・ゲートウェイやTACの監視、小型の遠隔コンピューター上でのプロトコル実装のデバッグに使われていると記している。RFC 869も、ゲートウェイとTACでの利用を述べる一方、他のホスト向け実装は設計中としていた。これは当時の限定された利用を示す証拠であって、インターネット全体に普及した証拠ではない。歴史的に重要なのは、共通のメッセージ規則が遠隔観察を可能にしながら、報告内容の意味を送信元のホストに残した点だ。

出典