このページの本文へ

Windows Info 第129回

DOS時代から使われてきたネットワークドライバーの改良がついに進む

2018年06月10日 10時00分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

 Windows 10のRSシリーズではネットワークドライバーの改良が行なわれている。

従来のNDISネットワークドライバーの動作環境。ネットワークアダプター(NIC。Network Interface Card)のドライバーはNDIS環境で動作してい

DOSやOS/2時代から使われてきたNDIS

 NDIS(Network Driver Interface Specification)は、MS-DOSの時代からマイクロソフトのOSで利用するネットワークデバイスドライバーの仕様の名称だ。最初はMS-DOSのネットワークで利用するイーサーネットカードのデバイスドライバーの仕様として、マイクロソフトと3Com社が開発した。

 NDISは、その後はWindowsで利用されたが、当時は、Windowsの下にMS-DOS環境があり、ドライバーの仕様を大きく変える必要がなかった。

 ちなみに本来ならNDIS 1.0となるべき最初の仕様は、単にNDISと呼ばれていた。また、ネットワークが普及しはじめたOS/2やWindows for Workgroups 3.1の時代には、仕様が拡張されNDIS 2.0となった。最初の大きな変化はWindows NTが登場したときである。Windows NTは、32bit CPUの仮想メモリや特権モードといった、近代的なプロセッサを使う、近代的なマルチタスクOSとして作られ、デバイスドライバーは、従来のMS-DOSに比べると複雑化した。

 マイクロソフトは、このWindows NT用にNDIS 3.0を開発した。Windows NT Device Driver Modelと呼ばれる最初の32bitデバイスドライバー仕様に基づくものだ。Windows 95以降、このNDIS 3.0をベースにNDIS 3.1、4.0、5.0~5.1と更新されていく。NDISは、デバイスドライバーの仕様であるとともにWindowsが用意するネットワーク関連のモジュール(たとえばプロトコルを処理するモジュール)の動作環境でもあるため、Windows側の機能が拡張されてもNDISのバージョンは上がっていく。

 たとえば、Windows XPでは、無線LANにおいて接続前に電波強度を表示するなどの機能が組み込まれた。また、携帯電話ネットワークの接続は、従来はモデム扱いで接続にはダイヤルアップ接続が使われていたが、これもWindows 8でNDISに取り込まれ、ネットワークとして接続できるようになった。

 さて、こうして発展してきたNDISだが、問題もあった。1つには、Windowsの標準的なデバイスドライバーフレームワークであるWDF(Windows Driver Foundation)との違いが大きく、標準的なデバイスドライバーの作り方と大きく異なっている。

 またNDIS側には、電力管理などの機能がなく、この部分では、WMFと連携する必要がある。WindowsのデバイスドライバーはWDFの導入により、「差分」のみを記述する構造となり、以前のWDM(Windows Driver Model)より開発が簡単になった。しかし、ネットワークドライバに関しては、NDIS仕様に従うため、そのメリットが得られなかった。

開発が面倒だったWindowsのネットワークドライバー
これまでよりは簡単になることが期待できる

 RS2(Windows10 Ver.1703)からマイクロソフトは、「NetAdapter Class extensions for WDF」(NetAdapter Cx)のプレビューを開始した。Class Extentionsとは、WDFのカーネル用ドライバークラスの拡張として組み込まれる機構である。

 一般にドライバーの「クラス」とは、特定の種類のデバイス、たとえばネットワークやストレージといったドライバーの「ひな形」を意味し、このひな形に対して、実際のハードウェアとの相違部分や足りない部分を追加することでデバイスドライバーを作成する。この方法では、ゼロからドライバーソフトウェアを書く必要がない。また、クラスで定義されている部分に対しては、信頼できるものとして別途検証やテストなどを念入りにする必要がないため、開発時の負担が減る。

 NetAdapter Cxは、ネットワークハードウェア(ネットワークアダプター)のドライバーの拡張機能として組み込まれ、この部分が従来のNDISスタックと通信することで、NDISプロトコルスタック側に変更を加えることなく、ネットワーク用のドライバーをWDFを使って記述できるようにするものだ。

 現在プレビューが進んでいるRS5(Windows 10 Ver.1809と予定されている)では、モバイルブロードバンドネットワークがこのNetAdapterCx対応となった。

 NetAdapterCxは、基本的にはWDFドライバーとして動作し、受信したパケットの処理は、クラスエクステンションを介してNDISスタックと接続する。また、USBやPCI Express用のバスドライバーの利用もWDFドライバーとして利用可能なため、全体として動作効率が高くなる。従来のNDISでは、NDISドライバーを管理しているNDISモジュール側を介して、USBなどのバス経由でアクセスしている。

 また、この方法では、プロトコルドライバーの部分には影響がなく、これまでずっと使われていたTCP/IPなどのプロトコル処理部分を変更する必要がない。ネットワークプロトコルは複雑で、さらに多数のメーカーの機器が関係するため、仕様書に厳密に対応することが求められると同時に、実情に合わせた実装も求められるという二律背反的な部分がある。

 このためにプロトコルスタックは長い年月をかけて完成されており、いきなりゼロから書き換えるというのは、かなりの困難が伴う。実際、テレビなどの家電にLinuxが組み込まれるというのは、すでにLinuxが実績のあるネットワークスタックを持っているからだ。

 Windowsでは、LTEや3Gなどのモバイルネットワークへの接続などを「モバイルブロードバンド(Mobile Broadband Network、MBN)」と呼ぶ。RS5では、このMBNで利用するUSBデバイス用のドライバーがNetAdapterCx対応のものに変更になった。インサイダープレビュービルド17655では、手動でドライバーを差し替える必要があったが、ビルド17677では自動的に差し替わるようになった。

 マイクロソフトによれば、NetAdapterCxにすることで、ドライバーが扱うデータの転送効率が高まるとしているが、今のところベンチマーク結果などが発表されているわけではなく、あくまでも論理的な話でしかない。それに、携帯電話ネットワークのように、通信状態が刻一刻と変化していく環境でユーザー側がベンチマークをするというのもかなりの困難を伴う。2つの測定で同じ環境とすることができないからだ。可能だとしたら長期間にわたって多数の測定を実施し、ネットワーク状態の影響を最小にするなどの手法が必要になる。

 とはいえ、今回のNetAdapter Cxにより、ユーザー側からみた「レガシー」がまた1つなくなったのも事実。実際には、内部にNDISプロトコルスタックは残るものの、ネットワークドライバーの開発は比較的容易になることが予想される。

カテゴリートップへ

この連載の記事
1
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥39,800
2
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
¥26,880
3
【整備済み品】富士 通 2in1ノートパソコン V727【本体のみ】/第7世代Core M3/12.3型タッチパネル1920×1080/メモリ 8GB/SSD 128GB/Win 11/MS Office 2019/USB 3.1/Type-C/無線WIFI/オーディオ内蔵/WEBカメラ/初期設定済
【整備済み品】富士 通 2in1ノートパソコン V727【本体のみ】/第7世代Core M3/12.3型タッチパネル1920×1080/メモリ 8GB/SSD 128GB/Win 11/MS Office 2019/USB 3.1/Type-C/無線WIFI/オーディオ内蔵/WEBカメラ/初期設定済
¥9,600
4
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥29,800
5
【Amazon.co.jp限定】 ASUS ノートパソコン Vivobook 15 X1502VA 15.6インチ インテル Core i7 13620H メモリ16GB SSD 1TB Windows 11 バッテリー駆動 8.9時間 重量1.7kg PC Game Pass 3ヶ月利用権付き クワイエットブルー X1502VA-I7H161W
【Amazon.co.jp限定】 ASUS ノートパソコン Vivobook 15 X1502VA 15.6インチ インテル Core i7 13620H メモリ16GB SSD 1TB Windows 11 バッテリー駆動 8.9時間 重量1.7kg PC Game Pass 3ヶ月利用権付き クワイエットブルー X1502VA-I7H161W
¥104,800

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,880
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,390
3
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥1,880
4
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥660
5
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
7
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
¥18,980
8
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
¥2,000
9
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,545
10
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
¥652

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン