技術情報
Winnyとは
Winnyは、金子勇氏によって開発されたP2P(ピアツーピア)型のファイル共有ソフトウェアです。特定の サーバーを使わず、インターネットを通じてユーザー同士のコンピュータが直接接続し合い、システムを維持しながらファイルを共有する仕組みを持っています。ユーザーが「持ち合い」で運用するファイル共有システムと表現することもできます。
Winnyの開発は、先行するファイル共有ソフトを参考にしつつ、いくつかの新しい試みを取り入れて行われました。特に、匿名性を重視したFreenetというソフトウェアに感銘を受けたことが開発のきっかけの一つですが、Winnyは匿名性よりも情報の共有効率を重視しています。
Winnyの基本的な仕組み
ファイルの公開: ユーザーが公開したいファイルを専用のフォルダ(アップロードフォルダ)に入れると、Winnyはそのファイルからキー(ファイル名、サイズ、ハッシュ値などの要約情報)と本体(キャッシュファイル)を作成します。
キーの拡散: 作成されたキーは、Winnyネットワーク内の他のノードと定期的に交換されたり、検索に応じて転送されたりすることでネットワーク全体に広まります。
ファイルの検索: ユーザーが検索したいキーワードを入力すると、Winnyはそのキーワードを含むキーをネットワーク内で検索します。検索は、上流のノード(高速回線利用者)へと優先的に送られます。
ファイルのダウンロード: 検索結果としてキーが見つかると、そのキーに含まれるファイル本体の所在情報(IPアドレスとポート番号)を使って、ファイルを持っているノードからファイルをダウンロードします。ファイルは暗号化されたキャッシュファイル形式で転送され、64KBごとのブロックに分割されています。
中継とキャッシュ: ダウンロードされたファイルは、ダウンロードしたノードのキャッシュフォルダに保存され、その後、他のノードからの要求に応じてアップロードされるようになります。この中継の仕組みとキャッシュの存在が、Winnyの匿名性を実現する重要な要素です。
匿名性: ファイルをダウンロードするユーザーは、ファイルが最初の公開者(一次情報発信者)から直接提供されたのか、途中のノードでキャッシュされたものなのかを区別できないため、誰が最初にその情報を公開したのかが分かりにくくなります。
技術的な特徴
Winnyの技術的な特徴として、上流・下流という概念とクラスタリングという仕組みが挙げられます。
上流・下流: 回線速度の速いノードを「上流」、遅いノードを「下流」とみなし、上流ノードに多くのキーとキャッシュファイルが集まるように設計されています。これにより、検索効率とファイル共有の効率を高めています。
クラスタリング: 趣味や関心の近いユーザー同士のノードが自然に集まるように設計されています。これは、自動ダウンロード機能で指定されたキーワードに基づいて、接続するノードを選択することで実現されます。クラスタリングによって、特定のジャンルのファイルを見つけやすくしています。
また、Winnyはファイルの転送効率を高めるために、多重ダウンロードという機能を持っています。これは、一つのファイルを複数のノードから同時にダウンロードする仕組みです。
セキュリティに関して、Winnyは通信内容やキャッシュファイル、初期ノード情報などを暗号化しています。ただし、これは主に通信内容の秘匿やプログラムの改ざんを防ぐためのものであり、完全な匿名性を保証するものではありません。
Winnyの開発は、2ちゃんねるのユーザーからのフィードバックや協力によって進められました。βテストを通じて多くの問題が発見され、迅速なバージョンアップを繰り返すことで品質を高めていきました。また、ネットワークの挙動を予測するためにシミュレーションも活用されました。
Winnyには、ファイル共有ソフトとして開発されたWinny 1と、大規模匿名BBSを目指して開発が始められたWinny 2の2つのバージョンがあります。Winny 2では、Winny 1のファイル共有機能が内部的に残されていましたが、BBS機能の開発は途中で停滞しています。
Winnyは、その革新的な技術とファイル共有の利便性から多くのユーザーに利用されましたが、著作権侵害などの問題や、ウィルスの拡散、情報流出といった問題も引き起こしました。開発はすでに終了しており、これらの問題に対する公式な対策はなされていません。
Winnyはオープンシステムではなく、プログラムのソースコードやプロトコルは非公開とされていました。これは、ネットワーク全体の効率を保つために、悪意のあるユーザーによるプログラムの改ざんを防ぐためでした。しかし、開発停止後には解析が進み、プロトコルの一部が明らかになっています。
IoT分野への技術展開
契機となったのは、総務省が実施した平成25年度情報通信技術の研究開発の公募案件「ロバストなビッグデータ利活用基盤技術の研究開発」を株式会社Skeedと慶應義塾大学大学院SDM研究科が共同研究として採択した研究です。
当社はこの研究を補佐する研究開発運営委員会を組成して、研究開発および研究成果の展開について検討を進めてきました。
総務省における研究開発概要
研究開発課題はP2Pの応用技術として、ビッグデータの利活用基盤技術を研究開発することで、大規模かつ広域で、常時あるいは局所的に予測困難な変動を生み出すと考えられるIoT、M2Mやスマートフォンなどのデータトラヒックを、安定的かつ耐障害性に優れた基盤システムで支えることを目指すものでした。Winny(ウィニー)開発者である金子勇氏を代表研究責任者とする研究開発体制を敷き、P2P基盤の開発を進めました。
研究開発運営委員会
座長 下條 真司 大阪大学 教授 サイバーメディアセンター 副センター長 工学博士
座長代理 竹田 義行 早稲田大学大学院 国際情報通信研究科 客員教授
小西 圭睦 アイシン精機株式会社 技術企画室
鈴木 正彦 SCSK株式会社 取締役 専務執行役員
森川 博之 東京大学 先端科学技術研究センター 教授
伊藤 寛 一般財団法人 日本自動車研究所 ITS研究部
脇 友博 日本無線株式会社 執行役員 通信機器事業部長
西川 徹 Preferred Infrastructure, Inc. 代表取締役社長
岡野原 大輔 Preferred Infrastructure, Inc. 取締役副社長
各ワークグループ主査 (敬称略、座長・座長代理を除き社名で50音順)
研究開発課題の目的および意義
本研究開発は、センサーやスマートフォン等から集まる多種多量データ(ビッグデータ)の利活用による新市場の創出を目的としています。ビッグデータのトラフィックは大規模で広域で常時発生し、局所的に予測困難な変動が発生する。また、ネットワーク上の特定のエンドノードや通信経路に負荷が集中しやすいという特徴があるため、これに柔軟に対応し、トラフィックやデータ処理量の集中を回避しながら高効率なビッグデータ流通を支えるネットワークの研究開発が求められていました。
こうした課題を解決し、高い信頼性、安定性を確保した高効率なビッグデータ流通を支える基盤技術を開発することで、ビッグデータを利活用する新サービス市場の創出および我が国の国際競争力の強化を目指しました。
≪公募提案時の資料より≫



ロバストなビッグデータ利活用基盤の構成技術
本研究開発では、これらの課題を解決し「ロバストなビックデータ利活用基盤」を実現するために、以下の3つの自律分散型技術を組み合わせました。
1.自律分散型ネットワーク構築技術
◦概要: ネットワーク上のエンドノードを用いて、データの流通、蓄積、処理を可能とするための通信基盤技術です。IPネットワーク上にアプリケーションが構築するオーバーレイネットワークとして実現されます。ノードの参加と離脱が頻繁な動的なネットワーク環境において、全体機能に大きな影響を与えず、ノード数の規模によらない可用性の高いネットワーク構成を目指します。
◦研究内容/成果:
▪様々な指標(帯域、容量、性能、安定性、地理情報など)を考慮し、各ノードの役割やノード間の経路を自律的・動的に変更することで多階層化・グループ化する技術を開発しました。物理ネットワークの近傍性を考慮して経路表を交換することで、物理的な近傍ノード間での通信が主となり、良好な結果が得られました。
▪トラフィックを分散させる通信経路選択技術を開発しました。不必要な中継メッセージが発生しない経路解決アルゴリズムにより、良好な結果が得られました。
▪数百台の端末を用いた試験環境での評価により、最大30000ノードのオーバーレイネットワーク構築、数百万規模のノードによる自律分散型ネットワークを約1.5秒で構築できることを実測しました。ネットワーク維持の通信コストも半減しています。ノードの同時離脱(半数)に対しても、3秒以内に任意のノード間での通信が可能であることを確認しています。
▪自律分散型ネットワークに適した通信プロトコルや、無線ネットワーク上で大量データを効率的に共有する通信基盤の設計・検証を行いました。独自のプロトコル(TCP/UDP上)は、一般的なプロトコルよりも高い性能で信頼性の高いファイル転送を実現します。これには、先進的な帯域制御や、統計に基づく通信経路・通信帯域の自動制御が含まれます。
▪オーバーレイネットワーク内の各マシンがファイル構成ブロックをキャッシュし、他のマシンへのプロキシとして動作することで、ファイル取得の高速化を図ります。キャッシュの世代管理やパージも自動的かつ効率的に行われます。
2.自律分散ストレージ構築技術
◦概要: 多数のエンドノードのリソースを連携させてデータを蓄積する技術です。頻繁な書き換えがなく、専ら利用と保存が必要な情報を扱います。可用性確保のため、データを多重化して複数のノードに分散格納し、冗長性を持たせます。
◦研究内容/成果:
▪データ発生源の地理的またはネットワーク的近傍のノード群において、主としてデータの蓄積が行われるように設計されています。
▪ノードが自律的に判断した安定度に基づきノード群を3つの階層に分類し、適切に冗長化されたデータを配置することで、データ取得までの所要処理量を抑えつつ耐障害性を向上させる手法を開発しました。この手法により、安定度の低いノードの離脱直後においても高い可用性を示します。上位層は主に安定したサーバー上のノードで構成され、キーヘッダとチャンクの両方を保持し、検索機能を提供します。中間層は安定度が中程度のノード群で構成され、キーヘッダとチャンクを保持してスタンドアローンなストレージとしても動作可能です。下位層は主に不安定なノードで構成されます。
▪多重化による保存容量減少の課題に対し、重複排除技術を導入しました。固定長ブロック単位での重複排除手法を採用し、保存容量の減少を抑える効果を確認しています。 ▪各データに利用権を設定し、ユーザーの権限に応じてデータ取得を制限する管理についても検討・実装を行いました.
3.自律分散処理技術
◦概要: 多数のエンドノードのリソースを連携させてデータを処理する技術です。エンドノードの参加や離脱が頻繁に起こる環境において、ネットワーク構成変化に適応できる分散処理技術を開発しました。自律分散ストレージ上のデータを操作対象とし、自律分散型ネットワークを用いて通信を行います.
◦研究内容/成果:
▪ノードが自律的に判断した演算性能を元にノード群を3階層に分類し、最も演算性能の高い階層の中から演算全体を管理するノードとバックアップノードを選出します。
▪管理ノードは演算全体を小単位に分割し、担当エンドノードに割り当てて進捗管理を行います。演算中に参加したノードには新たな小単位を割り当て、離脱したノードの代役は別のノードに任せることで構成変化に適応します。
▪参加エンドノード数の増加に伴って処理性能が向上し、ノード数の変化が頻繁な環境でも処理が完全に完了する分散処理技術を確立しました.
▪処理ごとに一時的な管理機構を構築するため、特定の管理機構が不要であり、独立した複数の計算処理の同時実行が可能です.
▪データの機密性を確保したまま平文に展開することなく処理する方法を開発しました。難読化したデータをストレージに保存しておき、分散処理の際には難読化したまま処理を行い、処理結果を受け取った管理ノードが難読化を解除します.これは試験環境向けの暫定的な手法であり、準同型暗号への置き換えを想定しています.
▪データ発生源の物理的位置を考慮した分散処理技術として地理情報に基づきノード群が自律的にクラスタを構成し、その中でデータを流通させる手法を考案・開発しました。これにより、データ取得リクエストをクラスタ内に留めることでネットワークトラフィックを局所化し、所要処理時間やメッセージ送受信総容量の減少効果を確認しています。
≪2014年7月9日当社発表プレスリリースより≫

研究開発の体制と関与機関
本研究開発は、複数の研究機関と企業が連携して実施されました。
•株式会社Skeed: 自律分散型ネットワーク構築技術(通信プロトコル、経路探索、経路情報管理手法)と自律分散ストレージ構築技術の研究開発を担当しました。また、研究開発支援WGの技術調査SWG主査・副主査、事業化検討WGのパートナーアライアンスSWG主査・副主査を務めるなど、研究開発の運営や事業化検討にも関与しました。
•慶應義塾大学: 自律分散型ネットワーク構築技術のうち、無線ネットワーク上で大量のビッグデータを効率的に共有する通信基盤の設計と検証を担当しました.災害時通信サービスの基盤技術として「WISHプロトコル」の研究成果が活用されています.
•SCSK株式会社、日本無線株式会社、ウィルコム株式会社なども事業化検討WGの所属会員として参画しました.
有望な事業領域と事業化テーマ
ロバストなビッグデータ利活用基盤は、特にデータ通信量の変動性が高く、かつデバイスモビリティ性(可搬性)の高い環境での利活用に価値を見出すことができるとされています。最有望領域としては**「生態系ビッグデータ分野」**が挙げられています。
具体的な事業候補としては、以下のテーマが検討されています。
•災害時通信サービス: 慶應大学の研究成果である「WISHプロトコル」を利用し、通信輻輳時でも端末間通信により堅牢な情報伝達(避難誘導、安否確認など)を実現します。神奈川県逗子市などを候補地とした実証実験が企画されています。
•ペット飼育支援サービス事業: 生態系ビッグデータ事業の一環として、ペットの位置情報、健康、活動状況データを収集・分析し、飼い主に提供することで、飼い主のQOL向上や関連事業者への広告事業などを展開します。事業企画案が策定中です。
•各種すれ違い通信サービス事業: リアルタイム交通情報(プローブ情報)、観光情報ガイド、店舗紹介・クーポンサービスなど。特にITS事業分野として、すれ違い通信に自律分散コンピューティングの技術を連携させた事業が構想されています。シミュレーションにより、既存手法よりも効率的にプローブデータを収集できることや、統合プラットフォームとの相互運用性を実証しています。
SCSK株式会社が開発・販売するIoTソリューション「CollaboView」には、この研究開発で培われたSkeedOzの技術が実装されており、災害発生時の対象者の安否確認や避難誘導、救援活動支援に活用されています。
関連技術としてのWinnyについて
ソースには、P2Pファイル共有ソフトであるWinnyに関する技術文書も含まれています。
Winnyは、中心的なサーバが存在しないピュアP2P型のシステムであり、プロキシサーバの概念を応用した匿名性と効率の両立を目指しています。ネットワーク内のあちこちにファイルのキャッシュができ、中継ノードが生じることで匿名性を実現しています。効率化のために、回線速度に応じた階層化や、嗜好の似ているノードをグループ化するクラスタリングといった概念が導入されています。ファイルはブロックに分割・暗号化され、キャッシュファイル形式でダウンロードされます。ユーザーは自動ダウンロード機能を使って、条件に合うファイルを自動的に収集できます。WinnyネットワークはIPネットワーク上のオーバーレイネットワークです。
Winnyの開発者である金子勇氏は、このWinnyの技術に関する文書の著者であり、また「ロバストなビッグデータ利活用基盤技術の研究開発」の提案時代表研究責任者でした。ソース内では「ロバストなビッグデータ利活用基盤技術の研究開発」とWinnyの技術が直接的に結びつけられている記述はありませんが、どちらも自律分散型ネットワークやP2Pの概念を基盤とし、キャッシュやクラスタリング、ノードの階層化といった共通の技術思想が見られる点、そして同一人物が深く関与している点は、関連性を推察させる情報と言えます。Winnyは多くの攻撃に晒される中で耐障害性が向上したという独特な開発スタイルを経て発展しました.
新たなネットワーク技術との融合
情報指向ネットワーク(ICN)とは?
現在のインターネット(TCP/IPネットワーク)は、「誰が(送信元IPアドレス)」から「誰に(宛先IPアドレス)」データを送るか、という**場所(アドレス)**を中心に設計されています。例えるなら、「〇〇さんの家の△△さんに手紙を送る」というイメージです。
一方、情報指向ネットワーク(ICN)は、ネットワークの中心を**場所(アドレス)**ではなく、**コンテンツそのもの(名前)**に置く考え方です。「〇〇というタイトルの本が欲しい」と要求すると、ネットワーク内のどこかにその本があれば、送信元を意識せずに受け取れる、というイメージです。
ICNの主な特徴
•コンテンツ名によるルーティングと転送: データパケットには、データの保存場所を示すアドレスではなく、コンテンツの名前(例えば、/news/sports/20231027.html)が含まれます。ルータは、この名前に基づいて最適な経路を選択し、データを要求元に届けます。
•インネットワークキャッシュ: ネットワーク内のルータやノードが、頻繁に要求されるコンテンツを一時的に保存(キャッシュ)します。これにより、同じコンテンツが何度も要求された場合に、オリジナルの送信元までアクセスする必要がなくなり、高速かつ効率的な配信が可能になります。
•マルチキャスト: 同じコンテンツを複数の要求元に同時に効率的に配信する仕組みが容易に実現できます。
•セキュリティ: コンテンツ自体に署名などのセキュリティ対策を施すことで、送信元に依存しないコンテンツの信頼性を確保できます。
ICNのメリット
•効率的なコンテンツ配信: 人気のあるコンテンツはネットワーク内のキャッシュから配信されるため、サーバー負荷が軽減され、ユーザーはより高速にコンテンツを受け取れます。
•ネットワークリソースの最適化: 同じコンテンツの重複した転送が減るため、ネットワーク帯域幅を効率的に利用できます。
•モビリティへの対応: 受信者はコンテンツ名で要求するため、送信元の場所が変わっても通信が途絶えにくいと考えられます。
•セキュリティの向上: コンテンツ自体にセキュリティ機能を組み込むことで、なりすましや改ざんを防ぎやすくなります。
ICNの課題
•既存ネットワークとの互換性: 現在のTCP/IPネットワークとは異なるアーキテクチャのため、移行には大きな課題があります。
•ルーティングの複雑性: コンテンツ名に基づいた効率的なルーティングアルゴリズムの開発が必要です。
•キャッシュ管理: ネットワーク全体での効率的なキャッシュ戦略や、キャッシュの一貫性を保つ仕組みが必要です。
P2P(ピアツーピア)との関係
P2P(Peer-to-Peer)は、特定のサーバーを介さずに、ネットワークに接続されたコンピュータ(ピア)同士が直接データを共有する仕組みです。NapsterやBitTorrentなどが代表的な例です。
ICNとP2Pには、「コンテンツ」を中心にデータをやり取りするという点で共通する考え方があります。
類似点
•分散型: 中央集権的なサーバーに依存せず、ネットワーク全体でコンテンツを共有・配信する考え方は、ICNのインネットワークキャッシュの概念と通じる部分があります。P2Pネットワークも、各ピアがコンテンツの一部を保持し、協力して配信します。
•コンテンツの可用性向上: 複数のピアが同じコンテンツを保持しているP2Pネットワークと同様に、ICNもネットワーク内の複数のノードにコンテンツがキャッシュされることで、コンテンツの可用性が高まります。
相違点
•ネットワークアーキテクチャ: P2Pはアプリケーションレベルのオーバーレイネットワークとして実現されることが多いのに対し、ICNはネットワーク層(IP層に相当する部分)でのアーキテクチャの変革を目指しています。
•ルーティングの仕組み: P2Pでは、通常、ピア間の発見やデータ転送のために特定のプロトコルや仕組み(トラッカーなど)が必要となる場合があります。ICNでは、ネットワーク層のルータがコンテンツ名に基づいて効率的にルーティングを行います。
•キャッシュの自律性: P2Pネットワークにおけるデータの共有は、各ピアの自律的な行動に依存する部分が大きいですが、ICNのインネットワークキャッシュは、ネットワーク全体の効率性を考慮した管理が可能です。
相互補完の可能性
ICNの考え方をP2Pネットワークに取り入れることで、より効率的でセキュアなコンテンツ配信が期待できます。
例えば、P2Pネットワーク内でコンテンツ名による検索やルーティング、ネットワーク内キャッシュの活用などが考えられます。
逆に、P2Pネットワークの分散型のデータ管理やピア間の協力的なデータ共有の仕組みは、ICNの実現において参考になる可能性があります。
まとめ
情報指向ネットワーク(ICN)は、現在のインターネットとは異なる、コンテンツを中心に設計された新しいネットワークアーキテクチャです。P2Pとは、コンテンツを重視する点で共通点があるものの、ネットワークの階層やルーティングの仕組みなどに違いがあります。将来的には、ICNの考え方がP2Pネットワークに取り入れられたり、両者の技術が相互に補完し合うことで、より効率的で柔軟なコンテンツ配信基盤が実現する可能性があります。
お問い合わせ

Skeed高速ファイル転送ソリューション各製品のお試しお申し込みはこちらよりお願いします。

Skeed各種製品のリーフレット、解説書などはこちらのページよりお受け取りいただけます。

「SkeedOz」のご質問・ご導入・お見積り関するお問い合わせはこちらからお願いします。