後卓越子計畫報告 pllab 李政崑教授. component remoting technology map
Post on 19-Dec-2015
262 views
TRANSCRIPT
後卓越子計畫報告PLLAB
李政崑教授
Component Remoting Technology Map
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.
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
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.
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
Scheduling Algorithm
Weight evaluation and sorting
Bandwidth allocation
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
Experiment Result 2
Data overhead measurement Overhead for sending a 5MB data stream
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 -- (γ)
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)
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 -- (γ)
On going research
We will add mobility ability into our framework
We will expend our framework by following SOA specification