1. 序説

IRC(Internet Relay Chat)プロトコルは、テキストベースの会議で使用するために何年もかけて設計されています。 この文書では、その現在のアーキテクチャについて説明します。

IRC プロトコルはクライアント・サーバモデルをベースにしており、多くのマシン上で分散して動作させるのに適しています。 典型的なセットアップは、クライアント(または他のサーバ)が接続するための中心点を形成する単一のプロセス(サーバ)を含み、必要なメッセージ配信/多重化および他の機能を実行します。

各サーバーがグローバルな状態情報のコピーを持つ必要があるこの分散モデルは、ネットワークが到達できる最大規模を制限する重大なハンディキャップであり、今でもプロトコルの最も重大な問題点です。既存のネットワークが驚異的なスピードで成長し続けることができたとすれば、私たちはより強力なシステムを提供し続けてくれたハードウェアメーカーに感謝しなければなりません。