Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang,...

23
Strategized, Coordinated Services for Real-Time Middleware Lisa Cingiser DiPippo, Victor Fay-Wolfe, Matthew Murphy, Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:

Transcript of Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang,...

Page 1: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Strategized, Coordinated Services for Real-Time Middleware

Lisa Cingiser DiPippo, Victor Fay-Wolfe, Matthew Murphy, Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry

Sponsors:

Page 2: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

! Distributed end-to-end middleware real-time enforcement using global scheduling information

! Coordinated middleware services ! Coordinated scheduling points! Priority-based scheduling! Classic real-time analysis and

algorithms

URI Real-Time Middleware Approach

Page 3: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

3

URI Real-Time Middleware Services

{Scheduling

Service

RT Trader(Binding)Service

Data DistributionService

URI implements coordinated distributed end-to-end real-time as middleware common object services

RT Notification Load Balancing

Page 4: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Object(Servant)

IDLStubs

IDLSkeletons

ORB Core

in args

out args + return value

Operation ()

BSS or Spawn

ESS

USS

Client

Service Context1

2

3

4 76 Object

Adapter

RTC2 Scheduler

Mutex

RTC2 Scheduler

NIC NIC

Router

913

14

10 12

NotificationService

16

RT Trader(Binding) Service

0

Many Scheduling Points in End-To-End Chain

Client Server (E2E-1)

5

8Object

(Servant)

IDLSkeletons

ObjectAdapter

Mutex

RTC2 Scheduler

NIC

in args

out args + return value

Operation ()

Service Context

Distributable Thread (E2E-N)

Page 5: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Object(Servant)

IDLStubs

IDLSkeletons

ORB Core

in args

out args + return value

Operation ()

BSS or Spawn

ESS

USS

Client

Service Context1

2

3

4 7

5

6 ObjectAdapter

8

RTC2 Scheduler (e.g. Kokyu)

Mutex

RTC2 Scheduler (e.g. Kokyu)

NIC NIC

Router

913

14

10 12

Object(Servant)

IDLSkeletons

ObjectAdapter

Mutex

RTC2 Scheduler (e.g. Kokyu)

NIC

in args

out args + return value

Operation ()

Service Context

Dynamic Distributed Scheduling Service

SchedulingService

Coordinated Distributed Scheduling

NotificationService

16

RT Trader(Binding) Service

0

Page 6: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

SchedulingService

Real-Time

Sets CORBA Priority

Sets Priority Inheritance, Priority Lanes, Priority Bands

Sets OS Prio Mapping

Sets Network Prio Mapping

Offline tools set parameters for scheduling service; service sets parameters in RT ORB

URI RT CORBA 1.0 Scheduling Service

Priorities, ceilings, mappings, XML file

6

Page 7: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Distributed Scheduling Service:

• Set end-to-endscheduling parameters for local schedulers using global criteria

• Detect overload

• Determine distributable thread cancellation points

Real-Time

SchedulingService

Scheduling Service works with local schedulers to enforce global scheduling

Dynamic Distributed Scheduling Service

RT CORBA 2.0 Pluggable Scheduler

7

Page 8: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

8

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic Periodicity

Remote Calls

System Conditions

Constraints

Distributed Scheduling Problem Space Taxonomy

E2E-1(per request)

Hard/Soft

Identify application and system characteristics

Page 9: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

9

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic

RT CORBA 1.0 Scheduling Service

E2E-1(per request)

Hard/Soft

• Handles local scheduling and one CORBA call, static systems, all forms of constraints depending on the offline capability

• Example: scheduling static UAV video stream

Page 10: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

10

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic

Dynamic Scheduling Service: First Problem Space Approached

E2E-1(per request)

Hard/Soft

• First dynamic problem space – dynamic periodic

•Example: dynamically entering UAVs each with periodic video stream.

Page 11: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Overload

• Load Shedding

•QoS adjustment

• Resource reallocation

Local Dispatch

• Priority Mapping

• RTC2 local ORB scheduler

Server Dispatch

• Priority Inheritance

• Release-Guard

• E2E intermediate deadlines

SchedulingService

RT Trader(Binding)Service

Binding

• Best Fit Utilization

• Worst Fit Utilization

• Best fit laxity

Network Routing

• Net Priority Mapping

• Network EDF with intermediate deadline

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic

E2E-1(per request)

Hard/Soft

Distributed Scheduling Service Strategization PointsPriority

• Rate Mono

• EDF

• MUF

Page 12: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Overload

• Load Shedding

•QoS adjustment

• Resource reallocation

Local Dispatch

• Priority Mapping

• RTC2 local ORB scheduler

Server Dispatch

• Priority Inheritance

• Release-Guard

• E2E intermediate deadlines

SchedulingService

RT Trader(Binding)Service

Binding

• Best Fit Utilization

• Worst Fit Utilization

• Best fit laxity

Network Routing

• Net Priority Mapping

• Network EDF with intermediate deadline

Distributed Scheduling Service Strategization Points

Priority

• Rate Mono

• EDF

• MUF

Current Work –December 03 target

Real-Time

SchedulingService

RT CORBA 2.0 Pluggable SchedulerRT Trader(Binding)Service

Page 13: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

13

G lo b a lS c h e d u lin g

b e g in _ g lo b a l_ s c h e d u lin g _ s e g me n t()c a lc u la te _ u til()

S ys te mR e p o s ito ry

u p d a te _ ta s k ()b e g in _ ta s k ()g e t_ u tiliza tio n ()

O v e rlo a dD e tec to r

s ch e d ulab ility _ te st ()

O v e rlo a d H a n d le r

a c ce p t_ ta s k()d e ny _ ta sk ()

S c h e d u lin g Alg o rith m

g e t_ sc h e d_ p a ra m()

D S _ Ad a p te r

b e g in _ n e w _ s c h e d u lin g _ s e g me n t()

RT CORBA 2 Local Scheduler Interaction With Distributed Scheduling Service -

Partial Class Diagram

Page 14: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

S c h e d u lin g A lg o rit h mO v e rlo a d H a n d le rO v e rlo a d D e t e c t o r S y s t e m R e p o s i t o ryG lo b a lS c h e d u lin gD S _ A d a p te r R T C 2 -S c h e d u le rC lie n t O R B

1 : b s s1 : b s s 1 . 1 : b n s s1 . 1 : b n s s

1 . 1 . 1 : b g s s1 . 1 . 1 : b g s s

1 . 1 . 1 . 1 : c a lc u la t e _ u t il()1 . 1 . 1 . 1 : c a lc u la t e _ u t il()

1 . 1 . 1 .1 . 1 : 1 . 1 . 1 .1 . 1 :

1 . 1 . 1 . 2 : b e g i n _ t a s k1 . 1 . 1 . 2 : b e g i n _ t a s k

1 . 1 . 1 . 3 : s c h e d u la b ilit y _ t e s t1 . 1 . 1 . 3 : s c h e d u la b ilit y _ t e s t1 . 1 .1 .3 . 1 : g e t _ u t ili za t io n1 . 1 .1 .3 . 1 : g e t _ u t ili za t io n

1 . 1 . 1 . 3 . 1 . 1 : 1 . 1 . 1 . 3 . 1 . 1 : 1 .1 .1 . 3 . 2 : 1 .1 .1 . 3 . 2 :

1 . 1 . 1 . 4 : if o v e rlo a d : d e n y _ t a s k1 . 1 . 1 . 4 : if o v e rlo a d : d e n y _ t a s k

1 . 1 . 1 . 4 . 1 : S c h e d u le _ F a ilu re E x c e p t io n1 . 1 . 1 . 4 . 1 : S c h e d u le _ F a ilu re E x c e p t io n

1 .1 .1 .5 : g e t _ s c h e d _ p a ra m1 .1 .1 .5 : g e t _ s c h e d _ p a ra m

1 . 1 .1 .5 . 1 : 1 . 1 .1 .5 . 1 :

1 . 1 . 1 . 6 : 1 . 1 . 1 . 6 : 1 . 1 . 2 : b e g in _ n e w _ s c h e d u lin g _ s e g m e n t1 . 1 . 2 : b e g in _ n e w _ s c h e d u lin g _ s e g m e n t

1 . 1 . 2 . 1 : 1 . 1 . 2 . 1 : 1 . 1 . 3 : 1 . 1 . 3 :

1 . 2 : 1 . 2 :

Scheduling Point #1 - begin_scheduling_segment

Page 15: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Scheduling Point #2 - update_scheduling_segment

O R BC lie n t R T C 2 -S c h e d u le rD S _ A d a p te r G lo b a lS c h e d u lin g S y s t e m R e p o s i to ryO v e rlo a d D e te c to r O v e rlo a d H a n d le r S c h e d u lin g A lg o rith m

1 : u s s1 : u s s1 . 1 : u s s1 . 1 : u s s

1 . 1 . 1 : u g s s1 . 1 . 1 : u g s s1 . 1 . 1 . 1 : c a lc u la t e _ u t il()1 . 1 . 1 . 1 : c a lc u la t e _ u t il()

1 . 1 . 1 .1 . 1 : 1 . 1 . 1 .1 . 1 :

1 . 1 . 1 . 2 : u p d a t e _ ta s k1 . 1 . 1 . 2 : u p d a t e _ ta s k

1 . 1 . 1 . 3 : s c h e d u la b ility _ te s t1 . 1 . 1 . 3 : s c h e d u la b ility _ te s t1 . 1 .1 .3 . 1 : g e t_ u t ili za t io n1 . 1 .1 .3 . 1 : g e t_ u t ili za t io n

1 . 1 . 1 . 3 . 1 . 1 : 1 . 1 . 1 . 3 . 1 . 1 : 1 .1 .1 . 3 . 2 : 1 .1 .1 . 3 . 2 :

1 . 1 . 1 . 4 : if o v e rlo a d : c a n c e l_ ta s k1 . 1 . 1 . 4 : if o v e rlo a d : c a n c e l_ ta s k

1 . 1 .1 .4 . 1 : T h re a d _ C a n c e l E xc e p t io n1 . 1 .1 .4 . 1 : T h re a d _ C a n c e l E xc e p t io n

1 .1 .1 .5 : g e t_ s c h e d _ p a ra m1 .1 .1 .5 : g e t_ s c h e d _ p a ra m

1 . 1 .1 .5 . 1 : 1 . 1 .1 .5 . 1 :

1 . 1 . 1 . 6 : 1 . 1 . 1 . 6 : 1 . 1 . 2 : u p d a te _ s c h e d u lin g _ s e g m e n t1 . 1 . 2 : u p d a te _ s c h e d u lin g _ s e g m e n t

1 . 1 . 2 . 1 : 1 . 1 . 2 . 1 : 1 . 1 . 3 : 1 . 1 . 3 :

1 . 2 : 1 . 2 :

Page 16: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

S y s t e m R e p o s ito ryG lo b a lS c h e d u lin gD S _ A d a p te rC lie n t O R B

1 : e s s1 : e s s

1 .1 : e s s1 .1 : e s s

1 .1 . 1 : e g s s1 .1 . 1 : e g s s

1 .1 .1 .1 : re m o v e _ t a s k1 .1 .1 .1 : re m o v e _ t a s k

1 .1 . 1 .1 . 1 : 1 .1 . 1 .1 . 1 :

1 .1 . 1 .2 : 1 .1 . 1 .2 : 1 .1 . 2 : 1 .1 . 2 :

1 .2 : 1 .2 :

Scheduling Point #3 - end_scheduling_segment

Page 17: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

RT Trader(Binding)Service

SchedulingService

G lo b a lS c h e d u lin g

b e g in _ g lo b a l_ s c h e d u lin g _ s e g me n t()c a lc u la te _ u til()

S ys te mR e p o s ito ry

u p d a te _ ta s k ()b e g in _ ta s k ()g e t_ u tiliza tio n ()

O v e rlo a dD e tec to r

s ch e d ulab ility _ te st ()

O v e rlo a d H a n d le r

a c ce p t_ ta s k( )d e ny _ ta sk ()

S c h e d u lin g Alg o rith m

g e t_ sc h e d_ p a ra m()

D S _ Ad a p te r

b e g in _ n e w _ s c h e d u lin g _ s e g me n t()

System Repository

UML For Coordinated

Services

Page 18: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

18

Real-Time Data Distribution

RTNS

EventChannel

NCA::EventChannel

NCA::ConsumerAdmin* NCA::SupplierAdmin*

ECA::EventChannel

ECA::ConsumerAdmin ECA::SupplierAdmin

ECA::ProxyPushConsumer*

ECA::ProxyPullConsumer*

NCA::ProxyPullConsumer*

NCA::ProxyPushConsumer*

ECA::ProxyPushSupplier*

ECA::ProxyPullSupplier*

NCA::ProxyPushSupplier*

NCA::ProxyPullSupplier*

EC::PushSupplier*

NC::PushSupplier*

EC::PullSupplier*

NC::PullSupplier*

EC::PushConsumer*

EC::PullConsumer*

NC::PushConsumer*

NC::PullConsumer*

Direction of Event Flow

EC - CosEvenCommECA- CosEvenChannelAdmin(Pure Event Service)NC-CosNotifyCommNCA-CosNotifyChannelAdmin*-multiple object instances supporting this interface

Supplier provides real-time data to

consumers

Consumer specifies real-time requirements for

data delivery

SchedulingService

Scheduling service determines scheduling

parameters for propagation of event

data

Page 19: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Model Integrated Scheduling - Approach

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic

E2E-1(per request)

Hard/Soft

Modeled Problem Space Taxonomy in GME2000

Page 20: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

20

Model-Integrated Scheduling- Current

I

I

SchedulingAspectDelegates

RapidRMA Analysis

I URI model interpreterTri-Pacific model interpreter

Modified BBN QuO model interpreter

XML file

reads

XML file

reads

SchedulingService

RT Trader(Binding)Service

Page 21: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

System

Local Only E2E-N

Static Dynamic

All Hard All Soft

All Periodic Periodic/Sporadic All Sporadic

E2E-1(per request)

Hard/Soft

Determine Scheduling Problem Space

I

TimeWiz Analysis

reads

Model-Integrated Scheduling On- going Work

TimeWiz

U Virginia VEST/TimeWiz

Integration

VEST

(U Virginia)

I

Scheduling Aspect Delegates

I

SchedulingService

RT Trader(Binding)Service

Page 22: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

22

Summary! Creating Real-Time Services

! Scheduling, Binding, Data Distribution

! Embodying classic real-time algorithms in middleware

! Creating new algorithms as needed! Using existing services for framework

and enforcement

Page 23: Strategized, Coordinated Services for Real-Time Middleware · Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry Sponsors:! Distributed end-to-end middleware real-time

Strategized, Coordinated Services for Real-Time Middleware

Lisa Cingiser DiPippo, Victor Fay-Wolfe, Matthew Murphy, Priyanka Gupta, Jiangyin Zhang, Jianming Ye, Kevin Bryan, Tim Henry

Sponsors:

Contact

Vic Fay-Wolfe ([email protected])

Lisa DiPippo ([email protected])http://rtdoc.cs.uri.edu