Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
Computer Science Technical Report Archive
/
USC Computer Science Technical Reports, no. 669 (1998)
(USC DC Other)
USC Computer Science Technical Reports, no. 669 (1998)
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
A F ramew ork for A ctiv e Distributed Services
R amesh Govindan
Cengiz A laettino lu
Deb or ah Estrin
Computer Science Departmentand
Information Sciences Institute
Univ ersit y of Southern California
Los Angeles CA Email govindancengiz es tr in us ce du
Jan uary
Abstract
Dynamically ev olving a widely distributed service or appli
cation is a c hallenging systems design task In this pap er
w e describ e a plausible highlev el design for a common soft
w are framew ork that supp orts suc h extensible distributed
services Our design requires that the distributed service b e
implemented inanin terpreted language but our framew ork
allo ws transparen t and ondemand pro cedure instan tiation
at agen ts of the distributed service In addition this frame
w ork enables distributed services to b e comp osed from re
usable mo dules and service sessions to b e initiated from a
single site
In tro duction
With the adv entof a w orldwide net w orking infrastruc
ture w e increasingly see largescale deplo ymen ts of dis
tribute d servic es and applic ations Sessions of some dis
tributed services comprise tens or h undreds of co op erat
ing agents instances of the service executing at net w ork
no des In teragen t comm unication is usually ac hiev ed
using net w orkla y er m ulticast or congured agen t hi
erarc hies F or example the Harv est lo wlatency do c
umen t retriev al service emplo ys a static hierarc h y of
co op erating serv ers On the other hand a p opular
In ternet conferencing application wb uses reliable
m ulticast to ensure sync hronized group state among
conference participan ts W e are curren tly dev eloping a
decen tralized In ternet routing registry system in whic h
agen ts use m ulticast for rendezv ous and sync hroniza
tion
In future in ternet w orks w e can exp ect increased de
plo ymen ts of distributed services and applications ser
vices that disseminate time sensitiv e information glob
ally eg news and sto c k quotes distributed services
that electronically brok er w orldwide transactions and
applications that enable m ultipart y scenario sim ula
tions eg disaster resp onse Before suc h distributed
services
b ecome ubiquitous new mec hanisms that sim
plify the dev elopmen t debugging deplo ymen t and ev o
lution of these services are needed
This pap er discusses dynamically extensible dis
tributed services Sp ecically w e fo cus on enabling
insession extensions to distributed services Suc h
dynamic extensibilit y is particularly relev an t to dis
tributed services These are featureric hsoft w are sub
systems with frequen t need for functionalit y enhance
men ts But m uchh uman co ordination is necessary to
ac hiev e these enhancemen ts in largescale deplo ymen ts
disruptions resulting from suc h service upgrades can ad
v ersely aect longrunning sessions of highlya v ailable
distributed services
T o enable service extensibilit yw e lev erage the trend
to w ards using in terpreted languages suc hasJa v a SafeTCL or Python for distributed services
and applications In terpreters for suc h languages
already supp ortor can be extended to supp ort
dynamic pr o c e dur e instantiation that is co de for a
pro cedure can b e installed in the runtime en vironmen t
after a program has started executing but when or b e fore the pro cedure is referenced W e can use this fea
ture to supp ort activ e distributed services whic h
are extensible at the gran ularit y of individual pro ce
dures or mo dules Mec hanicallyw een visage activ e dis
tributed services using this feature in one of t wow a ys
agen ts ma y lazily retriev e extensions up on reference or
one or more agen ts ma y eagerly distribute extensions
to all other participan ts
In this pap er w e argue that the proto cols and soft
w are subsystems needed to supp ort suc h activ e dis
tributed services are largely indep enden t of the dis
F or brevit yw e use the term distributed services although
our discussions apply to distributed applications as w ell
tributed service itself Section W e then describ e
a plausible highlev el design of a framew ork for sup
p orting activ e distributed services Sections and Suc h a framew ork can also allowcen tralized initiation
of a distributed service and dynamic c omp osition of
distributed services from reusable mo dules Finally Section discusses related w ork
A ctiv e Distributed Services
Wh y do distributed services need to be extensible
What kinds of extensibilit y can wean ticipate of these
services The answ ers to these questions motiv ate the
need for a common substrate for activ e distributed ser
vices ADSs
Motiv ation
Dev elop ers frequen tly enhance the p erformance and
functionalit y of distributed services and applications
T o upgrade all agen ts of a large distributed service ses
sion signican t co ordination is required bet w een the
participan ts If distributed services w ere explicitly de
signed to b e extensible they could a v oid service disrup
tions caused b y functionalit y enhancemen ts
More imp ortan tly there exist foreseeable problem
domains where ADSs are functionally necessary
Brok er Systems F uture in ternets will in tro duce the
abilit y to conduct w orldwide commercial transac
tions The core of this system will b e a global col
lection of extensible br okers that mediate trans
actions bet w een the participating en tities The
brok ers will co op erate to pro vide a set of common
functionalit y required for scalable global transac
tions Ov er time these highlyavailable serv ers will
need to b e dynamically extended to accommo date
new transaction t yp es or metho ds
Graphical Visualization In future in ternets it will
b e p ossible to conduct widearea m ultipart y sce
nario sim ulations eg for resp onses to natural dis
asters In these sim ulations participan ts to
gether visualize the output of mo dels describing
a natural phenomenon This output usually con
sists of a comp osite con tin uously c hanging repre
sen tation of sev eral graphical ob jects Due to the
widely v arying nature of these phenomena it ma y
be desirable to dynamically alter mo dels or their
parameters during the session With an extensible
graphical visualization application an agen t can
in tro duce new graphical ob jects or mo dify the b e
ha vior of existing graphical ob jects in resp onse to
c hanges in mo dels or mo del parameters
Structure
Understanding the structure of ADSs helps us dene
their extensibilit y requiremen ts But rst what is a
distributed service A distributed service consists of
t w o or more agents eac h executing at dieren t no des
of an in ternet w ork Sev eral concurren t sessions of the
distributed service ma y coexist in the in ternet w ork In
particular a single no de ma y con tain more than one
agen t of the same distributed service eac h agen t be longing to a dieren t session All agen ts in a session ex
ecute the same consisten tv ersion of co de Eac h agen t
comm unicates with at least one other agen t using an
applicationsp ecic mec hanism
What is the structure of an ADSEv ery extensible
system con tains a mec hanism for seamlessly incorp orat
ing extensions In most extensible systems an ev en t
based in v o cation mec hanism is used In this mec ha
nism extensions are usually designed as ev en t handlers
An y comp onen t of the system ma y raise an ev entupon
the o ccurrence of some system activit y at whic h time
the corresp onding extension is pro cessed The binding
bet w een an ev en t and its handler can be dynamically
altered or dela y ed un til the ev en t is raised
The gran ularityof ev en ts in extensible systems v aries
with the degree of extensibilit y p ermitted in the system
Extensible editing and mail handling to ols predene
ho oks to whic h users can add customized pro cessing
co de Some recen t w ork on extensible op erating sys
tems has prop osed ev en ts at pro cedure gran ularit y
ev ery pro cedure call is an ev en t and the binding of the
call to the called co de can b e c hanged dynamically Ev en tbased in v o cation is then a reasonable mo del
for describing the structure of ADSs The gran ularit y
of ev en ts dep ends on the ADS and its desired degree
of extensibilit y In our visualization example the de
v elop er can choosetoallo w users to describ e not only
the sequence of graphical op erations on ob jects eg
at time T mo v e ob ject to xat T rotate ob ject b y
y degrees but also mo dify the implemen tation of in
dividual graphical op erations lik e rotations shears etc
Roughly sp eaking for eac h extensible asp ect of the sys
tem the ADS dev elop er w ould dene one ev en t
Stated in terms of this mo del of extensible system
structure there are three w a ys in whic h ADSsmaybe
extended
An agen t ma y install a new ev en t at all other
agen ts This corresp onds to adding a new ob ject
to our visualization application Not all ADSswill
allo w this lev el of extensibilit y An agentma y push an ev en t handler implemen ta
tion to all other agen ts In our visualization ex
ample the agen t that alters the mo del parameters
migh t transmit new descriptions of ob ject b eha vior
to other handlers
In some sessions agen ts ma y start and terminate
at dieren t times so pushing handlers alone ma y
not b e sucien t An agentma y retriev e the han
dler implemen tation when the ev en t is raised This
migh t also b e useful in lazily retrieving infrequen tly
used extensions
Supp ort for dynamic retriev al of handlers can also
enable
Comp osabilit y Toallo w rapid protot yping of ADSs
it ma y be desirable to facilitate the exible re
use of distributed service comp onen ts This can
b e particularly useful for the hardtodebug in ter
agentcomm unication mec hanisms If these exter
nally implemen ted mo dules are designed as exten
sions to the ADS they can then be referenced
up on demand
Rapid Initiation F or some distributed services and
applications it ma y b e desirable to cen trally initi
ate a net w orkwide session of the service With
dynamic handler retriev al this is conceptually
straigh tforw ard if an ADS denes ev ery pro cedure
to be an ev en t An initiator need only distribute
the main pro cedure to participan ts other pro ce
dures can b e retriev ed up on reference
Requiremen ts
F rom our mo del of the structure of ADSs there
emerges the need for three kinds of proto cols First
those that allo w one agen t to instan tiate new ev en ts
and ev en t handlers at all other agen ts participating in
the distributed session Second those that lo osely syn
c hronize the mo dication of ev en t handlers at agen ts to
a v oid inconsistentev en t handling Third those that re
triev e handlers on demand up on reference or that allo w
prefetc hing of handlers A primary concern in the de
sign of these proto cols is scalabilit y to large widespread
sessions
Our description of the kinds of extensibilit y required
of distributed services is largely indep endentofa sp e
cic service or application W e argue therefore that
ADS s are b est serv ed b y implemen ting these proto cols
in a common runtime substr ate T o enhance the us
abilit y of this substrate and to thereb yspurthe dev el
opmentof ADSs w e imp ose three design constrain ts
the substrates mec hanisms that supp ort exten
sions to distributed services m ust to the exten t
p ossible b e transparen tto dev elop ers
The substrate m ust not require that all extensions
to a service b e implemen ted in the same language
as the distributed service itself This is useful for
reusing mo dules implemen ted in a dieren t lan
guage for example
Finally the substrate m ust not require mo dica
tions to language in terpreters This will allo w
the substrate to b e used with commercially imple
men ted or proprietary platforms
The substrate is one comp onen t of a soft w are frame
w ork that supp orts activ e distributed services A sec
ond comp onentisa to olkit that con tains parametriz
able implemen tations of reusable comm unication mo d
ules The collection of to olkit mo dules will ev olveo v er
time Ho w ev er to maximize the viabilit y of this frame
w ork it is crucial to ha v e a widely usable initial collec
tion of mec hanisms in the to olkit
The Substrate
F rom these requiremen ts w e arriv e at the follo wing
t w ocomp onen t design for the substrate Figure A ctuator A t eac h no de in the net w ork there is one
actuator The actuator initiates the execution
of an ADS agen t at the no de It also imple
men ts proto cols that retriev e handlers ondemand
or push handlers to other agen ts in the session Fi
nally it facilitates the in v o cation of handlers imple
men ted in a dieren t language Before the actua
tor initiates an ADS agen t it ma y prepro cess the
agen t co de in a languagesp ecic w a y This step
a v oids mo difying in terpreters for dynamic handler
retriev al
En v o y A no de ma y con tain sev eral agen ts b elonging
to dieren t ADS sessions Asso ciated with eac h
agentis an en v o y An en v o y detects missing han
dlers and in teracts with the no des actuator to re
triev e them It also installs pushed handlers in the
agen ts runtime en vironmen t The functionalityin
the en v o y is language and in terpreterdep enden t
Wh y this division of functionalit y The complex
mec hanisms for distributing extensions need only be
implemen ted once in the actuator regardless of the
n um ber of dieren t languages used to implemen t ADSs
F urthermore these mec hanisms are hidden from ADS
agen ts who in teract with the actuator through their
en v o ys Finallyen v o ys con tain only glue functionalit y and can b e easily p orted to new languages
Weno w describ e these comp onen ts in greater detail
ADS A ADS B
(Unix, Windows NT, Mach, MacOS...)
Native Operating System
Java envoy
Safe-TCL envoy
Actuator
Safe-TCL preparer
Java preparer
Java interpreter Safe-TCL interpreter
Figure The the substrate Arc hitecture Eacheac h no de in the net w ork con tains an actuator One en v o y asso ciated
with eachagen t executing at that no de The agentma y b e primed b efore execution In the gure italicized elemen ts
constitute the substrate In terpreters and op erating systems need not b e mo died for the substrate
The A ctuator
T o instan tiate an agen t at a no de the actuator activ ates
the corresp onding language in terpreter and en v o y and
sets the in terpreter to execute the ADS The actuator
also implemen ts proto cols for pushing ev en t handlers
to all participan ts of a session When the actuator re
ceiv es pushed ev en t handlers it installs them in the lo
cal agen t Con v erselywhen an en v o y needs to retriev e
handlers on demand it con tacts the actuator remote
pro cedure calls RPCs are used for all actuatoren v o y
comm unication The actuator then retriev es the ab
sen t handler T o accommo date ADSsp ecic handler
retriev al the initiator of an ADS session ma y push a
r etrieval hand ler for the session The actuator uses this
to fault in missing handlers
Supp ort for ADS extensions implemen ted in a dif
feren t language is a critical piece of the substrate func
tionalit y Ho w do es the actuator enable crosslanguage
handler in v o cation Supp ose an actuator retriev es a
handler on b ehalf of an ADS session Supp ose further
that that handler is implemen ted in a language dier
en t from that of the ADS The actuator rst initiates
a new in terpreter and a new en v o y for this language It
then comm unicates to the t woen v o ys a generic in ter
face description using for example IDL for the
retriev ed handler The en v o ys generate the appropriate
RPC stubs to complete the handler in v o cation
Before the actuator initiates an ADS agen t it pre
pro cesses the agentcode This step whic hw e call prim
ing customizes the ADS to t the capabilities of the
corresp onding language in terpreter Sp ecically if the
ADSs language in terpreter do es not pro vide ev en t han
dler fault notication the actuator ma y need to pre
pro cess the ADS to em ulate that exception The ac
tuator m ust also prime retriev ed or pushed handlers
b efore handing them o to the resp ectiv een v o y The En v o y
One en v o y is colo cated with eac h agen t executing at
a no de Figure The pro cess of priming an ADS
or its extensions results in the en v o y b eing in v ok ed at
runtime The en v o y p erforms three primary functions
it in teracts with the language in terpreter it comm uni
cates with the actuator to retriev e missing handler and
it facilitates crosslanguage handler in v o cation
T o enable handler retriev al an en v o y m ust rst be
notied when the corresp onding ev en t is raised This
notication is language and in terpreter sp ecic Some
in terpreters ma y thro w an exception up on reference to
an undened handlerthe en v o ys exception handler
will initiate handler retriev al In the absence of suc h
in terpreter supp ort the pro cess of priming the ADS
will em ulate this exception
The en v o y then calls its lo cal actuator whic h dynam
ically retriev es the missing handler and hands it o to
the en v o y The en v o y installs the primed handler in
the agen ts runtime en vironmen t allo wing the handler
in v o cation to complete F or handlers implemen ted in
a dieren t language the actuator passes to the en v o y
a formal pro cedural in terface description instead Us
ing this the en v o y generates on the y the caller stub
for the RPC Concurren tlythe actuator activ ates the
appropriate in terpreter and en v o y for the handler The
handlers en v o y generates the callee stub for the RPC
allo wing the in v o cation to complete
Some Researc h Directions
Ak ey researc h issue for the substrate is the design of
proto cols for distributing ADS extensions In the de
sign of the actuator w eha veallo w ed for ADSsp ecic
extension retriev al metho ds Nev ertheless for increased
viabilit y the substrate will need to implemen t proto cols
that p erform w ell o v er a range of session c haracteristics
sparse and dense participan t distributions lo calized or
widely disp ersed agen ts and v arying session mem b er
ship dynamics
But what kinds of proto cols are required for dy
namically distributing ADS extensions First to re
trievea handler up on reference actuators can searc h
in expanding m ulticast scop e for nearb y actuators with
copies of a handler Second for eager distribution of
ev en t handlers the actuator will need to implemen t
a reliable m ulticast proto col The alternativ e a lo w
rate p erio dic m ulticast of extension handlers can add
signican t latency to handler execution The reliable
m ulticast proto col will b e dieren t from others in use
to da y since eager co de distribution will in v olvea small
n um ber of sources and sev eral h undreds or thousands
of receiv ers Third the actuator will need a proto col to
lo osely sync hronize instan tiation of handlers in ADS
agen ts Wh y In an ADS it ma y be p ossible to r e
plac e an existing ev en t handler with a new one When
pushing new handlers dieren tagen ts in a session can
pro cess the same application message using dieren t
handlers This can lead to unpredictable ADS execu
tion Finally the actuator m ust also implemen t proto
cols to ensure that all agen ts execute consistentv ersions
of handlers Esp ecially in longrunning sessions where
not all agen ts are initiated at the same time dieren t
agen ts in the same session ma y retriev e dieren t v er
sions of the handler
Earlier distributed systems researc h has studied sim
ilar group comm unication and consensus proto cols ex
tensiv ely Wh y can w e not use this w ork dir e ctly in im
plemen ting our in teractuator proto cols Esp ecially for
widely disp ersed groups in ternet w orks exhibit unpre
dictable dela ys v arying bandwidths and net w ork dy
namics that temp orarily aect group mem b ership F or
this reason distributed systems approac hes that rely
on frequen t and tigh t sync hronization bet w een group
mem b ers p erform p o orly o v er in ternet w orks Suc h ap
proac hes also scale p o orly to large group sizes
An approac h that promises b etter p erformance and
scale exploits applic ationsp e cic c haracteristics where
p ossible to more lo osely coupled group mem b ers This
approac h builds in to the application the resilience to
incomplete or outdated group state It also relies on
probabilistic con trol message transmission with sup
pression and on lo wrate adv ertisemen ts that allo w
mem bers to ev en tually reconstruct group state W e
will use these tec hniques to adapt earlier distributed
systems algorithms to the in teractuator comm unica
tion mec hanisms describ ed ab o v e
Ev en so to get acceptable p erformance for ADSs
with man y extensions these group comm unication and
sync hronization proto cols m ust be designed carefully T o illustrate this w e consider the p erformance impact
of dynamic handler retriev al T o understand the quan
titativ e impact of this asp ect of our design w e con
ducted simple exp erimen ts to compare the time to ser
vice a page fault against m ulticast requestresp onse la
tencies The latter metric is to a rst appro ximation
the time to fault in a handler in the substrate Fig
ure sho ws the in terv al bet w een sending out a single
m ulticast request and receiving resp onses from hosts at
four dieren tm ulticast scop es site region con tinen t
and w orld
F rom Figure w e see that handler faults serviced b y
participan ts near the requestor are within t wice page
fault service times These n um b ers are encouraging If
our handler retriev al proto cols allowan y participan t
not just the initiatorto resp ond to handler fault re
quests retriev al o v erhead can b e k ept within acceptable
limits for large sessions F or sparse widely distributed
sessions the lik eliho o d of nding a nearb y participan t
is small In these situations retriev al latency can b e re
duced b y prefetc hing or eagerly distributing handlers
P artial pro cedure call graphsgenerated for example
when priming an extension Section can b e used
to determine an optimal prefetc hing strategy Designing the substrate itself to be extensible rep
resen ts a second researc h issue A t least t w o comp o
nen ts of the substrate will ev olveo v er time First some
the substrate comp onen ts are languagesp ecic in ter
preters en v o ys and the co de for priming handlers As
new languages app ear or as in terpreter functionalit y
ev olv es w e need mec hanisms to distribute new v ersions
of these comp onen ts F or this it probably suces to
designate some sp ecic arc hiv al no des in the in ternet
w ork Then rather than b e congured with the iden tit y
of these sites actuators can disco v er their existence us
ing net w orkla y er m ulticast Second the retriev al and
sync hronization proto cols will themselv es ev olv e with
exp erience from deplo ymen ts A separate distribution
mec hanism should b e used for these proto col extensions
from that used for ADS extensions Because ev ery no de
in the in ternet w ork will ha v e an actuator executing at
all times a lo wrate periodic o o ding proto col migh t
suce for actuator extensions
In our exp erimen ts the requestor w as at USCISI and the
resp onders w ere resp ectiv ely lo cated at USC in Los Angeles Xe
roxP ARCinP alo Alto CA Merit Net w orks Inc in Mic higan
and RIPE NCC in Amsterdam the Netherlands
Metric Time in milliseconds
P age F ault Service Time
SiteScop e RequestResp onse RegionScop e RequestResp onse
Con tinen tScop e RequestResp onse
W orldScop e RequestResp onse
Figure Ov erhead of Dynamic Handler Retriev al An appro ximate measure of the o v erhead of dynamic
handler retriev al is the latency of m ulticast request and resp onse If the resp onder is near the requestor this
o v erhead is t wice the page fault service time
Ensuring safe and secure ADS extensions is a third
researc h issue As with other extensible systems ADSs
are susceptible to improp er extension b eha vior Un
safe dynamic extensions can in terfere sometimes sub
tly with existing system comp onen ts Unlik e some
other extensible systems ADSsma y not need sophisti
cated rew alling against unsafe extensions They will
ho w ev er need a scalable tracing and trace collection
mec hanism for afterthefact analysis of the eect of
unsafe extensions Finegrain execution tracing can
b e p erformed transparen tly b y the substr ate either b y
exploiting in terpreter capabilities or b y appropriately
priming extensions
Once ecien t retriev al mec hanisms ha v e been de
signed the p erformance of lo cal actuator mec hanisms
will be a fourth researc h issue Among these mec ha
nisms actuatoren v o y comm unication crosslanguage
in v o cation and extension priming are candidates
for optimization esp ecially for highly extensible dis
tributed services and applications
The T o olkit
With dela y ed pro cedure instan tiation a dev elop er can
more easily comp ose an ADS from parametrizable mo d
ular implemen tations whic hw e call bundlesofcom m unication mec hanisms F or example supp ose that an
ADS dev elop er implemen ts a bundle con taining a reli
able m ulticast transp ort proto col Other ADS dev elop
ers can call the en try poin ts of this bundle the co de
corresp onding to the en try p oin t will b e retriev ed up on
reference F or example in Figure c pro cedure foo
can reference a ReliableMulticast se nd pro ce
dure implemen ted b y another dev elop er
W e call the collection of reusable bundles the ADS
to olkit Three constrain ts aect the design of bundles
and the to olkit First the substrate needs to supp ort
crosslanguage pro cedure in v o cation Section so that
ADSsma y in v ok e bundles implemen ted in a dieren t
language It is unrealistic to exp ect that bundles will
b e implemen ted in all p ossible activ e programming lan
guages It is equally unrealistic to exp ect that there
exists a single programming language for ADSs or a
single virtual mac hine for whic h all languages maybe
compiled Second so that distributed services ma y tai
lor bundles to their needs the to olkit m ust con tain
parametrizable mo dules This also a v oids a prolifera
tion of ad ho c implemen tations of substan tially similar
bundles Finally to maximize its viabilit y the to olkit
m ust satisfy the needs of most distributed services
While the last requiremen t is dicult to satisfy with
out exp erience from widespread deplo ymen ts of ADSs
w e can an ticipate some common needs of distributed
services Examples of suc h needs include
Reliable Group Comm unication F uture dis
tributed services will be built up on reliable
widearea group comm unication With increasing
a v ailabilit y of net w orkla y er m ulticast reliable
m ulticast transp ort proto cols can be used to
realize suc h group comm unication The design of
suc h proto cols is inuenced b y application and
session c haracteristics suc h as size lo calit y of
group mem bership n um ber of senders and the
message deliv ery seman tics asso ciated with the
application While no single reliable m ulticast
proto col ma y satisfy the needs of applications
there ma y exist classes of parametrizable proto cols
whichma y b e implemen ted as bundles
SelfConguring Hierarc hies F or scalable agen t
comm unication man y distributed services rely on
agen t hierarc hies P aren tc hild relationships in to
da ys agen t hierarc hies are usually man ually con
gured in to participating agen ts In teragen tcom m unication is constrained b y these relationships
an agen t obtains information either directly from
Initiator
ReliableMulticast::send()
b) Retrieve c) Retrieve
Participant
request
reply
a) Send bootstrap segment foo()
Figure AnA ctive Distribute d Servic e It is desirable to initiate an ADS session b y sending a single b o otstrap segmen t
con taining the main pro cedure a Subsequen tly other pro cedures are faulted in b including pro cedures from other
mo dules whichw ere used to comp ose the ADS c
its paren t or relies on its paren ts to recursiv ely lo
cate the required information Man ually con
gured hierarc hies can be inecien t can be in
toleran t of failures can require op erator in terv en
tion and ma y be susceptible to conguration er
rors The to olkit can con tain proto cols for self
conguring hierarc hies parametrizable b y applica
tion sp ecic metrics
Related W ork
Sev eral areas of w ork impact the design of a framew ork
for activ e distributed services
The Design of In terpreted Languages There ex
ist sev eral t yp esafe languages for programming
serv ertoclien t co de migration eg Ja v a SafeTCL and Python Omniw are al
lo ws con v ersion of co de written in languages likeC
and C in to co de fragmen ts it pro vides a sub
strate for in terpreting these co de fragmen ts Some
of these languages ma y b e more appropriate for im
plemen ting ADSs than others the substrate sim
ply pro vides a v ehicle for distributing this co de
r e gar dless of the implemen tation language c hosen
F or this reason w e fo cus on abstracting the com
mon m ultipart ycomm unication asp ects of ADSs
in to the substrate the substrate also pro vides
a thin la y er of functionalit y that enables cross
language handler in v o cation ev en in the absence
of explicit supp ort from language in terpreters for
this feature
Programming Mobile Agen ts Sev eral other lan
guages eg Phan tom Obliq and T elescript
are designed for programming mobile agents A mobile agen t carries a transien t execution en vi
ronmen t along with co de this allo ws a computa
tion to start at one no de in the net w ork migrate
itself to another no de and so on These migrating
computations do not fall in to the class of applica
tions that the substrate supp orts Ho w ev er just as
it is desirable to hide as m uc h as p ossible of the of
the substrates dynamic handler instan tiation from
the programmer it is desirable to hide the details
of migrating computations F or this reason the
structure and design of the the substrate can be
applied to mobile agen ts as w ell
Extensible Op erating Systems Some of the in ter
preters for the languages describ ed ab o vepro vide
con trolled access to lo cal system services F or more
exible access to these services sev eral researc h ef
forts are fo cusing on safe applicationsp ecic ex
tensions to op erating systems Inferno fo cuses
on pro viding a net w ork op erating system for co de
fragmen ts through a uniform global name space
SPIN and Exok ernel allo w applications to de
sign their o wn OS abstractions or extend OSs for
increased p erformance or functionalit y the sub
strate is orthogonal to this w ork Ho w ev er these
eorts will result in tec hniques for safely extend
ing a soft w are subsystem These tec hniques can
adapted to ensure safe eager handler instan tiation
in the the substrate actuator
A ctiv ating the Net w orkLa y er The A ctiv e Net
w orks arc hitecture in tro duces c apsules appli
cation data pac k ets con taining applicationsp ecic
co de whic h is in terpreted at in terv ening routers
T w o ongoing eorts fo cus on realizing suc h ac
tivenet w orkla y er arc hitectures Netscript fo cuses
on a net w ork mo del and a datao w language for
activ ely programming routers The Switc h
W are pro ject in tends to use standardML for
programming input and output p orts of switc hes
W e view the substrate as b eing complemen tary to
these eorts the proto cols that the the substrate
con tains for eager handler distribution can b e used
for activ ating net w orkla y er fragmen ts as w ell
Mo dular Comp osabilit y The notion of construct
ing applications and services b y comp osing re
usable co de is longstanding practice V arious
to olkits libraries rapid GUI dev elopmen t plat
forms and visual languages are testamen ts to
this The recen t Ja v a Beans prop osal at
tempts to standardize the pac k aging of reusable
co de mo dules the substrate extends these ideas to
their logical conclusion reuse of remotely imple
men ted mo dules dynamically retriev ed up on ref
erence
Proto cols for Distributed Services Ov er the past
few y ears sev eral applicationsp ecic proto cols
ha v e been designed and deplo y ed for m ultipart y
comm unications Examples include Scalable Reli
able Multicast RealTime T ransp ort Proto col
and Distributed In teractiv e Sim ulation W e b eliev e that future distributed services will also
dev elop applicationsp ecic proto cols for m ulti
partycomm unications ie net w orkla y er supp ort
that meets the v arying needs of these applications
is unlik ely Our w ork on the substrate will broaden
our understanding of the design of suc h proto cols
for large in ternet w orks
References
C Alaettinolu and R Go vindan A Distributed In
ternet Routing Registry Arc hitecture In Preparation
B N Bershad M E Fiuczynski S Sa v age D Bec k er
P P ardy ak C Cham b ers E G Sirer and S Eg
gers Extensibilit y Safet y and P erformance in the SPIN
Op erating System In Pr o c e e dings of the th A CM
Symp osium on Op er ating System PrinciplesDecem ber
N Borenstein EMail With a Mind of Its Own The
SafeTCL Language for Enabled Mail In Pr o c e e dings
of IFIP International Confer enc e Barcelona Spain
C M Bo wman P B Danzig D R Hardy U Man b er
and M F Sc h w artz The Harv est Information Disco v
ery and A ccess System Computer Networks and ISDN
Systems G J Carb one S E Bak er and D J Smith Estab
lishmen t of a Protot yp e GIS to In tegrate T op ographic
Hydrologic and Climatic Data with WSRD Pre
cipitation Data T ec hnical rep ort Univ ersit y Corp ora
tion for A tmospheric Researc h Univ ersit y of Colorado
L Cardelli A Language with Distributed Scop e In
Pr o c e e dings of A CM Principles of Pr o gr amming L an
guages
A Courtney Phan tom An In terpreted Language for
Distributed Programming In Pr o c e e dings of USENIX
Confer enceon Obje ctOriente dT e chnolo gies D R Engler M F Kaasho ek and J OT o ole
Exok ernel An Op erating System Arc hitecture for
ApplicationLev el Resource Managemen t In Pr o c e e d
ings of the th A CM Symp osium on Op er ating System
Principles Decem b er R Pik e et al Inferno la Commedia In terattiv a
h ttpinfernob elllabscom
S Flo yd V Jacobson S McCanne ChingGung Liu
and Lixia Zhang A Reliable Multicast F ramew ork for
Ligh tW eigh t Sessions and Application Lev el F raming
In Pr o c e e dings of the A CM SIGCOMM Aug
Sun Microsystems Inc The Ja v atm Language En vi
ronmen t A White P ap er Sun Microsystems Inc The Ja v a Beanstm A Com
ponentArc hitecture for Ja v a Decem b er Tie Liao W ebCanal A Multicast W eb Application
In Pr o c e e dings of the Sixth International W orld Wide
W eb Confer enc e San ta Clara CA April Institute of Electrical and Electronics Engineers
Proto cols for Distributed In teractiv e Sim ulation
ANSIIEEE Standard Przem yslawP ardy ak and Brian N Bershad Dynamic
Binding for an Extensible System In Pr o c e e dings of the
Se c ond USENIX Symp osium on Op er ating Systems De
sign and Implementation pages Seattle W A
Octob er G V an Rossum Python T utorial
H Sc h ulzrinne S Casner R F rederic k and V Jacob
son R TP A T ransp ort Proto col for RealTime Appli
cations Request for Commen ts In ternic Direc
tory Services Jan uary J M Smith D J F arb er C A Gun ter S M Nettles
D C F eldmeier and W D Sincoskie Switc h W are A c
celerating Net w ork Ev olution White P ap er Univ ersit y
of P ennsylv ania Ric hard Sno dgrass The Interfac e Description L an
guage Denition and Use Computer Science Press
New Y ork NY Colusa Soft w are Omniw are A Univ ersal Substrate for
Mobile Co de White P ap er
K Sulliv an and D Notkin Reconciling En vironmen t
In tegration and Soft w are Ev olution A CM T r ans
actions on Softwar e Engine ering and Metho dolo gy July D L T ennenhouse and D J W etherall T o w ards an
A ctiv e Net w ork Arc hitecture A CM Sigc omm Com
puter Communic ation R eview pages April J E White T elescript T ec hnology Mobile Agen ts
White P ap er Y Y emini and S da Silv a T o w ards Programmable Net
w orks In Pr o c e e dings of the IFIPIEEE International
W orkshop on Distribute d Systems Op er ations and Man
agement Italy Oct
Abstract (if available)
Linked assets
Computer Science Technical Report Archive
Conceptually similar
PDF
USC Computer Science Technical Reports, no. 603 (1995)
PDF
USC Computer Science Technical Reports, no. 677 (1998)
PDF
USC Computer Science Technical Reports, no. 706 (1999)
PDF
USC Computer Science Technical Reports, no. 723 (2000)
PDF
USC Computer Science Technical Reports, no. 745 (2001)
PDF
USC Computer Science Technical Reports, no. 704 (1999)
PDF
USC Computer Science Technical Reports, no. 774 (2002)
PDF
USC Computer Science Technical Reports, no. 631 (1996)
PDF
USC Computer Science Technical Reports, no. 692 (1999)
PDF
USC Computer Science Technical Reports, no. 732 (2000)
PDF
USC Computer Science Technical Reports, no. 697 (1999)
PDF
USC Computer Science Technical Reports, no. 750 (2001)
PDF
USC Computer Science Technical Reports, no. 731 (2000)
PDF
USC Computer Science Technical Reports, no. 682 (1998)
PDF
USC Computer Science Technical Reports, no. 670 (1998)
PDF
USC Computer Science Technical Reports, no. 690 (1998)
PDF
USC Computer Science Technical Reports, no. 686 (1998)
PDF
USC Computer Science Technical Reports, no. 852 (2005)
PDF
USC Computer Science Technical Reports, no. 825 (2004)
PDF
USC Computer Science Technical Reports, no. 673 (1998)
Description
Ramesh Govindan, Cengiz Alaettinoglu, Deborah Estrin. "A framework for active distributed services." Computer Science Technical Reports (Los Angeles, California, USA: University of Southern California. Department of Computer Science) no. 669 (1998).
Asset Metadata
Creator
Alaettinoglu, Cengiz
(author),
Estrin, Deborah
(author),
Govindan, Ramesh
(author)
Core Title
USC Computer Science Technical Reports, no. 669 (1998)
Alternative Title
A framework for active distributed services (
title
)
Publisher
Department of Computer Science,USC Viterbi School of Engineering, University of Southern California, 3650 McClintock Avenue, Los Angeles, California, 90089, USA
(publisher)
Tag
OAI-PMH Harvest
Format
9 pages
(extent),
technical reports
(aat)
Language
English
Unique identifier
UC16270397
Identifier
98-669 A Framework for Active Distributed Services (filename)
Legacy Identifier
usc-cstr-98-669
Format
9 pages (extent),technical reports (aat)
Rights
Department of Computer Science (University of Southern California) and the author(s).
Internet Media Type
application/pdf
Copyright
In copyright - Non-commercial use permitted (https://rightsstatements.org/vocab/InC-NC/1.0/
Source
20180426-rozan-cstechreports-shoaf
(batch),
Computer Science Technical Report Archive
(collection),
University of Southern California. Department of Computer Science. Technical Reports
(series)
Access Conditions
The author(s) retain rights to their work according to U.S. copyright law. Electronic access is being provided by the USC Libraries, but does not grant the reader permission to use the work if the desired use is covered by copyright. It is the author, as rights holder, who must provide use permission if such use is covered by copyright.
Repository Name
USC Viterbi School of Engineering Department of Computer Science
Repository Location
Department of Computer Science. USC Viterbi School of Engineering. Los Angeles\, CA\, 90089
Repository Email
csdept@usc.edu
Inherited Values
Title
Computer Science Technical Report Archive
Coverage Temporal
1991/2017
Repository Email
csdept@usc.edu
Repository Name
USC Viterbi School of Engineering Department of Computer Science
Repository Location
Department of Computer Science. USC Viterbi School of Engineering. Los Angeles\, CA\, 90089
Publisher
Department of Computer Science,USC Viterbi School of Engineering, University of Southern California, 3650 McClintock Avenue, Los Angeles, California, 90089, USA
(publisher)
Copyright
In copyright - Non-commercial use permitted (https://rightsstatements.org/vocab/InC-NC/1.0/