TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo...

6
WIDE AREA NETWORK SATELLITES SATELLITES TRACKING TRACKING STATION STATION PEERS PEERS STATUS INFO COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK GROUND STATION PEERS GATEWAY APPLICATION APPLICATION SPECIFIC SPECIFIC LOGIC LOGIC USER USER INTERFACE INTERFACE (A) CLASS LIBRARY CLASS LIBRARY ARCHITECTURE ARCHITECTURE NETWORKING NETWORKING MATH MATH ADT ADTS DATA DATA BASE BASE APPLICATION APPLICATION SPECIFIC SPECIFIC LOGIC LOGIC MATH MATH (B) APPLICATION FRAMEWORK APPLICATION FRAMEWORK ARCHITECTURE ARCHITECTURE ADT ADTS INVOKES INVOKES CALL CALL BACKS BACKS NETWORKING NETWORKING USER USER INTERFACE INTERFACE DATABASE DATABASE INVOKES INVOKES EVENT EVENT LOOP LOOP EVENT EVENT LOOP LOOP

Transcript of TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo...

Page 1: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

Using the ACE Framework and Patterns to

Develop OO Communication Software

Douglas C. Schmidt

[email protected]

Washington University, St. Louis

http://www.cs.wustl.edu/�schmidt/

Sponsors

NSF, DARPA, Bellcore, Boeing, CDI/GDIS,

Kodak, Lockheed, Lucent, Microsoft, Motorola, OTI, SAIC,

Siemens SCR, Siemens MED, Siemens ZT, Sprint, USENIX

Douglas C. Schmidt Distributed Object Computing Group

Motivation: the Distributed Software Crisis

WIDE AREA

NETWORK

SATELLITESSATELLITESTRACKINGTRACKINGSTATIONSTATION

PEERSPEERS

STATUS INFO

COMMANDS BULK DATA

TRANSFER

LOCAL AREA NETWORK

GROUNDSTATION

PEERS

GATEWAY� Symptoms

{ Hardware gets smaller,

faster, cheaper

{ Software gets larger, slower,

more expensive

� Culprits

{ Accidental and inherent

complexity

� Solutions

{ Frameworks, components,

and patterns

Washington University, St. Louis 1

Douglas C. Schmidt Distributed Object Computing Group

Techniques for Improving Software

Quality and Productivity

APPLICATIONAPPLICATION

SPECIFICSPECIFIC

LOGICLOGIC

USERUSER

INTERFACEINTERFACE

((AA)) CLASS LIBRARY CLASS LIBRARY

ARCHITECTUREARCHITECTURE

NETWORKINGNETWORKING

MATHMATH ADTADTSS

DATADATA

BASEBASE

APPLICATIONAPPLICATION

SPECIFICSPECIFIC

LOGICLOGIC

MATHMATH

((BB)) APPLICATION FRAMEWORK APPLICATION FRAMEWORK

ARCHITECTUREARCHITECTURE

ADTADTSS

INVOKESINVOKES

CALLCALL

BACKSBACKS

NETWORKINGNETWORKING USERUSER

INTERFACEINTERFACE

DATABASEDATABASE

INVOKESINVOKES

EVENTEVENT

LOOPLOOP

EVENTEVENT

LOOPLOOP

� Proven solutions

{ Components

� Self-contained, \pluggable"

ADTs

{ Frameworks

� Reusable, \semi-complete"

applications

{ Patterns

� Problem/solution pairs in a

context

{ Architecture

� Families of related patterns

and components

Washington University, St. Louis 2

Douglas C. Schmidt Distributed Object Computing Group

Why We Need Communication Middleware

� System call-level programming is wrong abstraction for

application developers

{ Too low-level ! error codes, endless reinvention

{ Error-prone ! HANDLEs lack type-safety, thread cancellation woes

{ Mechanisms do not scale ! Win32 TLS

{ Steep learning curve ! Win32 Named Pipes

{ Non-portable ! socket bugs

{ Ine�cient ! i.e., tedious for humans

� GUI frameworks are inadequate for communication software

{ Ine�cient ! excessive use of virtual methods

{ Lack of features ! minimal threading and synchronization

mechanisms, no network services

Washington University, St. Louis 3

Page 2: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

DouglasC.Schmidt

DistributedObjectComputingGroup

TheADAPTIVECommunicationEnvironment(ACE)

PR

OC

ES

SE

SP

RO

CE

SS

ES//

TH

RE

AD

ST

HR

EA

DS

DY

NA

MIC

DY

NA

MIC

LIN

KIN

GL

INK

ING

ME

MO

RY

ME

MO

RY

MA

PP

ING

MA

PP

ING

SE

LE

CT

SE

LE

CT

//IO

C

OM

PIO

C

OM

P

SY

ST

EM

SY

ST

EM

VV IP

CIP

CS

TR

EA

MS

TR

EA

M

PIP

ES

PIP

ES

NA

ME

DN

AM

ED

PIP

ES

PIP

ES

CA

PIS

SO

CK

ET

SS

OC

KE

TS//

TL

IT

LI

CO

MM

UN

ICA

TIO

NC

OM

MU

NIC

AT

ION

SU

BS

YS

TE

MS

UB

SY

ST

EM

VIR

TU

AL

M

EM

OR

YV

IRT

UA

L

ME

MO

RY

SU

BS

YS

TE

MS

UB

SY

ST

EM

GE

NE

RA

L P

OS

IX A

ND

W

IN32

S

ER

VIC

ES

PR

OC

ES

SP

RO

CE

SS//T

HR

EA

DT

HR

EA

D

SU

BS

YS

TE

MS

UB

SY

ST

EM

FR

AM

EW

OR

KS

AC

CE

PT

OR

AC

CE

PT

OR

CO

NN

EC

TO

RC

ON

NE

CT

OR

SE

LF-C

ON

TA

INE

D

DIS

TR

IBU

TE

D

SE

RV

ICE

CO

MP

ON

EN

TS

NA

ME

NA

ME

SE

RV

ER

SE

RV

ER

TO

KE

NT

OK

EN

SE

RV

ER

SE

RV

ER

LO

GG

ING

LO

GG

ING

SE

RV

ER

SE

RV

ER

GA

TE

WA

YG

AT

EW

AY

SE

RV

ER

SE

RV

ER

SO

CK

SO

CK

__S

AP

SA

P//

TL

IT

LI__

SA

PS

AP

FIF

OF

IFO

SA

PS

APLO

GL

OG

MS

GM

SG

SE

RV

ICE

SE

RV

ICE

HA

ND

LE

RH

AN

DL

ER

TIM

ET

IME

SE

RV

ER

SE

RV

ER

C+

+W

RA

PP

ER

S

SP

IPE

SP

IPE

SA

PS

AP

CO

RB

AC

OR

BA

HA

ND

LE

RH

AN

DL

ER

SY

SV

SY

SV

WR

AP

PE

RS

WR

AP

PE

RS

SH

AR

ED

SH

AR

ED

MA

LL

OC

MA

LL

OC

TH

E

AC

E

OR

BT

HE

A

CE

O

RB

((TA

OT

AO

))

JA

WS

A

DA

PT

IVE

JA

WS

A

DA

PT

IVE

WE

B

SE

RV

ER

WE

B

SE

RV

ER

MID

DL

EW

AR

E

AP

PL

ICA

TIO

NS

RE

AC

TO

RR

EA

CT

OR

//P

RO

AC

TO

RP

RO

AC

TO

R

PR

OC

ES

SP

RO

CE

SS//

TH

RE

AD

TH

RE

AD

MA

NA

GE

RS

MA

NA

GE

RS

AD

AP

TIV

E

SE

RV

ICE

E

XE

CU

TIV

E

AD

AP

TIV

E

SE

RV

ICE

E

XE

CU

TIV

E (A

SX

)(A

SX

)

SE

RV

ICE

SE

RV

ICE

CO

NF

IGC

ON

FIG

--U

RA

TO

RU

RA

TO

R

SY

NC

HS

YN

CH

WR

AP

PE

RS

WR

AP

PE

RS

ME

MM

EM

MA

PM

AP

OS

AD

AP

TA

TIO

N L

AY

ER

http://www.cs.wustl.edu/�

schmidt/ACE.html

ACEOverview

{AconcurrentOO

networking

framework

{AvailableinC++

andJava

{Portedto

VxWorks,POSIX,

andWin32

Relatedwork

{x-Kernel

{SysVSTREAMS

WashingtonUniversity,St.Louis

4

DouglasC.Schmidt

DistributedObjectComputingGroup

ACEStatistics

ACEcontain>

135,000linesofC++

{Over15person-yearsofe�ort

PortedtoUNIX,Win32,MVS,and

embeddedplatforms

{e.g.,VxWorks,LynxOS,pSoS

Largeusercommunity

{www.cs.wustl.edu/�

schmidt/ACE-

users.html

Currentlyusedbydozens

ofcompanies

{Bellcore,Boeing,

Ericsson,Kodak,

Lockheed,Lucent,

Motorola,SAIC,

Siemens,StorTek,etc.

Supportedcommercially

{www.riverace.com

WashingtonUniversity,St.Louis

5

DouglasC.Schmidt

DistributedObjectComputingGroup

PatternsforCommunicationMiddleware

Acc

epto

rA

ccep

tor

Con

nec

tor

Con

nec

tor

Th

read

-per

Th

read

-per

Ses

sion

Ses

sion

Hal

f-S

ync/

Hal

f-S

ync/

Hal

f-A

syn

cH

alf-

Asy

nc

Dou

ble

Dou

ble

Ch

eck

edC

hec

ked

Lock

ing

Lock

ing

Ser

vic

eS

ervic

eC

on

figu

rato

rC

on

figu

rato

r

Rea

ctor

Rea

ctor

Th

read

-per

Th

read

-per

Req

ues

tR

equ

est

Asy

nch

ron

ou

sA

syn

chro

nou

sC

om

ple

tion

Com

ple

tion

Tok

enT

ok

en

Act

ive

Act

ive

Ob

ject

Ob

ject

Exte

rnal

Exte

rnal

Poly

morp

his

mP

oly

morp

his

m

Th

read

Th

read

Sp

ecif

icS

pec

ific

Sto

rage

Sto

rage

Th

read

Th

read

Pool

Pool

Rou

ter

Rou

ter

Con

curr

ency

Con

curr

ency

Patt

ern

sP

att

ern

sE

ven

tE

ven

tP

att

ern

sP

att

ern

sIn

itia

liza

tion

Init

iali

zati

on

Patt

ern

sP

att

ern

s

Pro

act

or

Pro

act

or

Observation

{Failuresrarelyresult

fromunknownscienti�c

principles,butfrom

failingtoapplyproven

engineeringpracticesand

patterns

Bene�tsofPatterns

{Facilitatedesignreuse

{Preservecrucialdesign

information

{Guidedesignchoices

WashingtonUniversity,St.Louis

6

DouglasC.Schmidt

DistributedObjectComputingGroup

ActiveObjectswithACETasks

AC

TIV

EA

CT

IVE

:: M

essa

ge

Mes

sage

Qu

eue

Qu

euett 22

: :

Task

Task

2:

enq

ueu

e (m

sg)

2:

enq

ueu

e (m

sg)

1:

pu

t (m

sg)

1:

pu

t (m

sg)

:: M

essa

ge

Mes

sage

Qu

eue

Qu

eue

tt 11 : :

Task

Task

:: M

essa

ge

Mes

sage

Qu

eue

Qu

euett 33

: :

Task

Task

6:

pu

t (m

sg)

6:

pu

t (m

sg)

3:

svc

()3:

svc

()4:

deq

ueu

e (m

sg)

4:

deq

ueu

e (m

sg)

5:

do_w

ork

(msg

)5:

do_w

ork

(msg

)

AC

TIV

EA

CT

IVE

AC

TIV

EA

CT

IVE

:: TA

SK

TA

SK

ST

AT

EST

AT

E

:: TA

SK

TA

SK

ST

AT

EST

AT

E

:: TA

SK

TA

SK

ST

AT

EST

AT

E

ACETaskFeatures

{Queueing

{Eventdemultiplexing

{Concurrency

{Dynamiclinking

WashingtonUniversity,St.Louis

7

Page 3: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

Douglas C. Schmidt Distributed Object Computing Group

The ACE Stream Class Category

NETWORK INTERFACE

OR PSEUDO-DEVICES

STREAMSTREAMTailTail

MultiplexorMultiplexor

APPLICATIONAPPLICATION

StreamStream

STREAMSTREAMHeadHead

APPLICATIONAPPLICATION

StreamStream

UPSTREAMD

OWNSTREAM

MESSAGEMESSAGE

OBJECTOBJECT

WRITEWRITE

TASKTASK

OBJECTOBJECT

READREAD

TASKTASK

OBJECTOBJECT

MODULEMODULE

OBJECTOBJECT

open()=0close()=0put()=0svc()=0

� ACE Stream Features

{ Layered service

composition

{ Synchronous and

asynchronous messaging

{ Dynamic con�guration

Washington University, St. Louis 8

Douglas C. Schmidt Distributed Object Computing Group

Alternative Concurrency ModelsModuleModule

AA

PROCESS ORPROCESS OR

THREADTHREAD

READ TASKREAD TASK

OBJECTOBJECT

READ TASKREAD TASK

OBJECTOBJECT

MODULEMODULE

OBJECTOBJECT

ModuleModuleBB

ModuleModuleCC

ModuleModuleAA

ModuleModuleBB

ModuleModuleCC

2: svc()2: svc()

1: put()1: put()

4: svc()4: svc()

3: put()3: put()

ACTIVEACTIVE

ACTIVEACTIVE

ACTIVEACTIVE

ACTIVEACTIVE

2: put()2: put()

1: put()1: put()

ACTIVEACTIVEACTIVEACTIVE

TASKTASK--BASEDBASED

THREAD ARCHITECTURETHREAD ARCHITECTURE

MESSAGEMESSAGE--BASEDBASED

THREAD ARCHITECTURETHREAD ARCHITECTURE

MESSAGEMESSAGE

OBJECTOBJECT

� Message-based

Evaluation

{ Low overhead

{ Harder to program

� Task-based Features

{ Higher overhead

{ Easier to program

Washington University, St. Louis 9

Douglas C. Schmidt Distributed Object Computing Group

Use-cases for ACE

APPLICATIONSAPPLICATIONAPPLICATION--SPECIFICSPECIFIC

APPLICATIONAPPLICATION--INDEPENDENTINDEPENDENT

APPLICATIONSAPPLICATIONSAPPLICATIONSAPPLICATIONS

ConcurrencyConcurrencyglobalglobal

ReactorReactor

ServiceServiceInitializationInitialization

ServiceServiceConfiguratorConfigurator

StreamStreamFrameworkFramework

InterprocessInterprocessCommunicationCommunication

NetworkNetworkServicesServices

� Domains

{ Medical imaging

{ Network

management

{ Wireless

communications

{ Real-time avionics

{ Multimedia services

Washington University, St. Louis 10

Douglas C. Schmidt Distributed Object Computing Group

Applying ACE to Medical Imaging

DDIIAAGGNNOOSSTTIICC

SSTTAATTIIOONNSS

AATTMMMMAANN

AATTMMLLAANN

AATTMMLLAANN

MMOODDAALLIITTIIEESS

((CCTT,, MMRR,, CCRR)) CCEENNTTRRAALL

IIMMAAGGEESSTTOORREE

CCLLUUSSTTEERRIIMMAAGGEESSTTOORREE

DDXXIIMMAAGGEESSTTOORREE

� Domain Challenges

{ Large volume of \Blob"

data

� e.g., 10 to 40 Mbps

{ \Lossy compression"

isn't viable

{ Prioritization of requests

� �schmidt/COOTS-96.ps.gz

� �schmidt/av.ps.gz

Washington University, St. Louis 11

Page 4: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

Douglas C. Schmidt Distributed Object Computing Group

Applying ACE to Network Management

Session RouterModule

PresentationModule

Event FilterModule

Event AnalysisModule

PresentationModule

Switch RouterModule

Reactor

MD110MD110 ERICSSONERICSSON

TELECOMTELECOM

SWITCHESSWITCHES

SUPERSUPER

VISORSVISORS

MD110MD110 ERICSSONERICSSON

MD110MD110 ERICSSONERICSSON

SUPERSUPER

VISORSVISORS

SUPERSUPER

VISORSVISORS

Switch IO

Session IO

� Domain Challenges

{ Low latency

{ Multi-platform

{ Family of related

services

{ �schmidt/DSEJ-

94.ps.gz

Washington University, St. Louis 12

Douglas C. Schmidt Distributed Object Computing Group

Applying ACE to Global PCS

WIDE AREA

NETWORK

SATELLITESSATELLITESTRACKINGTRACKINGSTATIONSTATION

PEERSPEERS

STATUS INFO

COMMANDS BULK DATA

TRANSFER

LOCAL AREA NETWORK

GROUNDSTATION

PEERS

GATEWAY� Domain Challenges

{ Long latency satellite links

{ High reliability

{ Prioritization

{ �schmidt/TAPOS-95.ps.gz

Washington University, St. Louis 13

Douglas C. Schmidt Distributed Object Computing Group

Applying ACE to Real-time Avionics

Consumers

I/O Facade

SensorProxy

SensorProxy

SensorProxy

SensorProxy

1: I/O via interrupts

I/O Facade I/O Facade

EventChannel

2: push (demarshaled data)

AircraftSensors

3: push (demarshaled data)

Suppliers

� Domain Challenges

{ Real-time periodic

processing

{ Complex dependencies

{ Very low latency

{ �schmidt/JSAC-

98.ps.gz

Washington University, St. Louis 14

Douglas C. Schmidt Distributed Object Computing Group

The ACE ORB (TAO)

NETWORKNETWORK

ORBORB RUN RUN--TIMETIME

SCHEDULERSCHEDULER

REALREAL--TIMETIMEORBORB CORECORE

operation()operation()

RIDLRIDLSTUBSSTUBS

REALREAL--TIMETIME

OBJECTOBJECT

ADAPTERADAPTER

RIDLRIDLSKELETONSKELETON

in argsin args

out args + return valueout args + return value

CLIENTCLIENT

OS KERNELOS KERNEL

HIGHHIGH--SPEEDSPEED

NETWORK INTERFACENETWORK INTERFACE

REALREAL--TIME ITIME I//OOSUBSYSTEMSUBSYSTEM

RIOPRIOP

OBJECTOBJECT((SERVANTSERVANT))

OS KERNELOS KERNEL

HIGHHIGH--SPEEDSPEED

NETWORK INTERFACENETWORK INTERFACE

REALREAL--TIME ITIME I//OOSUBSYSTEMSUBSYSTEM

� TAO Overview

{ High-performance,

real-time ORB

� Networking and

avionics focus

{ Leverages ACE

� Runs on VxWorks,

POSIX, and Win32

� �schmidt/TAO.html

Washington University, St. Louis 15

Page 5: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

DouglasC.Schmidt

DistributedObjectComputingGroup

JAWSAdaptiveWebServer

WW

WW

WW

SE

RV

ER

SE

RV

ER

2:

ind

ex.h

tml

2:

ind

ex.h

tml

1:

GE

T ~

sch

mid

t1:

GE

T ~

sch

mid

tH

TT

P/1

.0H

TT

P/1

.0 CO

MM

UN

ICA

TIO

N P

RO

TO

CO

L

(E.G

., H

TT

P)

GU

I

HT

ML

PA

RS

ER

RE

QU

ES

TE

R

GR

AP

HIC

SA

DA

PT

ER

NE

TW

OR

KN

ET

WO

RK

OS

K

ER

NE

LO

S K

ER

NE

L

OS

I

OS

I//

O

SU

BS

YS

TE

MO

S

UB

SY

ST

EM

NE

TW

OR

K A

DA

PT

ER

SN

ET

WO

RK

A

DA

PT

ER

S

OS

K

ER

NE

LO

S K

ER

NE

L

OS

I

OS

I//

O

SU

BS

YS

TE

MO

S

UB

SY

ST

EM

NE

TW

OR

K A

DA

PT

ER

SN

ET

WO

RK

A

DA

PT

ER

S

DIS

PA

TC

HE

RD

ISP

AT

CH

ER

PR

OT

OC

OL

PR

OT

OC

OL

HA

ND

LE

RS

HA

ND

LE

RS

WW

WW

WW

CL

IEN

TC

LIE

NT

jxh/research/

JAWSOverview

{Ahigh-performance

Webserver

Flexible

concurrencyand

eventdispatching

mechanisms

FullHTTP1.0and

CGIsupport

{LeveragestheACE

framework

PortedtomostOS

platforms

WashingtonUniversity,St.Louis

16

DouglasC.Schmidt

DistributedObjectComputingGroup

JavaACE

FR

AM

EW

OR

KS

AN

D

CL

AS

S

CA

TE

GO

RIE

S

DIS

TR

IBU

TE

D

SE

RV

ICE

S A

ND

CO

MP

ON

EN

TS

NA

ME

SE

RV

ER

TO

KE

N

SE

RV

ER

LO

GG

ING

SE

RV

ER

TIM

E

SE

RV

ER

JAV

A

WR

AP

PE

RS

SY

NC

H

WR

AP

PE

RS

SO

CK_S

AP

TH

RE

AD

MA

NA

GE

R

LO

G

MS

G

TIM

ER

QU

EU

E

SE

RV

ICE

CO

NF

IGU

RA

TO

R

AD

AP

TIV

E S

ER

VIC

E E

XE

CU

TIV

E

(AS

X)

AC

CE

PT

OR

CO

NN

EC

TO

RS

ER

VIC

E

HA

ND

LE

R

JAV

A V

IRTU

AL

MA

CH

INE

(JV

M)

schmidt/JACE.html

schmidt/MedJava.ps.gz

schmidt/C++2java.html

JavaACEOverview

{AversionofACE

writteninJava

{Usedformedical

imagingprototype

WashingtonUniversity,St.Louis

17

DouglasC.Schmidt

DistributedObjectComputingGroup

LessonsLearnedBuildingACE

Goodcomponents,frameworks,andsoftwarearchitecturestaketimeto

develop

Reuse-in-the-largeworksbestwhen:

{Themarketplaceiscompetitive

{Thedomainiscomplex

{Buildingmiddlewarein-housecoststoomuch

{Corporatecultureissupportive

Producereusablecomponentsbygeneralizingfromworkingapplications

{i.e.,don'tbuildcomponentsinisolation

Thebestcomponents(andsystemsresearch)comefromsolvingreal

problems

WashingtonUniversity,St.Louis

18

DouglasC.Schmidt

DistributedObjectComputingGroup

ConcludingRemarks

Developersofcommunicationsoftwareconfrontrecurringchallenges

thatarelargelyapplication-independent

{e.g.,serviceinitializationanddistribution,errorhandling, ow

control,eventdemultiplexing,concurrencycontrol

Successfuldevelopersresolvethesechallengesbyapplyingappropriate

designpatternstocreatecommunicationframeworks

Applicationframeworksareane�ectivewaytoachievebroadreuseof

software

WashingtonUniversity,St.Louis

19

Page 6: TRACKING SATELLITES STATION PEERS - …schmidt/PDF/ACE4.pdfSp onso rs NSF, D ARP A, Bellco re, Bo eing, CDI/GDIS, ... COMMANDS BULK DATA TRANSFER LOCAL AREA NETWORK ... patterns All

DouglasC.Schmidt

DistributedObjectComputingGroup

ObtainingACE

ACEisanOOframeworkthatrei�eskeycommunicationsoftware

patterns

AllsourcecodeforACEisfreelyavailable

{www.cs.wustl.edu/�

schmidt/ACE.html

Mailinglists

{[email protected]

{[email protected]

{[email protected]

{[email protected]

Newsgroup

{comp.soft-sys.ace

WashingtonUniversity,St.Louis

20