特集 きな要因でしよう。 P2P 技術の基礎知識 [ 2 ] このポリシーは、ネットワークに大きな負荷を与えるト ラフィックから順に制限するため、技術的には合理的です。 しかし、前 2 つのポリシーとは異なり、この挙動を一の 利用者に納得してもらうのカ攤しいという問題があります。 対策の実情 現時点では、これらの 3 つのポリシーを組み合わせて試 行錯誤を繰り返しているのが実情でしよう。たとえば、劣 化が生じている ( または、ほかの利用者からの苦情が多い ) 回線に限定してアプリケーションごとの制御装置を導入し たり、フローパラメータによってヘビーユーザーをある程 度絞り込んで帯域制御の対象にするといった対応がとられ ているようです。 やや旧聞に属しますが、国内のネットワーク運用者が 一堂に会する JANOG (Japan Network Operators' Group) における論議 [ 2 ] をみると、アプリケーション層 による制御は通信内容に踏み込みかねないため、実施した くないという意見が多数を占めました。また、ゲームなど のソフトウェア開発者からは、誤認識を懸念する声も上が っています。 ISP のなかにも、制御装置がコスト的に見合 わず、回線を増設したほうが安いと判断した例などもみら れました。 P2P 技術とインフラの将来 インフラとの相性 現在のところ、 P2P 技術とそのインフラとなるネットワ ークとの相性はあまりよいとはいえません。ネットワーク 側から P2P 才翅をみると、下位ネットワークをまったく考 慮しない構造、プロードキャストして応答が速いものを採 用する仕組み、分割ダウンロードでタイムアウトしないか ぎり、すべてにリクエストを送り、資源の無驪貴いに酉 しない、といった挙動が嫌われる要因となっています。し かしながら、短期的な品質を気にせず、常時だらだらとト ラフィックを送出する P2P アプリケーションは、負荷が もっとも高い時期を避けてくれれば、むしろネットワーク の効率的な利用に寄与するはずです。 にもかかわらず、なぜネットワーク運用において問題と なるのでしようか。前号でも触れましたが、現在の ISP の ビジネスモデルやネットワークの構造といったものと、 れらのアプリケーションのつくりカい違っているのが大 UN 工 X MAGAZINE 2005. 10 また、現在のところ大きな問題となっているのは、大容 量ファイルをやりとりする P2P 型ファイル共有アプリケ ーション、とくにアップロードのトラフィックです。今後、 法的規制などが進んでもこれらのトラフィックが増え続け るかは不明であり、事業者としては設備投資に踏み切れな い状況になっています。さらに、アップロード・トラフィ ックが本当にその利用者のメリットなのかが分かりにくく、 恩恵を直接受けるのは、ダウンロード側の ( ほかの ISP の ) 利用者であることが多いという面もあるため、その ISP の 利用者の直接のデメリットにはならないとして、制御を正 当化する本処の 1 っとなっています。 現時点で P2P のトラフィックをみると、品質にあまり 敏感ではなく、規制してもあまり大きな問題が生じないフ ァイル共有トラフィックが中心となっています。しかしな がら、今後、ファイル共有に留まらす有用な P2P 技術が ひろく普及していった場合、ネットワーク側でどのように 対処すべきかは、いまのうちに考えておく必要があるでし よっ。 インフラと相性のよい P2P 才 ネットワーク・インフラの側での対策については、現在 の ISP のビジネスモデルやネットワークの構造などの根本 的な見直し、あるいは、制御機構の導入といった方策が考 えられます。 その一方で、アプリケーション側からの歩み寄りも重要 でしよう。というのも、 P2P 才翅の普及のあり方によって はネットワーク側での規制やコストの増加などを招き、 のままいくと両者の進化を阻害するおそれがあるからです。 以下では、インフラと相性のよい P2P 技術の方向性につ いて考えてみます。 アプリケーション側での取組みとしては、たとえは下位 レイヤのネットワークに合わせて論理トボロジーを組み換 え、無駄なトラフィックを減らすアルゴリズムを実装する という方法もあるでしよう。しかし、それでは下位レイヤ を考慮しなくてもよいという P2P の利点の 1 っか議牲に なってしまいます。 折衷案として、 P2P 技術の標準化が考えられます。もっ とも強力なものとしては、多くのアプリケーションが 1 つ の P2P ネットワーク基盤を共有する方向がありますが、い 109
特集 P2P 技術の基礎知識 [ 2 ] 図 26 提案手法による Winny の通信の識別 P2P 空間全体 ポート番号による識別 ( 12 , 013 ) 3041 図 25 ヒ。ア情報の収集兄 ノード数 80 , 000 70 , 000 60 , 000 50 , 000 40 , 000 30 , 000 20 , 000 10 , 000 0 合計 タイムアウト 、、、・提案方式 ( 6 , 698 ) : 方式改善により ! : 拡大可能 SYNACK RSTAC K 40 60 80 100 120 140 160 20 P2P トラフィックの言嬲リは、以下の手川頁でおこないます。 測定時間 ( h ) 1. 任意の測定において、「論理ネットワークでのピア情報 す。グラフは、それぞれ以下の値を表しています。 収集」の項で述べた手法を用いて論理ネットワークでの ピア情報を収集する。 合計 : 総ピア数 2. P2P トラフィックを含むバックボーン・ネットワークで ・タイムアウト : 総ピア数のうち、ピアが消滅したか、フ レイヤ 3 の測定を実施し、 IP アドレスとポート番号を ァイアウォールの内側にあると思われるノードの数 含むヘッダをダンプする。 ・ SYNACK : サービスカ甘是供可能な状態にあるノードの 3. 上記の 1 で得られたピア情報とヘッダ部分がマッチした 数 バケットを P2P トラフィックとみなす。 ・ RSTACK : ノード自体は稼動中だが、アプリケーショ ンが終了したと思われるノードの数 この手法ではペイロード監視力坏要なので、バックポー ンなどの高集約かっ広帯域の回線に対しても適用できる可 SYNACK を返したノードはアクテイプノードと思われ 能性があります。 ますが、彳少に 24 時間での周期カめられます。とはい 図 26 は、ある細織の対外回線における Winny のトラ え、人間らしい生活をしているとおばしきノードは、そのう フィックを識別した結果です。ポート番号による方法では ちの 1 ~ 2 割程度に留まっているのが未深いところです。 検知できなかった Winny 通信をおこなっているアドレス P2P トラフィック言リ法 が、 4 , 000 以上識別できたことが分かります。この結果で 以上のようなアプリケーション層におけるピア情報収集 は、ポート番号による識別よりも提案手法によって得られ では、内部構造カ坏明な P2P アプリケーションであって たアドレス数のほうが少なくなっていますが、ピア情報の も、一般ユーザーとして起動し、 P2P 動作ノードにおけ 収集に利用するノード数を増やすといった方式改善により、 る IP 層での通信を測定することでピア情報が収集可能で さらに多数のトラフィックカ哉別できる可能性があります。 あり、広範囲に適用できます。 これに対し、ポート番号による方法では、これ以上の識別 この手法によって得られたピア情報と特定リンク上を流 は不可能なので、提案技彿 j : の有効性が示せたといってよい れるトラフィックのバケットヘッダ情報を照合すれば、特 でしよう。 定リンク上における P2P トラフィックカリできます。 0 P2P 技術普及のために何が必要なのか ? ー歴史からの視点 えているようにみえる。たとえば、最近は P2P 型ファイ P2P 才翅は、ファイル共有やメッセージ対奐、音声通信 など、さまざまな応用において普及のフェーズを迎えてい ル共有アプリケーションの利用による音楽・映画の著作権 侵害や、 P2P トラフィックの急増 [ 4 ] などの問題カ駐目を る。しかし、本格的な普及については少なからぬ課題を抱 113 UNIX MAGAZINE 2005. 10
0 ー P ルーティンク 小原泰弘 旧 v6 ルーティング ( 2 ) 前回は、ルーティングにおける IPv4 と IPv6 の違いを みました。具体的には、 IPv6 の概要、アドレス構造の違い、 アドレスの設疋方法や、ステートレス・アドレス自動言幾 構を説明しました。 NDP (Neighbor Discovery proto- col) についても軽く触れ、 Zebra において RA (Router Advertisement) メッセージを送信する際の設疋例を紹介 しました。 54 ットワーク資源を使いながら、まったく独立に構築されま IPv6 は通常、既存の IPv4 ネットワークと同じ物理ネ トンネノレ 点を絞ります。 るものとし、今回は、 IPv6 ルーティングの実際の言殳定に焦 参照してください。プロトコルの概念や動作は理解してい コルの概念や動作に関しては、それぞれをとりあげた回を ル (RIP 、 OSPF 、 BGP) の定を解説します。各プロト に、連載でこれまで紹介してきたルーティング・プロトコ 次に、一ヨ殳的な IPv6 サイトを想定し、このサイトを例 照してください。 要や静的トンネルとの違いについては、 RFC2893 [ 1 ] を参 の動的トンネル設定はとりあげません。動的トンネルの概 figured Tunnel) です。 6t04 や ISATAP 、 Teredo など 静的な IPv6 回線として利用できる静的トンネル (Con- ワークを構築できるようになります。今回紹介するのは、 り、既存の IPv4 インターネット上にイ反想的に IPv6 ネット 須の、トンネルの概念と設定方法を説明します。これによ まず、イ反想的に IPv6 ネットワークを拡大するために必 ルーティングをおこなうために必要な知識を解説します。 今回は、 IPv6 ネットワークを構築し、その上で実際に 図 1 可泉の多重化と IP バージョン Ethernet 回線 す。言い換えると、同じ物理ネットワーク回線に IPv4 ト ラフィックと IPv6 トラフィックが混在するかたちで構築 されるのが普通です。この IPv4 と IPv6 が混在する状態 をテュアルスタック (dual stack) であるなどと呼びます。 しかしこのような状態でも、 IPv4 のネットワークと IPv6 のネットワークは論理的には別々のネットワークです。そ のため、 IPv4 には IPv4 のルーティングが、 IPv6 には IPv6 のルーティングが必要となります。 たとえば、 IEEE802. IQ VLAN によって多重化された Ethernet 回線があるとしましよう。このとき、それぞれ の tagged VLAN を通過させるバケットの選択肢として は、 IPv4 のみ、 IPv6 のみ、 IPv4/IPv6 の両方が考えら れます ( 図 1 ) 。 IPv6 ネットワークを構築するとき、ルータやネットワ ーク回線によっては、 IPv6 ノードや IPv6 トラフィック を IPv4 と同居させることカましくなかったり、機器の 能力の面から不可能であったりします。そのため、 IPv6 ネ ットワークはやや疎らなものになり、ところどころで分断 された飛び飛びのネットワークになることも珍しくありま せん。しかし、通信ネットワークはお互いカ続されてい なければ未がありません。この疎らな IPv6 ネットワー 旧 v4 / ヾケット 旧 v4 / 旧 v6 / ヾケット 旧 v6 バケット UNIX MAGAZINE 2005 . 10
ズ、フラグなどの特定のパターンを参照し、用意したデー タベースと比較して P2P 通信を識別するものです。 これは、ウイルス検出やファイアウォールにおける侵入 検知などに用いられているシグネチャ・マッチングと呼ば れる手法と同等です。したがって、これらの手法と同じく、 パターンファイルの頻繁な更新が必要です。また、ほかの 通信を偽装するようなバケットや暗号化への対応も難しく、 誤認識の確率カ皜いという側面もあります。さらに、バッ クポーンなどですべてのバケットを識別対象にするような 場合は、大規模化にかかわる問題もあります。 現在、市販されている製品ではこのアプローチをとるも のが多く、代表的なものには Ellacoya や P-Cube などが あります。なかには、 ASIC を用いてペイロードの頁数 バイトに対するシグネチャ・マッチングを高速化し、大容 量回線への適用を目指した製品も登場しています。 アプリケーション層での言虧リ より精度の高い方式として、図 19 ー d のペイロード部分 をすべて読み込み、アプリケーション層でのバケットの組 立てをおこなう方式もあります。対象とする P2P のプロ トコルを完全に解析しなければなりませんが、バケットを 確実に識別できるだけでなく、ダウンロード先の選択やコ ンテンツのキャッシュといったきめ細かな制御カ河能にな ります。 Sandvine や CacheLogic の製品が、このような機能を もっています。すこし毛色の変わった製品として、解析し たアプリケーションのプロトコルにもとづいてバケットが 制御できる Netagent の One Point WaII があります。 複数レイヤでの測定の組合せによる言リ こまでにみてきたように、ネットワーク層の測定のみ による P2P トラフィックの識別は大規模環境への対応が 難しく、バックポーン・ネットワークなどでは適用しにく いという問題があります。また、アプリケーション層での 識別には詳細なプロトコル解析が必要なため、新たなアプ リケーションやバージョンアッフ。への対応力灘しくなりま すにれは、シグネチャ方式についても同様です ) 。 このように、既存の手法にはおもにスケーラビリティと アプリケーションへの依存という課題があります。私たち の研究グループでは、これらの問題を解決するため、アプ リケーション層およびネットワーク層での測定を組み合わ 108 せた P2P トラフィック識別法を研究しています [ 1 ] 。 の手法の概要については、別掲の「複数レイヤ情報を用い た P2P トラフィックの識別法」をご覧ください。 ISP の対策の現状 P2P トラフィックの急増を受け、利用者との契約約款を 改定したり、制御ポリシーを変更する ISP も出てきていま す。利用者カ値接利用する ISP との契約は変わらなくて も、その ISP と上位の ISP との契約か変更されている場 合もあるでしよう。 制御ポリシーに関しては、総量規制とアプリケーション ごとの規制、フローのパラメータによる規制などがあり、 れらを組み合わせて適用している例が多くみられます。 れらについて説明します。 総量規制 アプリケーションの種別にかかわらず、トラフィック量 によって規制するポリシーです。たとえば、 1 日の総ファ イル輯医量が 15GB を超えた場合、以降の通信は帯域を絞 るといったものです。なかには、解約条件として明記して いる ISP もあります。 利用者にとっては比較的分かりやすく、制御方式もそれ ほと灘しくありません。しかし、多くのユーザーが制限転 送量ギリギリまで使うと、やはり帯域不足が生じるという 問題はあります。 アプリケーションごとの規制 容易に想像できるように、 P2P トラフィックを識別し、 そのトラフィックに帯域制限などをおこなうものです。 さきほども述べたように、このポリシーは識別法に課題 があります。また、誤認識や、アプリケーション開発者の 回避策にパターンファイルの更新が追いつかなくなる危険 をはらんでいます。 フローパラメータによる規制 送信元アドレス、送信先アドレス、ポート番号が同一で あるバケットの組を、、フロー " と定義し、このフロー単位で 通信を制限することで、ネットワークに過大な負荷を与え ている通信を特定します。このようなフローパラメータに よる制御ができる装置としては、 Caspian Networks の Aperio などがあります。 UNIX MAGAZ 工 NE 2005 . 10
特集 P2P 技術の基礎知識 [ 2 ] 図 19 バケット・キャプチャのイメージ -addr. 日P0てt flag payload addr. sport > dst—addr > dst-addr . > dst—addr > dst—addr 0 > 三 dst addr ー addr addr ー addr addr addr ー addr addr addr SI*C— . sport . sport . sport . sport ・ sport . sport . sport . sport . sport > : dst—addr . dport メ dst—addr. dport > dst-addr. dport flag . dport flag seq/sizeapayload dport flag seq/size payload• . dport flag seq/size payload dport ,flag seq/size. payload . dport S1ag seq/size payload > dst—addr. dport flag seq/size 'payloa& 0 flag seq/size: payload flag seq/size: payload seq/siz*payload dst—addr . 0 P2P トラフィックの識別 UNIX MAGAZINE 2005. 10 リケーションもあり、ポート番号でのトラフィック識別を めに、初回起動時に利用ポートをランダムに決定するアプ できます。なかには、ネットワークでの規制を回避するた 利用する TCP ポートは各ユーザーが自由に決めることが めに IP アドレスとポート番号の組を使います。このため、 多くの P2P アプリケーションは、互いの位置を知るた 方法です。 側の運用が厳密に規定されている場合にはきわめて効な 省略時に自動的にポート番号が定まる場合など、サーバー 定められているサービスや、 Web などのようにポート番号 は、電子メールのように利用するポート番号が標準として の TCP の着番ポートを用いるものです ( 図 19 ー a ) 。これ トラフィックのもっとも基本的な言嬲リ方法は、 IP ヘッダ TCP ポート番号で窈リ での測定結果です。 ん ) 。これは、レイヤ 3 ()P 層 ) およびレイヤ 4 (TCP 層 ) で得られる情報といったほうが分かりやすいかもしれませ 得られるデータのイメージです (tcpdump や Ethereal 図 19 は、ネットワーク層でのバケット・キャプチャで も大きな要因となっています。 通信ポートを変更するなど、完全に自律的に振る舞うこと 繁にネットワークへの参加や離脱を繰り返したり、自由に く、個々の制御がおよばないクライアント・ノードが、頻 情報が集約されるポイントがないからです。それだけでな ーバー型システムにおけるサーバーノードのような全体の のも、 P2P ネットワークにおいては、クライアント・サ バー型トラフィックと比較すると識別が困難です。という P2P トラフィックは、 Web などのクライアント・サー 図 20 Gnutella/Winny のポート番号の利用比率 9635 3.51 % 8696 6.83 % - 7108 Gnutella Oth e r 22 23.54 % 26.01 % 6346 37.71 % Winny 7742 5412 7743 18.65 % othe r 72.71 % 10038 4. % 15935 、、 L80 % さらに困難にしています。 2.40 % / / するアプリケーションのプロトコル仕様を事前にある程度 の P2P アプリケーションへの適用は難しく、識別対象と ョンに対してはきわめて肩勠です。その一方で、ピュア型 セッション追跡は、ハイプリッド型 P2P アプリケーシ の通信を P2P 通信とみなします。 るサーバーのような特定アドレスへの通信を検知し、以降 体的には、ハイプリッド型 P2P アプリケーションにおけ この場合は、図 19 ー b で示した部分の情報を使います。具 続いて、セッション追跡による識別方法を紹介します。 セッション追跡による言リ ートを利用しているノードも多いことが分かります。 7743 をデフォルト値としていますが、実際にはその他のポ たものです。これらは、それぞれ TCP ポート番号 6346 、 測定ポイントに隣接したノードの利用ポート番号を集計し 図 20 は、 Gnutella と Winny のネットワークにおいて、 この方法は、図 19 ー c のペイロード部分やバケットサイ シグネチャ方式による言リ 知らなければなりません。 107
地で提供され、 CoraI の P2P プロキシーノードの配置状 況は図 18 のようになっています。 FUSE-CLOOP を用いたダウンロードでは、レイテン シの景彡響を受けやすいことが分かっています。とくに、欧 米との接続は 100mS 以上のレイテンシがあることが分か っているため、できるだけ近くにノードを配置する必要が あります。 CoraI は、欧米に対して職商なプロキシーノー ドを配置しているため、これを活用します。 FUSE-CLOOP を用いたインターネット経由のプート では、 CoraI のリクエスト・ルーティングに頼るだけでな く、クライアント側にもレイテンシを短くする機能を付加 しました。この方式では、プロキシーとクライアント間の ネゴシェーションによってダウンロード先を決定します。 これは、 CoraI が P2P プロキシーの候補として返す複数 の IP アドレスのなかから netselectll によって選択して います。 netselect は、 traceroute を用いてクライアント から近いサイトをみつけるツールです。ネットワークのレ イテンシが最短のサイトを選択し、 FUSE-CLOOP 経由 でのダウンロード先とします。 Coral のプロキシーの先は P2P になっており、短いレイテンシで、、どこからともなく " 高速なプートができるはずです。 現実 理想はここまでに書いたとおりですが、現実はなかなか 思いどおりになりません。 CoraI を使っても最初はキャッ 11 http://www.worldvisions.ca/-apenwarr/netselect/ シュされていないので遅いのは当然ですが、数回使っても 期待したほどの効果が得られません。速くはなりますが、 coral から割り当てられるプロキシーは欧米にあるため、 レイテンシが長すぎるのです。また、割り当てられたプロ キシーも、キャッシュがなければ意味がないので、プロキ シー間にブッシュ型のキャッシュ配信が必要と考えていま す。プロキシーであれば、 ICP (Inter-Cache Protocol) によってキャッシュ内容を融通する機能もあり、これを活 用するのも今後の課題です。 現時点では、日本国内でフリー・ソフトウェア配信用の ミラーサーバーである Ring server プロジェクト 12 カリ 用できるため、国内からはこちらを活用したほうが高速に プートできます。 Ring Server プロジェクトには、大学や ISP などの 20 以上のサイトが参加しており、地理的にもネ ットワーク的にも分散しています。クライアントから近い ミラーサーバーがみつけやすく、 HTTP-FUSE KNOP- PIX を短いレイテンシでプートできます。ただし、 Ring のミラーサーバーはディスク容量の増設や利用者の増加に ともなう拡張カ攤しいため、今後は Ring のミラーサーバ ーを併用しつつ、 Coral を含めたよりよい P2P システム を開発 ( 発見 ? ) して移行したいと考えています。 HTTP-FUSE KNOPPIX は、下記の URL で公開し ています。卿未のある人は、ぜひお試しください。 ・ http://unit.aist.go ・ jp/itri/knoppix/http-fuse/ 12 http://www ・ ring ・ gr ・ jp/ 続・ P2P とネットワーク・インフラ 前号では、 P2P トラフィックの急増がネットワークに与 えるインパクトについて、国内インターネット・インフラ の現状と P2P 技術の特徴を軸に解説しました。 簡単に復習しておきましよう。 P2P のトラフィックは、 これまでインターネットにおいて主流を占めていた Web などのクライアント・サーバー型アプリケーションによる ものとは性質が異なります。それゆえ、ネットワークの運 用や構築に際して、 P2P 技術の普及が大きな影響をおよば しつつあるというのがおもなポイントです。 なかでも、 P2P 技術の大きな課題として、トラフィック 106 の識別カ攤しいという点があり、そのために対応策が後手 後手にまわっているのが実情です。 以下では、進みつつある P2P トラフィックの制御技術 と、各プロバイダ (ISP) がとり始めている対抗策の現状に ついて解説します。また、 P2P ファイル共有トラフィック への対抗といった刹那的対策に留まらず、 P2P 技術の将来 についてより広い彳 f を示す一助としたいとの考えのもと、 P2P 技術とネットワーク・インフラのより幸福な未来に向 けた方向性と、インフラへの応用例についても考察したい と思います。 UN 工 X MAGAZ 工 NE 2005 . 10
図 23 ヒ。ア↑黼 & の甬窈士組み 論理リンク 新規参加ピア 初期ビア情報 図 24 アプリケーション層でのトラフィック浪症 論理ネットワークを 定期的に切断 ハブ 論理ネットワーク 複数レイヤ情報を用いた P2P トラフィックの識別法 以下の解説は、私たちの研究グループカ甘是案している複 数レイヤ情報を用いたトラフィック識別法の概要を紹介し たものです。詳細は文献 [ 1 ] をこ覧ください。 ピアの情報 P2P ネットワークにおける一般的な新規参加ピアの接 糸魎カ作は、以下の手順でおこなわれます ( 図 23 もあわせて 参照してください ) 。 1. すでに P2P ネットワークに参加している端末似下、ピ ア ) の IP アドレスとサービスポートの組 ( 以下、ピア情 報 ) を初期ノードリストや掲示板など、なんらかの方法 で入手する。 P2P 2. 新規参加ピアは、取得したピア情報をもとに、ほかのピ ア ( ーヨ殳には複数 ) への接続を試みる。 3. ピア間で複数の論理リンクを確立する。 なりません。逆に、アプリケーション層での測定だけでは、 4. さらに、検索バケットや定期的に各ピアから発行される 特定のアプリケーションに依存することになります。 生存確認バケットからもピア情報を入手し、イ尉寺してい これらの課題を解決するため、アプリケーション層とネ るピア情報データベースを更新する。 ットワーク層での測定を組み合わせてピアの動作ノードの 5. ピアの消滅やネットワーク・トラブルによって論理リン 情報を取得する手法を研究しています。ピア情報は、識別 クが切断されたときは、上記の 4 で得たピアへ論理リ 対象のアプリケーションを一 -- 引殳ユーザーとして動かせれば、 ンクが一一一定数になるまで再接続を試みる。 ネットワーク層での測定との組合せによって収集できます。 この手法ではこれを利用し、アプリケーションに依存しな P2P ネットワークにおいて汎用的に収集できる情報は、 い沙開的な適用を可能にしています。 こで挙げたピアの動作アドレスとサービスポートを組と 図 24 の環境を前提とした場合、測定手順は以下のよう した、、ピア情報 " になります。アプリケーション層で情報 になります。 を収集する場合、アプリケーション内部で保持している情 報から 4 で流通するピア情報を直接収集することも可能で 1. 任意の地点において、 P2P アプリケーションを 1 ユー すが、それにはアプリケーションの改造かバケットのデコ ザーとして起動し、 P2P ネットワークに接続する。 ードが必要になります。しかしながら、 P2P アプリケー 2. P2P 動作ノードと同一ノード、あるいはダムハプなどに ションにはソースコードやプロトコルが公開されていない よって州岐させたノードでバケットダンプを実施する。 ものも多く、告や解羽仂坏可能なこともあります。また、 3. ダンプデータから、 P2P 動作ノードの通信相手であるピ ネットワーク層での測定にもとづき、ピア情報を直接取得 アが稼動しているノードの IP アドレスと利用ポートを することもできますが、アプリケーションへの依存、スケ 収集する。 ーラビリティの両面から考えると容易とはいえません。 以上の手川頁により、測定対象の P2P ネットワーク上に 里ネットワークでのピア↑黼収集 あるピアの情報が得られます。 図 25 は、 Winny におけるピア情報の収集状況と、 SYN このように、ネットワーク層での測定にもとづいてピア バケットを用いて各ピアの状態を継続的に監視した結果で の情報を取得するには、さまざまな課題を解決しなければ P2P ネットワーク自 2 ネットワーク層測定 P2P 一三ロ 112 UNIX MAGAZINE 2005. 10
連載 / ネットワークとセキュリティ している IOS に特殊な HTTP GET リクエストを送 信することで、機器カ舸起動する脆弱性 [ 3 ] カ斗及告され ました。また、 2004 年 11 月には、 DHCP メッセージ の処理に関する脆弱性 [ 4 ] 力開されています。 不要なサービスを停止することで、既知もしくは未知の 脆弱性の影響を回避したり、軽減することカ待されま す。前者の例であれば、通常の環境では HTTP サービ ス、後者の例では DHCP サービスを停止するだけで、 この問題を回避できました。 なお、 IOS か動作しているネットワーク機器が開いてい るポートを確認するには、以下のコマンドを実行します。 Router# show ip sockets その他のポイントは次のとおりです。 ・ ICMP 関係の応答を最小限にとどめる。 ・コンソール接続や VTY 接続 (telnet など ) のログイン 時のパスワードを設疋する。 一定時間操作がおこなわれない場合、自動的にログアウ トするように言定する。 アクセスリスト (ACL) に関する勧告 ・ ACL の内容を変更する際には、いったん ACL の設疋 内容を完全にクリアする ただし、リモート経由でネットワーク機器を操作してい る場合には、アクセス元からの接続を許可している ACL を無効にすると操作できなくなってしまうため、細心の 注意が必要です。 送信元 IP アドレス詐称の防止 ネットワークの外部から送信元 IP アドレスを詐称した トラフィックの流入を防止すると同時に、 IP アドレスを 詐称したトラフィックの流出をに山 E するため、 lngress Filtering を正しく実装することが重要です。この問題 の詳細については、 RFC2827 [ 5 ] が参考になります。 通常は存在しない送信元 IP アドレスからのバケットを 破棄する プライベート IP アドレス、ループバック IP アドレス などの存在しない IP アドレスからのバケットを破棄す るよう設疋します。 The Team Cymru Bogon Reference Page の Web サイトでは、まだ IANA が割り当てていない IP アド レス空間の情報がまとめられています。 Cisco IOS や、 ールをリリースしています。 RAT は、 NSA ( 米国国家安全保障局 ) が公開している NSA/SNAC Router Security Configuration Guide の内容にもとづき、ルータなど IOS カった機器の誌定を チェックできます。 RAT には、 Windows 版と UNIX 版が用意されてい ます。今回は、 UNIX 版を Red Hat Enterprise Linux 4.0 ( 以下、 RHEL4) のクローン・ディストリビューショ ンである CentOS 4.1 で利用する前提で説明を進めます。 ただし、 UNIX 系 OS であれば、ほば同様の手順で利用で きると思います。 NSA のガイドの概要 RAT では、 NSA/SNAC Router Security Configu- ration Guide の内容をもとにセキュリティ監査をおこな います。ここでは、ガイドから重要と思われる項目をピッ クアップしてみました。 一般的な勧告 ・ルータに関するセキュリティ・ポリシーを作成し、維持 する。 ・オフラインでマスターとなる設定ファイルを保存してお く。また、稼動しているルータの設定をオフラインに保 存する。これにより、万が一 -- ー設定力敏竄された場合でも、 問題を容易に特定、イ夏できる。 ・必要なプ 0 トル、ート、 IP アドレスに 00 、てのみ通 信を許可するアクセスリストを譿定する。 ・セキュリティ上の月弓性カ正されたバージョンの IOS を利用する。 ( とくに設定変更後は ) ルータのセキュリティを確認す る。 ルータアクセスに関する勧告 ・不要なサービスを停止する UNIX や Windows のサーバーと同様、 IOS が稼動す るネットワーク機器ー . ヒでも SNMP や HTTP といった さまざまなサービスカ働いています。残念ながら、 IOS でも、特定のサービスにセキュリティ・ホールが発見さ れることがあります。 たとえば、 2003 年 7 月には、 HTTP サーバーが稼動 44 UNIX MAGAZINE 2005 . 10
まのところはあまり現寒未がありません。そこまでいかな くても、下位ネットワークとオーバーレイ・ネットワーク との情報交換のプロトコルや、 P2P の特徴的な振舞いであ るフラッディングなどを標準化する動きがあれば、インフ ラ側で P2P に適したネットワーク設計や運用ができるか もしれません。たとえば、上位のトラフィック情報を取得 してネットワークの運用や設計に活かす仕組みや、フラッ ディング時に発生するバケットを節約するプロキシーのよ うなものが考えられます。 もちろん、こういった方向性は、 end-to-end で端末が頑 張り、回線は、、土管 " でもかまわないというインターネット や TCP/IP の大原則に反するとの指摘もあります。しか し、 Web の大規模化の過程でもみられた CDN やロード バランサーといった補強技術、 ( まだ十分には普及していま せんが ) ストリーミングに対するマルチキャスト拡張など、 支配的なトラフィックに対してインフラ側での技術開発が 進むという繰返しも必然的だと思われます。 インフラへの P2P 技術の応用 P2P 技術には、システムとして大規模化に対応しつつ、 障害にも強く、高い信頼性カ躱てるという特徴があります。 これは、インフラに求められる機能と共通する部分があり ます。また、 Skype にみられるように、安価で大規模なイ ンフラを構築することも可能です。 私たちの研究グループでは、 P2P 技術を用いたインフラ としてオーバーレイ・ルーティング技術の研究 [ 3 ] をおこ なっています。以下では、これを簡単に紹介します。 オーバーレイ・ルーティングの概要と目的 オーバーレイ・ネットワークとは、既存のネットワーク・ リンクを利用し、その上位層において目的に応じた仮想的 なリンクを形成 / 構成するネットワークのことです。主要 な目的は、下位ネットワークに不足している機能を補う点 にあります。 現在のインターネットでは、どのような機能の追加カ球 められているでしようか。もちろん、さまざまなものが考 えられますが、私たちはネ礬隹化する一方のインターネット、 とくに複数の ISP をまたがるような環境で品質や信頼性を 向上させることができないかと考えました。現在の品質制 御技術は、 MPLS や DiffServ といったルータの拡張が主 110 流です。しかし、このような機能を複数の ISP からなる環 境に導入するには、装置の置換えやポリシーの統一などに かなりのコストがかかり、非現実的です。 これまでにも、上記のような目的意識のもとに、オーバ ーレイ・ネットワークにおいて品質制御をおこなおうとい う研究はありました。しかし、その多くは、ルータやサー バーなどの固定的なノードによる実現を目指すものでした。 そのため、 P2P 技術の普及と大規模ネットワークでの実力 カ第平価されてはじめて現実的となった、エンドホスト・べ ースでの取組みはようやく緒についたばかりといえます。 基本的な仕組み オーノヾーレイ・ルーティングでは、参加している多数の ューザーノードがもつネットワーク資源をリアルタイムに 配分し、ネットワーク全体でリソースを最適化しようとし ます。これは、ネットワークによるグリッド・コンピュー ティング的な振舞いと捉えることもできます。 余談になりますが、、、グリッド・ネットワーキング " とい う用語は、一ヨ殳にはネットワークを利用して CPU やスト レージを配分するグリッド・コンピューティングのことを 指します。しかし、上記のようにネットワーク・リソース を配分する技術こそ、真のグリッド・ネットワーキングと Ⅱヾるのではないかと思います。 話を戻しましよう。オーバーレイ・ルーティングと、グ リッド・コンピューティングやファイル / CPU 共有型の P2P 孑翅化の大きな違いは、配分すべきリソースの価値が 時間や位置によって変わる点です。これらのリソースの価 値は、ネットワーク上で刻一刻と変化するだけでなく、幹 線に近いところにあるもののほうカ面値カ皜いなど、位置 によっても変わります。このため、単純な最適化問題に定 式化するのカ攤しく、研究テーマとしても挑戦しがいのあ るものとなっています。 リソースの最適化というと抽象的ですが、単純化すると、 図 21 のように、他ノードを経由したオーバーレイ糸各によ って障害地点を回避するというのがもっとも基本的なコン セプトです。 有効性の謌曲 以上のようなオーバーレイ・ルーティングのインフラは、 現在の ISP 間接続において品質制御カ果的に機能してい ないことを前提としています。ほとんどの場合、手作業で UN 工 X MAGAZ 工 NE 2005. 10
contents 2 囲 5 / 10 0iS00 Aironet で 無線し AN ・・・大江将史 大規模な無線し AN 環境を前提として、アクセスホイントの設置をはじめとす るネットワーク設計の基本方針、物理的な設置に関する注意点を解説。後半 では、マルチプル SS 旧 V し AN 、有線・無線間のプリッジ、 RADIUS サーバ ーを用いた MAC アドレス認証の設定方法などを解説する P2P 技術の基礎知識 ・・井上誠一郎、須崎有康、亀井聡、大谷卓史 DHT の Pastry アルゴリズムの実装例として Bamboo をとりあげ、サンプ ルコードを示しながらプログラミング方法を解説。また、 P2P 技術を用いた シンクライアントの実装への試みを紹介する。さらに、 P2P トラフィックの制 御技術と各プロバイダの対策の動向、そして、技術史の観点からみた P2P 技 術の普及に向けた展望も述べる [ 特集 ] 22 連載 4 4 5 6 7 8 1 UNIX Communication Notes ・ " ・ " 山口英 無線 LAN 環境を守る ネットワークとセキュリティ・・・・・・白畑真 Cisco ー OS の設定監査ツール RAT ー P ルーティング・・・・・・小原泰弘 Zeb 「 a での一 P 6 ルーティング ネットワーク・ミニ実験室・・・・・・荒井美千子 スレーブサーバーとゾーン転送 プログラミング・テクニック・・・・・・多治見寿和 cf ⅱ ne 関数ーーー sys g 関連の設定ファイルの解析 Pe 活用のヒント 今津英世 簡易 HTML コンテンツ管理システム genhtpg 天文学と UN Ⅸ 台坂博 GRAPE のホスト計算機を探す COVER, CONTENTS DESIGN ・ MORIYA, KAZUO (AUDREY THE DESIGN) 0