<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>P2P</title><link>http://www.exconn.net/Blogs/windows/category/68.aspx</link><description>Windows Peer-to-Peerについて投稿します。</description><managingEditor>ウィンドウズ開発統括部</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Channel 9 ビデオ「ソフトイーサ登さんとの対談」 </title><link>http://www.exconn.net/Blogs/windows/archive/2006/09/29/16339.aspx</link><pubDate>Fri, 29 Sep 2006 14:18:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/09/29/16339.aspx</guid><description>&lt;P&gt;お久しぶりです。及川です。&lt;/P&gt;
&lt;P&gt;Windows Vista の RC1、IE7 の日本語版 RC1 の作業に埋もれておりました。今は RTM に向けての開発最終段階です。&lt;/P&gt;
&lt;P&gt;さて、Channel9 で行っている対談シリーズですが、第２回目も編集が終わり、公開されましたので、お知らせします。今回は、&lt;A href="http://www.softether.com/jp/"&gt;ソフトイーサ株式会社&lt;/A&gt;代表取締役会長 登大遊さんをゲストに迎えて、登さんがコンピュータプログラミングにかかわるようになったきっかけの話から、&lt;A href="http://www.ipa.go.jp/"&gt;IPA&lt;/A&gt; の&lt;A href="http://www.ipa.go.jp/jinzai/esp/index.html"&gt;未踏プロジェクト&lt;/A&gt;の話、Windows プログラミングの話にネットワークセキュリティまで多岐にわたるお話をさせていただいております。話し始めたら、止まらずに、なんと１時間２２分近くもの大作となっております。&lt;/P&gt;
&lt;P&gt;時間配分は以下の通りです。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;0:00～: ご挨拶＆登さんの紹介&lt;/LI&gt;
&lt;LI&gt;1:30～: 登さんと及川の馴れ初め&lt;/LI&gt;
&lt;LI&gt;2:45～: 登さんのプログラミングとの出会いから今まで&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;7:28～: IPA 未踏プロジェクト応募からソフトイーサの開発まで&lt;/LI&gt;
&lt;LI&gt;14:30～: P2P の課題&lt;/LI&gt;
&lt;LI&gt;17:40～: 内部統制について&lt;/LI&gt;
&lt;LI&gt;26:15～: ベンチャー会社設立について&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;29:20～: PacketiX の紹介&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;33:36～: ASP サービス&lt;/LI&gt;
&lt;LI&gt;36:12～: パフォーマンス向上のための工夫&lt;/LI&gt;
&lt;LI&gt;42:40～: ソースコードの移植性&lt;/LI&gt;
&lt;LI&gt;44:25～: Windows Vista への対応&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;48:15～: セキュアジャパン 2006 でのセキュア VM 開発への参画&lt;/LI&gt;
&lt;LI&gt;－－－ ここからいくつかトピックを取り上げて話しています －－－&lt;/LI&gt;
&lt;LI&gt;54:00～: トピック１） ネットワークセキュリティについて&lt;/LI&gt;
&lt;LI&gt;1:02:00～: トピック２） Windows の良い点と悪い点&lt;/LI&gt;
&lt;LI&gt;1:09:00～: トピック３） コミュニティについて&lt;/LI&gt;
&lt;LI&gt;1:10:35～: トピック４） ソフトウェア開発者に向けて&lt;/LI&gt;
&lt;LI&gt;1:17:20～: トピック５） マイクロソフトへの期待&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;（全 : 約１時間２２分）&lt;/P&gt;
&lt;P&gt;なお、対談の中で、Windows Vista は６４ビットではデジタル署名されたドライバしか許さないという話題に触れていますが、それについては、&lt;A href="http://www.microsoft.com/japan/whdc/system/platform/64bit/kmsigning.mspx"&gt;こちら&lt;/A&gt;をご覧ください。また、Windows Vista をセルフホストしているという話の中で、「生産性が落ちる」と言ってしまっている部分がありますが、これはまだ修正すべき問題を抱えている開発中の製品であるためであり、Windows Vista による生産性が低いわけではもちろんありません。&lt;/P&gt;
&lt;P&gt;ビデオ版は&lt;A href="http://channel9.msdn.com/Showpost.aspx?postid=239438"&gt;こちら&lt;/A&gt;からご覧ください。また、音声版も&lt;A href="http://channel9.msdn.com/ShowPost.aspx?PostID=239518"&gt;こちら&lt;/A&gt;に用意してあります。&lt;/P&gt;
&lt;P&gt;マイクロソフト&lt;BR&gt;及川卓也&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/16339.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>IPv6 - Windows Vista での Teredo の改良</title><link>http://www.exconn.net/Blogs/windows/archive/2006/06/13/13157.aspx</link><pubDate>Tue, 13 Jun 2006 14:39:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/06/13/13157.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;以前の&lt;A id=viewpost.ascx_TitleUrl HREF="/Blogs/windows/archive/2006/03/21/8134.aspx"&gt;Teredo&lt;/A&gt; の投稿で、次のように書きました。&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;一口に NAT と言っても、その種類は Cone NAT、Restricted Cone NAT、Port-restricted Cone NAT、Symmetric NAT の４つに大別することができます。&lt;FONT color=#ff0000&gt;Teredoは、このうち、Symmetric NAT には残念ながら対応できません。&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Windows Vista では、この部分が改善されています。Teredo クライアントのうちの一方が Symmetric NAT の背後にいる場合でも、Teredo が利用できるようになりました。&lt;A href="http://www.microsoft.com.nsatc.net/japan/technet/community/columns/cableguy/cg1005.mspx"&gt;The Cable Guy &amp;#8211; 2005 年 10 月 Windows Vista および Windows Server "Longhorn" の IPv6 への変更&lt;/A&gt;?においても以下のように書かれています。&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;現在 Teredo は、1 台の Teredo クライアントが、1 つまたは複数のシンメトリック NAT の背後に存在する場合、動作することができます。(送信トラフィックの) 外部の宛先アドレスにより、シンメトリック NAT は同じ内部 (プライベート) アドレスおよびポート番号を異なる外部 （パブリック） アドレスおよびポートにマップします。Windows XP および Windows Server 2003 の Teredo は、それ自体がシンメトリック NAT の背後にあると検出すると、それ自体を無効にします。この新しい動作により、Teredo はインターネット接続しているホストのより大きいセット間で動作することができます。&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;また、Windows XP では Teredo は既定状態では有効になっていませんでしたが、Windows Vista では規定で有効となります。ただし、RTM 版では、既定で有効であるものの、実際に使うためには、Windows Firewall の設定を手動で変更するか、Teredo を使うアプリケーションをインストールする必要があります。&lt;/P&gt;
&lt;P&gt;マイクロソフト&lt;BR&gt;及川卓也&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/13157.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>IPv6 - LLMNR</title><link>http://www.exconn.net/Blogs/windows/archive/2006/06/05/12679.aspx</link><pubDate>Mon, 05 Jun 2006 10:59:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/06/05/12679.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;Windows Vista および Windows Server "Longhorn" には LLMNR (Linklocal Multicast Name Resolution) と呼ばれるプロトコルが実装されています。これはDNSサーバーの無い１つのサブネット上で互いの名前の解決を行うためのプロトコルです。１つのサブネットで構成されることの多い家庭や SOHO のネットワークやアドホックネットワークなどで利用されます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;IPv4 では&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;IPv4において、DNS名が無い場合、従来の Windows では NetBIOS over TCP/IP (NetBT または NBT) を用いてこの問題に対処していました。Windows のファイルとプリンタの共有で用いられるプロトコルである SMB/CIFS に詳しい方ならばご存知だと思いますが、NetBT では NetBIOS 名前クエリ要求メッセージをローカルサブネットのブロードキャストアドレスに送る（ブロードキャストする）ことで名前解決を図ります。問い合わせを受けた名前を保持するシステムは、このメッセージを受けると、元の名前解決要求を送信したシステムに、ユニキャストで NetBIOS 名前クエリ応答を送信します。このように、IPv4 では DNS の無いローカルサブネット上での名前解決にはブロードキャストを用いた方法がとられていました。&lt;/P&gt;
&lt;P&gt;IPv6 ではこの方法を用いることはできません。まず、ご存知のように、IPv6 にはブロードキャストが用意されていません。また、IPv6 上での NetBIOS の操作は定義されておりません。したがって、IPv6 ではこの方法に変わる別の手段が必要となります。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;IPv6 での解 - LLMNR&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;IPv6 では、DNS サーバーに DNS クエリメッセージをユニキャスト送信する代わりに、マルチキャストアドレスに DNS クエリメッセージを送信します。サブネット上の LLMNR 対応ノードはこのマルチキャストメッセージを受け取り、自分がその問い合わせられた名前を保持している場合、それに対して応答メッセージを送信します。これがざっくりとした LLMNR の動きとなります。DNS メッセージをそのまま用いて、DNS サーバーの無いローカルサブネットでの名前解決を実現するというのが重要な部分です。&lt;/P&gt;
&lt;P&gt;LLMNR は IETF の DNSEXT (DNS Extensions) WG で議論されています。最新のインターネットドラフトは &lt;A href="http://www.ietf.org/internet-drafts/draft-ietf-dnsext-mdns-46.txt"&gt;draft-ietf-dnsext-mdns-46.txt&lt;/A&gt; になります。&lt;/P&gt;
&lt;P&gt;誤解しないでいただきたいのですが、LLMNR は DNS の置き換えではありません。これはインターネットドラフトでも次のように明確に説明されています。&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;3.? Usage Model&lt;/P&gt;
&lt;P&gt;LLMNR is a peer-to-peer name resolution protocol that is not intended as a replacement for DNS; rather, it enables name resolution in scenarios in which conventional DNS name resolution is not possible. This includes situations in which hosts are not configured with the address of a DNS server; where the DNS server is unavailable or unreachable; where there is no DNS server authoritative for the name of a host, or where the authoritative DNS server does not have the? desired RRs.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;なお、この LLMNR に対応するために、アプリケーション側での対応は不要です。アプリケーションは DNS サーバーが存在する環境であっても、DNS が存在しない環境であっても、WSAConnectByName() または GetAddrInfoW() を使って名前解決を図ることができます。なお、LLMNR 自身の API 問題についてはインターネットドラフトの中の "4.4. API Issues" で言及されています。また、インターネットドラフトの著者の１人である Bernard Aboba が &lt;A href="http://www.drizzle.com/~aboba/DNSEXT/llmnrissues.html"&gt;LLMNR Issues List&lt;/A&gt; という Web ページで LLMNR の現状をまとめているのですが、そこにある &lt;A href="http://www.drizzle.com/~aboba/DNSEXT/llmnrfaq.html"&gt;FAQ&lt;/A&gt; でも次のように書かれています。&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Will LLMNR break applications?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Not if used properly. The main way that a bad LLMNR implementation could break applications is by advertising a IPv4 Link-Local address inappropriately. Since LLMNR can only be used for name resolution on the local link, LLMNR responders can only respond to queries for names valid on the interface on which they are received, with information that is valid on the link on which the query is received. For example, if a host had two interfaces, one which had an IPv4 linklocal address, and another with a routable address, then it would be a bad idea to respond to an LLMNR query on the interface with the routable address with an A RR including the IPv4 linklocal address which was not valid on that interface. This would encourage the LLMNR sender to attempt to contact the host on an interface that was not reachable on the local link -- causing the application to break. &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;簡単に言うと、正しく使われていれば、アプリケーションの互換性は保証されるということですね。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;Windows CE での対応状況&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;実は LLMNR はすでに Windows CE で対応されています。Windows CE ではバージョン 5.0 より LLMNR の対応が行われています。&lt;/P&gt;
&lt;P&gt;マイクロソフト&lt;BR&gt;及川卓也&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/12679.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Windows Vista/Windows Server "Longhorn" の IPv6 サポート 続き</title><link>http://www.exconn.net/Blogs/windows/archive/2006/06/01/12356.aspx</link><pubDate>Thu, 01 Jun 2006 03:56:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/06/01/12356.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;前回、&lt;A href="http://www.exconn.net/Blogs/windows/archive/2006/05/30/12225.aspx"&gt;Windows Vista/Windows Server "Longhorn" の IPv6 サポート&lt;/A&gt; というポストをしたときに、なぜか見つからなかったのですが、Cable Guy に Windows Vista および Windows Server "Longhorn" での IPv6 機能についての紹介がされていたのを見つけましたので、リンクを貼っておきます。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/japan/technet/community/columns/cableguy/cg1005.mspx"&gt;The Cable Guy &amp;#8211; 2005 年 10 月: Windows Vista および Windows Server "Longhorn" の IPv6 への変更&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRIKE&gt;ただ、この記事、少し日本語訳がおかしいところがあります（お恥ずかしい）。しかも、なぜか内容も少し足りません。もし英語が苦手でなければ、&lt;/STRIKE&gt;&lt;A href="http://www.microsoft.com/technet/community/columns/cableguy/cg1005.mspx"&gt;&lt;STRIKE&gt;元の英語の記事&lt;/STRIKE&gt;&lt;/A&gt;&lt;STRIKE&gt;をお読みいただければと思います。日本語訳がおかしい点については、至急社内で対応いたします。&lt;/STRIKE&gt;&lt;FONT color=#ff0000&gt;［6/13 更新: 新しい日本語訳がアップロードされました。]&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRIKE&gt;英語のほうで&lt;/STRIKE&gt;書かれている内容は、ほぼ&lt;A href="http://www.exconn.net/Blogs/windows/archive/2006/05/30/12225.aspx"&gt;前回の私の投稿&lt;/A&gt;で書かれているものと同じです。ただ、Teredo の改善やLLMNRについて解説されていますので、これについては別途投稿しようと思います。&lt;/P&gt;
&lt;P&gt;マイクロソフト&lt;BR&gt;及川卓也&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/12356.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Windows Vista/Windows Server "Longhorn" の IPv6 サポート</title><link>http://www.exconn.net/Blogs/windows/archive/2006/05/30/12225.aspx</link><pubDate>Tue, 30 May 2006 02:38:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/05/30/12225.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;Windows Vista の IPv6 サポートの話は何度かしているのですが、整理して話したことがありませんでした。お約束していたにも関わらず、大変失礼しました。今日は、Windows Vista および Windows Server "Longhorn" の IPv6 サポートについて概略を解説します。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;IPv6 は既定でインストールされ、有効であり、そして優先して使用されます&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows XP や Windows Server 2003 までの IPv6 はプロトコルスタックの追加インストールが必要でした。Windows Vista（Windows Server "Longhorn" も含む。以下同じ）では違います。既定の状態でインストールされ、逆に GUI から簡単にアンインストールすることはできなくなっています。&lt;/P&gt;
&lt;P&gt;また、アプリケーションもマイクロソフトが推奨するインターフェイス、たとえば、.NET Framework や上位 API をお使いの場合には、IPv6 がそのまま使えるようになっています。WinSock アプリケーションの場合もプロトコルを意識しない関数（Address Agnostic API）を使う場合には、IPv6 がそのまま使えます。さらに、IPv4 および IPv6 が両方使える場合は、IPv6 が優先して使われるようになっています。&lt;/P&gt;
&lt;P&gt;この方針はたとえば DNS の名前解決の際にも適用されます。DNS に名前解決する際、A レコードと AAAA レコードの両方を問い合わせますが、AAAA レコードが返ってきた場合には、AAAA レコードが優先して使われます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;デュアル IP 層アーキテクチャ&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows XP（Windows Server 2003 を含む。以下同じ）では、IPv4 と IPv6 で異なるプロトコルドライバが使われていました。具体的には %windir%\system32\drivers にある tcpip.sys（IPv4用）とtcpip6.sys（IPv6用）です。このため、これをデュアルスタックアーキテクチャと呼びます。IPv4 と IPv6 では同じフレーミングのサポートや TCP &amp; UDP のサポートがあるにも関わらず、別の実装がそれぞれのプロトコルドライバで行われていたのです。&lt;/P&gt;
&lt;P&gt;Windows Vista ではこれがデュアル IP 層アーキテクチャに変更されます。１つのプロトコルドライバ（tcpip.sys）には共通の TCP &amp; UDP のサポートとフレーミングのサポートが含まれ、唯一 IP 層の部分だけが、プロトコルドライバ内で異なる実装になっています。&lt;/P&gt;
&lt;P&gt;Windows Vista の IP スタックは１から書き直されており、パフォーマンスも劇的に向上していますが、そのメリットは IPv4 だけでなく、IPv6 にも適用されています。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;GUI による構成&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows XP での IPv6 の構成は netsh で行うコマンドラインのものが唯一のものでしたが、Windows Vista からは GUI により IPv6 の構成（アドレス設定なども含む）が行えるようになっています。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;Windows XP で実装されていなかった基本機能のサポート&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Windows XP ではいくつか実装されていなかった IPv6 の機能がありましたが、それらのほとんどが Windows Vista では実装されています。代表的なものを以下に列挙します。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;DNS トランスポート: Windows Server 2003 では実装されていましたが、Windows XP では DNS の問い合わせが、たとえ AAAA レコードの問い合わせであっても、すべて IPv4 で行われていました。これにより、ピュア IPv6 の環境では DNS への問い合わせができないという問題がありました。Windows Vista ではこれがきちんと実装されています。&lt;/LI&gt;
&lt;LI&gt;IE での IPv6 リテラルアドレス: IE で URL のアドレス部分に IPv6 アドレスを利用できないという制限がありました。Windows Vista ではこれが解決されています。&lt;/LI&gt;
&lt;LI&gt;IPsec のサポート: Windows XP では IPv6 用の IPsec がサポートはされているものの、IPv4 用の IPsec と異なり、コマンドライン（それも netsh ではない独自コマンドラインツール）でのみ構成可能であり、さらに IKE がサポートされていませんでした。また、ESP において NULL 暗号化しかサポートされておらず、実質ペイロードに暗号化ができない実装となっていました。Windows Vista の IPsec では IPv4 と IPv6 の差はありません。GUI（MMCのスナップイン）において IPv6 用の IPsec も構成できるようになっていますし、IKE のサポートも、ESP での暗号化もサポートしています。&lt;/LI&gt;
&lt;LI&gt;MLDv2 のサポート: MLDv1 に加えて、MLDv2 もサポートします。&lt;/LI&gt;
&lt;LI&gt;PPP のサポート: PPP において IPv6 がサポートされるようになります。具体的には IPCP に加えて、IPV6CP がサポートされます。&lt;/LI&gt;
&lt;LI&gt;DHCPv6 のサポート: Windows XP のリリースのタイミングでは間に合わなかったのですが、今回は DHCPv6 がクライアントとサーバーともサポートされます。また、ISP の IPv6 接続サービスを利用する場合、ブロードバンドルーターに DHCPv6PD でプレフィックスを取得し、ルーターが RA を発行するという環境を構築することもあると思いますが、Windows Vista のインターネット接続共有では、DHCPv6PD をサポートしていますので、ブロードバンドルーター代わりに利用することもできます。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#000080&gt;Windows のコンポーネントのほとんどが IPv6 対応に&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;そして、最後に申し上げたいのが、Windows Vista ではネットワーク機能を持つコンポーネントのほとんどが IPv6 対応になるということです。Windows XP ではプラットフォームと API の IPv6 化は完了していましたが、その上で動作するアプリケーションは IE と Windows Media Player、FTP クライアントなどとお世辞にも多くはありませんでした。Windows Vista では開発方針として、すべてのネットワーク機能を持つコンポーネントが IPv6 にも対応すると決められています。Active Directory や DNS（クライアントとサーバー）、DHCP を含み、基本的には、すべてのコンポーネントが IPv6 になると期待していただいて結構です。&lt;/P&gt;
&lt;P&gt;さらには、ピュア IPv6 モードでの動作も可能です。これはマイクロソフト社内でのテスト目的の意味合いも大きいのですが、本当にそのコンポーネントが IPv6 で動作しているかどうかを確認するために、IPv6 のみのモード（ピュア IPv6 モード）で構成し、コンポーネントをテストしています。したがって、アカデミックな環境などで、IPv6 のみで操作する場合にも、十分実用になる OS となっています。&lt;/P&gt;
&lt;P&gt;以上、ざっと Windows Vista での IPv6 対応について解説させていただきました。もちろん、以前、解説した Teredo なども引き続きサポートされています（実は、Teredo は Teredo で改良が加えられているのですが）。まだ、何か説明し忘れているような気もするのですが、もし思い出したら、ここで皆さんにお知らせしたいと思います。&lt;/P&gt;
&lt;P&gt;マイクロソフト&lt;BR&gt;及川卓也&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/12225.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Teredo 対応のアプリケーション開発</title><link>http://www.exconn.net/Blogs/windows/archive/2006/03/25/8329.aspx</link><pubDate>Sat, 25 Mar 2006 09:59:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/03/25/8329.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.exconn.net/Blogs/windows/archive/2006/03/21/8134.aspx"&gt;以前&lt;/A&gt;、Teredo について紹介しました。Teredo によりピアツーピアに必要な NAT 越えが実現できることについて説明させていただきましたが、では Teredo 対応のアプリケーションはどのように開発すれば良いのでしょうか？&lt;/P&gt;
&lt;P&gt;方法は２つあります。１つは &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_p2p.asp"&gt;Windows Peer-to-Peer API &lt;/A&gt;を用いてアプリケーションを作成する方法。もう１つは WinSock でソケット作成時にソケットオプションとして IPV6_PROTECTION_LEVEL? を設定する方法です。&lt;/P&gt;
&lt;P&gt;前者の Windows Peer-to-Peer API は IPv6 を前提としています。もし IPv6 のネイティブ接続環境があれば、それをそのまま利用しますが、もし無かった場合には Teredo の接続を用います。したがって、Windows Peer-to-Peer API を使っている場合には、特別な処理は必要ありません。&lt;/P&gt;
&lt;P&gt;WinSock アプリケーションの場合には、setsockopt() で IPV6_PROTECTION_LEVEL? を設定します。 IPV6_PROTECTION_LEVEL は次のいずれかの値をとります。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;PROTECTION_LEVEL_UNRESTRICTED&lt;/LI&gt;
&lt;LI&gt;PROTECTION_LEVEL_DEFAULT&lt;/LI&gt;
&lt;LI&gt;PROTECTION_LEVEL_RESTRICTED&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;PROTECTION_LEVEL_UNRESTRICTED は同一サイトにおける接続のみを許可するオプションです。ここで言う「同一サイト」とは IPv6 のリンクローカルアドレスで接続できる場合、IPv6 グローバルアドレスを使っている場合は、プレフィックスから同一サイトと判断できる接続の場合、そして IPv6 サイトローカルアドレスで接続できる場合となります。ただし、IPv6 サイトローカルアドレスは廃止されています（&lt;A href="http://www.ietf.org/rfc/rfc3879.txt"&gt;RFC 3879 Deprecating Site Local Addresses&lt;/A&gt;）。Windows では互換性のために機能としては残っていますが、使用は推奨されていません。ご注意ください。&lt;/P&gt;
&lt;P&gt;PROTECTION_LEVEL_DEFAULT は同一サイトおよび外部との接続を許可するオプションです。現在の主な IPv4 アプリケーションと同じ挙動をするオプションになります。&lt;/P&gt;
&lt;P&gt;PROTECTION_LEVEL_RESTRICTED は PROTECTION_LEVEL_DEFAULT の動作に加えて、NAT を介しての通信、すなわち Teredo での通信を許可するオプションとなります。&lt;/P&gt;
&lt;P&gt;以上のことを整理したのが以下の表となります。&lt;/P&gt;
&lt;P&gt;
&lt;TABLE border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TH align=left bgColor=#cdcdcd rowSpan=2&gt;保護レベル&lt;/TH&gt;
&lt;TH align=left bgColor=#cdcdcd colSpan=3&gt;受信トラフィックの制限の有無&lt;/TH&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TH bgColor=#cdcdcd&gt;同一サイト&lt;/TH&gt;
&lt;TH bgColor=#cdcdcd&gt;外部&lt;/TH&gt;
&lt;TH bgColor=#cdcdcd&gt;NAT?越え (Teredo)&lt;/TH&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;PROTECTION_LEVEL_RESTRICTED&lt;/TD&gt;
&lt;TD&gt;無&lt;/TD&gt;
&lt;TD&gt;有&lt;/TD&gt;
&lt;TD&gt;不可&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;PROTECTION_LEVEL_DEFAULT&lt;/TD&gt;
&lt;TD&gt;無&lt;/TD&gt;
&lt;TD&gt;無&lt;/TD&gt;
&lt;TD&gt;不可&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;PROTECTION_LEVEL_UNRESTRICTED&lt;/TD&gt;
&lt;TD&gt;無&lt;/TD&gt;
&lt;TD&gt;無&lt;/TD&gt;
&lt;TD&gt;可&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;オプションを指定しなかった場合は、PROTECTION_LEVEL_DEFAULT の挙動となります。つまり、開発者の意図しない NAT を越えての受信は起こりえないようになっています。&lt;/P&gt;
&lt;P&gt;詳しくは &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/using_ipv6_protection_level.asp"&gt;MSDN のサイトの説明&lt;/A&gt;をご覧ください。&lt;/P&gt;
&lt;P&gt;また、.NET の System.Net を使っている場合は、&lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemnetsocketssocketclasssetsocketoptiontopic.asp"&gt;Socket.SetSocketOption メソッド&lt;/A&gt;を使ってオプションを指定することになります。&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/8329.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Windows Collaboration technology on Channel9</title><link>http://www.exconn.net/Blogs/windows/archive/2006/03/22/8166.aspx</link><pubDate>Wed, 22 Mar 2006 06:48:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/03/22/8166.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;Windows Peer-to-Peer の連載ですが、進みがゆっくりなので、Windows Vista での新機能について紹介するまで、少し時間がかかりそうです。その代わりと言ってはなんですが、マイクロソフト本社の担当者による Windows Vista のピアツーピアや Collaboration 技術についての WebCast があります。英語で恐縮ですが、興味のある方は是非ご覧ください。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://channel9.msdn.com/Showpost.aspx?postid=165133"&gt;Channel 9 &gt;&gt; The Videos &gt;&gt; Vista Collaboration&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/8166.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Teredo</title><link>http://www.exconn.net/Blogs/windows/archive/2006/03/21/8134.aspx</link><pubDate>Tue, 21 Mar 2006 06:44:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/03/21/8134.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;Windows Peer-to-Peer や MAX の解説でも出てきたように、マイクロソフトではピアツーピア通信を実現するために IPv6 の利用を推進しています。&lt;/P&gt;
&lt;P&gt;ご存知のように、現在の IPv4 での通信ではすべてのホスト（ノードと言ったほうがピアツーピアの説明では良いかもしれません）にグローバルアドレスを割り当てることは現実的ではありません。特に家庭内のネットワークでは、複数の PC や情報家電を持っていたとしても、２つ以上のグローバルアドレスを ISP から取得していることは稀でしょう。そのため、NAT と言われる技術が使われることになります。&lt;/P&gt;
&lt;P&gt;NAT は１つのグローバルアドレスで複数のホストをインターネットに接続することを実現しましたし、また家庭内外のセキュリティバウンダリとして、不必要なインバウンドの接続を遮断することにも成功しました。しかし、その一方で、NAT が介在することにより、インターネットでの通信が非対称となり、それによりもともとインターネットが持っていたピアツーピアの環境が失われてしまったこともまた事実です。&lt;/P&gt;
&lt;P&gt;現在、もっとも一般的なインターネットの使われ方と言われる Web アクセスやメールなどでは、NAT は問題にはなりません。なぜなら、これらはクライアント/サーバー形アプリケーションであり、NAT 配下のホストがクライアントとして振る舞い、サーバーである HTTP サーバーや POP?および SMTP サーバーにアクセスするからです。NAT では NAT 配下のホストから通信が発生する場合には、そのアウトバウンド通信に対応するインバウンド通信のためのルールが NAT 内のマッピングテーブルに生成されます。しかし、ピアツーピアアプリケーションのように、どのアプリケーションからインバウンドの通信が発生するかわからない状況では、NAT はその通信を阻害する要因となります。&lt;/P&gt;
&lt;P&gt;この NAT によりピアツーピア通信が阻害されてしまうことを俗に「NAT 越え問題」もしくは「NAT トラバーサル (NAT Traversal)」と呼びます。マイクロソフトでは、この NAT 越え問題を解決するために、UPnP (Universal Plug and Play) の IGD (Internet Gateway Device) を利用したルータの普及を業界各社とともに進めてまいりました。Windows XP?が UPnP のコントロールポイントとして動作することにより、必要なマッピングルールを IGD、すなわち NAT ルーター（またはブロードバンドルーター）に生成することができます。この UPnP を用いた NAT 対応のピアツーピア機能は MSN Messenger や Windows XP のリモートアシスタンスなどに使われています。&lt;/P&gt;
&lt;P&gt;このように、UPnP?を利用することで NAT 対策が可能になったのですが、これにもまだ問題がありました。１つはすべてのルーターが UPnP 対応になっていることは期待できないことです。残念ながら、市場には UPnP 対応と言いながらも、実態は MSN Messenger など一部の主要なアプリケーションの動作だけしか保証していない NAT ルーターが多くあります。このような場合、アプリケーションが UPnP 対応をしても、NAT ルーターによって、動作したりしなかったり、その結果は神のみぞ知るということになりかねません。また、もう１つの問題は、アプリケーション側の対応が必要という点です。アプリケーション開発者にとっては、単にインターネットアプリケーションを書くだけで、NAT が介在しようが、それとも直接インターネットに接続されていようが、同じ挙動をしてくれたほうが良いに決まっています。しかし、UPnP に対応するためには、開発者が UPnP を意識したコードを書く必要があります。&lt;/P&gt;
&lt;P&gt;そこで、マイクロソフトが考えたのが、IPv6 を用いたピアツーピアを実現する方法です。ただ、IPv6 は一般には ISP をはじめとする通信事業者により提供されている回線を購入する必要があります。これはネイティブ IPv6 環境と言われるものです。マイクロソフトはこのネイティブ IPv6 が無い環境、つまり IPv4 環境でも IPv6 を使えるようにするトンネリング技術を実装しました。トンネリング技術には、6to4 や ISATAP などいくつかの技術がありますが、どれも NAT が介在する家庭のような環境では簡単には使うことはできません。そこで、マイクロソフトが新たに開発したのが、Teredo という IPv4 の UDP を使うトンネリング技術です。&lt;/P&gt;
&lt;P&gt;簡単に説明すると、Tereodo は UDP を使うことで、NAT 越えを実現します。Teredo Server と呼ばれるインターネット上のサーバーを仲介者とすることで、NAT のマッピングテーブルに「穴」を開け、それを利用して UDP/IPv4 通信を実現し、その上に IPv6 トンネルを構築します。一口に NAT と言っても、その種類は Cone NAT、Restricted Cone NAT、Port-restricted Cone NAT、Symmetric NAT の４つに大別することができます。Teredoは、このうち、Symmetric NAT には残念ながら対応できません。しかし、マイクロソフトの実装では、UPnP IGD の技術を併用していますので、市場の NAT ルーターのおよそ９５％ほどに対応できています。&lt;/P&gt;
&lt;P&gt;今回は、ピアツーピアを実現するにあたって、必要となる IPv6 トンネリング技術－Teredo について書かせていただきました。本来でしたら、Teredo の仕組みについて書くべきなのですが、少し複雑で１回で書くことはできそうにありません。実は、以前、&lt;A href="http://www.ipv6style.jp/jp/index.shtml"&gt;IPv6 Style &lt;/A&gt;に記事を書かせていただきましたので、詳しくは&lt;A href="http://www.ipv6style.jp/jp/tryout/20030929/index.shtml"&gt;そちら&lt;/A&gt;を参照していただければと思います。なお、この記事では、Advanced Networking Pack for Windows XP をインストールすることで Teredo が利用できるようになると解説していますが、以前の投稿で書かせていただいたように、Advanced Networking Pack for Windows XP の機能はすべて Windows XP SP2 に含まれています。したがって、現在、SP2 を利用されているユーザーの方は追加でのパッケージの導入は必要ありません。&lt;/P&gt;
&lt;P&gt;そのほか参考資料を以下に紹介しますので、あわせてご参照ください。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.ietf.org/rfc/rfc4380.txt"&gt;RFC 4380 : Teredo: Tunneling IPv6 over UDP through Network Address Translations (NATs)&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/teredo.mspx"&gt;Teredo Overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/technet/prodtechnol/winxppro/evaluate/ipv6_teredo.mspx"&gt;Using IPv6 and Teredo&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/8134.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Windows Peer-to-Peer 概要（その２）</title><link>http://www.exconn.net/Blogs/windows/archive/2006/03/20/8100.aspx</link><pubDate>Mon, 20 Mar 2006 14:46:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/03/20/8100.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;本日はWindows Peer-to-Peer のアーキテクチャを解説します。&lt;/P&gt;
&lt;P&gt;Windows Peer-to-Peer は以下の図にある６つのコンポーネントにより構成されます。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.exconn.net/blogs//images/www_exconn_net/windows/67/o_p2p_ArchLarge.png"&gt;&lt;IMG alt="P2P Architecture" src="/blogs//images/www_exconn_net/windows/67/o_p2p_Arch.PNG"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;グラフィング (Graphing)&lt;BR&gt;「グラフ（&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face=Arial&gt;Graph&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN&gt;）」とは接続されたノードの集合を示します。グラフィングコンポーネントはこのグラフの管理とグラフ内のデータの配送と管理を行います。&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;グルーピング (Grouping)&lt;BR&gt;グルーピングコンポーネントはグループの作成、グループへの招待、グループへの参加などのセキュリティ機能をグラフに対して提供します。グルーピングコンポーネントは次に説明する PNRP (Peer Name Resolution Protocol) による名前解決と探索を利用しています。そのため、複数のアプリケーションが同一のグラフを共有することができます。&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;NSP (Name Service Provider)&lt;BR&gt;NSP はその名が示すように、名前空間を実現するサービスプロバイダです。Windows Peer-to-Peer では NSP を介して PNRP が利用されます。&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;PNRP (Peer Name Resolution Protocol)&lt;BR&gt;Windows Peer-to-Peer における名前解決を実現します。ピアツーピア環境では DNS 名 (FQDN) を使えません。そこで PNRP を用いた名前解決が実現されています。&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;識別マネージャ (Identity Manager)&lt;BR&gt;識別マネージャはピアツーピアにおける識別子の作成や管理を行います。&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN&gt;Microsoft TCP/IP バージョン 6 プロトコル (IPv6 プロトコル)&lt;BR&gt;Windows Peer-to-Peer では IPv6 通信が利用されます。IPv6 のネイティブ通信が実現されていない環境では、UDP/IPv4 を用いたトンネリング技術である Teredo を利用して IPv6 接続を行います。&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;以上の６コンポーネントが Windows Peer-to-Peer を構成するコアコンポーネントとなります。Windows Peer-to-Peer コンポーネントは通常の Win32 のアーキテクチャに沿って設計されているため、上位のアプリケーションインターフェイスは Win32 を、下位のネットワーク部分は WinSock を用いています。また、今後の連載で解説しますが、ピア間の認証については、CAPI (Crypto API) を用いた公開鍵暗号方式が採用されています。&lt;/P&gt;
&lt;P&gt;次回からはそれぞれのコンポーネントについてさらに解説を行います。&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/8100.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>ウィンドウズ開発統括部</dc:creator><title>Windows Peer-to-Peer 概要（その１）</title><link>http://www.exconn.net/Blogs/windows/archive/2006/03/18/7987.aspx</link><pubDate>Fri, 17 Mar 2006 15:26:00 GMT</pubDate><guid>http://www.exconn.net/Blogs/windows/archive/2006/03/18/7987.aspx</guid><description>&lt;P&gt;及川です。&lt;/P&gt;
&lt;P&gt;Winny ウィルスが猛威を振るっているときになんともタイミングが悪いという噂もありますが、あまり気にせずに Windows Peer-to-Peer の（不定期）連載を開始します。&lt;/P&gt;
&lt;P&gt;さて、Windows XP SP2 を使われている方が多いと思いますが、皆さんのその Windows の中に Windows Peer-to-Peer という機能が含まれていることにどれくらいの方が気づかれているでしょうか。SP2 を導入してある Windows で [Windows コンポーネントの追加と削除] から [ネットワーク サービス] の [詳細] を見てみてください。次の図のように、「ピア ツー ピア」 というコンポーネントが見つかると思います。&lt;/P&gt;
&lt;P&gt;&lt;IMG src="/blogs//images/www_exconn_net/windows/67/o_p2p_cpl.PNG"&gt;&lt;/P&gt;
&lt;P&gt;実は、この Winodws Peer-to-Peer は SP2 の前に &lt;A href="http://support.microsoft.com/default.aspx?scid=kb;ja;817778"&gt;Advanced Networking Pack for Windows XP &lt;/A&gt;という名称の追加ソフトウェアとしてリリースされていました。SP2 では、この Advanced Networking Pack の機能がすべて含まれています。&lt;/P&gt;
&lt;P&gt;Windows Peer-to-Peer はその名のとおり、Peer-to-Peer 通信を実現するためのインフラ機能を提供します。Peer-to-Peer 通信を利用したアプリケーションとして、マイクロソフトでは次のようなものを想定しています。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN style="FONT-FAMILY: 'ＭＳ 明朝'; mso-ascii-font-family: Century; mso-hansi-font-family: Century"&gt;リアルタイムコミュニケーション&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="FONT-FAMILY: 'ＭＳ 明朝'; mso-ascii-font-family: Century; mso-hansi-font-family: Century"&gt;コラボレーション&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="FONT-FAMILY: 'ＭＳ 明朝'; mso-ascii-font-family: Century; mso-hansi-font-family: Century"&gt;コンテンツ配信&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN lang=EN-US style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'ＭＳ 明朝'; mso-ascii-font-family: Century; mso-hansi-font-family: Century"&gt;分散処理&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;リアルタイムコミュニケーションは MSN Messenger をはじめとするインスタントメッセンジャーや VoIP のようなアプリケーションです。現在、多くのリアルタイムコミュニケーションは見た目は Peer-to-Peer であっても、実態はサーバーを介した、いわゆる「なんちゃって Peer-to-Peer」で実現されています。たとえば、MSN Messenger の場合でも .NET Messenger Service により通信は行われています（実際にはサービスやユーザーの通信環境によりその通信方法は異なります）。このようなリアルタイムコミュニケーションも Peer-to-Peer で実現することができたならば、たとえばインターネットに接続できないようなアドホックネットワークの環境でも利用することができます。&lt;/P&gt;
&lt;P&gt;コラボレーションはユーザー間の共同作業や情報共有のためのアプリケーションです。マイクロソフトの Exchange Server のようなグループウェアはいわゆるクライアント/サーバーのアプリケーションですが、一方で Peer-to-Peer をベースとした &lt;A href="http://www.groove.net/home/index.cfm"&gt;Groove Virtual Office&lt;/A&gt; のようなものも提供されています。Groove では Exchange Server のような専用のサーバーは不要ですので、たとえば複数の企業のメンバーにより構成されるプロジェクトでの情報交換や共同作業のための環境を簡単に構築することができます。また、悪いイメージが定着してしまっているようですが、ファイル交換アプリケーションなどもコラボレーションの一種と考えることができます。&lt;/P&gt;
&lt;P&gt;コンテンツ配信はストリーミングやパッケージの配信や配布を行うような利用形態になります。たとえば、Windows Update や Microsoft Update ではマイクロソフトのサーバーから更新パッケージをダウンロードします。たとえ、すぐ隣のマシンにすでにその更新パッケージがダウンロードされていても、サーバーからダウンロードするしか方法がありません。もし Peer-to-Peer でこの更新パッケージの配信を行うことができたならば、近くにすでにそのパッケージを保持するマシンがあったならば、そこから入手することができるようになります。&lt;/P&gt;
&lt;P&gt;分散処理はグリッドコンピューティングとも呼ばれるアプリケーション形態です。複数のマシンの空いた時間を利用して、大規模な数値計算を行うようなアプリケーションは現在でも多く提供されています。しかし、これらは基本的にサーバーからタスクを分割し、それをクライアントマシンに配布し、結果を再度サーバーにアップロードするという方法がとられています。もし、Peer-to-Peer を用いることができれば、隣接するマシンの負荷状況に合わせてタスクを効率よく分散することもできるようになるでしょう。&lt;/P&gt;
&lt;P&gt;ここでは４つほど一般的に考えられる Peer-to-Peer アプリケーション例を説明しましたが、実際にはこれら以外にも多くのアプリケーションが出てくることが期待されます。現在のインターネットアプリケーションは、NAT などにより Peer-to-Peer の実現が阻害されていることもあったため、クライアント/サーバーの形態をとることが多くなってしまっています。Peer-to-Peer が利用できるようになれば、今までに考え付かなかったような新しい形態のアプリケーションが出てくることが期待できます。&lt;/P&gt;
&lt;P&gt;今回はマイクロソフトの考える Peer-to-Peer のシナリオについて紹介させていただきましたが、次回は Windows Peer-to-Peer の構成要素について説明する予定です。&lt;/P&gt;&lt;img src ="http://www.exconn.net/Blogs/windows/aggbug/7987.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>