flagflag  If you want to see English page, please click "English" Button at Left.
  
現: 2008-12-21 (日) 03:29:18 iseki ソース
Line 1: Line 1:
 +* sl_relay, sl_info 連携 [#rab32c54]
 +** 情報サーバの動作 [#ye7399f6]
 +
 +*** 情報収集サーバ[#y11a7c4b]
 +
 + 情報サーバ(sl_info)は,起動すると最初に情報収集サーバと呼ばれるプロセスを1個だけforkします.これは sl_cacheのキャッシュPUTサーバと同じ考え方です.~
 + 情報収集サーバはキャッシュPUTサーバと同様にSIMの情報をDBへ保存します.情報収集サーバにSIMの情報を集約しするのは2つの理由からです.
 +
 ++データ保存時のファイルロックの問題を避けるため(書き込むプロセスが1個だけならファイルロックの問題は生じない).
 ++情報収集サーバへ接続できるのは localhost のみとし,これによりある程度のセキュリティを確保する.
 +
 + DBに保存されるSIMのデータは
 +- SIM名(最大31文字まで)
 +- SIMの GUID  40Byte
 +- SIMのリージョンハンドル. 8Byte
 +- SIMのIPアドレス.バイナリ4Byte
 +- SIMのアクセス属性 2Byte
 +- 保存されているデータの状態 2Byte
 +- SIMのポジション(X座標)
 +- SIMのポジション(Y座標)
 +- 更新時間 (Linuxタイム)
 +
 + 送られて来るSIMの情報は,現在のところ,Viewer(アバター)がハンドシェイクしたSIMの情報のみです.従って,ホワイトフィルタの制限がかかっている状態のアバターからは新しいSIMの情報が送られてくることはありません.~
 + なぜならば,ホワイトリストの制限がかかっている状態とは,以下のような状態のことだからです.
 +- アバターが訪れることのできるSIMはデータベースにデータが存在し,かつそのSIMがホワイトリストにより許可されている場合だけである.
 +- 訪れることのできないSIMは,ハンドシェイクができないということなので,それらの情報を得ることはできない.
 +
 + 新しいSIMの情報を集める場合は,ホワイトリストの制限のかかっていないアバターを使用しなけばなりません.なお,sl_relayでの収集自体は特別な操作を行うことはありません.訪れたことのないSIMの辺りをアバターが飛び回っているだけで,自動的に情報が情報収集サーバに送られます.
 +
 +
 + 情報収集サーバはSIM情報の他に,sl_relayを利用しているユーザ(アバター)の情報も収集します(ただしDBには保存されません).~
 + 収集するアバター情報は以下の通りです.
 +- アバターの名前
 +- アバターのエージェントID
 +- ViewerのIPアドレス
 +- アバターが現在いる SIMの名前
 +- 情報の更新時間 (Linux時間)
 +
 + 「アバターが現在いるSIMの名前」については,データベース上にそのSIMのデータがないと情報を得ることはできません.
 +
 + sl_info を ''-l'' オプションで起動した場合,収集したアバタの情報は指定されたログファイルに保存されます.~
 + デフォルトは ''/var/sl_proxy/sl_info_agent.log'' です.
 +
 +*** sl_relay とのネゴシエーション [#y86b782b]
 + リレーサーバ(sl_relay) は ''-is'' のオプション付で起動された場合,Secod Lifeへのログイン処理の途中で情報サーバ(sl_info)に接続をしてきます.sl_relayから接続を受けた情報サーバはコントロール用プロセスをforkします.forkされたコントロール用プロセスはsl_relayとネゴシエーションを行い,それぞれの使用ポート番号や接続用のパスワードを交換します.~
 + 従って情報サーバのコントロールプロセスはsl_relayを利用するアバター毎に起動されます.
 +
 + 情報サーバのコントロールプロセスはその後,情報収集サーバへ情報を転送する中継プロセスを forkします.このプロセスは sl_relayからのアバターとSIMの情報データを受信し,情報収集サーバへそのまま転送します.~
 +
 + コントロールプロセスはその後ループに入り,情報提供サーバとして,(UDP/HTTPS)中継コントローラーからのリクエストを待ちます.
 +
 +*** 情報提供サーバ [#l702a61f]
 + 情報サーバのコントロールプロセスは,情報収集サーバへ情報を転送する中継プロセスをforkした後,情報提供サーバとして作動します.~
 + 情報提供サーバは以下の情報を提供することができます.現バージョンのsl_relayでは専らホワイトリストの検索に使用します.
 ++ リージョンハンドルに対応したSIMの名前
 ++ SIM名によるホワイトリストの検索(ホワイトリストに該当SIMが含まれているかどうか)
 ++ リージョンハンドルによるホワイトリストの検索(ホワイトリストに該当SIMが含まれているかどうか)
 +
 +** リレーサーバの動作 [#oa9e9b4a]
 +
 +*** 情報サーバとのネゴシエーション [#af9486ca]
 + リレーサーバ(sl_relay) は ''-is'' のオプション付で起動された場合,Secod Lifeへのログイン処理の途中で情報サーバ(sl_cache)にTCP接続を行います.その後 fork情報サーバのコントロールプロセスとネゴシエーションを行い,それぞれの使用ポート番号や接続用のパスワードを交換します.~
 +
 + sl_relayはログイン処理中にアバターの情報を収集し,情報収集サーバへの中継プロセスに情報を送信します.
 +
 +*** 情報収集サーバへのデータ転送 [#b0c7290c]
 + sl_relayでは,各中継プロセスが得たSIM及びアバターに関する情報を一旦中継コントローラに集め,中継コントローラがまとめて情報収集サーバへの中継プロセスへデータを転送します.
 +
 +*** 情報提供サーバへの接続 [#p5f9f1d6]
 + 現バージョンでは,sl_relayは sl_info のWhite Listの検索機能しか使用していません.
 +
 + ホワイトリストに関する連携については sl_infoの [[ホワイトリストフィルター>/sl_info/White List Filter]] を参照してください.
  

  • sl_info/情報収集と提供 のバックアップ差分(No. All)
    • 現: 2008-12-21 (日) 03:29:18 iseki

トップ   新規 ページ一覧 単語検索 最終更新   ヘルプ   最終更新のRSS 1.0 最終更新のRSS 2.0 最終更新のRSS Atom

サイト内 検索

ログイン

ユーザー名:

パスワード:


パスワード紛失
新規登録

サブ メニュー

ミニカレンダー

前月2024年 5月翌月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
<今日>

オンライン状況

82 人のユーザが現在オンラインです。 (14 人のユーザが xpwiki を参照しています。)

登録ユーザ: 0
ゲスト: 82

もっと...

アクセスカウンタ

今日 : 1068510685106851068510685
昨日 : 1412914129141291412914129
総計 : 2345629523456295234562952345629523456295234562952345629523456295
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com