図 21–1 は、Instant Messaging ソフトウェアアーキテクチャーを示しています。
Web サーバー (または Web サービスが組み込まれたアプリケーションサーバー) は、ブラウザ経由でクライアントに Instant Messaging リソースをダウンロードします。クライアントはリソースファイルから構成されます。クライアントは、Instant Messaging サーバーにメッセージを転送するマルチプレクサを通じて相互にメッセージを送信します。
ディレクトリサーバーは、設定情報、位置、メッセージのルーティング先マルチプレクサなどの、ユーザーおよびグループの配信情報を格納、取得します。Instant Messaging サーバーがメッセージを受信すると、Directory Server は、この情報を使用してメッセージの配信場所と配信方法を決定します。また、連絡先リストやその登録情報などのユーザー情報がディレクトリサーバーに格納されることもあります。
この基本的な設定によって、Instant Messaging は直接 Directory Server にアクセスし、Instant Messaging を使用するメールクライアントのユーザーログイン名とパスワードを検証します。
クライアントから送信されるインスタントメッセージは、直接マルチプレクサにルーティングされます。マルチプレクサは、該当する Instant Messaging サーバーにメッセージを送信し、順に別の Instant Messaging サーバーにメッセージを転送するか、またはメッセージがローカルの場合は受信者が関連するマルチプレクサにメッセージを転送します。この処理の図については、「Instant Messaging の物理的な配備例」を参照してください。
新規ユーザーを作成するときは、ディレクトリにユーザーエントリを追加します。ディレクトリ内のエントリを作成または変更するときは、Directory Server に付属するツールを使用します。
Instant Messaging コンポーネントの管理には、一連のコマンド行インタフェースとテキストベースの設定ファイルを使用します。管理者が必要な権限を持っている場合は、Instant Messaging ホストに接続された任意のマシンで管理タスクを実行することができます。
Instant Messaging 配備は通常、単一マシン上にはインストールされません。また、そうした配備には、多重化や高可用性化などの追加機能も搭載されます。詳細については、第 23 章「Instant Messaging アーキテクチャーの開発」を参照してください。
次に、Instant Messaging の 3 つの主要コンポーネントについて、さらに詳しく説明します。
Instant Messaging サーバーは、Instant Messenger の権限やセキュリティーの制御、アラートの送信による Instant Messenger クライアントどうしの通信の実現、チャットの開始、および使用可能なニュースチャネルへのメッセージの投稿などのタスクを処理します。また、Instant Messaging サーバーは、アーカイブ、カレンダアラート、およびオフライン電子メール通知も処理します。
Instant Messaging は、接続を 1 つのソケットに統合するマルチプレクサの接続をサポートしています。マルチプレクサについては、「Instant Messaging マルチプレクサ」を参照してください。
エンドユーザー、ニュースチャネル、および会議室の管理には、アクセス制御ファイルと Access Manager ポリシーが使用されます。
Instant Messaging サーバーは、Instant Messaging 製品のインスタントメッセージをルーティング、転送、配信します。
サーバーは、LDAP サーバーの情報を直接検索できます。LDAP クエリの結果は、事前に設定可能な有効期限に達するまでプロセスにキャッシュされます。詳細については、『Sun Java System Directory Server 5 2005Q1 Administration Guide』を参照してください。
サーバーは、作成されたメッセージをメッセージ配信経路の次の配信先に送信します。送信先は、受信者のマルチプレクサまたは別のサーバーです。マルチプレクサが受信すると、メッセージは適切な受信者に直接ルーティングされます。この処理の図については、「Instant Messaging の基本アーキテクチャー」を参照してください。
Instant Messaging マルチプレクサコンポーネントは、複数のインスタントメッセンジャー接続を 1 つの TCP (Transmission Control Protocol) 接続にまとめ、この TCP 接続を Instant Messaging サーバーに接続します。マルチプレクサは Instant Messenger からのデータを読み取り、それをサーバーに書き込みます。反対に、サーバーが Instant Messenger にデータを送信すると、マルチプレクサはそのデータを読み取り、適切な接続にそれを書き込みます。マルチプレクサは、エンドユーザーの認証やクライアントサーバー間のプロトコル (IM プロトコル) 解析は行いません。各マルチプレクサは、1 つの Instant Messaging サーバーにだけ接続されます。
Instant Messaging マルチプレクサは、必ずしもインストールする必要はありません。つまり、マルチプレクサを使用しない Instant Messaging 構成にすることも可能です。ただし、本稼働配備ではマルチプレクサを使用する構成にすることをお勧めします。
配備環境の要件に応じて、複数のマルチプレクサをインストールできます。詳細については、第 23 章「Instant Messaging アーキテクチャーの開発」を参照してください。
Instant Messenger は、Java プラグインを使用してブラウザベースのアプレットとして設定したり、JavaTM Web Start を使用してスタンドアロンの Java アプリケーションとして設定したりできる Instant Messaging のクライアントです。
Solaris または Linux 上で Instant Messenger クライアントを実行するには、Java Web Start を使用する必要があります。Microsoft Windows では、アプレットまたは Java Web Start アプリケーションとして Instant Messenger を実行できます。ほとんどの場合、Java Web Start アプリケーションとして Instant Messenger を実行します。
Instant Messenger のカスタマイズについては、『Sun Java System Instant Messaging 7 2005Q1 Administration Guide』を参照してください。
Instant Messenger には、次の通信モードがあります。
チャット:Instant Messenger バージョンの Instant Messaging 会議室がチャットと呼ばれています。チャットはリアルタイムの対話機能で、エンドユーザーはこれを利用してプロジェクトを遂行したり、顧客の質問に答えたり、即時性が要求されるその他の業務を遂行したりすることができます。チャットセッション (参加者は 2 名以上) は、必要に応じて作成されるチャット室で保持されます。
会議室:会議室は通常のチャットセッションと同様に機能する持続的なチャットルームで、次の機能が追加されています。
アクセス制御
モデレートチャット
アラート:アラートにより、エンドユーザーに対する情報配信や応答が Instant Messenger インタフェースを通じて行えるようになります。アラートは、エンドユーザーに緊急情報を配信できます。アラートメッセージの送信者には、メッセージの配信時と受信者によってそのメッセージが開かれた時に通知が送信されます。また、アラートを特定の電子メールアドレスに転送するように Instant Messaging を設定することもできます。
ポーリング:ポーリング機能により、質問に対する回答をエンドユーザーに要求できます。ポーリングの受信者には質問と選択式の回答を送信し、受信者は回答を選択してそれに返信します。
ニュース:ニュースチャネルは、情報を投稿し、それを共有するためのフォーラムです。エンドユーザーは興味のあるニュースチャネルに登録し、ニュースチャネルの URL にアクセスして更新を確認したり、静的なメッセージを表示してニュースチャネルの更新を確認できます。管理者は、エンドユーザーに必要なニュースチャネルを割り当て、ニュースチャネルの情報を表示したり、情報を提示したりできるユーザーを決定することでニュースチャネルへのアクセスを制御します。
インスタントメッセージには URL を埋め込むことができます。プロキシサーバーを使用している場合は、このような URL を解決できるように、Java Web Start を使用するクライアントでプロキシ設定の修正が必要になることがあります。
プロキシ設定の手動変更については、『Sun Java System Instant Messaging 7 2005Q1 Administration Guide』を参照してください。