Title: NCO_yhlee_ 1
1Real-time SOA
- Yann-Hang Lee, Wei-Tek Tsai, and Yinong Chen
- Computer Science and Engineering Department
- Arizona State University
- yhlee_at_asu.edu
2Future Combat Systems
A large-scale distributed real-time embedded
system which is dynamic, survivable, verifiable,
reusable, maintainable
3Trends of Real-time Embedded Systems
- Wide-spreading
- Distributed, connected, and heterogeneous
- Mission and safety critical
- Quality of the products
- portable/reusable, reliable/dependable,
interoperable, predictable (schedulable), and
secured - Software extensive
- Examples
- Home and factory automation, transportation
- Communication (PCS, wire and wireless) and sensor
networks - Medical devices monitoring and implantable
- Defense applications Network centric warfare
and future combat system
4Building RT Embedded Systems
- Advances in general-purpose computers
- PCs are powerful, cheap, and versatile
- Information processing is ubiquitous
- Thanks for the increase in productivity
Process technology Hardware design
productivity Software productivity
58
21
8
5Distributed Embedded Software
- Characteristics
- Network centric, concurrent operations, time and
environment dependent - Embedded software development
- 80 programs in embedded system is with C/C
and15 in assembly - the same thing that has been done more than 30
years (Ada?) - Software complexities
- inherent and cannot be eliminated, i.e.
algorithm, concurrency, etc. - accidental (due to technology or methods used),
i.e. memory leaks - What can we do?
- abstraction (e.g. modeling)
- automation (e.g. code generation, composition)
6Service-Oriented Architecture
- Service as an abstraction for
- discovery
- composition
- invocation
- SOA represents a paradigm shift away from the
software application to the software-as-a-servi
ce model - Based on connectivity of the sites that provide
services
7Real-time Perspectives in SOA
- Invocations of services must be completed within
specific timing constraints - should include network delay, and data
marshalling overhead. - How about the semantics of embedded applications
- Never-ending operation periodic or aperiodic
- Event-driven or time-driven
- Asynchrony - signals, events, transfer of
control - Concurrency invoke more than one services at
the same time - Must be based on a distributed real-time
architecture
8Service Model of RTSOA
- Passive and active services
App_1
App_1
Periodic Service _1
invoke/request
Service _1
send(msg)
receive
result
Periodic Service_2
App_2
App_2
send(msg)
Periodic Service_3
Service_2
Service_3
send(msg)
App_3
App_3
control/conf.
9Service Model of RTSOA
- Basic functional service model
- Real-time properties of services
- Quality of service
- Minimum and maximal response times
- Service capacity (such as a number of service
invocations that can be accepted per unit of
time) - Degree of concurrency (the maximal number of
service consumers that the service provider can
be bounded to simultaneously) - Cost and required resource
- Communication as a service
- guaranteed message delay or bandwidth reservation
10 Execution Model of Real-time SOA
- System model services are distributed in
multiple nodes which are connected by networks - Task model a sequence of services executed in
several nodes - Possible precedence constraint between consequent
services - Service allocation and scheduling
- End-to-end delay execution times of services and
message delays - Jitter control when a service can be released
11Schedule Services in RT SOA
Service Binding
traffic volume msg routing
utilization
msg ready time
service scheduling at each node
message scheduling
service ready time
computation delay
msg delay
end-to-end delay
12Generalized RMS for Distributed Scheduling
- Assign periodic execution for each required
service at its host node - Partition end-to-end deadlines to each service
and communication - Synchronized period for each service
- Rate-monotonic or deadline monotonic scheduling
to determine priorities at each node - Bandwidth allocation to ensure bounded message
delays. - Schedulability test
13Cyclic Scheduling (Time-based)
- Time triggering in TMO
- A synchronized clock
- Tasks are scheduled in cyclic manner at each node
- Control the jitter (earliest and latest instants)
- Pinwheel scheduling
- A task set with harmonic periods can have 100
schedulability utilization - Transfer the periods into harmonic numbers
- Use pinwheel scheduling at each node
- Distance constraints at each pipelined stage
- Pinwheel phase alignment to minimize end-to-end
delay
14Real-Time Communication
- To achieve an end-to-end delay bound for messages
- Difficulties
- distributed queueing --- distributed scheduler
- efficient use of bandwidth
- non-preemptable
- buffer requirement
- interaction between consecutive link servers
- Typical approaches scheduling based on assigned
priority or reserved bandwidth - Reserve a suitable bandwidth during admission
control - Packet-by-packet generalized processor sharing
(PGPS) to schedule packets according to the
simulated finishing time
15Optimal Composition
- Following discovery, determine how a plan should
be realized if multiple services exist. - A typical optimization problem with
- Objectives minimize cost (resource usage,
vulnerability) - Constraints deadlines, jitters, number of
service nodes. - Global or local optimization
- How practical of the approaches
- scalability
- dynamic composition due to mission requirement,
external event, and mobility - effectiveness
- the availability of information
16A Practical Approach
- Levels of service quality
- service threads from a fixed pool
- invocation frequency or periodicity
- resolution, bandwidth, and resource allocation
- Restriction of accessing to various levels
- When compositing a plan,
- a partial search (breath or depth first) while
reserving the resources the requestor is allowed - basically, a greedy approach
- Cached and canned services
- Backup and duplicated services
17Ontology for RTSOA
- Consider smart home applications
- All houses are different with different appliance
and residence - Can plans be developed for each house and its
residence - Ontology a knowledge base for the specific
application domain - generic services and application templates
- key words and relations
- Based on registration information, plans can be
- generated and composited
- re-evaluated for service mobility
18Summary
- Software development is a tough job, it is more
difficult for RTES - many emerging requirements
- it is the design of the systems
- what else other than C C, or Ada
- Is SOA ready for distributed real-time embedded
applications - the goals abstraction and automation
- SOA overhead, optimization and real-time issues
can be solved to certain degrees - how effective depends upon the application
domains - service semantics and models can be tailored to
specific application domains - SOSE service-oriented system engineering
Real-time Embedded System Lab, ASU
19- Thanks.
- Questions and Comments
Real-time Embedded System Lab, ASU