ページの本文へ

Hitachi

Hitachi Incdent Response Team

HIRT-PUB08001:クローリング調査を用いたファイル交換ソフトのノード数推定

更新日:2008年1月16日

2007年12月21日に、社団法人コンピュータソフトウェア著作権協会からファイル交換ソフト利用実態の調査結果が公開されました。この調査結果の中で、「クローリング調査」によるWinny2、Shareなどのノード数、ファイル数が報告されています。
HIRT-PUB08001では、クローリング調査を用いたファイル交換ソフトのノード数推定について紹介したいと思います。

関連リンク

クローリング調査とは?

ファイル交換ソフトには、ファイル交換ソフトが稼動するパソコン(以降ノード)やファイルの所在を中央サーバで管理する垂直型と、Winny、Shareのように中央サーバを用いない水平型があります。 水平型ファイル交換ソフトの場合、不特定多数のノードと通信する必要があることから、各ノードはなんらかの形で他ノードの情報(例えば、IPアドレスやポート番号)を保持している必要があります。クローリング調査は、図 1に示すように、ノードが保持している他ノード情報を取得するという操作を繰り返していく事で、ファイル交換ソフトが稼動するノードを網羅的に調査するという方法です。

図1:クローリング調査
図1:クローリング調査

クローリング調査で得られる情報とは?

クローリング調査を通して取得できる情報には、ファイル交換ソフトが稼動するノード情報(IPアドレス、ポート番号など)と、ファイルの所在情報(IPアドレス、ポート番号、ファイルのハッシュ値(ファイル内容の識別情報))があります。
したがって、ある観測時間内に見つけたノード情報を重複を省きながら累積していくことで、ある観測時間内に稼動していたノード量を推定することができます。また、ファイル内容の識別情報を重複を省きながら累積していくことで、ある観測時間内に流通していた一意なファイル量を推定することができます。

図 2は、1時間毎にWinny2のノード情報(IPアドレス)を重複を省きながら累積した件数の一ヶ月間のグラフ(2007年10月1日から10月31日まで)です。このグラフから一ヶ月で約200万個の異なるIPアドレスが使われたこと、10月1日だけを取上げると約20万個の一意なノード情報(IPアドレス)が出現したことになります。約20万ノードという数値は、社団法人コンピュータソフトウェア著作権協会が報告した『本調査では、一日で 264,252 件の一意なノード情報を収集した。』とほぼ同じ値とみることができます。

図 2:Winny2のノード情報(IPアドレス)を重複を省きながら累積したグラフ
図 2:Winny2のノード情報(IPアドレス)を重複を省きながら累積したグラフ

図 3は、1時間毎にWinny2のノード情報(IPアドレス)の増加数を抽出したグラフです(図 2の累積数の差分/時)。このグラフから毎時1,500から4,000ノードが新たに出現していること、明け方の増加数が少なく、夜中の増加数が多いという傾向が現れています。

図 3:Winny2のノード情報(IPアドレス)の増加数の推移
図 3:Winny2のノード情報(IPアドレス)の増加数の推移

このように累積数が常に増加したり、累積数の差分が増減を繰り返したりするのは、Winny2を動かしているパソコンをインターネットに接続した際に割り当てられるIPアドレスが接続毎に異なる場合があるからです。

稼動しているノード数は?

それでは、稼動しているノード数(電源の入っており、インターネットに接続している状態のパソコン)はどのくらいなのでしょうか?
この疑問は、観測時間を短く、かつ、ファイル交換ソフトが稼動するノードを網羅的に調査することで解決できるはずです。具体的な実現方法のひとつは、複数台の観測装置を用いることで、網羅性を維持しつつ、観測時間を短くすることです。

図 4は、観測時間を1時間とし、観測装置の台数を増やすながら、かつ、Winny2のノード情報(IPアドレス)を重複を省きながら累積した件数です。観測装置の台数を増やしていくとノード数の増加分は少なくなり、累積の件数が収束しつつあることがわかります。図4の右端の値は、1時間という観測時間中に6 台の観測装置が見つけたノード数ですが、稼動しているノード数の代替値として使うことができます。

図 4:複数台の観測装置を用いたWinny2のノード情報(IPアドレス)の調査
図 4:複数台の観測装置を用いたWinny2のノード情報(IPアドレス)の調査

図 5は、6台の観測装置を用いることで、観測時間を1時間と短くし、1時間毎の重複を省いたWinny2のノード情報(IPアドレス)の件数をグラフ化したものです。なお、X軸が一日の推移、Y軸が一ヶ月の推移、Z軸が1時間毎の重複を省いたWinny2のノード情報(IPアドレス)の件数です。 1時間あたり約9万ノードくらいが稼動しており、平日の昼間は約7万ノード/時間、夜間になると約10万ノード/時間となっています。
社団法人コンピュータソフトウェア著作権協会が報告した『本調査では、一日で264,252 件の一意なノード情報を収集した。』という中身は、1時間あたり約9万ノードくらいが稼動しており、ノードの出入りがあって、累積すると約26万台/日の一意なノード数になったとみることができます。

図 5:1時間毎のWinny2稼動ノード数の推移
図 5:1時間毎のWinny2稼動ノード数の推移


本調査は、総務省から委託を受けた「ネットワークを通じた情報流出の検知及び漏出情報の自動流通停止のための技術開発」の成果の一部です。また、社団法人コンピュータソフトウェア著作権協会、株式会社クロスワープ、株式会社フォティーンフォティ技術研究所の協力により実施しました。

関連情報

寺田真敏,鵜飼裕司,金居良治,土居範久: "P2Pファイル交換ソフトウェア環境を対象とした観測に関する一考察",
電子情報通信学会 2007年 暗号と情報セキュリティシンポジウム(SCIS2007) (2007年1月) 寺田真敏,鵜飼裕司,金居良治,畑田充弘,松木隆宏,宮川雄一:
"クローリング手法を用いた P2P ネットワークの観測" , 情報処理学会 コンピュータセキュリティ 研究報告 Vol.2007 No.48 (2007年5月)

更新履歴

2008年1月16日
  • このページを新規作成および公開しました。

寺田/HIRT、水野/セキュリティソリューション本部