JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Solaris のシステム管理 (IP サービス)     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I システム管理の概要: IP サービス

1.  Oracle Solaris TCP/IP プロトコル群 (概要)

このリリースの最新情報

TCP/IP プロトコル群の概要

プロトコル層および開放型相互接続モデル

OSI 参照モデル

TCP/IP プロトコルアーキテクチャーモデル

物理ネットワーク層

データリンク層

インターネット層

トランスポート層

アプリケーション層

TCP/IP プロトコルがデータ通信を行う方法

データのカプセル化と TCP/IP プロトコルスタック

アプリケーション層: 通信の発生

トランスポート層: データのカプセル化の開始

インターネット層: パケットの送信準備

データリンク層: フレーミングの実行

物理ネットワーク層: フレームの送受信

受信側ホストでのパケットの取り扱い

TCP/IP 内部トレース機能のサポート

TCP/IP とインターネットについてもっと詳しく知るには

TCP/IP に関するコンピュータ関連の書籍

TCP/IP とネットワーク設定に関する Web サイト

RFC と Internet Draft

パート II TCP/IP の管理

2.  TCP/IP ネットワークの計画 (手順)

3.  IPv6 の紹介(概要)

4.  IPv6 ネットワークの計画 (手順)

5.  TCP/IP ネットワークサービスと IPv4 アドレス指定の構成 (作業)

6.  ネットワークインタフェースの管理 (作業)

7.  IPv6 ネットワークの構成 (手順)

8.  TCP/IP ネットワークの管理 (手順)

9.  ネットワークの問題の障害追跡 (手順)

10.  TCP/IP と IPv4 の詳細 (リファレンス)

11.  IPv6 の詳細 (リファレンス)

パート III DHCP

12.  DHCP について (概要)

13.  DHCP サービスの使用計画 (手順)

14.  DHCP サービスの構成 (手順)

15.  DHCP の管理 (手順)

16.  DHCP クライアントの構成と管理

17.  DHCP の障害追跡 (リファレンス)

18.  DHCP コマンドと DHCP ファイル (リファレンス)

パート IV IP セキュリティー

19.  IP セキュリティーアーキテクチャー (概要)

20.  IPsec の構成 (手順)

21.  IP セキュリティーアーキテクチャー (リファレンス)

22.  インターネットキー交換 (概要)

23.  IKE の設定 (手順)

24.  インターネットキー交換 (リファレンス)

25.  Oracle Solaris の IP フィルタ (概要)

26.  IP フィルタ (手順)

パート V モバイル IP

27.  モバイル IP (概要)

28.  モバイル IP の管理 (手順)

29.  モバイル IP のファイルおよびコマンド (リファレンス)

パート VI IPMP

30.  IPMP の紹介 (概要)

31.  IPMP の管理 (手順)

パート VII IP サービス品質 (IPQoS)

32.  IPQoS の紹介 (概要)

33.  IPQoS 対応ネットワークの計画 (手順)

34.  IPQoS 構成ファイルの作成 (手順)

35.  IPQoS の起動と保守(手順)

36.  フローアカウンティングの使用と統計情報の収集 (手順)

37.  IPQoS の詳細 (リファレンス)

用語集

索引

TCP/IP プロトコルがデータ通信を行う方法

ユーザーが TCP/IP アプリケーション層プロトコルを使用するコマンドを発行すると、一連のイベントが開始されます。ユーザーのコマンドまたはメッセージはローカルシステム上の TCP/IP プロトコルスタックを通過します。次に、ネットワークメディアを通過して、リモートシステムのプロトコルに到達します。送信側ホストの各層のプロトコルにより、オリジナルのデータに情報が付加されていきます。

送信側ホストの各層のプロトコルは、受信側ホストのそれぞれの対等プロトコルとの間で対話します。図 1-1 に、この対話を示します。

データのカプセル化と TCP/IP プロトコルスタック

パケットとは、ネットワーク間で転送される情報の基本単位のことです。基本パケットは、送信側システムと受信側システムのアドレスを含むヘッダー、転送されるデータを含む本体、つまり「ペイロード」で構成されます。パケットが TCP/IP プロトコルスタックを通過するとき、各層のプロトコルは、基本ヘッダーにフィールドを追加したり、そこからフィールドを削除したりします。送信側システムのプロトコルがパケットヘッダーにデータを追加する場合、そのプロセスを「データのカプセル化」と呼びます。また、変更後のパケットを表す言葉は、次の図に示すように層によって異なります。

図 1-1 パケットが TCP/IP スタックを通過する方法

image:この図では、送信側ホストから受信側ホストへ、パケットが TCP/IP スタックを通過する方法を示しています。

この節では、パケットのライフサイクルについて要約します。ライフサイクルは、ユーザーがコマンドを発行するか、またはメッセージを送信することによって開始します。受信側システムの該当アプリケーションがパケットを受信するとライフサイクルは終了します。

アプリケーション層: 通信の発生

パケットの処理は、あるシステム上のユーザーがリモートシステムへのアクセスを必要とするメッセージの送信やコマンドの発行をしたときから始まります。アプリケーションプロトコルは、対応する TCP か UDP のどちらかのトランスポート層プロトコルがそのパケットを取り扱えるように、パケットの形式を設定します。

たとえば、あるユーザーが rlogin コマンドを発行して、リモートシステムにログインしようとしたとします (図 1-1 を参照)。rlogin コマンドは TCP トランスポート層プロトコルを使用します。TCP は、コマンド内の情報を含むデータをバイトストリーム形式で受け取るものと仮定しています。したがって、rlogin はこのデータを TCP ストリームとして送信します。

トランスポート層: データのカプセル化の開始

データがトランスポート層に到達すると、トランスポート層のプロトコルは、データのカプセル化プロセスを開始します。トランスポート層は、アプリケーションデータをトランスポートプロトコルのデータ単位にカプセル化します。

トランスポート層プロトコルは、転送ポート番号で区別される送信側アプリケーションと受信側アプリケーション間に仮想のデータフローを作成します。ポート番号は、メモリー内のデータ送受信専用の場所である「ポート」を識別します。さらに、トランスポートプロトコル層は、信頼性の高い順序どおりのデータ転送など、その他のサービスを提供する場合もあります。最終的な結果は、TCP、SCTP または UDP のどれで情報を処理したかによって異なります。

TCP のセグメンテーション

TCP はデータを確実に受信側ホストに送信できるため、「接続指向」のプロトコルと呼ばれます。図 1-1 は、TCP プロトコルがどのように rlogin コマンドからのストリームを受信するかを示しています。次に TCP は、アプリケーション層から受け取ったデータをセグメントに分割し、各セグメントにヘッダーを添付します。

セグメントヘッダーには、送信側と受信側のポート、セグメント順序に関する情報、「検査合計」と呼ばれるデータフィールドが含まれています。両方のホストの TCP プロトコルがこの検査合計データを使用して、データがエラーなしに転送されたかどうかを判別します。

TCP 接続の確立

TCP は、受信側システムでデータを受信する準備ができているかどうかを、セグメントを使用して判断します。まず、送信側 TCP は「SYN」というセグメントを受信側ホストの TCP プロトコルに送信して、接続を確立することを知らせます。次に、受信側 TCP は「ACK」というセグメントを戻して、セグメントを正しく受信したことを知らせます。送信側 TCP は新たな ACK セグメントを送信して、それからデータの送信を開始します。このような制御情報の交換を「3 相ハンドシェーク」と呼びます。

UDP パケット

UDPは「接続のない」プロトコルです。TCP の場合と異なり、UDP は、受信側ホストにデータが到達したかどうかを確認しません。その代わりに、UDP は、アプリケーション層から受信したメッセージを「UDP パケット」の形式に設定します。UDP は、各パケットにヘッダーを付加します。ヘッダーには、送信側ポートと受信側ポート、パケットの長さを示すフィールド、検査合計が含まれます。

送信側の UDP プロセスは、受信側ホストのピア UDP プロセスにパケットを送信しようとします。アプリケーション層は、受信側 UDP プロセスが、パケットを受信したことを示す肯定応答を戻すかどうかを判別します。UDP は受領の通知を必要としません。UDP は 3 相ハンドシェークを使用しません。

インターネット層: パケットの送信準備

トランスポートプロトコル TCP、UDP、および SCTP がセグメントとパケットをインターネット層に渡すと、これらのセグメントとパケットはインターネット層の IP プロトコルによって処理されます。IP は、これらのセグメントとパケットを「IP データグラム」と呼ばれる単位に形式化して、送信できるように準備します。次に、IP はデータグラムの IP アドレスを判別して、受信側ホストへの効率的な配送ができるようにします。

IP データグラム

IP は、TCP や UDP が追加した情報に加えて、「IP ヘッダー」をセグメントまたはパケットのヘッダーに添付します。 IP ヘッダーには、送信側ホストと受信側ホストの IP アドレス、データグラムの長さ、データグラムのシーケンス番号が含まれます。これらの情報が付加されるのは、データグラムがネットワークパケットとしての許容バイトサイズを超過してフラグメント化が必要になった場合に備えるためです。

データリンク層: フレーミングの実行

データリンク層のプロトコル (PPP など) は、IP データグラムを「フレーム」という形式に設定します。これらのプロトコルは、第 3 のヘッダーとフッターを付加することにより、データグラムを「フレーミング」します。フレームヘッダーには、フレームがネットワークメディアを通過するときのエラーを検査するための、「巡回冗長検査」(CRC) フィールドが含まれています。次に、データリンク層は物理層にフレームを渡します。

物理ネットワーク層: フレームの送受信

送信側ホストの物理ネットワーク層は、フレームを受信し、IP アドレスをネットワークメディアに適切なハードウェアアドレスに変換します。次に、物理ネットワーク層は、フレームをネットワークメディアに送り出します。

受信側ホストでのパケットの取り扱い

受信側ホストに到着したパケットは、送信されたときとは逆の順番で、TCP/IP プロトコルスタックを通り抜けます。このパスを図 1-1 に示します。受信側ホストの各プロトコルは、送信側ホストの対等プロトコルがパケットに付加したヘッダー情報を取り除きます。この処理の順序を次に示します。

  1. 物理ネットワーク層は、フレーム形式のパケットを受信します。パケットの CRC を計算し、データリンク層にフレームを送信します。

  2. データリンク層は、フレームの CRC が正しいことを確認すると、フレームのヘッダーとその CRC を取り除きます。最後に、データリンクプロトコルは、インターネット層にフレームを送ります。

  3. インターネット層は、ヘッダーにある情報を読み取って、転送を識別します。そして、パケットがフラグメントであるかどうかを判別します。その転送がフラグメントである場合は、IP は、フラグメントを組み立て直して、オリジナルのデータグラムに戻します。そして、IP ヘッダーを取り除いてから、データグラムをトランスポート層プロトコルに渡します。

  4. トランスポート層 (TCP、SCTP および UDP) は、ヘッダーを読み取って、どのアプリケーション層プロトコルでデータを受信する必要があるかを決定します。次に、TCP、SCTP または UDP は、自分に関連するヘッダーを取り除き、メッセージまたはストリームを受信アプリケーションに送信します。

  5. アプリケーション層はメッセージを受信して、送信側ホストから要求された操作を実行します。

TCP/IP 内部トレース機能のサポート

TCP/IP は、RST パケットにより接続が終了したときに、TCP 通信のログを記録することで内部トレースをサポートします。RST パケットが送信または受信されたときに、直前に送受信された最大 10 パケットの情報が接続情報とともにログに記録されます。