メインコンテンツまでスキップ

2. 一般的な問題 (GENERAL ISSUES)

このセクションでは、すべてのアプリケーションおよびサポートプロトコルに関連するいくつかのトピックについて説明します。

2.1 ホスト名と番号 (Host Names and Numbers)

インターネットシステムには、階層的なホスト名システムであるドメイン名システム (Domain Name System, DNS) があります。すべてのインターネットホストには1つ以上のIPアドレスがあり、1つ以上の名前を持つことができます。

ホスト名は、ピリオドで区切られた「ラベル」のシーケンスで構成されます。例:venera.isi.edu。最右のラベルは「トップレベルドメイン (Top-Level Domain, TLD)」と呼ばれます。

要件 (Requirements)

  • ホスト名はすべて数値のラベルで構成されてはなりません (MUST NOT)。
  • ホストソフトウェアは少なくとも255文字の長さのホスト名を処理しなければなりません (MUST)。
  • ホストソフトウェアは、DNS仕様のものを超えて、ホスト名の形式や内容について何の仮定も行ってはなりません (MUST NOT)。

2.2 ドメイン名サービスの使用 (Using Domain Name Service)

アプリケーションソフトウェアは、与えられたホスト名が複数のIPアドレスに解決される状況に対処できなければなりません (MUST)。この状況は、いくつかの状況で発生します:

  • 負荷分散 (Load Sharing):複数のホストが、負荷分散のために同じ名前で同じサービスを提供する場合があります。
  • マルチホーミング (Multihoming):単一のホストが異なるIPアドレスを持つ複数のネットワークインターフェースを持つ場合があります。

名前解決 (Name Resolution)

アプリケーションがホスト名をIPアドレスに解決する必要がある場合、通常はドメイン名システム (DNS) を使用します。アプリケーションは以下を行うべきです (SHOULD):

  • 最初の接続試行が失敗した場合、複数のアドレスを試みる
  • 将来の接続のために成功したアドレスを記憶する
  • 適切なタイムアウトを実装する

キャッシング (Caching)

アプリケーションは解決されたアドレスをキャッシュしても構いませんが (MAY)、DNSから返される生存時間 (Time-To-Live, TTL) 値を尊重しなければなりません (MUST)。

2.3 マルチホームホスト上のアプリケーション (Applications on Multihomed Hosts)

マルチホームホスト上のアプリケーションが接続を作成する場合、IP送信元アドレスはホストのIPアドレスの1つでなければなりません (MUST)。

複数のIPアドレスを持つマルチホームホストの場合:

  • アプリケーションは、ユーザーがどのローカルIPアドレスを使用するかを選択できるようにしても構いません (MAY)
  • 特定のアドレスが選択されていない場合、IP層はルーティングに基づいて送信元アドレスを選択します

2.4 サービスタイプ (Type-of-Service)

アプリケーションプロトコルは、アプリケーションがTCP接続またはUDP送信のためのIPサービスタイプ (Type-of-Service, TOS) を指定するメカニズムを提供すべきです (SHOULD)。

TOSフィールドは、アプリケーションが特定の処理特性を要求することを可能にします:

  • 低遅延 (Low delay)(遅延を最小化)
  • 高スループット (High throughput)(スループットを最大化)
  • 高信頼性 (High reliability)(信頼性を最大化)
  • 低コスト (Low cost)(金銭的コストを最小化)

2.5 一般的なアプリケーション要件の概要 (GENERAL APPLICATION REQUIREMENTS SUMMARY)

機能セクションMustShouldMayNot
255文字以上のホスト名を処理2.1x
ホスト名はすべて数値ではない2.1x
名前ごとに複数のアドレスをサポート2.2x
失敗時に複数のアドレスを試みる2.2x
DNS TTL値を尊重する2.2x
TOS指定を許可する2.4x