3 Minutes NetWorking
No.51

3Minutes NetWorking

第51回レイヤ7 概要

■ 最上位のレイヤ

インター博士

さて、いよいよ最後のレイヤ。レイヤ7だ。

ネット助手

ついにたどり着きましたね。

インター博士

あぁ。長かったな。

ネット助手

えぇ、色んなことがありましたね。

インター博士

しみじみ。

ネット助手

しみじみ。

インター博士

…。
こう、回想してみると、なんか腹立ってきた

ネット助手

なんですか、そりゃ?

インター博士

いやな。
神は何故ネット君を我に使わしたもうたか考えてな。

ネット助手

神って、おおげさな。

インター博士

これも試練なのかもしれないな。
うむ、ネット君。試練なのだよ。そう考えれば君のナイスな記憶力にも理解できる。

ネット助手

えへへ。ナイスですか?

インター博士

褒めてねぇ

ネット助手

はぅっ。

インター博士

ともかく、最後のレイヤだ。
今までのレイヤは上に他のレイヤがいて、上のレイヤにネットワーク・サービスを提供してきたが、レイヤ7は上にユーザアプリケーションしかいない。

ネット助手

ははぁ。
ということは、レイヤ7は上のレイヤの代わりにユーザアプリケーションにネットワーク・サービスを提供するレイヤってことになるんですか?

インター博士

ほほぅ。なかなか察しがいいな。
その通りだ。

ネット助手

やりぃ。

インター博士

ということで、レイヤ7の説明は以上。終了。

ネット助手

えぇっ。もう終わりですか?

■ クライアント・サーバ

インター博士

終わってもいいが、まぁ、もうちょっと説明しよう。
ほとんどのネットワーク対応アプリケーションはクライアント・サーバ型だ。クライアントとサーバについては前にちょっと話したな。

ネット助手

えぇ〜っと。
サービスを要求するのがクライアントで、サービスを提供するのがサーバでしたっけ。

インター博士

うむ、その理解は間違ってない。
つまりクライアントとサーバ間のデータ転送という形なわけだな。これを行うのがレイヤ7の役割というわけだ。

ネット助手

ははぁ、なんかピンときませんけど。

インター博士

つまり、レイヤ6以下ではどちらが要求する側で、どちらが応答する側などまったく関係ないわけだ。
どちらでも同じようにTCPかUDPを使い、どちらでもIPを使い、どちらでもイーサネットを使う。

ネット助手

う〜ん、TCP・UDPやIPは確かにどちらでも使いますけど、要求側と応答側ってレイヤ6以下でもあるじゃないですか、ほらTCPのスリーウェイハンドシェイクとか、確認応答とか。

インター博士

スリーウェイハンドシェイクは「どちらから接続を要求したか」で確かに違うが、その後のデータ転送そのものには「どちらから接続を要求したか」はまったく影響しない。

ネット助手

じゃあ、確認応答は?

インター博士

確認応答は名前のとおり、データを受け取った「確認」のために使うもので、サーバだろうがクライアントだろうがデータを送ってもらったら確認応答を返すことになる。

ネット助手

う〜ん。ICMPのEcho要求・応答とか、ARP要求・応答もですか?

インター博士

そうだ。「要求」がきたから「応答」を返す。それだけだ。
だが、クライアント・サーバ型はもとから「クライアント」「サーバ」という役割が割り振られている

ネット助手

「要求する側」と「要求される側」ですね。

インター博士

うむ。多くの場合、「クライアント」のアプリケーションと「サーバ」のアプリケーションは別物だ。
一番使われている例としては、Webサイトの閲覧があるな。「クライアント」はブラウザで…。

ネット助手

Internet Explorerとかですね。
「サーバ」はWebサーバアプリケーションって奴ですよね。

インター博士

そうだ。ApacheIISがよく使われるサーバアプリケーションだな。
TelnetやFTP、電子メールなどでも「クライアント」アプリケーションと「サーバ」アプリケーションは明確に区別されている。

ネット助手

へへぇ。他のはどんなサーバアプリケーションなんです?

インター博士

まぁ、それは個々の時に説明しよう。
ともかく、このようにクライアント要求サーバ応答という形でデータ転送が行われる、ということだ。

[Figure52-01:クライアントとサーバ]

ネット助手

なるほどです。

インター博士

ただし、注意して欲しいのは、あくまでも「クライアント」と「サーバ」という役割はアプリケーションの役割であって、ホストの役割ではないということだ。

ネット助手

どういうことです?

インター博士

つまり「A」というホストでWebサーバアプリケーションが実行されていて「サーバ」となっていたとしても、「B」というホストのWebサーバアプリケーションに対してブラウザで要求した場合は「クライアント」になる、ということだ。

ネット助手

アプリケーション単位での役割ってことですか?

インター博士

うむ。そういうことだ。
レイヤ4より上はアプリケーション単位で考える、という話はしたな。

ネット助手

そうでした。エンドツーエンド、アプリケーション間の接続でしたよね。

■ リダイレクタ

インター博士

さて、もう1つ話しておこう。
Webや電子メールはネットワーク対応アプリケーションだ。もとからネットワークが前提で考えられている。

ネット助手

ネットワークのない電子メールってなんか寂しいですね。

インター博士

だが、その成立にネットワークが関係ないアプリケーションだってある。例えばワープロや表計算ソフト、さらに言えばOSのファイル操作もそうだ。
これらのソフトでもネットワークが必要なことがある。

ネット助手

ワープロソフトっていうと、ワードとかですよね。
ネットワークって必要ですっけ?

インター博士

例えば、ネット君のPCから、私のPCにあるワードのファイルを開くこととかあるだろう?

ネット助手

あぁ、ありますね。
博士のPCの共有フォルダにある文書とか、データとか必要なときがありますから。

インター博士

そうだろう。つまりこの時はワードがクライアントアプリケーションになるわけだな。

ネット助手

あ、あぁ。なるほど。そういうことですか。

インター博士

うむ、だがもちろんワードはネットワークに対応していない。
このような時に登場するのが、リダイレクタだ。

ネット助手

りだいれくた?

インター博士

redirecter。つまりredirect(転送)する者、だな。

ネット助手

そういえば、第34回のICMPで「ICMPリダイレクトメッセージ」ってのがありましたね。

インター博士

うむ。ICMPリダイレクトメッセージはパケットの転送先を変更する通知だったな。
このリダイレクタは、通常ネットワークを使えないワープロソフトなどにネットワーク機能を提供して、クライアントになれるようにするという役割を持っている。

ネット助手

ネットワーク機能を提供…。

インター博士

一番わかりやすい例は、Windowsのファイル共有だな。

[Figure52-02:リダイレクタ] 

ネット助手

ファイルを自分のハードディスクや、他のホストに転送するんですね。

インター博士

うむ。なので「転送するもの」でリダイレクタ、だ。
例ではファイル共有だったが、プリンタへの出力などもリダイレクタの役目だ。

ネット助手

ははぁ。

インター博士

この場合は、「クライアント」はワープロソフトなどのアプリケーション + リダイレクタ、という形になる。
「サーバ」はOSが持つのサーバ・ドライバというプログラムになる。

ネット助手

受け取ったサーバは「応答」を返さないんですか?

インター博士

いや、「データを保存・プリントしてください」というクライアントの要求に対して、サーバは「データを保存しました(失敗しました)・プリントしました(できませんでした)」という応答を返している。露骨に結果がわからないだけで、ちゃんと応答は返している。

■ ネットワークアプリケーション

インター博士

さて、元からネットワーク対応のアプリケーション、リダイレクタを使った間接的にネットワークを利用するアプリケーション、どちらも説明したわけだ。

ネット助手

はい。

インター博士

というわけで、これからしばらくはより詳細な話をしていこうと思う。
主にネットワーク対応のアプリケーションの話だ。

ネット助手

というと、Webとか、FTPとかの話ですか?

インター博士

うむ。
それらのアプリケーションで使われているプロトコルの話を中心にやってく。HTTPやFTP、SMTP、Telnetなどだな。

ネット助手

なんか実践的な話になりそうですね。

インター博士

うむ、目に見える形の話が多くなることは間違いない。
というわけで、次回は…。

ネット助手

やはり一番人気のHTTPですかっ?

インター博士

OSIレイヤのまとめを話すことにする。

ネット助手

…。
あれ? ネットワークアプリケーションの話じゃなかったんですか?

インター博士

焦るな、ネット君。それはその次だ。

ネット助手

うぅぅ、肩透かし食わされた気分…。
3分間ネットワーキングでした〜♪

ユーザアプリケーション
[User Application]
ネットワークを必要とするアプリケーションのこと。ワープロやスプレッドシート、ファイルサービス(WindowsではExplorer)などが当てはまる。
ブラウザ
[Browser]
Microsoft社のInternet Explorer、Netscape社のNetscape Navigator、Opera Software社のOperaなどがメジャー。
Apache
読みは「アパッチ」。
フリーのサーバアプリケーションで、UNIX系OSでよく使われている。(Windows版もある)
Webサーバとしてはもっとも使われている。
IIS
[Internet Information Service]
Windows2000サーバ以降がデフォルトでもつサーバアプリケーション。
Web、FTP、SMTPが統合したサーバアプリでもある。
なお、Windows NTでは同じIISでもInternet Information [Server]なので注意(中身は変わらんけど)。
ワード
[Word]
Microsoft Officeのワープロソフト。
リダイレクタ
[redirecter]
ファイルシステムドライバ
ファイルの処理を行うドライバ(プログラム)。
Windowsの場合、NT系列のNTFS、9x系列のFATなど。CDに対してはCDFSが使われる。
ネット助手ネット君の今日のポイント
  • レイヤ7はユーザアプリケーションにネットワークサービスを提供する。
  • クライアント・サーバ型のデータ転送を行う。

3 Minutes NetWorking No.51

管理人:aji-ssz(at)selene.is.dream.jp