« VS 2005 Technology Preview | Main | XP SP2 »

2004.03.28

HTTP.SYS in XP SP2

Windows XP SP2 に HTTP.SYS が入る、という話が Blog であった。MS の記事は、Breaking Changes (下位互換性がなくなる部分の変更) についてフォーカスして書いてあるので、説明が見当たらず真偽のほどが定かでないが、事実であればこれはうれしい。
今の Windows XP でサーバー機能を実現しようとすると、ソケットベースで作るか、IIS に依存するかがもっとも考えられる選択肢となる。将来の拡張のため HTTP プロトコルの上に載せたい、と思ったら IIS に依存するしかないが、IIS は標準ではインストールされないし、「使わないものは入れない」というセキュリティポリシーにも引っかかる。
HTTP.SYS はこれを解決する。HTTP.SYS は Windows Server 2003 で追加された HTTP 用のドライバで、カーネルドライバとして動作する。これを使うと、IIS に頼ることなく、API ベースでソケットを作るように HTTP サーバーを作れる。Winodws Server 2003 の IIS 6.0 もこれに依存しており、IIS の一部が API として切り出された、と言ってもいいだろう。
MS としてもこれは重要だったのだと思われる。IIS 6.0 では、パフォーマンス向上のためにカーネルドライバとして切り出した、と説明していたが、今後の SQL Server 2005 (Yukon) や Indigo など、HTTP / Web Service として動作するソフトが増えるに従い、それらのソフトが IIS に依存することを避けなくてはならない。Web Service の実現のために IIS を入れるというのは抵抗が大きい。SOA ベースの疎結合サービスを考えると、ソケットベースでなく HTTP の上に載せて行きたいが、自身が出しているセキュリティポリシーに背反していることを HTTP.SYS で解決するわけだ。
IIS に依存することはもう一つ、開発コスト上大きな問題となる。IIS のサブシステムとしてプロトコルハンドラが動作するため、こちらのアプリとは別プロセスになってしまう。アプリの持っているデータを HTTP で出すために、IIS 上で動作するプロトコルハンドラとプロセス間通信をしなければならない。
その HTTP.SYS が Windows Server 2003 にしかないことはその利用価値を大きく下げていたが、XP SP2 に入れば利用できるアプリは大きく増える。うちでもつい先日クライアントに小さいサーバー機能を載せたくて、しかし IIS を入れたくないのでソケットベースで作ったところだった。HTTP.SYS があれば、HTTP ベースで作ることができる。
XP SP2 はセキュリティも大きく強化されるので、今まで作っていたソフトも対応を余儀なくされそうだが、それでも楽しみなソフトの一つだ。

|

« VS 2005 Technology Preview | Main | XP SP2 »

Comments

Hey! I'm at work suyrfing around your blog from my new apple iphone! Just wanted to say I love reading through your blog and look forward to all your posts! Carry on the outstanding work!

Posted by: seo services tampa | 2015.03.06 at 09:45 PM

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/2111/362808

Listed below are links to weblogs that reference HTTP.SYS in XP SP2:

« VS 2005 Technology Preview | Main | XP SP2 »