JXTA Shell (2)

Preview:

DESCRIPTION

JXTA Shell (2). P2P 特論 ( ソフトウェア特論 ) 第 5 回 / 2005-05-18. JXTA Shell. JXTA のアーキテクチャ (3 Layer Cake). JXTA Shell. JXTA のプロトコル上で動くアプリケーション Unix の Shell のように、コマンドを利用して P2P を使った情報の公開、転送などを行う。 コマンドは自分で新規作成可能 Java 言語を用いる. JXTA Shell の起動 -- ひとつめの Peer を起動 --. ディレクトリの移動 (1). - PowerPoint PPT Presentation

Citation preview

1

JXTA Shell (2)

P2P 特論 ( ソフトウェア特論 )第 5 回 / 2005-05-18

2

JXTA Shell

3

JXTA のアーキテクチャ(3 Layer Cake)

4

JXTA Shell

JXTA のプロトコル上で動くアプリケーション

Unix の Shell のように、コマンドを利用して P2P を使った情報の公開、転送などを行う。

コマンドは自分で新規作成可能 Java 言語を用いる

5

JXTA Shell の起動-- ひとつめの Peer を起動 --

6

ディレクトリの移動 (1) "jxta-shell-2.3.3" ディレクトリに移動 サブディレクトリが2つある

lib ... JXTA Shell の動作に必要な Jar ファイルがある

shell ... JXTA Shell の起動スクリプト・実行ファイルなどがある

7

ディレクトリの移動 (2) shell ディレクトリ ( およびディレク

トリ中の全ファイル ) を shell2 にコピーする lib ディレクトリ、 shell ディレクトリの

ほかに shell2 ディレクトリができた shell2 ディレクトリは、もうひとつの Pe

er の起動に使う shell ディレクトリに移動

8

JXTA Shell の起動 JXTA Shell を起動する

(Windows では ) jxta.exe あるいは run.bat を起動

(Unix 系 OS では ) run.sh を起動

9

JXTA Configurator

“JXTA Configurator” ウィンドウが表示される

10

JXTA Configurator の設定 "Peer Name" に適当な名前 ( ここでは tomoharu-peer1) "Password" には適当なパスワード "Verify Password" は、 "Password" 欄に入力したものを

再度入力 "OK" ボタンを押す

11

“Initialize JXTA Keystore”ウィンドウ

"Initialize JXTA Keystore" ウィンドウが表示される

"Identity" が "tomoharu-peer1" であることを確認

"Identity Password" では、"JXTA Configurator" で設定したパスワードを入力する

12

Peer が起動した

ひとつめの Peer が起動されて、 "JXTA Shell" が使えるようになる

13

“.jxta” ディレクトリ 設定情報・キャッシュなどは、起動

ディレクトリの ".jxta" ディレクトリに保管される

2度目に起動したときは、” .jxta” ディレクトリの情報を読み出すので、” JXTA Configurator” ウィンドウは表示されない。

14

コマンドの実行

15

プロンプトの表示 ウィンドウの “ JXTA>” というプロンプ

トにコマンドを入力する

16

whoami コマンド (1) プロンプトに対して “ whoami” と入力する

JXTA>whoami<Peer>tomoharu-peer1</Peer><Description>Platform Config Advertisement created by : net.jxta.im

pl.peergroup.DefaultConfigurator</Description><PeerId>urn:jxta:uuid-59616261646162614A787461503250331

6B8DAE33952487E95978C43004EA73E03</PeerId>............JXTA>

17

whoami コマンド (2)JXTA>whoami<Peer>tomoharu-peer1</Peer><Description>Platform Config Advertisement created by : net.jxta.impl.peer

group.DefaultConfigurator</Description><PeerId>urn:jxta:uuid-59616261646162614A7874615032503316B8DAE

33952487E95978C43004EA73E03</PeerId>............JXTA>

Peer に関する情報が出力された

( 正確には Peer の告知 (Advertisement) の一部 )

18

man コマンド whoami コマンドの使い方は、 man コマン

ドで調べることができる。

JXTA>man whoami

-g と -l という2つのオプションがあることがわかる。

19

whoami コマンド (3)JXTA>whoami -l<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE jxta:PA><jxta:PA xmlns:jxta="http://jxta.org"> <PID>urn:jxta:uuid-59616261646162614A7874615032503316B8DAE33952487E

95978C43004EA73E03 </PID> <GID>urn:jxta:jxta-NetGroup</GID> <Name>tomoharu-peer1</Name> <Desc>

Platform Config Advertisement created by : net.jxta.impl.peergroup.DefaultConfigurator

</Desc>............

20

whoami コマンド (4)

-l オプションを使った。

この Peer に関する告知 (Advertisement) が表示される。

JXTA>whoami -l<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE jxta:PA><jxta:PA xmlns:jxta="http://jxta.org"> <PID>urn:jxta:uuid-59616261646162614A78746150

32503316B8DAE33952487E95978C43004EA73E03 </PID> <GID>urn:jxta:jxta-NetGroup</GID> <Name>tomoharu-peer1</Name> <Desc>

Platform Config Advertisement created by : net.jxta.impl.peergroup.DefaultConfigurator

</Desc>............

21

Peer 告知

PID 要素は Peer ID を表す。

GID 要素は、このPeer が属している Peer Group

Name 要素は、 JXTA Configurator で指定した Peer の名前

JXTA>whoami -l<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE jxta:PA><jxta:PA xmlns:jxta="http://jxta.org"> <PID>urn:jxta:uuid-59616261646162614A787461503

2503316B8DAE33952487E95978C43004EA73E03 </PID> <GID>urn:jxta:jxta-NetGroup</GID> <Name>tomoharu-peer1</Name> <Desc>

Platform Config Advertisement created by : net.jxta.impl.peergroup.DefaultConfigurator

</Desc>............

22

whoami コマンド (5)JXTA>whoami -g<PeerGroup>NetPeerGroup</PeerGroup><Description>default Net Peer Group</Description><PeerGroupId>urn:jxta:jxta-NetGroup</PeerGroupId>JXTA>

-g オプションで、所属している Peer Group の情報を出力する。

JXTA では、デフォルトで NetPeerGroup という Peer Group に参加している

23

2つめの Peer を起動

24

JXTA Shell の起動 別のターミナルで "jxta-shell-2.3.3/sh

ell2" に移動 JXTA Shell を起動する

(Windows では ) jxta.exe あるいは run.bat を起動

(Unix 系 OS では ) run.sh を起動

25

JXTA Configurator

“JXTA Configurator” ウィンドウが表示される

26

JXTA Configurator の設定 "Peer Name" に適当な名前 ( ここでは

tomoharu-peer2) "Password" には適当なパスワード "Verify Password" は、 "Password" 欄

に入力したものを再度入力

27

ポート番号の設定 (1) "Advanced" タブを選択する

28

ポート番号の設定 (2) "TCP Settings" で "9701" となっている

ポート番号を "9702" に変更する 同一ホストで複数の Peer を立ち上げるとき、

ポート番号を変更する必要がある "OK" ボタンを押す

29

Peer の起動 "Initialize JXTA Keystore" ウィンドウが表示さ

れる "Identity" が "tomoharu-peer2" であることを

確認 "Identity Password" では、 "JXTA Configurator"

で設定したパスワードを入力する ひとつめの Peer が起動されて、 "JXTA Shell"

が使えるようになる

30

Peer ID の確認 whoami -l コマンドを実行して、 Adver

tisement 中の PID 要素をチェックしよう。

PID 要素は、 Peer ID を表す。 tomoharu-peer1 と tomoharu-peer2 で

Peer ID が違うことを確認しよう。

31

入力パイプの生成と公開

32

パイプ告知を用いた通信

33

newpipe コマンドJXTA>tomoharuPipeAdv = newpipe -n tomoharuPi

peJXTA>

newpipe は、新しいパイプ告知を作成するコマンド

パイプの名前は “ tomoharuPipe” “tomoharuPipeAdv” という「環境変数」をも

つパイプ告知を作成する

34

env コマンド (1)

JXTA>env......

......JXTA>

tomoharuPipeAdv = "Pipe Advertisement" [net.jxta.impl.protocol.PipeAdv]

35

env コマンド (2) 現在の環境変数を一覧できるコマンド “tomoharuPipeAdv” という環境変数は “ Pip

e Advertisement” (= パイプ告知 ) であることがわかる。

tomoharuPipeAdv = "Pipe Advertisement" [net.jxta.impl.protocol.PipeAdv]

36

cat コマンド 環境変数の値を

出力するコマンド

tomoharuPipeAdvはパイプ告知なので、告知の XML ファイルが出力される。

JXTA>cat tomoharuPipeAdv<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE jxta:PipeAdvertisement><jxta:PipeAdvertisement xmlns:jxta="http://jxta.o

rg"><Id>urn:jxta:uuid-59616261646162614E50472050325033E104B85EE4B641EEBAA8C28A49556DA204</Id><Type>JxtaUnicast</Type><Name>tomoharuPipe</Name>

</jxta:PipeAdvertisement>JXTA>

37

パイプ告知

Id 要素、 Type 要素、 Name 要素がある。

Name 要素の内容は、 newpipe コマンドで指定した名前

JXTA>cat tomoharuPipeAdv<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE jxta:PipeAdvertisement><jxta:PipeAdvertisement xmlns:jxta="http://jxta.o

rg"><Id>urn:jxta:uuid-59616261646162614E50472050325033E104B85EE4B641EEBAA8C28A49556DA204</Id><Type>JxtaUnicast</Type><Name>tomoharuPipe</Name>

</jxta:PipeAdvertisement>JXTA>

38

mkpipe コマンド

JXTA>tomoharuInputPipe = mkpipe -i tomoharuPipeAdv

-i オプションで、 tomoharuPipeAdv から入力パイプを作成する。

入力パイプには tomoharuInputPipe という名前をつける。

39

publish コマンド

JXTA>publish tomoharuPipeAdv

tomoharuPipeAdv (= パイプ告知 ) を公開する

40

出力パイプの生成とファイルの送受信

Recommended