distributed object-based systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfmessaging no...

53
Distributed Object-Based Systems Chapter 9

Upload: others

Post on 16-Mar-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Dis

tribu

ted

Obj

ect-B

ased

Sy

stem

s

Cha

pter

9

Page 2: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Ove

rvie

w o

f CO

RB

A

The

glob

al a

rchi

tect

ure

of C

OR

BA

.

Page 3: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect M

odel

The

gene

ral o

rgan

izat

ion

of a

CO

RB

A sy

stem

.

Page 4: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Cor

ba S

ervi

ces

Ove

rvie

w o

f CO

RB

A se

rvic

es.

Prov

ides

the

curre

nt ti

me

with

in s

peci

fied

erro

r mar

gins

Tim

e

Mec

hani

sms

for s

ecur

e ch

anne

ls, a

utho

rizat

ion,

and

aud

iting

Secu

rity

Faci

litie

s fo

r exp

ress

ing

rela

tions

hips

bet

wee

n ob

ject

sR

elat

ions

hip

Faci

litie

s fo

r per

sist

ently

sto

ring

obje

cts

Pers

iste

nce

Faci

litie

s to

pub

lish

and

find

the

serv

ices

on

obje

ct h

as to

offe

rTr

adin

g

Faci

litie

s fo

r ass

ocia

ting

(attr

ibut

e, v

alue

) pai

rs w

ith o

bjec

tsPr

oper

ty

Faci

litie

s fo

r sys

tem

wid

e na

me

of o

bjec

tsN

amin

g

Faci

litie

s fo

r atta

chin

g a

licen

se to

an

obje

ctLi

cens

ing

Faci

litie

s fo

r cre

atio

n, d

elet

ion,

cop

ying

, and

mov

ing

of o

bjec

tsLi

fe c

ycle

Faci

litie

s fo

r mar

shal

ing

and

unm

arsh

alin

g of

obj

ects

Exte

rnal

izat

ion

Adva

nced

faci

litie

s fo

r eve

nt-b

ased

asy

nchr

onou

s co

mm

unic

atio

nN

otifi

catio

n

Faci

litie

s fo

r asy

nchr

onou

s co

mm

unic

atio

n th

roug

h ev

ents

Even

t

Flat

and

nes

ted

trans

actio

ns o

n m

etho

d ca

lls o

ver m

ultip

le o

bjec

tsTr

ansa

ctio

n

Faci

litie

s to

allo

w c

oncu

rrent

acc

ess

to s

hare

d ob

ject

sC

oncu

rrenc

y

Faci

litie

s fo

r que

ryin

g co

llect

ions

of o

bjec

ts in

a d

ecla

rativ

e m

anne

rQ

uery

Faci

litie

s fo

r gro

upin

g ob

ject

s in

to li

sts,

que

ue, s

ets,

etc

.C

olle

ctio

n

Des

crip

tion

Serv

ice

Page 5: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect I

nvoc

atio

n M

odel

s

Invo

catio

n m

odel

s sup

porte

d in

CO

RB

A.

Cal

ler c

ontin

ues

imm

edia

tely

an

d ca

n la

ter b

lock

unt

il re

spon

se is

del

iver

ed

At-m

ost-o

nce

Def

erre

d sy

nchr

onou

s

Cal

ler c

ontin

ues

imm

edia

tely

w

ithou

t wai

ting

for a

ny re

spon

se

from

the

serv

er

Best

effo

rt de

liver

yO

ne-w

ay

Cal

ler b

lock

s un

til a

resp

onse

is

retu

rned

or a

n ex

cept

ion

is

rais

ed

At-m

ost-o

nce

Sync

hron

ous

Des

crip

tion

Failu

re s

eman

tics

Req

uest

type

Page 6: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Even

t and

Not

ifica

tion

Serv

ices

(1)

The

logi

cal o

rgan

izat

ion

of su

pplie

rs a

nd c

onsu

mer

s of

eve

nts,

follo

win

g th

e pu

sh-s

tyle

mod

el.

Page 7: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Even

t and

Not

ifica

tion

Serv

ices

(2)

The

pull-

styl

e m

odel

for e

vent

del

iver

y in

CO

RB

A.

Page 8: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Mes

sagi

ng (1

)

CO

RB

A's

callb

ack

mod

el fo

r asy

nchr

onou

s met

hod

invo

catio

n.

Page 9: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Mes

sagi

ng (2

)

CO

RB

A'S

pol

ling

mod

el fo

r as

ynch

rono

us m

etho

d in

voca

tion.

Page 10: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Inte

rope

rabi

lity

GIO

P m

essa

ge ty

pes.

Part

(frag

men

t) of

a la

rger

mes

sage

Both

Frag

men

t

Con

tain

s in

form

atio

n on

an

erro

rBo

thM

essa

geEr

ror

Indi

catio

n th

at c

onne

ctio

n w

ill be

clo

sed

Both

Clo

seC

onne

ctio

n

Indi

cate

s cl

ient

no

long

er e

xpec

ts a

repl

yC

lient

Can

celR

eque

st

Con

tain

s lo

catio

n in

form

atio

n on

an

obje

ctSe

rver

Loca

teR

eply

Con

tain

s a

requ

est o

n th

e ex

act l

ocat

ion

of a

n ob

ject

Clie

ntLo

cate

Req

uest

Con

tain

s th

e re

spon

se to

an

invo

catio

nSe

rver

Rep

ly

Con

tain

s an

invo

catio

n re

ques

tC

lient

Req

uest

Des

crip

tion

Orig

inat

orM

essa

ge ty

pe

Page 11: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Clie

nts

Logi

cal p

lace

men

t of i

nter

cept

ors i

n C

OR

BA

.

Page 12: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Porta

ble

Obj

ect A

dapt

or (1

)

Map

ping

of C

OR

BA

obj

ect i

dent

ifier

s to

serv

ants

.a)

The

POA

supp

orts

mul

tiple

serv

ants

.b)

The

POA

supp

orts

a si

ngle

serv

ant.

Page 13: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Porta

ble

Obj

ect A

dapt

or (2

)

Cha

ngin

g a

C++

obj

ect i

nto

a C

OR

BA

obj

ect.

My_

serv

ant *

my_

obje

ct;

// D

ecla

re a

refe

renc

e to

a C

++ o

bjec

tC

OR

BA::O

bjec

tid_v

ar o

id;

// D

ecla

re a

CO

RBA

iden

tifie

r

my_

obje

ct =

new

MyS

erva

nt;

// C

reat

e a

new

C++

obj

ect

oid

= po

a ->

activ

ate_

obje

ct (m

y_ob

ject

);//

Reg

iste

r C++

obj

ect a

s C

OR

BA O

BJEC

T

Page 14: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Age

nts

CO

RB

A's

over

all m

odel

of a

gent

s, ag

ent s

yste

ms,

and

regi

ons.

Page 15: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect R

efer

ence

s (1)

The

orga

niza

tion

of a

n IO

R w

ith sp

ecifi

c in

form

atio

n fo

r IIO

P.

Page 16: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect R

efer

ence

s (2)

Indi

rect

bin

ding

in C

OR

BA

.

Page 17: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Cac

hing

and

Rep

licat

ion

The

(sim

plifi

ed) o

rgan

izat

ion

of a

DC

S.

Page 18: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect G

roup

s

A p

ossi

ble

orga

niza

tion

of a

n IO

GR

for a

n ob

ject

gr

oup

havi

ng a

prim

ary

and

back

ups.

Page 19: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

An

Exam

ple

Arc

hite

ctur

e

An

exam

ple

arch

itect

ure

of a

faul

t-tol

eran

t CO

RB

A sy

stem

.

Page 20: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Secu

rity

(1)

The

gene

ral o

rgan

izat

ion

for s

ecur

e ob

ject

invo

catio

n in

CO

RB

A.

Page 21: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Secu

rity

(2)

The

role

of s

ecur

ity in

terc

epto

rs in

CO

RB

A.

Page 22: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Ove

rvie

w o

f DC

OM

The

gene

ral o

rgan

izat

ion

of A

ctiv

eX, O

LE, a

nd C

OM

.

Page 23: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect M

odel

The

diff

eren

ce b

etw

een

lang

uage

-def

ined

and

bin

ary

inte

rfac

es.

Page 24: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Tape

Lib

rary

and

Reg

istry

The

over

all a

rchi

tect

ure

of D

CO

M.

Page 25: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

DC

OM

Ser

vice

s

Ove

rvie

w o

f DC

OM

serv

ices

in c

ompa

rison

to C

OR

BA

serv

ices

.

Non

eN

one

Tim

e

SSL,

Ker

bero

sAu

thor

izat

ion

Secu

rity

Dat

abas

e ac

cess

Non

eR

elat

ions

hip

Dat

abas

e ac

cess

Stru

ctur

ed s

tora

gePe

rsis

tenc

e

Activ

e D

irect

ory

Non

eTr

adin

g

Activ

e D

irect

ory

Non

ePr

oper

ty

Activ

e D

irect

ory

Mon

iker

sN

amin

g

-Sp

ecia

l cla

ss fa

ctor

ies

Lice

nsin

g

-C

lass

fact

orie

s, J

IT a

ctiv

atio

nLi

fe c

ycle

-M

arsh

alin

g ut

ilitie

sEx

tern

aliz

atio

n

-C

OM

+ Ev

ents

Not

ifica

tion

-C

OM

+ Ev

ents

Even

t

Dis

tribu

ted

Tran

sact

ion

Coo

rdin

ator

CO

M+

Auto

mat

ic T

rans

actio

nsTr

ansa

ctio

n

-Th

read

con

curre

ncy

Con

curre

ncy

-N

one

Que

ry

-Ac

tiveX

Dat

a O

bjec

tsC

olle

ctio

n

Win

dow

s 20

00 S

ervi

ceD

CO

M/C

OM

+ Se

rvic

eC

OR

BA

Ser

vice

Page 26: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Even

ts

Even

t pro

cess

ing

in D

CO

M.

Page 27: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Clie

nts

Pass

ing

an o

bjec

t ref

eren

ce in

DC

OM

with

cus

tom

mar

shal

ing.

Page 28: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Mon

iker

s (1)

Bin

ding

to a

DC

OM

obj

ect b

y m

eans

of f

ile m

onik

er.

Ret

urns

inte

rface

poi

nter

of o

bjec

t to

clie

ntM

onik

er7

Load

s its

sta

te fr

om fi

leO

bjec

t6

Inst

ruct

s ob

ject

to lo

ad p

revi

ousl

y st

ored

sta

teM

onik

er5

Cre

ates

obj

ect a

nd re

turn

s in

terfa

ce p

oint

er to

m

onik

erC

lass

obj

ect

4

Load

s cl

ass

obje

ctSC

M3

Look

s up

ass

ocia

ted

CLS

ID a

nd in

stru

cts

SCM

to

cre

ate

obje

ctM

onik

er2

Cal

ls B

indM

onik

er a

t mon

iker

Clie

nt1

Des

crip

tion

Perf

orm

erSt

ep

Page 29: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Mon

iker

s (2)

DC

OM

-def

ined

mon

iker

type

s.

Ref

eren

ce to

an

obje

ct in

a re

mot

e pr

oces

sPo

inte

r mon

iker

Ref

eren

ce to

a m

onik

er in

a c

ompo

sitio

nIte

m m

onik

er

Ref

eren

ce to

a c

ompo

sitio

n of

mon

iker

sC

ompo

site

mon

iker

Ref

eren

ce to

a c

lass

obj

ect

Cla

ss m

onik

er

Ref

eren

ce to

an

obje

ct c

onst

ruct

ed fr

om a

UR

LU

RL

mon

iker

Ref

eren

ce to

an

obje

ct c

onst

ruct

ed fr

om a

file

File

mon

iker

Des

crip

tion

Mon

iker

type

Page 30: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Act

ive

Dire

ctor

y

The

gene

ral o

rgan

izat

ion

of A

ctiv

e D

irect

ory.

Page 31: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Faul

t Tol

eran

ce

Tran

sact

ion

attri

bute

val

ues f

or D

CO

M o

bjec

ts.

Nev

er jo

in a

tran

sact

ion,

eve

n if

told

to d

o so

DIS

ABLE

D

Nev

er jo

in a

tran

sact

ion

NO

T_SU

PPO

RTE

D

Join

a tr

ansa

ctio

n on

ly if

cal

ler i

s al

read

y pa

rt of

one

SUPP

OR

TED

A ne

w tr

ansa

ctio

n is

sta

rted

if no

t alre

ady

done

so

REQ

UIR

ED

A ne

w tr

ansa

ctio

n is

alw

ays

star

ted

at e

ach

invo

catio

nR

EQU

IRES

_NEW

Des

crip

tion

Attr

ibut

e va

lue

Page 32: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Dec

lara

tive

Secu

rity

(1)

Aut

hent

icat

ion

leve

ls in

DC

OM

.

Auth

entic

ate,

inte

grity

-che

ck, a

nd e

ncry

pt d

ata

pack

ets

PAC

KET_

PRIV

ACY

Auth

entic

ate

data

pac

kets

and

do

inte

grity

che

ckPA

CKE

T_IN

TEG

RIT

YAu

then

ticat

e al

l dat

a pa

cket

sPA

CKE

TAu

then

ticat

e cl

ient

at e

ach

invo

catio

nC

ALL

Auth

entic

ate

clie

nt w

hen

first

con

nect

ed to

ser

ver

CO

NN

ECT

No

auth

entic

atio

n is

requ

ired

NO

NE

Des

crip

tion

Aut

hent

icat

ion

leve

l

Page 33: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Dec

lara

tive

Secu

rity

(2)

Impe

rson

atio

n le

vels

in D

CO

M.

The

serv

er c

an in

voke

rem

ote

obje

cts

on b

ehal

f of t

he c

lient

DEL

EGAT

E

The

serv

er c

an in

voke

loca

l obj

ects

on

beha

lf of

the

clie

ntIM

PER

SON

ATE

The

serv

er k

now

s th

e cl

ient

and

can

do

acce

ss c

ontro

l ch

ecks

IDEN

TIFY

The

clie

nt is

com

plet

ely

anon

ymou

s to

the

serv

erAN

ON

YMO

US

Des

crip

tion

Impe

rson

atio

n le

vel

Page 34: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Prog

ram

mat

ic S

ecur

ity

a)D

efau

lt au

then

ticat

ion

serv

ices

supp

orte

d in

DC

OM

.b)

Def

ault

auth

oriz

atio

n se

rvic

es su

ppor

ted

in D

CO

M.

(b)

Auth

oriz

atio

n us

ing

DEC

Priv

ilege

Attr

ibut

e C

ertif

icat

es (P

ACs)

DC

E

Auth

oriz

atio

n ba

sed

on th

e cl

ient

's id

entit

yN

AME

No

auth

oriz

atio

nN

ON

E

Des

crip

tion

Serv

ice

(a)

Kerb

eros

aut

hent

icat

ion

GSS

_KER

BER

OS

Win

dow

s N

T se

curit

yW

INN

T

DEC

aut

hent

icat

ion

base

d on

pub

lic k

eys

DC

E_PU

BLIC

DC

E au

then

ticat

ion

base

d on

sha

red

keys

DC

E_PR

IVAT

E

No

auth

entic

atio

nN

ON

E

Des

crip

tion

Serv

ice

Page 35: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be O

bjec

t Mod

el (1

)

The

orga

niza

tion

of a

Glo

be d

istri

bute

d sh

ared

obj

ect.

Page 36: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be O

bjec

t Mod

el (2

)

The

gene

ral o

rgan

izat

ion

of a

loca

l obj

ect f

or

dist

ribut

ed sh

ared

ob

ject

s in

Glo

be.

Page 37: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be O

bjec

t Mod

el (3

)

Inte

rfac

es im

plem

ente

d by

the

sem

antic

s sub

obje

ct o

f a

Glo

beD

oc o

bjec

t.

Rep

lace

the

cont

ent o

f an

entir

e do

cum

ent

PutA

llCon

tent

Rep

lace

the

cont

ent o

f an

elem

ent w

ith a

giv

en a

rray

of b

ytes

PutC

onte

nt

Ret

urn

the

cont

ent o

f an

elem

ent a

s an

arra

y of

byt

esG

etC

oten

t

Des

crip

tion

Met

hod

Con

tent

Inte

rfac

e

Ret

urn

a re

fere

nce

to th

e ro

ot e

lem

ent

Get

Roo

t

Set t

he ro

ot e

lem

ent

SetR

oot

Ret

urn

a lis

t of t

he e

lem

ents

cur

rent

ly in

the

docu

men

tAl

lEle

men

ts

Rem

ove

an e

lem

ent f

rom

the

Web

doc

umen

tD

elet

eEle

men

t

Add

an e

lem

ent t

o th

e cu

rrent

set

of e

lem

ents

AddE

lem

ent

Des

crip

tion

Met

hod

Doc

umen

t Int

erfa

ce

Page 38: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be O

bjec

t Mod

el (4

)

Inte

rfac

es im

plem

ente

d by

the

sem

antic

s su

bobj

ect o

f a G

lobe

Doc

Obj

ect.

Get

a li

st o

f ele

men

ts th

at a

re c

urre

ntly

che

cked

out

Get

Che

cked

Elem

ents

Che

ck in

a s

erie

s of

mod

ified

ele

men

tsC

heck

InEl

emen

ts

Che

ck o

ut a

ser

ies

of e

lem

ents

that

requ

ire m

odifi

catio

nC

heck

Out

Elem

ents

Des

crip

tion

Met

hod

Lock

Inte

rfac

e

Prov

ide

a lis

t of (

attri

bute

, val

ue)-p

airs

for a

n el

emen

tSe

tPro

perti

es

Ret

urn

the

list o

f (at

tribu

te, v

alue

)-pai

rs o

f an

elem

ent

Get

Prop

ertie

s

Des

crip

tion

Met

hod

Prop

erty

Inte

rfac

e

Page 39: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Proc

ess-

to-O

bjec

t Bin

ding

Bin

ding

a p

roce

ss to

an

obje

ct in

Glo

be.

Page 40: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be S

ervi

ces

Ove

rvie

w o

f pos

sibl

e G

lobe

impl

emen

tatio

ns o

f typ

ical

di

strib

utes

-sys

tem

s ser

vice

s.

Yes

Impl

emen

ted

per o

bjec

t com

bine

d w

ith fa

ult-t

oler

ant s

ervi

ces

Faul

t tol

eran

ce

Yes

Impl

emen

ted

on a

per

-obj

ect b

asis

Rep

licat

ion

Yes

Impl

emen

ted

per o

bjec

t, co

mbi

ned

with

(loc

al) s

ecur

ity s

ervi

ces

Secu

rity

Yes

Impl

emen

ted

on a

per

-obj

ect b

asis

Pers

iste

nce

No

Sepa

rate

ser

vice

, im

plem

ente

d by

a c

olle

ctio

n of

dire

ctor

y ob

ject

sPr

oper

ty/T

radi

ng

Yes

Sepa

rate

ser

vice

, im

plem

ente

d by

a c

olle

ctio

n of

nam

ing

obje

cts

Nam

ing

No

Impl

emen

ted

by e

ach

obje

ct s

epar

atel

yLi

cens

ing

Yes

Sepa

rate

cla

ss o

bjec

ts c

ombi

ned

with

per

-obj

ect i

mpl

emen

tatio

nsLi

fe c

ycle

Yes

Each

obj

ect i

mpl

emen

ts it

s ow

n m

arsh

alin

g ro

utin

esEx

tern

aliz

atio

n

No

Sepa

rate

obj

ect p

er g

roup

of e

vent

s (a

s in

DC

OM

)Ev

ent/N

otifi

catio

n

No

Sepa

rate

obj

ect r

epre

sent

ing

a tra

nsac

tion

man

ager

Tran

sact

ion

No

Each

obj

ect i

mpl

emen

ts it

s ow

n co

ncur

renc

y co

ntro

l stra

tegy

Con

curre

ncy

No

Sepa

rate

obj

ect t

hat h

olds

refe

renc

es to

oth

er o

bjec

tsC

olle

ctio

n

Ava

ilabl

ePo

ssib

le Im

plem

enta

tion

in G

lobe

Serv

ice

Page 41: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Com

mun

icat

ion

Invo

king

an

obje

ct in

Glo

be th

at u

ses a

ctiv

e re

plic

atio

n.

Page 42: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be S

erve

r

Ope

ratio

ns o

n a

Glo

be o

bjec

t ser

ver.

Get

the

stat

us o

f a s

peci

fic lo

cal o

bjec

tSt

atLR

Ret

urns

a li

st o

f all

loca

l obj

ects

for a

giv

en o

bjec

tsLi

stD

SOR

etur

ns a

list

of a

ll lo

cal o

bjec

tsLi

stAl

lLe

ts th

e se

rver

rem

ove

all l

ocal

obj

ects

of a

giv

en o

bjec

tU

nbin

dDSO

Lets

the

serv

er re

mov

e a

loca

l obj

ect o

f a g

iven

obj

ect

Rem

oveL

RLe

ts th

e se

rver

cre

ate

a lo

cal o

bjec

t for

a n

ew d

istri

bute

d ob

ject

Cre

ateL

RLe

ts th

e se

rver

bin

d to

an

obje

ct, e

ven

if it

is a

lread

y bo

und

AddB

indi

ngLe

ts th

e se

rver

bin

d to

a g

iven

obj

ect,

unle

ss it

is a

lread

y bo

und

Bind

Des

crip

tion

Met

hod

Page 43: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect R

efer

ence

s and

Con

tact

Add

ress

es (1

)

The

repr

esen

tatio

n of

a p

roto

col l

ayer

in a

stac

ked

cont

act a

ddre

ss.

Ref

eren

ce to

a fi

le in

a c

lass

repo

sito

ryIm

plem

enta

tion

hand

leA

prot

ocol

-spe

cific

add

ress

Prot

ocol

add

ress

A co

nsta

nt re

pres

entin

g a

(kno

wn)

pro

toco

lPr

otoc

ol id

entif

ier

Des

crip

tion

Fiel

d

Page 44: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Obj

ect R

efer

ence

s and

Con

tact

Add

ress

es (2

)

The

repr

esen

tatio

n of

an

inst

ance

con

tact

add

ress

.

Strin

g th

at is

use

d to

initi

aliz

e an

impl

emen

tatio

nIn

itial

izat

ion

strin

g

Ref

eren

ce to

a fi

le in

a c

lass

repo

sito

ryIm

plem

enta

tion

hand

le

Des

crip

tion

Fiel

d

Page 45: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Glo

be N

amin

g Se

rvic

e

Itera

tive

DN

S-ba

sed

nam

e re

solu

tion

in G

lobe

.

Page 46: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Rep

licat

ion

(1)

The

inte

rfac

e of

the

repl

icat

ion

subo

bjec

t as

mad

e av

aila

ble

to th

e co

ntro

l sub

obje

ct.

Indi

cate

that

the

invo

catio

n on

the

sem

antic

s ob

ject

has

com

plet

edIn

voke

dPa

ss th

e m

arsh

aled

invo

catio

n re

ques

t to

the

repl

icat

ion

subo

bjec

tSe

ndIn

dica

te th

at a

new

met

hod

invo

catio

n ha

s be

en lo

cally

requ

este

dSt

art

Des

crip

tion

Met

hod

Page 47: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Rep

licat

ion

(2)

The

beha

vior

of t

he c

ontro

l su

bobj

ect a

s a fi

nite

stat

e m

achi

ne.

Page 48: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Exam

ples

of R

eplic

atio

n in

Glo

be (1

)

Stat

e tra

nsiti

ons a

nd a

ctio

ns fo

r act

ive

repl

icat

ion.Nex

t sta

teM

etho

d ca

llA

ctio

n to

take

Stat

e

STAR

TN

one

Ret

urn

resu

lts to

cal

ler

RET

UR

N

RET

UR

NIn

voke

din

voke

loca

l met

hod

INVO

KE

INVO

KESe

ndPa

ss m

arsh

aled

invo

catio

nsSE

ND

SEN

DSt

art

Non

eST

ART

Mod

ify m

etho

d

STAR

TN

one

Ret

urn

resu

lts to

cal

ler

RET

UR

N

RET

UR

NIn

voke

dIn

voke

loca

l met

hod

INVO

KE

INVO

KESt

art

Non

eST

ART

Nex

t sta

teM

etho

d ca

llA

ctio

n to

take

Stat

e

Rea

d m

etho

d

Page 49: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Exam

ples

of R

eplic

atio

n in

Glo

be (2

)

Stat

e tra

nsiti

ons a

nd a

ctio

ns w

ith p

rimar

y-ba

ckup

repl

icat

ion.

STAR

TN

one

Ret

urn

resu

lts to

cal

ler

RET

UR

N

RET

UR

NIn

voke

din

voke

loca

l met

hod

INVO

KE

Nex

t sta

teM

etho

d ca

llA

ctio

n to

take

Stat

eIN

VOKE

Star

tno

neST

ART

Mod

ify m

etho

d at

prim

ary

repl

ica

Nex

t sta

teM

etho

d ca

llA

ctio

n to

take

Stat

e

STAR

TN

one

Ret

urn

resu

lts to

cal

ler

RET

UR

N

RET

UR

NSe

ndPa

ss m

arsh

aled

invo

catio

nSE

ND

SEN

DSt

art

Non

eST

ART

Mod

ify m

etho

d at

bac

kup

repl

ica

STAR

TN

one

Ret

urn

resu

lts to

cal

ler

RET

UR

N

RET

UR

NIn

voke

dIn

voke

loca

l met

hod

INVO

KE

INVO

KESt

art

Non

eST

ART

Nex

t sta

teM

etho

d ca

llA

ctio

n to

take

Stat

eR

ead

met

hod

Page 50: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Secu

rity

(1)

The

posi

tion

of a

secu

rity

subo

bjec

t in

a G

lobe

loca

l obj

ect.

Page 51: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Secu

rity

(2)

Usi

ng K

erbe

ros t

o es

tabl

ish

secu

re d

istri

bute

d sh

ared

ob

ject

s.

Page 52: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Sum

mar

y (1

)

Com

paris

on o

f CO

RB

A, D

CO

M, a

nd G

lobe

.

No

No

yes

Trad

ing

serv

ice

No

Yes

Yes

Dire

ctor

y se

rvic

e

Obj

ect d

epen

dent

Har

d-co

ded

Flex

ible

(PO

A)O

bjec

t ser

ver

No

Yes

Yes

Mes

sagi

ng

No

Yes

Yes

Even

ts

No

Yes

Yes

Cal

lbac

ks

No

Yes

Yes

Asyn

c. c

omm

unic

atio

n

Yes

Yes

Yes

Sync

. com

mun

icat

ion

Bina

ryBi

nary

IDL

base

dIn

terfa

ces

Few

From

env

ironm

ent

Man

y of

its

own

Serv

ices

Dis

tribu

ted

obje

cts

Rem

ote

obje

cts

Rem

ote

obje

cts

Obj

ect m

odel

Scal

abilit

yFu

nctio

nalit

yIn

tero

pera

bilit

yD

esig

n go

als

Glo

beD

CO

MC

OR

BA

Issu

e

Con

tinue

d �

Page 53: Distributed Object-Based Systemscrystal.uta.edu/~elmasri/os2/slides/tanenbaum/ch9.pdfMessaging No Yes Yes Events No Yes Yes Callbacks No Yes Yes Async. communication Yes Yes Yes Sync

Sum

mar

y (2

)

Com

paris

on o

f CO

RB

A, D

CO

M, a

nd G

lobe

.

Glo

beD

CO

MC

OR

BA

Issu

e

Mor

e w

ork

need

edVa

rious

mec

hani

sms

Vario

us m

echa

nism

sSe

curit

y

No

By tr

ansa

ctio

nsYe

sR

ecov

ery

supp

ort

By re

plic

atio

nBy

tran

sact

ions

By re

plic

atio

nFa

ult t

oler

ance

No

Yes

Yes

Tran

sact

ions

Sepa

rate

sub

obje

ctN

one

Sepa

rate

ser

ver

Rep

licat

ion

supp

ort

Onl

y in

tra-o

bjec

tTr

ansa

ctio

nsTr

ansa

ctio

nsSy

nchr

oniz

atio

n

True

iden

tifie

rIn

terfa

ce p

oint

erO

bjec

t's lo

catio

nO

bjec

t ref

eren

ce

Yes

No

No

Loca

tion

serv

ice

Yes

Yes

Yes

Nam

ing

serv

ice