Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | wynter-jefferson |
View: | 54 times |
Download: | 0 times |
Reconfigurable Real-Time Middleware for
Distributed Cyber-Physical Systemswith Aperiodic Events
Yuanfang Zhang, Christopher Gill, Chenyang LuDepartment of Computer Science & Engineering
2
Motivation
• Cyber-Physical Systems (CPS) require integrated design of computing & physical systems.
• Challenge: Diversity of CPS applications– Avionics, automobile, manufacturing, medical, power grid…
– Different CPS applications need different middleware configurations.
– Existing real-time middleware provides fixed sets of services.• Real-Time CORBA, Real-Time Java, CORBA Component Model.
• Goal: reconfigurable middleware for diverse CPS applications.Tailor middleware services to specific needs of a CPS application.
Facilitate integrated design of CPS.
3
Outline
• Middleware architecture• Alternative service strategies
– encapsulated in configurable middleware components
• Map CPS application characteristics to service strategies– supported by configuration tools
• Implementation and empirical evaluation
4
Application Model• End-to-End Task Ti = chain of subtasks (Ti,1, Ti,2, …Ti,k)
– Aperiodic or periodic– Subject to end-to-end deadline– Example: Subtask triggered by event from predecessor
• Job: an instance of a task
Application Processor 1
Application Processor 2
Application Processor 3
T1,2 T1,3T1,1
ECEC EC
Gateway
Gateway
Real-time Event Service on CORBA
5
Middleware Architecture
Task manager• Admission Control (AC)
• Load Balancing (LB)
Application processors• Idle Resetting (IR)
• Task Effector (TE)
OriginalComponent
DuplicateComponent
Original TaskAllocation
TaskReallocation
Task Manager
EC/ORB
AC
LB
ApplicationProcessor 1
EC/ORB
T1,1
TE IR
ApplicationProcessor 2
EC/ORB
T1,2
TE IR
ApplicationProcessor 3
EC/ORB
T1,1
TE IR
ApplicationProcessor 4
EC/ORB
TE IR
ApplicationProcessor 5
EC/ORB
T1,3
TE IR
T1,2
6
Admission Control Strategies
• Admission test based on aperiodic utilization bound [Abdelzaher04]
– Guarantee end-to-end deadlines of admitted tasks/jobs.
• AC per Task– Perform the admission test for an entire task when it arrives. Reserve capacity for all jobs of an admitted task no job skipping. More pessimistic admission test.
– Example: Digital control.
• AC per Job– Perform the admission test for each job of a task. No reservation for a task may skip some jobs of a task. Less pessimistic admission test.
– Example: Non-critical image acquisition.
7
Load Balancing Strategies
• Redirect events to replicas located on least loaded processors• Light weight: No state synchronization among replicas.• LB per Task
– The path of a task is determined upon arrival same path for all jobs. Achieve state persistency between jobs. Less performance benefit.
– Example: Integral control, video.
• LB per Job– Different jobs may be redirected to different paths. No state persistency between jobs. More performance benefit
– Example: Proportional control, image acquisition.
8
CPS Applications Services
• Can tolerate job skipping? Per Task AC (example: digital control) Per Job AC (example: image acquisition)
• Component Replication? No load balancing Load balancing
• Require state persistency between jobs? Per Job LB (example: Proportional control) Per Task LB (example: Integral control)
9
Configuration Space
• 15 valid configurations difficult to configure manually!
• Some combinations are invalid: Per Task AC/Per Job IR
Lo
ad B
alan
cin
g
Idle Resetting
No
ne
Per
Tas
k
Per
Jo
b
None Per Task Per Job
Per Job
Per Task
Admission Control
10
Configuration Tools
• Input: Application characteristics.– Does your application allow job skipping? [yes (Y), no (N)]– Does your application have replicated components? [yes (Y), no (N)]– Does your application require state persistence? [yes (Y), no (N)]
• Configuration Engine– Generate XML-based deployment plan– Avoid invalid combinations of strategies
• Deployment Engine (DAnCE) [Deng07] executes deployment plan.
11
1. N2. Y3. Y
4. PT
Workload
ConfigurationEngine
XML-baseddeployment
plan
Parse theplan
ComponentRepository
Deploy components on each node
Select
Createcomponent
server
CreateContainer
Deployment::NodeImplementationInfo
Deployment::DeploymentPlanDAnCE
PlanLauncher
DAnCEExecutionManager
Front End
DAnCENode
ManagerNode
ApplicationManager
set_configurationDAnCE
NodeApplication
Container
Configuration<instance id="Central-AC"> ....... <configProperty> <name>LB_Strategy</name> <value> <type> <kind>tk_string</kind> </type> <value> <string>PT</string> </value> </value> </configProperty>
12
Component Middleware
• Based on CIAO 0.6 [Wang04], open-source implementation of Light Weight CORBA Component Model (CCM) specification.
• Implemented real-time services as configurable components.– Supports real-time, aperiodic and periodic, end-to-end tasks.
13
Experimental Platforms
harry.csePentium4 2.53GHz1G RAM512KB cacheKURT-Linux 2.4.22
hermoine.csePentium4 2.80GHz1G RAM512KB cacheKURT-Linux 2.4.22
norbert.csePentium4 2.53GHz1G RAM512KB cacheKURT-Linux 2.4.22
ron.csePentium4 2.80GHz1G RAM512KB cacheKURT-Linux 2.4.22
neville.docPentium4 3.40GHz2G RAM2048KB cacheKURT-Linux 2.4.22
angelina.docPentium4 3.40GHz2G RAM2048KB cacheKURT-Linux 2.4.22
100Mbps Ethernet switch
14
Imbalanced Workloads
0
0.2
0.4
0.6
0.8
1
T_N_N
T_N_T
T_N_J
T_T_N
T_T_T
T_T_J
J_N_N
J_N_T
J_N_J
J_T_
N
J_T_
T
J_T_
J
J_J_
N
J_J_
T
J_J_
J
Av
era
ge
ac
ce
pte
d u
tiliz
ati
on
ra
tio
AC_IR_LB
N: None
T: Per Task
J: Per Job
Easy to generate different configurations.Middleware configurations have significant impact on real-time performance
15
Conclusions
• Configurable real-time middleware– Configuration tool maps application characteristics to
middleware configurations– Components middleware implements configurable services
Facilitate integrated design of diverse CPS applications