データグラムは、ネットワーク通信プロトコルの基本的な構成要素の 1 つです。データ パケットを転送するための構造化された形式を提供し、さまざまなネットワーク テクノロジ間で効率的かつ柔軟なデータ交換を可能にします。
データグラムの起源と最初の言及
データグラムの概念は、コンピュータ ネットワークの初期の頃にまで遡ります。「データグラム」という用語は、1970 年にフランスのコンピュータ科学者 Louis Pouzin によって初めて作られました。Pouzin は、インターネットの発展に影響を与えたフランスの先駆的なプロジェクトである CYCLADES ネットワークの設計にデータグラムを導入しました。
CYCLADES ネットワークは、エンドツーエンドの原理とコネクションレス ネットワーク層を実装した最初のネットワークの 1 つであったため、重要なネットワークでした。このネットワークでは、パケットまたはデータグラムを個別に送信でき、各パケットは送信元から送信先まで独自のパスを見つけることができました。
データグラム: 詳しく見る
コンピュータ ネットワークの分野では、データグラムとは、送信元と送信先のコンピュータ間の事前の交換に依存せずに、送信元から送信先にルーティングするのに十分な情報を運ぶスタンドアロンのデータ パケットです。つまり、データグラムは独立したデータ パケットであり、それぞれが個別に送信されます。
データグラムは、パケット交換ネットワークを介してデータを送信するために使用されるプロトコルであるインターネット プロトコル (IP) の主要コンポーネントです。各 IP データグラムには、ペイロード (実際のデータ) だけでなく、送信元および宛先 IP アドレスなどのヘッダー情報も含まれます。
データグラムは、データグラム サービス モデルと呼ばれるコネクションレス通信モードで使用されることに注意してください。このモデルでは、各メッセージは他のメッセージとは独立して扱われます。データ転送の開始前に送信元と送信先の間に専用パスが確立されるコネクション指向のサービス モデルとは異なり、送信前に専用パスを確立する必要はありません。
データグラムの構造と機能を理解する
IP データグラムは、次の 2 つの主要コンポーネントで構成されます。
- データグラム ヘッダー: 送信元と宛先の IP アドレス、使用されるプロトコル (TCP、UDP など)、データグラムの合計長、断片化と再構成を制御するためのその他のフラグなど、さまざまな制御情報が含まれます。
- ペイロード: これはデータグラムが運ぶ実際のデータです。通常は、トランスポート層データのカプセル化されたセグメントです。
データグラムがネットワーク経由で送信されると、宛先のネットワーク インターフェイス層で受信されます。ここで、IP ヘッダーが検査され、データグラムを次にどこに転送するかが決定されます。データグラムが最終宛先に到達すると、ペイロードが抽出され、OSI モデルの上位層に転送されてさらに処理されます。
データグラムの主な特徴
データグラム アプローチには、いくつかの定義的な機能があります。
- 独立: 各データグラムは他のデータグラムから独立しています。つまり、任意の順序で送受信できます。
- 自己完結型: データグラムは、送信元から送信先までのルーティングに必要なすべての情報を伝達します。
- 事前に設定されたパスはありません: データグラム ネットワークでは、データを送信する前にパスを確立する必要はありません。
- フレキシブル: 各データグラムは独自のルートを選択できるため、このモデルはより堅牢で、ネットワーク障害や輻輳に対して適応性が高くなります。
- 配送保証なし: データグラム ネットワークでは、配信の保証や配信失敗の通知は提供されません。
データグラムの種類
データグラムは、関連付けられているプロトコルに基づいて大まかに分類できます。最も一般的なものは次の 2 つです。
- IP データグラム: インターネット プロトコルで使用されるこれらのデータグラムは、インターネット経由でデータを送信するための主要なパケット形式を形成します。これらは、TCP (伝送制御プロトコル) と UDP (ユーザー データグラム プロトコル) の両方でデータ配信に使用されます。
- UDP データグラム: これらのデータグラムは、ユーザー データグラム プロトコルの一部です。UDP は、IP ネットワーク上でデータを交換するためのシンプルかつ高速な方法を提供します。TCP のような複雑さやオーバーヘッドはありませんが、配信、順序、エラー チェックは保証されません。
データグラムの使用法、課題、解決策
データグラムは、コンピュータ ネットワークのさまざまなアプリケーションで使用されています。ライブ ストリーミング、ビデオ会議、オンライン ゲームなど、速度が重要で、時々データが失われても許容できるシナリオでは特に便利です。
ただし、データグラムの使用には、特定の課題もあります。データグラムは配信を保証せず、パケットの順序も維持しないため、一部のデータグラムが失われたり、順序どおりに到着しなかったりする場合があります。これは通常、アプリケーション層で管理され、TCP などのプロトコルによって順序どおりの信頼性の高い配信が保証されます。
たとえば、UDP を使用してデータグラムを送信する場合、データグラムの受信を確認したり、到着時にデータグラムを並べ替えたりするための追加ロジックをアプリケーションに組み込むことができます。
データグラムと類似のネットワーク用語
- データグラムとパケット: データグラムはパケットの一種であり、具体的には、送信元から宛先にルーティングするのに十分な情報を運ぶ自己完結型の独立したデータエンティティです。
- データグラムとフレーム: フレームは、コンピュータ ネットワークにおけるデジタル データ転送単位です。データグラムとは異なり、フレームには同期情報、エラー チェック、制御データが含まれており、直接接続された次のネットワーク ノードに確実に転送できます。
データグラムと新興技術の未来
ネットワーク技術が進化するにつれ、データグラムの概念は、特に効率的で柔軟なデータ転送を必要とするモノのインターネット (IoT) やエッジ コンピューティングなどの技術の成長に伴い、引き続き重要になります。
さらに、データグラム トランスポート層セキュリティ (DTLS) の開発は、安全なデータグラム ベースのアプリケーションへの関心が高まっていることを示しています。DTLS は、UDP などのデータグラム プロトコルに対して、TLS (安全な Web ブラウジングで使用) と同じセキュリティ保証を提供します。
プロキシサーバーとデータグラム
プロキシ サーバーはデータグラムを処理し、他のサーバーからリソースを求めるクライアントからの要求の仲介役として機能します。セキュリティ、プライバシー、データ圧縮など、さまざまな機能を提供できます。
たとえば、プロキシ サーバーを使用すると、クライアントは他のネットワーク サービスに間接的にネットワーク接続できます。クライアントはプロキシ サーバーに接続し、別のサーバーで使用可能な接続、ファイル、またはその他のリソースを要求します。プロキシ サーバーは、指定されたサーバーに接続したり、キャッシュから提供したりして、リソースを提供します。
データグラムに関しては、プロキシ サーバーはデータグラムを傍受し、データを読み取って解釈し、データグラムの内容に基づいてさまざまなタスクを実行できます。これには、データグラムの再ルーティング、データの変更、またはデータ全体のブロックが含まれる場合があります。
関連リンク
データグラムと関連する概念の詳細については、次のリソースを参照してください。