マニュアル: DHT シェル

[English | Japanese]
last-updated: November 11, 2010

名前

owdhtshell - DHT シェル

書式

owdhtshell [-p <shell port>] [--acl <ACL file>] [-n] [--web] [--showmap] [-d <working dir>] [-i <self ID>] [-m <stat collector addr>[:<port>]] [-t UDP|TCP] [-a <algorithm name>] [-r <routing style>] [-s [<self address>[:<port>]]|<port>] [--no-upnp] [<host>[:<port>]] [<port>]

owdhtshell -h

説明

DHT シェルは、高レベルサービスである DHT を制御する コマンド言語インタプリタです。 structured オーバレイ上のノードを起動し、 標準入力やネットワーク越しに利用者からの指示を受け取り、 それに従って DHT サービスを制御します。

オプション

コマンド行引数が与えられた場合、 DHT シェルはそのノードと通信することでオーバレイに参加します。 無効なオプションや -h が与えられた場合には ヘルプメッセージを表示します。

-p <shell port>
指定された TCP ポートで待って、ネットワーク越しに シェルのコマンドを受け取ります。
--acl <ACL file>
アクセス制御リスト (ACL) を指定されたファイルから読み込みます。 ACL ファイルには、例えば次の内容を記述しておきます。
allow 192.168.0.12
allow host.example.com
deny
これらの各行は上から下に解釈されていきます。 各行の 1つ目の文字列は `allow' か `deny' です。 各行には、2つ目の文字列としてホスト名か IP アドレスを記述できます。 上述の例では、192.168.0.12 と host.example.com からのアクセスが許され、 他からのアクセスは禁止されます。
-n
標準入力からのコマンド読み込みを行いません。 ジョブ管理システム (例 Sun N1 Grid Engine) 経由で起動する際に使います。
--web
TCP 3998 番ポートにて、XML-RPC プロトコルの問い合わせを受け付けます。 プロトコルは BambooOpenDHT と互換です。 また、同じポートで、ウェブインタフェースを提供します。 ウェブブラウザでノード情報を見ることができます。
--showmap
ウェブインタフェース (--showmap) が 地図 (Google Maps) 上にルーティング結果の経路を表示します。 この機能を使うためには、ソースコード中に適切に Google Maps API キーを設定する必要があります。
-d <working dir>
指定されたディレクトリをワーキングディレクトリとして使います。 ディレクトリサービスのある種の実装 (例 Berkey DB 実装) が、 ワーキングディレクトリに DB ファイルを作成します。
-i <self ID>
指定された ID を起動するノードの ID として用います。 ここで ID は 16進数で与えます。 このオプションが指定されなかった場合、 ID はノードのアドレスを元にして決められます。
-m <stat collector addr[:<port>]>
指定されたアドレスを集計器、つまり メッセージカウンタか Overlay Visualizer のアドレスとして使います。 DHT シェルはすべての通信についてこのアドレスに報告します。 この報告もメッセージングサービス自体を使って行います。
-t < UDP|TCP>
指定されたトランスポートプロトコルを使います。 指定されなかった場合は UDP を使います。
-a <algorithm name>
指定されたルーティングアルゴリズムを使います。 ここで指定できるアルゴリズム名は、 "Chord" か "Kademlia"、"Koorde"、"LinearWalker"、"Pastry"、"Tapestry" です。 指定がない場合、Chord が使われます。
-r <routing style>
指定された様式でルーティングを行います。 ここで指定できる様式は "Iterative" か "Recursive" です。 指定がない場合、DHT シェルは iterative ルーティングを行います。
-s [<self address>[:<port>]]|<port>
指定されたアドレスを、起動するノードのアドレスとして用います。 指定がない場合、DHT シェルは自身のアドレスを自動的に取得します。 このオプションは、複数の IP アドレスを持つ計算機や NA(P)T ルータの内側にある計算機で役立ちます。
--no-upnp
UPnP での NAT 越え (UPnP NAT Traversal) 機能を無効にします。
--oasis <port>
指定された番号のポート (TCP) で、OASIS (ウェブサイト) からの問い合わせを受け付けます。

シェルのコマンド

DHT シェルは利用者からのコマンドを標準入力から読み込みます。 また、-p オプションが与えられた場合には、 ネットワーク越しにも読み込みます。 DHT シェルが受け付けるコマンドは次の通りです。

init [-status] <host>[:<port>] [<port>]
指定されたノードと通信することで、オーバレイに参加します。
get [-status] <key> [<key> ...]
指定されたキーに対応する、put 済みの値を取得します。 一度に複数のキーを受け付けることができます。
put [-status] <key> <value> [<value> ...] [- <key> <value> [<value> ...] ...]
指定されたキーと対応付けて指定された値を put します。 一度に、キーと値の組を複数受け付けることができます。 その際は、各組を「-」で区切ります。
remove|delete [-status] <secret> <key> [<value> ...] [- <key> [<value> ...] ...]
指定されたキーに対応する値を削除します。 値も指定された場合、その値のみを削除します。 一度に複数の削除要求を受け付けることができます。 その際は、各要求を「-」で区切ります。
setttl <ttl>
TTL を指定します。 続く put コマンドで保存された値は ttl 秒間保持されます。
setsecret <secret>
secret を指定します。 続く put コマンドで保存された値は、 この secret を指定して後で削除できます。
status [<verbose level>]
経路表や直前のルーティング結果を表示します。 verbose level として負の整数が与えられた場合、表示内容を多少省略します。
localdata
そのノードが保持しているキーと値の組を表示します。
help|?
ヘルプメッセージを表示します。
quit|exit
シェルから抜けます。
halt|stop
ノードを停止します。
clear routingtable
経路表をクリアします。
clear dht
ノードが保持している値をクリアします。
suspend
ノードを一時停止します。 後で復帰させることができます。
resume
一時停止したノードを復帰させます。

Return to Documents page
Return to Overlay Viewer main page