概要
ファイル共有ソフトは、ソフトが定めた専用のプロトコルで通信を行うことで専用のネットワークを構成し、そのネットワークに接続された不特定多数のコンピュータとの間で共有されているファイルのやりとりを行う仕組みを持つソフトウェア。
ファイルを保持するコンピュータと要求するコンピュータとの間に転送経路を確保するために、検索機能・マッチング機能を備えることが多い。
効率的な共有を実現させるために、ほとんどのファイル共有ソフトはPeer to Peerモデルを用いて通信させる。2001年以後、高速大容量通信(ブロードバンドインターネット接続)が世界的に発展するとともに、ファイル共有ソフトも大幅に増加した。日本において当初は一対一でファイルをやり取りすることが多かったためファイル交換ソフトと呼ばれていたが、Winny以降は複数対複数でのやり取りが一般的になったためファイル共有ソフトと呼ばれるようになった。
クライアント・サーバ・モデル
基本的に、サーバ|サーバがファイルを一極集中管理し、サーバとクライアントとの間で転送を行う。
全ての転送はサーバを経由することになる。負担がサーバに集中するため、全体でのファイル流通能力はサーバの能力に依存し最も不利である。
一方で、容易に管理が可能で、ファイルの変更や管理が即座に反映されたり、ダウンロードが要求後すぐに始まるなど、リアルタイム性では最も有利である。全ての検索・転送をサーバが把握できるため匿名性は無い。Hypertext Transfer Protocol|HTTPやFile Transfer Protocol|FTPなどを利用したファイル共有がこれに当たる。
今ではファイル共有ソフトの方式としては余り利用されていないが、手軽さやリアルタイム性の良さから小容量のファイルの交換に関しては今も多く活用されている方式である。
ハイブリッドP2Pモデル
基本的に、ファイルの転送はノード同士の間で行うが、ファイルの検索とノードのマッチングはサーバが行う。一極集中管理が向いている検索をサーバ#クライアント・サーバ・モデル|クライアント・サーバ・モデルで、分散管理が向いている転送をPeer to Peer|P2Pモデルで行うので、最も合理的で効率が良い。
容易に管理も可能で、ファイルの検索に関してはリアルタイム性は良いが、ファイルのダウンロードに関してはノードの状態に依存しリアルタイム性は不利となる。全ての検索・転送をサーバが把握できるため匿名性は無い。ファイル共有ソフトの先駆けであるNapsterの他、日本で有名なWinMX、海外で最も普及しているBitTorrentが挙げられる。
ピュアP2Pモデル
基本的に、全ての通信をノード間で行う。サーバに依存しないため、ネットワークの耐障害性が非常に高い。
全体を把握するサーバが無いため、実装次第では匿名性を確保可能である。
ファイルの転送に関しては効率が良いが、ファイルの検索がネックとなる。