塩田紳二のWinHECレポート

コミュニケーションを統合するLonghorn



 本田雅一氏のレポートにもあるように、Longhornの目玉の1つが、コミュニケーション機能の統合である。しかし、単にPCで電話が使えるようになるだけではなく、Longhornでは、広範囲に通信、ネットワーク機能の統合が行なわれる。

 ここでは、Longhronの通信/ネットワーク機能について、WinHECの技術セッションなどからあきらかになったことをレポートしたい。

LonghornのTelephony Engineは、VoIP、携帯電話、公衆回線といった音声通信を統合し、音声通信アプリケーションに対して統一的なインターフェースを提供する。アプリケーションは、このTelephony Engineを使うことで通信機器の種類によらず、一定のやり方で音声通信を扱えるようになる

●Windows 95でも試みられた通信機能の統合

 Microsoftは、Windows 95の頃に電話機能をPCに統合しようとしたことがある。その当時、データ通信と音声通信を同時に扱うモデムの規格としてV.70やV.34Qが成立し、対応デバイスが登場したからだ。また、モデムの発信をインターネット接続に利用するため、音声通話の着信による占有を検出したり、FAXの送受信などとバッティングしないように電話回線をまとめて管理する必要もあった。

 このときに、Microsoftはハードウェアメーカー向けに「Microsoft Phone」というソフトウェアを提供していた。これはボイスモデムを使って、PCで留守番電話を実現したり、Caller ID(日本でいうナンバーディスプレイ)の機能を使って、PCの画面に発信者の名前を表示する機能などを持っていた。留守番電話は、伝言がExchangeクライアントにメッセージとして登録されるなど、わりと凝った製品だった。

 しかし、当時のボイスモデムはデジタル音声を特定のフォーマットで、しかもシリアルインターフェイス経由でモデムとやりとりせねばならなかった。これは当時のPCやWindows 95にとっては比較的負荷が高く、さらに、Windows自身の信頼性などもあって、時々、着信しそこねることがあるなど、実用的とは言い難いものだった。

 その後、状況は大きく変わってきた。PCの性能も向上し、音声データの扱い程度であればシステムにさほどの負荷をかけずに利用できるようになってきた。また、アナログ回線は唯一のインターネット接続手段ではなくなり、VoIPや携帯電話の普及など、アナログ回線以外にも、音声通信の経路を持つユーザーが増えた。

 つまり、以前よりも電話機能を統合しやすくなってきたことに加え、複数の通信チャンネルをユーザーが持つことで、それらを統合することでより便利に使うというメリットが生まれてきたのである。

 さらにLonghornでは、従来Outlookが持っていたメッセージや、連絡先の管理保存機能をOS自身が持つことで、よりコミュニケーション機能と連携させやすくなった。あるいは、Longhornでコミュニケーション機能を統合しようとしたからこそ、メッセージなどの管理機能をOS側で持つことにしたのかもしれない。

●通信機能の統合は、Telephony Engineで

 いわゆる音声通信、「電話」機能は、Longhornの「Telephony Engine」が扱う。このTelephony Engineは、VoIP、公衆回線(POTS:Plain Old Telephone Service)、携帯電話といった音声通信サービスをまとめて扱う。Longhornでは、それぞれSIP(Session Initiation Protocol)、TAPI(Telephoney API)、WPD(Windows Portable Device。PDAや携帯電話などを統一的に扱うためのインターフェース)APIを介してそれぞれの音声通信を制御する。

 Telphony Engineは、通信用アプリケーションにより起動される。その後、各通信経路に着信が行なわれると、Telephony Engineはアプリケーションに対して着信を通知する。WinHECで行なわれたデモでは、通信が入ったことを通知するウィンドウが表示された。通信用アプリケーションは、通知情報にある電話番号などから、WinFXが管理するコンタクト情報(アドレス帳)を検索し、電話番号ではなく、名前や顔写真などを表示するわけだ。

 通信アプリケーションが着信許可を出せば、着信が受諾され、今度はプロトコルに応じた通信モジュールが起動、Telephony Engineを介して音声通信が行なわれる。

 もちろん、ここで「着信は許可するが、応答するのは留守番電話モジュール(プログラム)」という処理も可能になる。これは、Telephony Engineでデジタル音声データのルーティングを行なうからである。

 Windows 95でも、ボイスモデムを使えばTAPIで着信のルーティングは行なえるようになっており、FAX、データ、音声の着信を区別して処理することができた。ただし、そのためには、TAPIに対応した着信用アプリケーションが必要である。前述のMicrosoft Phoneなどがこうした機能を持っていたが、それ以外にほとんど対応ソフトが登場せず、結局ボイスモデム自体が廃れてしまった。

 Longhornでは、Telephone Engineを使い、もう少し高いレベルで音声通信を扱えるようにし、かつ公衆回線以外の音声通信も統合を行なったわけである。ある意味、この機能はMicrosoft Phoneの再来ともいえる。

●携帯電話の制御はどうなる?

 さてLonghornでは、携帯電話も通信機器として接続することができる。こうした機能には、まずBluetoothが想定されている。Bluetoothは、Windows XPでは暫定対応となっており、Bluetoothを内蔵するノートPCなどではサードパーティのBluetoothスタックが使われていることが多い。

 Windows XPは、現在βテスト中のSP2でBluetoothに正式対応する。現在の暫定対応は、MicrosoftのBluetoothマウス/キーボードのために作られたようなもので、次の3つのプロファイルのみをサポートしている。

HID(Human Interface Device)
マウスなどのユーザーインターフェース機器の利用
DUN(Dial-Up Networking)
モデムや携帯電話などのダイヤルアップ機器の利用
HCRP(Hardcopy Cable Replacement Printing)
プリンタとの接続をBluetoothで行なう

簡単にいえば、「キーボード」、「マウス」、「携帯電話(のデータ通信機能)」、「プリンタ」との接続のみをサポートしているのが現状である。

 これに加え、WindowsXP SP2では、次の3つがプロファイルとしてサポートされる。

PANU(Personal Area Network User)
2つのBluetoothノード間の直接通信
OPP(Object Push Profile)
オブジェクトの転送
仮想COMポート
Bluetoothを仮想的なシリアル接続として利用

 PANUは、BluetoothのネットワークであるPasonal Area Netowrk(PAN)の1種。2つのBluetoooth機器が直接通信を行なうことをいい、いわゆるPeer-to-Peer接続である。PANは、このPANU(仕様書ではPANU-PANU)と、ネットワークアクセスポイントとの通信、およびGroup Ad-hoc Networkの3つの通信形態で定義されている。

 OPPは、Bluetoothを介して、住所録データや予定項目などの比較的高度な情報を交換する機構をサポートしている。ベースになっているのは、IrDAで規定されたOBEX(OBject EXchange)である。Longhornには、PC同士やPCとPDAなどとの情報同期を行なうための同期マネージャ機能があり、その中で、携帯電話の電話帳情報との同期機能がサポートされる予定。SP2でサポートされるOPPは、携帯電話との同期を行なうときにそのベースとなる重要なプロファイルである。このほか、いくつかの改良点(起動時のBluetoothキーボードサポートなど)がSP2にはある。

Longhronは、WinFXの管理するコンタクト情報(アドレス帳)などを使って、携帯電話とデータ同期を行なわせることができる。Longhornは、PC同士、あるいはPCとPDAを同期させるために汎用の同期マネージャをもっており、必要なモジュールを携帯電話に合わせて提供するとこで、同期の仕組みをゼロから開発する必要がなくなる

 さらにMicrosoftは、BluetoothについてLonghornまでに次のような機能追加を予定している。

GN(Group ad-hoc Network)
マスターBluetooth機器が管理するネットワーク
SDT(Secure Digital transport)
SDIO経由でのBluetoothインターフェース接続
オーディオ関連機能
ヘッドセットやAudio Gateway
Wake-on-Bluetooth
Bluetoothでの通信によりPCを起動

 Longhornでは、これらの機能が当然取り入れられるため、Bluetoothを使うことで、PCと携帯電話は密接に関連して動作できるようになる。その具体例が、今回のWinHECで行なわれたデモというわけだ。

●ネットワークデバイスを統合し、ローミングを実現

 携帯電話は、音声通信のための機器であると同時に、インターネット接続のための通信機器としても動作する。音声通信の統合は、Longhornでの携帯電話利用の半分の側面でしかない。Longhornでは、「ネットワークローミング」という機能が用意され、より柔軟なネットワーク接続機能が提供される予定である。

 現在のWindows XPのネットワークは、Ethernetや無線LAN、アナログモデムといったネットワーク機器ごとにそれぞれのネットワークを管理するかたちになっている。このため、Ethernetと無線LANを同時に使っても、それぞれが別々のネットワークとして動作するだけである。メーカーによってはネットワークを検出して、切り替えを行なうようなツールをノートPCに搭載しているが、これもWindows自身が、こうしたネットワーク切り替えをサポートしていないからである。

 Longhornには「Unified Network Roaming」と呼ばれる機能が搭載される。この機能を実現するのは、「Roaming Manager」と呼ばれるモジュールである。これは、従来のネットワーク機能とアプリケーションの間に入るもので、システムが接続するネットワークを統合的に管理する。これにより、Ethernetや無線LANなど、現在接続可能なネットワークから1つを選んだり、Ethernetの接続が切れたら無線LANに切り替えるといった処理が自動で行なえるようになる。またネットワーク媒体として、2.5G/3G携帯電話による高速通信も対象となるため、無線LANも使えない状況では、携帯電話による通信を行なわせることも可能だ。

 携帯電話によるデータ通信をこのNetowrk Roaming Serviceで使えるようにするため、携帯電話などのWAN接続機器をNDISドライバで直接接続するような仕様を、LonghronでMicrosoftは採用する予定である。

Longhornのネットワーク機能は、各ネットワークデバイスに対応したNDISドライバとその上のNetwork Roaming Serviceから構成される。さらにこの上にたとえばTCP/IPを実現するプロトコルモジュールや、APIであるWinSockなどが乗るようになっている。Network Roaming Serviceで複数のネットワークデバイスを管理することで、自動切り替えなどが可能になる

 現在、携帯電話などはモデムと同じ扱いになっている。通信スタック上は、Ethernetなどと同じ「ネットワークアダプタ」扱いだが、内部では、モデムを制御しPPPで通信を行なうような構造になっている。

 アナログ電話ならこれでもよかったが、3G携帯電話では、アナログモデムよりも高速なデータ通信が可能で、さまざまな機能を持っているため、直接ネットワークデバイスとして扱えるようにしたほうが効率的である。

 たとえばモデムでは、各種の設定は通信用の経路でATコマンド経由で行なわねばならない。このため、通信中に設定を変更することが困難で、通信中に機器側からの通知を受け取ることもできない。Longhornで音声通話機能を統合しようとすると、たとえばデータ通信をしている最中の着信なども管理できなけばならない。となると、現在のモデムを基本とした通信機器モデルでは対応ができないのである。

 ネットワークや通信といった点でみると、Longhornが特徴として挙げているさまざまな機能は、コミュニケーション環境の充実に必要な機能として取り込まれていることがわかる。そのほか、WinHECのセッションでは、GPSモジュールを統合し、検出した位置情報をサービス切り替え機能などへのヒントとするための機構などがあることが明かにされた。こうした位置情報は、ネットワークや通信機能でも、たとえば、市外局番の必要性や、近隣のホットスポットなどという点で利用価値が高いものだ。

 ある意味、Longhornの大きな目的の1つは、コミュニケーション環境の充実にあるといえるだろう。

□WinHEC 2004のホームページ(英文)
http://www.microsoft.com/winhec/

(2004年5月10日)

[Text by 塩田紳二]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2004 Impress Corporation All rights reserved.