後卓越子計畫報告 pllab 李政崑教授. component remoting technology map

13
後後後後後後後後 PLLAB 後後後後後

Post on 19-Dec-2015

262 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

後卓越子計畫報告PLLAB

李政崑教授

Page 2: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Component Remoting Technology Map

Component Remoting Technology Map

Page 3: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Research Result

Streaming Support for Java RMI in Distributed Environment, C. C. Yang, Chung-Kai Chen, Yu-Hao Chang, Kai-Hsin Chung and Jenq-Kuen Lee, ACM International Conference on Principles and Practices of Programming In Java (PPPJ 2006), Mannheim, Germany, August 30 - September 1, 2006.

Apply for a patent “ 提供遠端物件具備網路串流功能的機制 “ now.

Page 4: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Proposed Software Architecture of Streaming RMI

Several important components are needed to support our mechanisms. Streaming data are

pushed from servercontinuous buffer toclient continuous buffer automatically.

Streaming controllermanages the contentof continuous buffer.

Streaming controllerstores aggregated datain streaming buffer.

The client application canconsume the complete streamdata from the streaming buffer.

ContinuousBuffer

ContinuousBuffer

StubStub

RMIClientRMI

Client

StreamingBuffer

StreamingBuffer

ContinuousBuffer

ContinuousBuffer

StreamingControllerStreamingController

RMIServerRMI

Server

ContinuousBuffer

ContinuousBuffer

Application Layer

Streaming Layer

RDMA-likeTransportation

Page 5: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Features of Streaming Java RMI

Pushing The idea is the same as pre-fetching.

Aggregation This is for better manipulation of streaming data

from multiple streaming servers.

Forwarding It provides bandwidth-sharing between clients.

Page 6: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Aggregation policy

Notations A set of streaming servers S = {si | i = 1, .., n}

A set of data blocks D = {dj | j = 1, .., m}

For each streaming server si:

The supplying bandwidth bi of si

A set of data blocks that exists in si: Blocks(si)

The completeness of data in si: Completeness(si)

The amount of content: ki

The bandwidth requirement : Req(dj)

The bandwidth allocation table: BATmxn

iii

ksssCompletenesWeight

1)(

)Req(d

1)(

j

Page 7: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Scheduling Algorithm

Weight evaluation and sorting

Bandwidth allocation

Page 8: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Experiment Result 1

Compare the performances of standard RMI with streaming RMI To demonstrate the performance improvement brought by pushing me

chanism

0

10

20

30

40

50

60

70

80

90

100

1 10 20 30 40 50

Size of each read operation (kB)

Th

rou

gh

pu

t (M

b/s

)

Standard RMI Streaming RMI

Page 9: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Experiment Result 2

Data overhead measurement Overhead for sending a 5MB data stream

Page 10: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

Simulation Conditions for Aggregation

We observe the waiting time of each streaming task. Waiting time is defined as the time from a client issuing

the request to the time ready for playback. Take the ratio of

results using aggregation to those without aggregation.

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

Page 11: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

0 0.2 0.4 0.6 0.8 10

0.5

1

0.4

0.44

0.48

0.52

0.56

Rat

io

β

γ

(a)Simulation A

0.52-0.56

0.48-0.52

0.44-0.48

0.4-0.44

α= 0.5Number of streams = 400

0 0.2 0.4 0.6 0.8 10

0.5

1

0.4

0.44

0.48

0.52

0.56

Rat

io

β

γ

(b)Simulation B

0.52-0.56

0.48-0.52

0.44-0.48

0.4-0.44

α= 0.5Number of streams = 200

Simulation Results (1) Simulation A –α = 0.5, Number of Streams = 400 Simulation B –α = 0.5, Number of Streams = 200

While the number of streams decreasing, our algorithm can get better average waiting time than the algorithm without aggregation.

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

n.aggregatio without time waitingaverage

n.aggregatio using time waitingaverageRatio (The lower the better)

Page 12: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

0 0.2 0.4 0.6 0.8 10

0.4

0.8

0.4

0.44

0.48

0.52

0.56

Rat

io

β

γ

(c)Simulation C

0.52-0.56

0.48-0.52

0.44-0.48

0.4-0.44

α= 0.5Number of streams = 100

0 0.2 0.4 0.6 0.8 10

0.5

1

0.34

0.38

0.42

0.46

0.5

Rat

io

β

γ

(d)Simulation D

0.46-0.5

0.42-0.46

0.38-0.42

0.34-0.38

α= 0.1Number of streams = 100

Simulation Results (2)

Simulation C -α=0.5, Number of Streams= 100 Simulation D -α=0.1, Number of Streams= 100

Using different variable sets, the average waiting reduction will get better reduction.

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

Bandwidth available -- (α)Completeness -- (β)

Amount of content -- (γ)

Page 13: 後卓越子計畫報告 PLLAB 李政崑教授. Component Remoting Technology Map

On going research

We will add mobility ability into our framework

We will expend our framework by following SOA specification