いま述べたNetBEUIは、MS-DOSやWindowsのネットワーク用プロトコルとして、一時は広く利用されていた。しかしそのあと、TCP/IPプロトコルをベースとするインターネットが広く普及し、外部のインターネット接続だけでなく、社内LANでもTCP/IPを使用するのが一般化したため、最近ではあまり使われなくなってしまった。NetBEUIは、最新のWindows XPでも、選択可能なネットワーク・プロトコルの1つとして提供されている。ただしWindows 2000やWindows XPでは、ネットワーク・デバイスを追加しても、デフォルトではNetBEUIプロトコルはインストールされず、TCP/IPだけがインストールされるようになっている。それでもWindows 2000では選択可能なプロトコル一覧にNetBEUIが用意されているので、NetBEUIが必要ならば(Windows 9xやWindows NT時代にはよく使われていた)、手動でNetBEUIを追加すればよいだろう。Windows XPでは、選択可能なプロトコル一覧からも削除されてしまったが、Windows XPのインストールCDには収録されているので、必要ならこれをインストールすることができる(具体的な方法は「Windows TIPS:Windows XPでNetBEUIプロトコルを利用する方法」を参照)。
現在のWindowsネットワークの構成をまとめると次のようになる。
NetBIOSからNetBEUIへと発展したWindowsネットワークだが、紆余曲折があって現在はこのような構成になっている。まず大切なことは、前述したとおり、ネットワーク・システムの内部は機能分類がなされ、それらがこのように階層構造をとっているということだ。詳しい解説は後日に譲るとして、まずは大ざっぱにこの図を理解しておこう。
最も上にある「Windowsネットワーク・サービス」は、Windowsネットワークにおいて、透過的なファイルとプリンタの共有を可能にするためのサービスである。本稿の最初に述べたとおり、「マイ ネットワーク」のネットワーク一覧からコンピュータ・アイコンを選び、そのコンピュータがネットワークに公開している共有資源を表示し、それをあたかもローカルに接続されたディスクやプリンタのように使えるのは、このサービスが存在するからだ。実際には、ファイルやプリンタなどの資源を外部に対して公開する「Server」サービスと、公開された資源を利用する「Workstation」サービスの2つから構成されている。
「Windowsネットワーク・サービス」は、NetBIOSインターフェイスを使用して、下位のトランスポート層プロトコルを制御する。トランスポート層とは、一般的なネットワークの階層構造のモデルとして、ISOとCCITTが決定したOSI参照モデルの1つで、通信するコンピュータ上のアプリケーション同士がメッセージを正しく交換できるように、転送確認やエラー訂正などの機能を持つレイヤとされている。
この際、トランスポート層の詳細はあまり重要ではない。重要なのは、トランポート層として、「NetBEUI」だけでなく、「TCP/IP」、「NWLink IPX/SPX」という3つのプロトコルが使用可能で、それらは代替可能な関係にあるということだ。上位の「Windowsネットワーク・サービス」は、下位のトランポート層プロトコルとして何が使われているかを意識することなく、処理を行うことができる。ここでNWLink IPX/SPXというのは、MS-DOS時代にPCネットワーク用OSとして広く普及したNovell社のNetWareが使用していたプロトコルである。現在ではあまり使われなくなったが、やはり最新のWindows XPでもなおプロトコル・ドライバは提供されている。このうち現在では、TCP/IPが標準的に使われるようになったことはすでに述べた。
トランスポート層ドライバの下位には、「NDIS(Network Driver Interface Specification)」が位置している。NDISは、マイクロソフト系のOSで使用されるネットワーク・カード用のドライバ・インターフェイスである。図から分かるとおり、トランスポート層の各プロトコル・ドライバは、同じNDISドライバを使うことができる。従って1つのネットワーク・カードと、NDISドライバを使用しながら、異なるトランスポート層のプロトコル・ドライバを組み合わせることが可能だ。必要なら、異なるトランスポート層ドライバを同時にコンピュータにインストールして使うこともできる。例えば次の画面は、Windows 2000に付属する3つのトランスポート層ドライバをすべてインストールし、ネットワークの詳細設定を表示したところである。
ここで表示されている「Microsoftネットワーク用ファイルとプリンタ共有」と「Microsoft Network用クライアント」は、それぞれ共有フォルダ/プリンタをネットワークに公開するためのサービス、ネットワークに公開された資源を利用するためのSMBベースのサービスで、前出の図の「Windowsネットワーク・サービス」に位置付けられるものだ。
そして各Windowsネットワーク・サービス以下に、3つのプロトコル・ドライバが表示されている。この画面のコンピュータでは、IPX/SPX、NetBEUI、TCP/IPの各プロトコルが並列してインストールされているので、このうちいずれのプロトコルを使ってネットワークにアクセスすることもできる。各項目の左端にあるチェック・ボックスをオンにすると、そのサービスやプロトコルが有効になり、使用可能になる。2台のコンピュータが通信するためには、相手側にも同じプロトコルが導入されている必要がある。3つのプロトコルの順番を入れ替えることにより、どのプロトコルを優先して利用するかを変更することができる。詳細については「TIPS―ネットワークのバインド順序を制御する方法」を参照のこと。
もちろん、必要なら、各プロトコルを使用したネットワーク・サービス(共有フォルダなど)を同時にアクセスすることも可能である。これらの処理は、1つのネットワーク・カードを経由して通信が行われる。このようなプロトコルの自由な組み合わせが可能になったのも、ネットワーク・システムが階層的に分類され、各階層の機能が整理されて、上位側と下位側の呼び出しインターフェイスが明確に決定されたからである。ただしいま述べたとおり、通信を行うには、資源を提供している側と利用する側の双方に、同じ種類のプロトコルが導入されていなければならない(例えば片方がNetBEUIのみで、他方がTCP/IPのみだと通信できない)。
今回は、ユーザーから見た最もシンプルなWindowsネットワークの機能を再確認し、それを可能にしているWindowsネットワーク・システムの舞台裏に一歩踏み込んだ。そして高機能な最新のWindowsネットワークも、実際には20年も前に開発されたNetBIOSがいまなおベースになっているということ、ネットワークの機能性や柔軟性、相互運用性を高めるために、最初は渾然一体となっていたネットワーク・システムの内部が階層的に整理され、現在では必要に応じて異なるプロトコルを組み合わせて使用可能であることを説明した。
次回は、さらにWindowsネットワーク・システムの舞台裏の奥へと歩を進めてみよう。
Copyright© Digital Advantage Corp. All Rights Reserved.