Part2では,パソコン内部に目を向けて,IPの役割を具体的に解説していこう。

 Webブラウザや電子メール・ソフトなどのアプリケーションを使って,データを送ることを考えてみよう(図1)。

図1●TCP/IPソフトがIPパケットをMACフレームに載せて送り出す<br>まず,パソコンのアプリケーションがデータを送り出す。次に,TCP/IPソフトがデータを分割し,それにIPアドレスを添付してIPパケットを作る。これをMACフレームに入れてネットワークに送り出すのである。
図1●TCP/IPソフトがIPパケットをMACフレームに載せて送り出す
まず,パソコンのアプリケーションがデータを送り出す。次に,TCP/IPソフトがデータを分割し,それにIPアドレスを添付してIPパケットを作る。これをMACフレームに入れてネットワークに送り出すのである。
[画像のクリックで拡大表示]

 まず,アプリケーションは送りたいデータを作り,TCP/IPソフトに渡す。TCP/IPソフトはTCP/IP関連プロトコルの処理機能を持つプログラムで,OSの一部として組み込まれている。

 TCP/IPソフトの役割は主に三つある。(1)アプリケーションから受け取ったデータからIPパケットを作ること。(2)IPパケットをあて先に届けるための経路を見つけること,具体的には経路にある中継ルーターのIPアドレスを見つけること。(3)その中継ルーターのIPアドレスに対応したMACアドレスを手に入れることである。

 Part2では(1)と(2),すなわちIPパケットを作り,経路を見つけるところまでを説明しよう。(3)のMACアドレスを手に入れる手順はPart3で説明する。

TCPかUDPかはアプリで決まる

 TCP/IPというプロトコル群は,そのデータをやり取りするアプリケーション別の階層構造になっている(図2)。一番上の階層に当たるプロトコルは,アプリケーションと密接に関係している。例えばWebブラウザとWebサーバーは「HTTP」というプロトコルで通信することが決められているし,電子メール・ソフトがメール・サーバーにメールを送るときは「SMTP」を使うことになっている。これらのアプリケーション・プロトコルはメッセージ形式が決まっており,アプリケーションはそれらのメッセージを交換することでデータをやり取りする。

図2●TCP/IPプロトコル群とLAN/WANの関係<br>通信プロトコルは,このような階層構造になるように設計されている。TCP/IPという言葉はこれらのTCP/IPプロトコル群全体を意味することもある。
図2●TCP/IPプロトコル群とLAN/WANの関係
通信プロトコルは,このような階層構造になるように設計されている。TCP/IPという言葉はこれらのTCP/IPプロトコル群全体を意味することもある。
[画像のクリックで拡大表示]

 アプリケーションはメッセージを作成して,TCP/IPソフトに渡す。メッセージをTCPUDPのどちらで送るかは,そのアプリケーションごとに決まっている。

Q.1 TCP/IPソフトは必ずOSに付いているか?
いいえ。OSが持っているとは限りません。例えば,Windows3.1はTCP/IPソフトを持っていなかったので,IPを使うときにはTCP/IPソフトをインストールする必要がありました。ただし最新のパソコンOSなら,ほとんどの製品が標準装備しています。

WANならPPPが
IPパケットを運ぶ

 TCPかUDPかが決まれば,あとはIPパケットにするだけ。TCPもUDPもIPパケットの一部になる。あて先IPアドレスと送信元IPアドレスが付けられ,IPパケットが完成する。

 完成したIPパケットは,パソコンに接続しているネットワークの種類に応じたさまざまな伝送プロトコルで運ばれる。LANの場合はMACフレームとなる。

 一方,モデムやTA(ターミナル・アダプタ)を使ってダイヤルアップ接続するときは,PPPと呼ばれるプロトコルが使われる。PPPにもデータを運ぶための独自のフレームがある。PPPはIPパケットをこの中に入れてから,通信回線に送り出す。