©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002 Miguel Segarra José Antonio Clavijo...

69
©SCILabs 2002 www.SCILabs.es Real-Time CORBA ©SCILabs Ingenieros S.L. 2002 www.SCILabs.es Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    3

Transcript of ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002 Miguel Segarra José Antonio Clavijo...

Page 1: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA

©SCILabs Ingenieros S.L. 2002 www.SCILabs.es

Miguel SegarraJosé Antonio Clavijo

HRTC

Vienna Plenary Meeting

Page 2: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Speech Contents

• Introduction• Real-Time/Minimum CORBA

development• The DOTS Project• Conclusions

Page 3: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Introduction

• What is CORBA?• Useful URLs

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 4: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA

• It is an specification of the OMG

• CORBA specifies an architecture for building distributed object systems, common services for those systems and protocols for interoperability among CORBA implementations.

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 5: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA? Introduction RT CORBA Dev. DOTS Project Conclusions

HorizontalCORBA Facilities

Object Request Broker

CORBA Services

VerticalCORBA Facilities

ApplicationObjects

• The CORBA “software bus”

Page 6: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA?

UMLModeling CORBAservices

CORBAfacilities

Business Object Facility

Common Business Objects

CORBADomains

CORBADomains

CORBADomains

Me

ta-O

bje

ct F

aci

lity

SE

CU

RIT

Y

IDL Interfaces, Mappings, & ORB

Realtime, Embedded options

Interoperability: IIOP, Asynch

Components, Scripting

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 7: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA?

• How does it work? Introduction RT CORBA Dev. DOTS Project Conclusions

•Server Side•Client Side

Object Request BrokerIDL

IDL

POA

CLIENT

SERVANT

IDL

Page 8: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA?

Object Request BrokerIDL

IDL

POA

CLIENT

SERVANT

Introduction RT CORBA Dev. DOTS Project Conclusions

• How does it work?

Client.GetValue(); Servant.GetValue();

Page 9: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

What is CORBA?

Object Request BrokerIDL

IDL

POA

CLIENT

SERVANT

Object Request BrokerIDL

IDL

POA

CLIENT

SERVANT

Introduction RT CORBA Dev. DOTS Project Conclusions

GIOP

Client.GetValue();

Servant.GetValue();

Page 10: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Useful URLs

• Our Home Page:– http://www.scilabs.es

• OMG Home Page:– http://www.omg.org

• OMG Specs:– http://www.omg.org/technology/

documents/spec_catalog.htm

• OMG News:– http://www.omg.org/news

• Lots of OO/CORBA URLs– http://www.cetus-links.org

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 11: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Speech Contents

• Introduction• Real-Time/Minimum CORBA

Development• The DOTS Project• Conclusions

Page 12: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

RT/Minimum CORBA Development

• CORBA features for real-time/embedded development

• Specifications vs. Reality• RT CORBA Tools for System

Design• Some Lessons Learnt• Industry Trends

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 13: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time/Minimum CORBA Features

• Characteristics of RT CORBA systems– End-to-end system predictability

(not high performance)– Allocation of resources

• Characteristics of Minimum CORBA systems– Limited resources– Full CORBA interoperability

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 14: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time/Minimum CORBA Features

• End-to-end predictability– Respecting thread priorities

between clients and servers– Bounding the duration of thread

priority inversion– Bounding latencies of operation

invocations

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 15: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time/Minimum CORBA Features

• Management of resources– Process, storage and

communication• Threadpools• Priorities• Number of concurrent requests• Transport connections

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 16: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time/Minimum CORBA Features

• Real-Time CORBA 1.0 addresses fixed-priority real-time systems– Priority-based scheduling rather

than e.g. deadline based

• Real-Time CORBA 2.0 addresses dynamic scheduling

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 17: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time/Minimum CORBA Features

• Minimum CORBA defines a cut down profile of CORBA

• Dynamic aspects of CORBA are removed

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 18: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

RT/Minimum CORBA Development

• CORBA features for real-time/embedded development

• Specifications vs. Reality• RT CORBA Tools for System

Design• Some Lessons Learnt• Industry Trends

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 19: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA

Specifications vs. Reality

Introduction RT CORBA Dev. DOTS Project Conclusions

Messaging

CORBA

MinimumCORBA

TimeService

But close to the process resources are very limited!

Page 20: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Specifications vs. Reality

Introduction RT CORBA Dev. DOTS Project Conclusions

CORBA

MinimumCORBA

Real-Time CORBA

Messaging

TimeService

Dynamic part of CORBA

In embedded/real-time systems a lot of decisions are made at design time!

Page 21: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

RT/Minimum CORBA Development

• CORBA features for real-time/embedded development

• Specifications vs. Reality• RT CORBA Tools for System

Design• Some Lessons Learnt• Industry Trends

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 22: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Stub

Client

Real-Time CORBA Tools For System Design

Introduction RT CORBA Dev. DOTS Project Conclusions

threadpriority

Provide predictability by controlling ORB behavior

ORB

connection

ORBInvoke priority

protocol

Skeleton

POA

threadpriority

concurrency

Servant

Page 23: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Stub

Client

Real-Time CORBA Tools For System Design

Introduction RT CORBA Dev. DOTS Project Conclusions

Impact on ORB architecture of predictability issues

ORB

buffering

ORBdelay

Skeleton

POA

threaddispatching

Servant

buffering

request dispatchingmarhalling

marhalling

Memory mgmt

Memory mgmt

Page 24: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Real-time CORBA features– RT ORB and RT POA– RT CORBA priority and priority mappings– RT CORBA priority models– Priority transforms– RT CORBA mutex– Threadpools– Connection management– Protocol selection– Invocation timeout– Bounding of ORB priorities

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 25: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• RTCORBA::RTORB– It is an extension of the

CORBA::ORB with operations to create new real-time entities (e.g. threadpool, mutex and new RT policies)

• RTPortableServer::POA– Add to the PortableServer::POA

operations to set priority on an object reference basis

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 26: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

Introduction RT CORBA Dev. DOTS Project Conclusions

0

RTCORBA::Priority31

0

31

0

255

OS #1 native priority model

4

25

OS #2 native priority model

Real-Time CORBA Priority

•An OS independent priority scheme. The same range of CORBA priorities for all platforms. Custom priority mappings are allowed.

Page 27: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design• Real-Time CORBA Priority

Models– Client propagated– Server declared– Per object reference basis

Introduction RT CORBA Dev. DOTS Project Conclusions

Stub

Client

ORB ORB

Skeleton

POA

Servant

What is the invocationPriority?

Page 28: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Client propagated priority model

Introduction RT CORBA Dev. DOTS Project Conclusions

Stub

Client

ORB ORB

Skeleton

POA

Servant

client running at priority 100Invocation executed at priority 100

Client’s priority propagated along the path to server in a

service context

Page 29: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Server declared priority model

Introduction RT CORBA Dev. DOTS Project Conclusions

Stub

Client

ORB ORB

Skeleton

POA

Servant

client running at priority 100Invocation executed at priority 3347

Client’s priority IS NOT propagated along the path to

server in a service context

Page 30: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Priority transforms– Inbound– Outbound

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 31: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Real-Time CORBA mutex– An API to give access to the

mutex implementation that the ORB uses

– This gives consistency to the priority protocol used

– Basic tool for resource protection

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 32: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Threadpools– Server-side tool to handle

invocations– Provide concurrency control– Allows thread pre-creation and reuse– Setup of idle threads priority

• Two flavors of threadpools– Without lanes– With lanes

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 33: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Threadpools Introduction RT CORBA Dev. DOTS Project Conclusions

POA A POA B

ORB

threadpool

POA A POA B

ORB

Threadpool A Threadpool B

Page 34: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Threadpools Introduction RT CORBA Dev. DOTS Project Conclusions

Threadpool

Threadpool

Lane A Lane B

•Without lanes- stacksize 512- prio 100- Static 5- Dynamic 3- Req buff Yes- Max Reqs 3- Req Buf Sz 5120

•With lanes- Stacksize 512- Lanes 2- Borrowing Yes- Req buff Yes- Max Reqs 3- Req Buf Sz 5120-Lane A

-Prio 1110-Static 2-Dynamic 1

Page 35: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Handling connections– Implicit and explicit binding– Multiplexed connections– Private connections– Banded connections

Introduction RT CORBA Dev.DOTS Project Conclusions

Page 36: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

ORB ORB

client

client client

clientserver

Multiplexed:Resource contention by shared connection

ORB ORB

client

client client

clientserver

Private connection:Exclusive use of a connection by a client

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 37: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

ORB

Real-Time CORBA Tools For System Design

ORB

client

client client

client

server

0 - 1300

9786 - 21340

Banded connections:Invocation priority determines connection to use

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 38: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

• Protocol configuration– It can be done at the client or

server side of the ORB– Available protocols are exposed

to clients in IORs when the configuration is set from the server side

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 39: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

Introduction RT CORBA Dev. DOTS Project Conclusions

RTOS A

Client

ORB A ORB B

Skeleton

RTOS B

Servant

Stub

TCP/IPATM OtherATMTCP/IP

Object Reference

Invocation

Page 40: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Real-Time CORBA Tools For System Design

Introduction RT CORBA Dev. DOTS Project Conclusions

RTOS A

Client

ORB A ORB B

Skeleton

RTOS B

Servant

Stub

TCP/IPATM OtherATMTCP/IP

Invocation timeout

Page 41: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

RT/Minimum CORBA Development

• CORBA features for real-time/embedded development

• Specifications vs. Reality• RT CORBA Tools for System

Design• Some Lessons Learnt• Industry Trends

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 42: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Some Lessons Learnt

• In general, sources of unsatisfactory results are not easy to find.

• Pattern-based development provides good results but... there is no ORB pattern.

• Improving the ORB by experimenting is of great help. Ask “Why...?”. Run lots of tests.

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 43: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Some Lessons Learnt

• Performance– Avoid new/delete. Expensive and

leads to memory fragmentation.– Avoid linear searches

• Unmarshalling IORs• DeMux to object implementation

and operation invocation.– Copying of data: From client to ORB

to network. From network to ORB to server.

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 44: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Some Lessons Learnt

• Performance.– Buffer resizing strategy.– Threads life-cycle. Keep threads

alive but idle.– Avoid overhead of first invocation.

Early binding.– Compare to raw-socket

application to find ORB overhead.– Measure ORB behavior with

varying data sizes. (must be linear)

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 45: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Some Lessons Learnt

• Predictability– Worst time case is hard to find:

several sources of non determinism (application, ORB, OS, network).

– Configure the ORB in a simpler manner to reduce the number of “changing things” (e.g. Use static buffers).

– Being predictable introduces ORB overhead (priority service contexts)

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 46: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Some Lessons Learnt

• Footprint– What is too much?– Performance vs. Footprint– Performance vs. Services

provided– Memory left on board by the ORB

for the application– Bound memory usage by the ORB– Size of the ORB library

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 47: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

RT/Minimum CORBA Development

• CORBA features for real-time/embedded development

• Specifications vs. Reality• RT CORBA Tools for System

Design• Some Lessons Learnt• Industry Trends

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 48: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Industry Trends

• The embedded industry is not used to object solutions

• Embedded systems have issues not considered in the RT CORBA specification

• There is no embedded CORBA specification

• Let the user configure default behavior of the ORB (e.g. Default multiplexing of connections)

• Preallocation and control of ORB resources

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 49: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Industry Trends

• Usage of multiple protocol stacks: adopt the OCI framework

• The ORB architecture must be open to developers: configure ORB in a “plug-in” fashion.

• Tracing execution and debugging tools

• Specialised services for real-time

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 50: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Speech Contents

• Introduction• Real-Time/Minimum CORBA

Development• The DOTS Project• Conclusions

Page 51: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• Overview• Participants• Objectives• Domain• Elitel-5: an embedded device• Some results

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 52: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Overview

• Overview– To establish an open software

model, built upon real-time distributed object technologies and emergent telecontrol standards to allow the optimum exploitation of the interoperation capabilities of devices and systems in the distributed context of an electric power grid.

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 53: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Participants

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 54: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Objectives

• Distributed Object Telecontrol Systems & Networks

• IST-1999-10258-DOTS• Real-Time CORBA• Minimum CORBA• IEC-61850 for control systems

in electrical substations

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 55: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Objectives

• From the IEC-61850 draft1. The functions of the substation automation system (SAS) and

their communication behaviour shall be described device independent.

2. The functions shall be described as far as necessary only to identify the information to be exchanged.

3. The free allocation of functions to devices shall be supported.4. The functions used today are well known but the standard

shall be open for future requirements.5. The interaction of device independent distributed functions

shall be described by the logical interfaces in between which may be freely allocated to physical interfaces or LANs.

6. The standard shall define generic information to be communicated and the communication behaviour of the functions to provide for planned and future functional extensions of substation automation system.

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 56: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

Introduction RT CORBA Dev. DOTS Project Conclusions

Domain of application

CORBA-IEDCORBA Gateway

Station Computer

CORBA-RTU

DOTS-010-1

RTORB Non RTORB

LN

LN LN

LN LN

LN

CORBA Gateway

Non CORBA-IED

Page 57: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• The ELITEL-5 IEDs Introduction RT CORBA Dev. DOTS Project Conclusions

Page 58: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 59: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• The pilot application Introduction RT CORBA Dev. DOTS Project Conclusions

C ontro l Build ing C om m unication R oom

Build ing C R -1

O IT & SC T C om puter

H U B

H U BIED 1

IED 2

Substation C om puter Video C am era

R ing Button

R eal D ig ita l Input S ignals

R eal analog signals

S im ulate D ig ita l Input S ignals

S im ulate Analog S ignalsS im ulate D ig ita l O utput S ignals

R J-45 E thernet

R J-45 E thernet R J-45 E thernet

R J-45 E thernet

R G -59 v ideo cab le

O F

Page 60: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

Elite

l 5

RTORB

Real-Time POA

Client Propagated Priority Model

Threadpools

ICa MinRT VisiBrokerOIT

IIO

P

Process

IEC-61850

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 61: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• Physical devices– OIT: Operator Interface Tool– IED1: Elitel 5 with blocking control– IED2: Elitel 5 with circuit breaker and switchs

• Logical Nodes– IHMI: Human-Machine Interface– XCBR: Circuit Breaker– XSWI: Switch– CILO: Inter-locking

OIT

IED2 IED1

XSWI25

XCBR20CILO0

IHMI0

3' 5'6

52

3

4

1

Supervision of analog and digital signals and digital refresh rate of 100ms

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 62: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS ProjectCaso 1: operación inhibida º

OIT. IHMI0 IED2. XCBR20 IED1. CILO0 IED2. XSWI25

t1 XCBR.set_ctlVal t2 CILO.get_stVal t3 XSWI.get_stVal t4 openedt5 disabledt6 rejected

Tramas Ethernet - GIOP (tiempos en microsegundos)us 1 2 3 4 5 6 7 8 9 10 media máx.t1 20.335.662 45.553.513 52.144.590 58.703.645 64.313.420 74.245.842 79.532.090 95.386.618 97.130.014 106.980.377t2 20.406.110 45.614.671 52.203.864 58.768.336 64.374.433 74.314.190 79.594.563 95.449.168 97.190.656 107.041.147t3 20.473.052 45.682.335 52.271.569 58.832.201 64.442.697 74.383.529 79.666.425 95.518.615 97.262.690 107.110.436t4 20.610.142 45.832.117 52.416.208 58.968.215 64.582.785 74.523.270 79.804.676 95.657.546 97.402.515 107.250.338t5 20.635.061 45.864.838 52.443.386 58.990.098 64.604.270 74.544.635 79.826.270 95.679.531 97.424.028 107.272.837t6 20.659.827 45.888.113 52.467.953 59.012.211 64.626.445 74.566.733 79.852.838 95.701.697 97.446.218 107.295.188t1-t2 70.448 61.158 59.274 64.691 61.013 68.348 62.473 62.550 60.642 60.770 63.137 70.448t2-t3 66.942 67.664 67.705 63.865 68.264 69.339 71.862 69.447 72.034 69.289 68.641 72.034t3-t4 137.090 149.782 144.639 136.014 140.088 139.741 138.251 138.931 139.825 139.902 140.426 149.782t4-t5 24.919 32.721 27.178 21.883 21.485 21.365 21.594 21.985 21.513 22.499 23.714 32.721t5-t6 24.766 23.275 24.567 22.113 22.175 22.098 26.568 22.166 22.190 22.351 23.227 26.568t1-t6 324.165 334.600 323.363 308.566 313.025 320.891 320.748 315.079 316.204 314.811 319.145 334.600

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 63: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

Caso 2: operación permitida

OIT. IHMI0 IED2. XCBR20 IED1. CILO0 IED2. XSWI25

t1 XCBR.set_ctlVal t2 CILO.get_stVal t3 XSWI.get_stVal t4 closedt5 enabled

IED2. SD1close

t6 accepted

us 1 2 3 4 5 6 7 8 9 10 media máx.t1 2.499.720 5.365.568 7.835.573 9.296.164 15.425.039 19.646.169 21.981.022 24.083.936 28.529.510 32.992.953t2 2.563.527 5.429.650 7.900.292 9.361.910 15.487.889 19.709.996 22.046.448 24.149.677 28.593.594 33.060.292t3 2.631.717 5.493.665 7.966.715 9.427.648 15.565.181 19.784.617 22.112.679 24.218.979 28.661.929 33.125.986t4 2.767.646 5.630.963 8.104.121 9.570.560 15.704.305 19.924.838 22.255.135 24.362.593 28.803.099 33.269.912t5 2.789.230 5.652.693 8.128.383 9.596.547 15.726.077 19.956.273 22.276.619 24.387.501 28.824.590 33.295.873t6 2.892.260 5.762.258 8.232.135 9.698.891 15.829.857 20.064.049 22.386.585 24.492.481 28.930.021 33.405.228t1-t2 63.807 64.082 64.719 65.746 62.850 63.827 65.426 65.741 64.084 67.339 64.762 67.339t2-t3 68.190 64.015 66.423 65.738 77.292 74.621 66.231 69.302 68.335 65.694 68.584 77.292t3-t4 135.929 137.298 137.406 142.912 139.124 140.221 142.456 143.614 141.170 143.926 140.406 143.926t4-t5 21.584 21.730 24.262 25.987 21.772 31.435 21.484 24.908 21.491 25.961 24.061 31.435t5-t6 103.030 109.565 103.752 102.344 103.780 107.776 109.966 104.980 105.431 109.355 105.998 109.966t1-t6 392.540 396.690 396.562 402.727 404.818 417.880 405.563 408.545 400.511 412.275 403.811 417.880

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 64: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• Some results– DOTS is the first implementation

of the IEC-61850 standard– Contribution to the adoption of

the IEC-61850 standard• General Model Definition• Specific Communication Service

Mapping-Mapping to CORBA

– Embedded IEC-61850 SW for IED and RTU over the SCILabs’ ICa ORB

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 65: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• Real-time ICa• An SCT and OIT capable to

manage IEC-61850 objects

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 66: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

The DOTS Project

• Some results of SCILabs Introduction RT CORBA Dev. DOTS Project Conclusions

Version: Release ICA ORB Performance TestServer: LunesClient: BelcebubNumber of Calls: 1000

ORBSequence of Octets

Sequence of Shorts

Sequence of Octets

Sequence of Shorts

Sequence of Octets

Sequence of Shorts

Sequence of Octets

Sequence of Shorts

ICA (SCILabs) 1132 1132 1342 1352 5568 5569 10275 10276VISIBROKER (Borland) 1352 1262 1492 1482 5698 5669 10375 10386TAO (Washington University) 1600 1600 1600 1600 6400 6400 11600 11240ORBIX/E (Iona) 1052 1042 1272 1261 5549 5548 10296 10495EORB (Vertel) 861 862 1071 1082 5229 5728 10797 10495

144

DataSize in bytes

OneWay TwoWay4816

OneWay TwoWay

Page 67: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Speech Contents

• Introduction• Real-Time/Minimum CORBA

Development• The DOTS Project• Conclusions

Page 68: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Conclusions

• Real-Time CORBA is beginning to be used by the RT/embedded systems community

• There is need for an embedded CORBA specification

• Battle to improve performance, footprint and ORB determinism

Introduction RT CORBA Dev. DOTS Project Conclusions

Page 69: ©SCILabs 2002 Real-Time CORBA ©SCILabs Ingenieros S.L. 2002  Miguel Segarra José Antonio Clavijo HRTC Vienna Plenary Meeting.

©SCILabs 2002

www.SCILabs.es

Conclusions

Thank you!

Introduction RT CORBA Dev. DOTS Project Conclusions