DOS/Win3.1でネットワーク
参考としているページ
僕なりのまとめ&メモ
0.プロトコル
ネットワークプロトコルにはTCP/IPとNetBEUIとIPX/SPXがあります。
TCP/IP:インターネット標準のプロトコル
NetBEUI:Windowsネットワークの標準プロトコル
IPX/SPX:Netwareのプロトコル
であるので、本来Windowsマシンを使ってのファイル共有をする場合、NetBEUIを使用するのが普通であるが、NetBEUIが小規模のネットワークを前提としているため、不要なパケットをネットワークに流したり、ルーター越えがあるケースでは使えないなどの問題があるなどの理由で社内LANにTCP/IP以外のパケットを流すことが禁止されているケースは少なくない。では、TCP/IPしか使えない状況でのWindows環境でのファイル共有を実現する方法はと言うと、NetBIOS over TCP/IPというプロトコル?を使うことである。NetBIOS over TCP/IPは、また、UNIXでWindowsマシンにファイル共有機能を提供するSambaサーバーで使われるプロトコルでもある。
どうしてもNetBEUIを使えない状況でなければ、処理が重いので、DOSクライアントを使うような非力なマシンでTCP/IPを使用するのはお勧めできないそうです。
1.NICと各プロトコル用ドライバ
DOSにはWindowsのWinSockのような共通インターフェースが無いので、なんとかしてアプリケーションとNICをつないでデータのやりとりをします。
ネットワーク接続というのは、ソフトがネットワークカード(NIC)を通してお話をすることですが、NIC−NICドライバ(=データリンクインターフェース)−ソフトの順につながります。
データリンクインターフェースというところが対応するプロトコルを決定しているところで、PC/AT互換機のDOSではNDIS、ODI、Packet Driverというドライバを使い、それぞれNetBEUI、IPX/SPX、TCP/IPを提供します。(Packet Driverについてはこれを使うと決まっているわけではないみたいですが、他にないのでみなこれを使うようになったそうです)
また、NDIS、ODI上に被せてTCP/IPを使えるようにするドライバが、またそれぞれDIS_PKT、ODIPKTというやつがあります。
整理すると、DOSのTCP/IPアプリを使うためには、ほとんどの場合Packet Driverを使いますが、これを実現する組み合わせが
Packet Driver
NDIS + DIS_PKT
ODI + ODIPKT
と3種類あるわけです。純粋なPacket Driverがもっとも性能が良いですが、TCP/IPアプリとLanManagerなどのNetBIOSアプリが共存できるというメリットが組合せ方式には出てきます。(もちろんメモリーを食ってしまうと言う問題もあります)
Packet Driver以外には、アライドテレシスのPC-TCPなどがあります。
ソフトの説明に「このソフトにはPC-TCPが必要です」などと書いてあります。
2.クライアントソフトウェア
DOSのTCP/IPソフトには以下のようなモノがあります
WebBoy ブラウザ&メーラ
NCSA Telnet
gn 日本語対応ニュースリーダー Packet Driver、PC/TCPなど対応
D-Mail 日本語対応DOS用メールクライアント
DOS Lynx キャラクタベースのWWWブラウザ。英語版のみ
Caldera DR-WebSpyder DOSベースのWWWブラウザ
telnetd DOS用のtelnetd
3.Windows3.1では?
Win3.1でTCP/IPアプリ、NetScape Navigatorなどを使うためにはWindows共通のWinsockというインターフェースを提供してあげなければいけません。
Winsockを実装するには、いくつかの方法があります
・Windows3.1J+市販のTCP/IP パッケージ
・Windows3.1J+packet driver + シェアウェアの Trumpet winsock
・Windows3.1J+packet driver +Core Internet-Connect Ver.2.1
・Windows3.1J+packet driver +VxDTCP
・Windows 3.1J + Lan Manager client 2.2c (英語阪はフリー、日本語版はWindowsNT Serverに付属)
などでしょうか
4.今ぶつかっている問題
今現在Windows 3.1J + Lan Manager client を試しているのですが、486DX4のマシン(メモリ24MB)でNetscape Navigatorを使ってLAN経由でISDN接続してみました。データの読み込みは満足のいく速度なのですが、でかい画像を表示させるのにCPUを使っているようで、データ読み込みから表示までに時間がかかります。普通使っているマシン(Athlon700Mhz)に比べるとストレスがたまります。Win3.1は起動は早いのですが、ちょっとあてはずれでした。もしかしたらグラフィックアクセラレータが遅いやつだからかもしれません。もう一台のMotion771(Vision968)積んだマシンでもやってみようかな。
Lan Manager clientは普通にインストールするとNetBEUIとTCP/IPのどちらかをインストールしてしまうようで、ネットワークドライブの共有をするためのNetBEUIを使いながらWinsockを実装するには、Windows 3.1J + Lan Manager client(NetBEUI)+DIS_PKT+Trumpet winsockを使わねばならないのでしょうか・・・
ただでさえLan Manager clientはメモリ食いで、Lan Manager clientを組み込んでCDROMドライバを組み込むとWindowsが起動しないのに・・・わかりません
そもそもLanManagerはメモリを食うので、Network Client for DOSを使いたかったのですが、なぜかインストーラがNICのNDISドライバを読んでくれなかったのであきらめました。またトライしてみようかな。