rograms-EarlyExperiencewithaDistributedComputation

download rograms-EarlyExperiencewithaDistributedComputation

of 9

Transcript of rograms-EarlyExperiencewithaDistributedComputation

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    1/9

    C O M P U T I N GP R A C T I C E S

    T h e " W o r m " Pro gram s Early E x p e r i e n c ew i t h a D i s t r i b u t e d C o m p u t a t i o nJohn F . Shoch and Jon A . HuppX e r o x P a l o A l t o R e s e a r c h C e n t e r

    I g u e s s y o u a l l k n o w a b o u t t a p e w o r m s . . . ?G o o d . W e l l , w h a t I t u r n e d l o o s e in t h e n e ty e s t e r d a y w a s t h e . . , f a t h e r a n d m o t h e r o fa ll t a p e w o r m s . . .M y n e w e s t - m y m a s t e r p i e c e - b r e e d s b y i t-s e l f . . . .B y n o w I d o n ' t k n o w e x a c t l y w h a t t h e r e isi n t h e w o r m . M o r e b i t s ar e b e i n g a d d e da u t o m a t i c a l l y a s i t w o r k s i t s w a y t o p l a c e sI n e v e r d a r e d g u e s s e x i s t e d . . .A n d - n o , i t c a n ' t b e k i l l e d . I t 's i n d e f i n i t e l ys e l f - p e r p e t u a t i n g s o l o n g a s t h e n e t e x i s t s .E v e n i f o n e s e g m e n t o f i t is i n a c t i v a t e d , ac o u n t e r p a r t o f t h e m i s s i n g p o r t i o n w i l l re -m a i n i n s t o re a t s o m e o t h e r s t a t i o n a n d t h ew o r m w i l l a u t o m a t i c a l l y s u b d i v i d e a n ds e n d a d u p l i c a t e h e a d t o c o l l e c t t h e s p a r eg r o u p s a n d r e st o r e t h e m t o t h e i r p r o p e rp l a c e .

    - - J o h n B r u n n e r , The Shockwave RiderB a l l a n t i n e , N e w Y o r k , 1 97 5

    1 . I n t r o d u c t i o nI n T h e S h o c k w a v e R i d e r , J . B r u n -

    n e r d e v e l o p e d t h e n o t i o n o f a n o m -n i p o te n t " t a p e w o r m " p r o g r a m r u n -n i n g l o o s e t h r o u g h a n e t w o r k o fc o m p u t e r s - - a n i d e a w h ic h m a ys e e m r a t h e r d i s t u r b i n g , b u t w h i c h i sA n e a r l i e r v e r s i o n o f t h i s p a p e r w a s p r e p a r e df o r t h e W o r k s h o p o n F u n d a m e n t a l I s s u e s i nD i s t ri b u te d C o m p u t in g , A C M / S I G O P S a n dA C M / S I G P L A N , P a la M e s a R e s or t, D e c e m -be r 1980.A u t h o r s ' p r e s e n t a d d r e s s : J . F . S h o c h a n d J . A .H u p p , X e r o x C o r p o r a t i o n , P a l o A l t o R e s e a r c hC e n t e r , 3 3 3 3 C o y o t e H i l l R o a d , P a l o A l t o , C A9 4 3 0 4 .P e r m i s s i o n t o c o p y w i t h o u t f e e al l o r p a r t o ft h i s m a t e r i a l i s g r a n t e d p r o v i d e d t h a t t h e c o p -i e s a r e n o t m a d e o r d i s t r i b u t e d f o r d i r e c tc o m m e r c i a l a d v a n t a g e , t h e A C M c o p y r i g h tn o t i c e a n d t h e t i tl e o f t h e p u b l i c a t i o n a n d i t sd a t e a p p e a r , a n d n o t i c e i s g i v e n t h a t c o p y i n gi s b y p e r m i s s i o n o f t h e A s s o c i a t i o n f o r C o m -p u t i n g M a c h i n e r y . T o c o p y o t h e r w i s e , o r t or e p u b l i s h , r e q u i r e s a f e e a n d / o r s p e c i f i c p e r -m i s s i o n . 1 9 8 2 A C M 0 0 0 1 - 0 7 8 2 / 8 2 / 0 3 0 0 - 0 1 7 2 7 5 .17 2

    S U M M A R Y : T h e " w o r m " p r o g r a m s w e r e a n e x p e r im e n t int h e d e v e l o p m e n t o f d i s t r ib u t e d c o m p u t a t i o n s : p r o g r a m s t h a tspan mach i ne bounda r i es and a l so rep l i ca t e t hemse l ves i ni dl e m a c h i n e s . A " w o r m " i s c o m p o s e d o f m u l t ip l e " s e g -m e n t s , " e a c h r u n n i n g o n a d i f fe r e n t m a c h i n e . T h e u n d e r l y in gw o r m m a i n t e n a n c e m e c h a n i s m s a r e r e s p o n s i b l e f o r m a i n t a i n -in g t he w o r m m f i n d i n g f re e m a c h i n e s w h e n n e e de d a n d r e p -l i ca t i ng t he p rog ram f o r each add i t i ona l segmen t . T hese t ech -n i ques we re success f u l l y used t o suppo r t seve ra l r ea l app l i -ca t i ons , r ang i ng f r om a s i mp l e mu l t i mach i ne t es t p rog ram t oa more soph i s t i ca t ed rea l - t i me an i ma t i on sys t em ha rness i ngmu l t i p l e mach i nes .

    a l so q u i te b e y o n d o u r c u r r e n t c a p a -b i l i t i e s . T h e b a s i c m o d e l , h o w e v e r ,r e m a i n s a v e r y p r o v o c a t i v e o n e : ap r o g r a m o r a c o m p u t a t i o n t h a t c a nm o v e f r o m m a c h i n e t o m a c h i n e , h a r -n e s s i n g r e s o u r c e s a s n e e d e d , a n d r e p -l i c a t in g i t s e l f w h e n n e c e s s a r y .

    I n a s i m i l a r v e i n , w e o n c e d e -s c r ib e d a c o m p u t a t i o n a l m o d e l b a s e du p o n t h e c l a s s i c sc i e n c e - f ic t i o n f i lm ,T h e B l o b : a p r o g r a m t h a t s t a rt e d o u tr u n n i n g i n o n e m a c h i n e , b u t a s it sa p p e t i t e f o r c o m p u t i n g c y c le s g re w ,i t c o u l d r e a c h o u t , f i n d u n u s e d m a -c h i ne s , a n d g r o w t o e n c o m p a s s t h o s er e s o u r c e s . I n t h e m i d d l e o f t h e n i g h t ,s u c h a p r o g r a m c o u l d m o b i l i z eh u n d r e d s o f m a c h i n e s i n o n e b u il d -C R C a t e g o r i e s a n d S u b j e c t D e s c r i p t o r s : C . 2 . 4a n d C . 2 . 5 [Computer Comnmnication N e t -w o r k s] : D i s t r i b u t e d S y s t e m s a n d L o c a l N e t -w o r k s .G e n e r a l T e r m s : D e s i g n , E x p e r i m e n t a t i o n .A d d i t i o n a l K e y W o r d s a n d P h r a s e s : m u l ti -m a c h i n e p r o g r a m s , E t h e r n e t l o ca l n e t w o r k ,P u p i n t e r n e t w o r k a r c h i t e c t u r e .C o m m u n i c a t i o n so ft h e A C M

    i n g ; i n t h e m o r n i n g , a s u s e r s r e -c l a i m e d t h e i r m a c h i n e s , th e " b l o b "w o u l d h a v e t o r e t r e a t i n a n o r d e r l ym a n n e r , g a t h e r i n g u p t h e i n t e r m e -d i a t e r e s u l t s o f i ts c o m p u t a t i o n .H o l e d u p i n o n e o r t w o m a c h i n e sd u r i n g t h e d a y , th e p r o g r a m c o u l de m e r g e a g a i n l a t e r a s r e s o u r c e s b e -c a m e a v a i l a b le , a g a i n e x p a n d i n g t h ec o m p u t a t i o n . ( T h i s a f f in i t y f o r n ig h t -t i m e e x p l o r a t i o n l e d o n e r e s e a r c h e rt o d e s c r i b e t h e s e a s " v a m p i r e p r o -g r a m s . " )

    T h e s e k i n d s o f p r o g r a m s r e p r e -s e n t o n e o f t h e m o s t i n t e r e s t i n g a n dc h a l le n g i n g f o r m s o f w h a t w a s o n c ec a l l e d d i s t r ib u te d c o m p u t in g . U n f o r -t u n a t e l y , t h a t p a r t i c u l a r p h r a s e h a sa l r e a d y b e e n c o - o p t e d b y t h o s e w h om a r k e t f a i r l y o r d i n a r y t e r m i n a l s y s -t e m s ; t h u s , w e p r e f e r t o c h a r a c t e r i z et h e s e a s p r o g r a m s w h i c h s p a n m a -c h in e b o u n d a r ie s o r d i s t r i b u t e d c o m -p u ta t io n s .M a r c h 1 9 8 2V o l u m e 2 5N u m b e r 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    2/9

    I n r e c e n t y e a r s , it h a s b e c o m ep o s s i b l e t o p u r s u e t h e s e i d e a s i nn e w l y e m e r g i n g , r i c h e r c o m p u t i n ge n v i r o n m e n t s : l a r g e n u m b e r s o fp o w e r f u l c o m p u t e r s , c o n n e c t e d w i t ha l o ca l c o m p u t e r n e t w o r k a n d a f u l la r c h i te c t u r e o f in t e r n e t w o r k p r o t o -c o l s , a n d s u p p o r t e d b y a d i v e r s e s e to f s p e c i a l iz e d n e t w o r k s e r v e rs .A g a i n s t t h i s b a c k g r o u n d , w e h a v eu n d e r t a k e n t h e d e v e l o p m e n t a n d o p -e r a t i o n o f s e v e r a l re a l , m u l t i m a c h i n e" w o r m " p r o g r a m s ; t h is p a p e r r e p o r t so n t h o s e e f f o r t s

    I n t h e f o l l o w i n g s e c t i o n s , w e d e -s c r ib e t h e m o d e l f o r t h e w o r m p r o -g r a m s , h o w t h e y c a n b e c o n t r o l l e d ,a n d h o w t h e y w e r e im p l e m e n t e d . W et h e n b r i e f l y d i sc u s s f i v e s p e c i f ic a p -p l i c a t i o n s w h i c h h a v e b e e n b u i l tu p o n t h e s e m u l t i m a c h i n e w o r m s .

    T h e p r i m a r y f o c u s o f th i s e f fo r th a s b e e n o b t a i n i n g r e a l e x p e r i e n c ew i t h t h e s e p r o g r a m s . O u r w o r k d i dn o t s t a r t o u t s p e c i f i c a l ly a d d r e s s i n gf o r m a l c o n c e p t u a l m o d e l s , v e r if i a b lec o n t r o l a l g o r i t h m s , o r l a n g u a g e f e a -t u r e s f o r d i s t r i b u t e d c o m p u t a t i o n ,b u t o u r e x p e r i e n c e p r o v i d e s s o m ei n t e r e s t i n g i n s i g h t s o n t h e s e q u e s -t i o n s a n d h e l p s t o f o c u s a t t e n t i o n o ns o m e f r u i t f u l a r e a s f o r f u r t h e r r e -s e a r c h .2 . B u i l d i n g a W o r m

    A worm i s s i m p l y a c o m p u t a t i o nw h i c h l i v e s o n o n e o r m o r e m a c h i n e s( s e e F i g u r e 1 ) . T h e p r o g r a m s o n in -d i v i d u a l c o m p u t e r s a r e d e s c r i b e d a st h e segments o f a w o r m ; i n th e s i m -p l e s t m o d e l e a c h s e g m e n t c a r r i e s an u m b e r i n d i ca t in g h o w m a n y t o t alm a c h i n e s s h o u l d b e p a r t o f t h e o v e r -a l l w o r m . T h e s e g m e n t s i n a w o r mr e m a i n i n c o m m u n i c a t i o n w i t h e a c ho t h e r ; s h o u l d o n e s e g m e n t f a i l , t h er e m a i n i n g p i e c e s m u s t f i n d a n o t h e rf r e e m a c h i n e , i n i t i a l i z e i t , a n d a d d i tt o th e w o r m . A s s e g m e n t s ( m a c h i n e s )j o i n a n d t h e n l e a v e t h e c o m p u t a t i o n ,t h e w o r m i t se l f s e e m s t o m o v et h r o u g h t h e n e t w o r k . I t is im p o r t a n tt o u n d e r s t a n d t h a t th e w o r m m e c h -a n i s m i s u s e d t o g a t h e r a n d m a i n t a i nt h e s e g m e n t s o f t h e w o r m , w h i l e a c -t u a l u s e r p r o g r a m s a r e t h e n b u i lt o nt o p o f t hi s m e c h a n i s m .

    I n i t ia l c o n s t r u c t i o n o f t h e w o r m173

    A nEtherneto c a lnetwork

    \~ S -se g m e ntw o rm ~ - ] ~ \ y ~

    / A I I / ~ ' -A 3-segment worm I/ f - - 7 t i - -q /; DA ~s e ~m ~2 o r m L -~ ~ '7 " " ~A nAlto omputerFig.1. Schem aticfS e v e r a l M u l t is e g m e n t W o r m P r o g ra m s .

    p r o g r a m s w a s s i m p l i f i e d b y t h e u s eo f a ri c h b u t f a i rl y h o m o g e n e o u sc o m p u t i n g e n v i r o n m e n t a t t h e X e r o xP a l o A l t o R e s e a r c h C e n t e r . T h i s i n -c l u d e s o v e r 1 00 A l t o c o m p u t e r s [ 1 0] ,e a c h c o n n e c t e d t o a n E t h e r n e t l o c a ln e t w o r k [ 4, 6 ]. I n a d d i t i o n , t h e r e i s ad i v e r s e s e t o f s p e c ia l i z e d n e t w o r ks e r v e r s , i n c l u d i n g f i l e s y s t e m s , p r i n t -e rs , b o o t -s e r v e rs , n a m e - l o o k u p s e r v -e r s , a n d o t h e r u t i l i t i e s . T h e w h o l es y s t e m i s h e l d t o g e t h e r b y t h e P u pa r c h i te c t u r e o f i n te r n e t w o r k p r o t o -c o l s [ 1 .

    M a n y o f t h e m a c h i n e s r em a i ni d le f o r l e n g t h y p e r i o d s , e s p e c i a l l y a tn i g h t , w h e n t h e y r e g u l a r l y r u n am e m o r y d i a g n o s ti c . I n s t e a d o f v ie w -i n g th i s e n v i r o n m e n t a s 1 0 0 i n d e p e n -d e n t m a c h i n e s c o n n e c t e d t o a n e t -w o r k , w e t h o u g h t o f i t a s a 1 0 0 - e le -m e n t m u l t ip r o c e s s o r, i n s e a r c h o f ap r o g r a m t o r u n . T h e r e i s a f a i r l ys t r a i g h t f o r w a r d s e t o f s t e p s in v o l v e di n b u il d i n g a n d r u n n i n g a w o r m w i t ht h i s s e t o f r e s o u r c e s .Communicationsofthe ACM

    2 . 1 G e n e r a l I s s u e s i nC o n s t r u c ti n g a W o r m P r o g r a m

    A l m o s t a n y p r o g r a m c a n b e m o d -i f ie d t o i n c o r p o r a t e t h e w o r m m e c h -a n i s m s ; a l l o f t h e e x a m p l e s d e s c r i b e db e l o w w e r e w r i t t e n i n B C P L f o r th eA l t o . T h e r e i s , h o w e v e r , o n e v e r yi m p o r t a n t c o n s i d e r a t i o n : s i n c e t h ew o r m m a y a r ri v e th r o u g h t h e E t h -e r n e t a t a h o s t w i t h n o d i s k m o u n t e di n t h e d r i v e , t h e p r o g r a m m u s t n o tt r y t o a c c e s s t h e d i s k . M o r e i m p o r -t a n t , a u s e r m a y h a v e l e f t a d i s ks p i n n i n g i n a n o t h e r w i s e i d l e m a -c h i n e ; w r i t i n g o n s u c h a d i s k w o u l db e v i e w e d a s a p r o f o u n d l y a n t is o c i ala c t . R u n n i n g a w o r m d e p e n d s u p o nt h e c o o p e r a t i o n o f m a n y d i f f e r e n tm a c h i n e u s e r s , w h o m u s t h a v e s o m ec o n f i d e n c e i n t h e j u d g m e n t o f th o s ew r i t in g p r o g r a m s w h i c h m a y e n t e rt h e i r m a c h i n e s . I n o u r w o r k w i t h t h eA l t o , w e h a v e b e e n a b l e t o a s s u r eu s e r s t h a t t h e r e i s n o t e v e n a d i s kd r i v e r i n c l u d e d w i t h i n a n y o f th eMarch 1982Volume 25Number 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    3/9

    C O M P U T I N GP R A C T I C E S

    w o r m p r o g r a m s ; t h u s , t h e r is k t o a n ys p i n n i n g d i s k i s n o w o r s e t h a n t h er i s k a s s o c i a t e d w i t h l e a v i n g t h e d i s ki n p l a ce w h i l e t h e m e m o r y d i a g n o s t i cr u n s . W e h a v e y e t t o i d e n t i f y a s in g l ec a s e i n w h i c h a w o r m p r o g r a m t r i e dt o w r i t e o n a l o c a l d i s k .

    I t i s f e a si b l e , o f c o u r s e , f o r a p r o -g r a m t o a c c e s s s e c o n d a r y s t o r a g ea v a i l a b l e t h r o u g h t h e n e t w o r k , o no n e o f t h e f i l e s e r v e rs .2 . 2 S t a r t i n g a W o r m

    A w o r m p r o g r a m is g e n er a ll y o r-g a n i z e d w i t h s e v e r a l c o m p o n e n t s :s o m e i n i ti a li z a t io n c o d e t o r u n w h e ni t s t a r t s o n t h e f i r s t m a c h i n e ; s o m ei n i t i a l i z a t i o n w h e n i t s t a r t s o n a n y

    s u b s e q u e n t m a c h i n e ; t h e m a i n p r o -g r a m . T h e i n i t i a l p r o g r a m c a n b es t a r te d i n a m a c h i n e b y a n y o f th es t a n d a r d m e t h o d s , i n c l u d i n g l o a d i n gv i a t h e o p e r a t i n g s y s t e m o r b o o t i n gf r o m a n e t w o r k b o o t - s e r v e r .2 . 3 L o c a t i n g O t h e r I d l eM a c h i n e s

    T h e f i r s t t a s k o f a w o r m i s t o f i l lo u t i t s fu l l c o m p l e m e n t o f s eg m e n t s ;t o d o t h a t, i t m u s t f i n d s o m e n u m b e ro f id l e m a c h i n e s . T o a i d i n t h i s p r o -c e s s, a v e r y s i m p l e p r o t o c o l w a s d e -f i n e d : a s p e c i a l p a c k e t f o r m a t i s u s e dt o i n q u i r e i f a h o s t i s f r e e . I f i t is , t h ei d l e h o s t m e r e l y r e t u r n s a p o s i t i v er e p l y . T h e s e i n q u i r ie s c a n b e b r o a d -c a s t t o a l l h o s t s o r t r a n s m i t t e d t os p e c i f i c d e s t i n a t i o n s . S i n c e m u l t i p l ew o r m s m i g h t b e c o m p e t i n g f o r th es a m e i d l e m a c h i n e s , w e h a v e t r i e d tor e d u c e c o n f u s i o n b y u s i n g a s e r ie s o fs p e c i f i c p r o b e s a d d r e s s e d t o i n d i v i d -

    u a l m a c h i n e s A s m e n t i o n e d a b o v e ,m a n y o f th e A l t os r u n a m e m o r yd i a g n o s t i c w h e n o t h e r w i s e u n u s e d ;t h i s p r o g r a m r e s p o n d s p o s i t i v e l yw h e n a s k e d i f i t is i d le .

    V a r i o u s a l t e r n a t i v e s c h e m e s c a nb e u s e d t o d e t e r m i n e w h i c h p o s s i b l eh o s t t o p r o b e n e x t w h e n l o o k i n g f o r 'a n a d d i t i o n a l s e g m e n t I n p r a c t i c e ,w e h a v e e m p l o y e d a v e r y s im p l e p r o -c e d u r e : a s e g m e n t b e g i n s w i t h i t so w n l o c a l h o s t n u m b e r a n d s i m p lyw o r k s i ts w a y u p t h r o u g h t h e a d d r e s ss p a c e . F i g u r e 2 , a n E t h e r n e t s o u r c e -d e s t i n a t i o n t r a f f i c m a t r i x ( s i m i l a r t ot h e o n e i n [ 8 ] ) , i l l u s t r a t e s t h e u s e o ft h is p r o c e d u r e . T h e m i g r a t in g w o r ms h o w s u p a m i d t h e o t h e r n e t w o r kt r a f f i c w i t h a " s t a i r c a s e " e f f e c t . As e g m e n t s e n d s p a c k e t s t o s u c c e s s i v eh o s t s u n t i l f i n d i n g o n e w h i c h i s i d l e ;a t t h a t p o i n t t h e p r o g r a m i s c o p i e dt o t h e n e w s e g m e n t , a n d t h i s h o s tb e g i n s p r o b i n g f o r t h e n e x t s e g m e n t .

    S o u r c e h o s t n u m b e r ( o c t a l )4 0 0 - -

    3 6 0 - -3 4 0 - -3 2 0 -3 0 0 - -2 6 0 - -

    2 4 0 - -

    2 2 0 - -

    2 0 0 - -

    1 6 0 - -

    1 4 0 - -

    1 2 0 - -

    1 O0 -

    60 --

    40 --

    20

    0 --

    1 = 1; - ; , . - -: .

    ; ' 1 " . -

    r '

    FrttI - L . - -I I

    I . I , . L I[ ii i

    rLf * l . *

    I Io 20

    I4O

    I6O

    17 4

    I I

    : , : . ,

    , ' - i - - lP i . - i i , , - - .

    I. . . . i . - . : . . . . . . . . i . . . . . . . . i . . i' i t : , i I I, : 0 ~ : . . . . . I I

    . . t ~ I : : - . ' . I Ii i i i I; : i ; ' i ii i , i . . ' r . = . , . : - I ' l' i : : ' { : - - i i , . , ,- , - I I" I :; ; : ; . '

    . .. .. : . . . . : ' . ~ . ~ r = . -' i. ~ , -: " . . : - : ." . . . . . . . 1 . ; _ i 1 T ' - t I Ii : : l i:~. . . . : ,

    . . . . . . . . :--" - I , - . ' I " , . . . . . . . . . . . . . . 4 ' - I "

    " I I I I

    i '. , i i, , i i

    : : , I I I- - . " 1 . . . . . . . I

    : I I. . . . . . . . . i - ~ . . . . . . . " . . . . . . . . . . :- . " ~ ' . ' - - " : - - - . , " . . . . . . i . . ~I I I I I I I I I I I I I

    1 0 0 1 2 0 1 4 0 1 6 0 2 0 0 220 2 4 0 2 6 0 3 0 0 3 2 0 3 4 0 3 6 0 4 0 0

    D e s t i n a t i o n h o s t n u m b e r ( o c t a l )

    C o m m u n i c a t i o n so ft h e AC M

    F i g 2 . E t h e r n e t S o u r c e - D e s t i n a t i o nT r a f f i c M a t r i x w i t h a " W o r m " R u n -n i n g . ( N o t e t h e " s t a i r c a s e " e f f e c ta s e a c h s e g m e n t s e e k s t h e n e x to n e . )

    March 1982Vo l u m e 2 5Nu m b e r 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    4/9

    2 . 4 B o o t i n g a n I d le M a c h i n eA n i d l e m a c h i n e c a n b e l o c a t e d

    t h r o u g h t h e E t h e r n e t , b u t t h e r e i ss t i l l n o w a y i n w h i c h a n A l t o c a n b ef o r c e d t o r e s t a r t t h r o u g h t h e n e t -w o r k . B y d e s i g n , i t i s n o t p o s s i b l e t or e a c h i n a n d w r e n c h a w a y c o n t r o lf r o m a r u n n i n g p r o g r a m ; i n st e a d , th em a c h i n e m u s t w i l l i n g l y a c c e p t a r e -q u e s t t o r e s t a r t, e i t h e r b y b o o t i n gf r o m i t s l o c a l d i s k o r t h r o u g h t h en e t w o r k .

    A f t e r f i n d i n g a n i d l e m a c h i n e , aw o r m s e g m e n t t h e n a s k s i t t o g ot h r o u g h t h e s t a n d a r d n e t w o r k b o o tp r o c e d u r e . I n t h i s c a s e , h o w e v e r , t h es p e c i f ie d s o u r c e f o r t h e n e w p r o g r a mi s t h e w o r m s e g m e n t i t s e l f . T h u s , w eh a v e t h i s s e q u e n c e :( 1 ) E x i s t i n g s e g m e n t a s k s i f a h o s t

    i s i d l e .( 2 ) T h e h o s t a n s w e r s t h a t i t i s.( 3 ) T h e e x is t i n g s e g m e n t a sk s t h e

    n e w h o s t t o b o o t t h r o u g h t h en e t w o r k , f r o m t h e s e g m e n t .

    ( 4) T h e n e w c o m e r u s e s t h e s t a n -d a r d P u p p r o c e d u r e s f o r r e -q u e s t i n g a b o o t f i l e [ 1 ] .

    ( 5 ) T h e f i l e t r a n s f e r p r o t o c o l i su s e d t o t r a n s f e r t h e w o r m p r o -g r a m t o t h e n e w c o m e r .

    I n g e n e r a l, t h e p r o g r a m s e n t to an e w s e g m e n t i s j u s t a c o p y o f th ep r o g r a m c u r r e n t l y r u n n i n g i n t h ew o r m ; t h i s m a k e s i t e a s y t o t r a n s f e ra n y d y n a m i c s t a t e i n f o r m a t i o n i n t on e w s e g m e n t s . B u t t h e n e w s e g m e n tf i r s t e x e c u t e s a p i e c e o f i n i t i a l i z a t i o nc o d e , a l l o w i n g i t t o r e e s t a b l i s h a n yi m p o r t a n t m a c h i n e - d e p e n d e n t s t a t e( f o r e x a m p l e , t h e n u m b e r o f t h e h o s to n w h i c h i t i s r u n n i n g ) .2 . 5 I n tr a -W o r m C o m m u n i c a t i o n -T h e N e e d f o r M u l ti d e s ti n a U o nA d d r e s s i n g

    A l l se g m e n t s o f th e w o r m m u s ts t a y i n c o m m u n i c a t i o n , i n o r d e r t ok n o w w h e n o n e o f th e ir m e m b e r sh a s d e p a r t e d . I n o u r e x p e r i m e n t s ,e a c h s e g m e n t h a d a f u ll m o d e l o f i tsp a r e n t w o r m - - a l is t o f a ll o t h e r se g -m e n t s . T h i s i s a c l a s s i c s i t u a t i o n i nw h i c h o n e h o s t w a n t s t o s e n d s o m ei n f o r m a t i o n t o a s p e c i f i e d c o l l e c t i o no f h o s t s - - w h a t is k n o w n a s multides-tination addressing o r multicasting( a l s o c a l l e d group addressing) [2, 5].175

    U n f o r t u n a t e l y , t h e e x p e r i m e n t a lE t h e r n e t d e s i g n d o e s n o t d i r e c t l ys u p p o r t a n y e x p li c it f o r m o f m u l t i -c a s t i n g . T h e r e a r e , h o w e v e r , s e v e r a la l t e r n a t i v e s a v a i l a b l e [6 ]:

    ( l ) Pseudo-mul t i cas t 11 ) : A nu n u s e d phys ical h o s t n u m b e r c a n b es e t a s i d e a s a s p e c i a l logical g r o u pa d d r e s s , a n d a l l p a r t i c i p a n t s i n th eg r o u p s e t t h e i r h o s t I D t o t h i s v a l u e .T h i s i s a w o r k a b l e a p p r o a c h ( u s e d i ns o m e e x i s t i n g p r o g r a m s ) , b u t d o e sr e q u i r e a d v a n c e c o o r d i n a t i o n . I n a d -d i t i o n , it c o n s u m e s o n e h o s t I D f o re a c h w o r m .

    (2 ) Brute for ce mult icast: Ac o p y o f th e i n f o r m a t i o n i s s en t t oe a c h o f th e g r o u p ' s o t h e r m e m b e r s .T h i s i s o n e o f t h e t e c h n i q u e s w h i c hw a s u s e d w i t h t h e w o r m s : e a c h s e g -m e n t p e r i o d i c a l l y s e n d s i t s s t a t u s t oa l l o t h e r s e g m e n t s .

    T h e l a t t e r a p p r o c h d o e s r e q u i r es e n d i n g n * ( n - 1 ) p a c k e t s f o r e a c hu p d a t e ; o t h e r t e c h n i q u e s r e d u c e t h et o ta l n u m b e r o f p a ck e t s w h i ch m u s tb e s e n t. M a n y o f t h e w o r m s , h o w -e v e r , w e r e a c t u a l l y q u i t e s m a l l , r e -q u i r in g o r d y t h re e o r f o u r m a c h i n e st o e n s u r e t h a t t h e y w o u l d n o t d i ew h e n o n e m a c h i n e w a s l os t. I n t h e sec a s e s, t h e e x p l i c i t m u l t i c a s t w a s v e r ys a t is f a ct o r y . W h e n a n a p p l i c a t io nn e e d s a s u b s ta n t i a l n u m b e r o f m a -c h i n e s , t h e y c a n b e o b t a i n e d w i t ho n e l a r g e w o r m o r w i t h a s e t o f c o-o p e r a t i n g s m a l l e r w o r m s .

    T h i s s t a t e i n f o r m a t i o n b e i n g e x -c h a n g e d i s u s e d b y e a c h i n d e p e n -d e n t s e g m e n t t o r u n a n a l g o r i t h ms i m i l a r t o t h e o n e f o r u p d a t i n g r o u t -i n g t a b l e s i n s t o r e - a n d - f o r w a r dp a c k e t - s w i t c h e d n e t w o r k s a n d i n t er -n e t w o r k s : i f a h o s t is n o t h e a r d f r o ma f t e r s o m e p e r i o d o f t im e , i t is p r e -s u m e d d e a d a n d e l i m i n a t e d f r o m th et a b l e . T h e r e m a i n i n g s e g m e n t s t h e nc o o p e r a t e t o g i v e o n e m a c h i n e r e -s p o n s i b i l i t y f o r f i n d i n g a n e w s e g -m e n t , a n d t h e p r o c e s s c o n t i n u e s .2 . 6 R e l e a s in g a M a c h i n e

    W h e n a s e g m e n t o f a w o r m i sf i n i s h e d w i t h a m a c h i n e , i t n e e d s t or e t u r n t h a t m a c h i n e t o a n i d l e s t a t e .T h i s i s v e r y s t r a i g h t f o r w a r d : t h e s e g -m e n t i n v o k e s t h e s ta n d a r d n e t w o r kC o m m u n i c a t i o n so ft h e A C M

    b o o t p r o c e d u r e t o re l o a d t h e m e m o r yd i a g n o s t i c p r o g r a m , t h a t t e s t i s r e -s u m e d , a n d t h e m a c h i n e i s a g a i na v a i l a b l e a s a n i d le m a c h i n e f o r l a t e rr e u s e .

    T h i s a p p r o a c h d o e s r e s u l t i ns o m e u n f o r t u n a t e b e h a v i o r s h o u l d am a c h i n e c r a sh , e i t h e r w h i le r u n n i n gt h e s e g m e n t o r w h i l e t r y i n g t o r e b o o t .W i t h n o p r o g r a m r u n n i ng , t h e m a -c h i n e c a n n o t a c c es s th e n e t w o r k a n d ,a s w e s a w , t h e r e i s n o w a y t o r e a c hi n f r o m t h e n e t t o r e s t a r t i t . T h er e s u l t i s a s t o p p e d m a c h i n e , i n a c c e s -s i bl e t o th e w o r m . T h e m a c h i n e i ss t i ll a v a i l a b l e , o f c o u r s e , t o t h e f i r s tu s e r w h o w a l k s u p i t i t .3 . A K e y P r o b l e m : C o n t r o l l in g aW o r m

    N o , M r . S u l l i v a n , w e c a n ' t s t o p i t! T h e r e ' sn e v e r b e e n a w o r m w i t h t h a t t o u g h a h e a d o rt h a t l o n g a t a i l ! I t ' s b u i l d i n g i t s e l f , d o n ' t y o uu n d e r s t a n d ? A l r e a d y i t ' s p a s s e d a b i l l i o n b i t sa n d i t ' s s t i ll g r o w i n g . I t ' s t h e e x a c t i n v e r s e o fa p h a g e - - w h a t e v e r i t t a k e s in , it a d d s t o i t s el fi n s t e a d o f w i p i n g . . . Y e s , s ir ! I ' m q u i t e a w a r et h a t a w o r m o f t h a t t y p e i s t h e o r e t i c a l l y im -poss ib le ! B u t t h e f a c t s t a n d s , h e ' s d o n e i t ; an dn o w i t 's s o g o d d a m n c o m p r e h e n s i v e t h a t itc a n ' t b e k i l l ed . N o t s h o r t o f d e m o l i s h i n g t h en e t !

    - - J o h n B r u n n e r , The Shockwave RiderW e h a v e o n l y b r i e f ly m e n t i o n e d

    t h e b i g g e s t p r o b l e m a s s o c i a t e d w i t hw o r m m a n a g e m e n t : c o n t r o l l i n g i t sg r o w t h w h i l e m a i n t a i n i n g s t a b l e b e -h a v i o r .

    E a r l y i n o u r e x p e r i m e n t s , w e e n -c o u n t e r e d a r a t h e r p u z z l i n g s i t u a -t i o n . A s m a l l w o r m w a s l e f t r u n n i n go n e n i g h t , j u s t e x e r c i s i n g t h e w o r mc o n t r o l m e c h a n i s m a n d u s i n g a s m a l ln u m b e r o f m a c h in e s . W h e n w e r e-t u r n e d t h e n e x t m o r n i n g , w e f o u n dd o z e n s o f m a c h i n e s d e a d , a p p a r e n t l yc r a s h e d . I f o n e r e s t a r t e d t h e r e g u l a rm e m o r y d i a g n o s ti c , it w o u l d r u nv e r y b r i e f l y , t h e n b e s e i z e d b y t h ew o r m . T h e w o r m w o u l d q u i ck l y lo a di ts p r o g r a m i n t o t hi s n e w s e g m e n t ;t h e p r o g r a m w o u l d s t a r t t o r u n a n dp r o m p t l y c r a s h , l e a v i n g t h e w o r mi n c o m p l e t e - - a n d s ti ll h u n g r i l y l o o k -i n g f o r n e w s e g m e n t s .

    W e h a v e s p e c u l a t e d t h a t a c o p yo f th e p r o g r a m b e c a m e c o r r u p t e d a ts o m e p o i n t i n i t s m i g r a t i o n , s o t h a tt h e i n i t i a l i z a t i o n c o d e w o u l d n o t r u nM a r c h 1 9 8 2V o l u m e 2 5N u m b e r 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    5/9

    C O M P U T I N GP R A C T I C E Sp r o p e r l y ; t h i s m a d e i t i m p o s s i b l e f o rt h e w o r m t o e n l i s t a n e w , h e a l t h ys e g m e n t . I n a n y c a s e , s o m e n u m b e ro f w o r m s e g m e n ts w e r e h i d d e na w a y , d e s p e r a t e l y t r y i n g t o r e p l i c a t e ;e v e r y m a c h i n e t h e y t o u c h e d , h o w -e v e r , w o u l d c r a s h . S i n c e t h e b u i l d i n gw e w o r k e d i n w a s q u i t e l a r g e , t h e r ew a s n o h i n t o f w h i c h m a c h i n e s w e r es t il l r u n n i n g ; t o c o m p l i c a t e m a t t e r s ,s o m e m a c h i n e s a v a i l a b l e f o r ru n n i n gw o r m s w e r e p h y s i c a l l y l o c a t e d i nr o o m s w h i c h h a p p e n e d t o b e l o c k e dt h a t m o r n i n g s o w e h a d n o w a y t oa b o r t t h e m . A t t h i s p o i n t , o n e b e g i n st o i m a g i n e a s c e n e s t r a i g h t o u t o fB r u n n e r ' s n o v e l - - w o r k e r s r u n n i n ga r o u n d t h e b u i l d i n g , f r u i t l e s s l yt r y in g t o c h a s e t h e w o r m a n d s t o p itb e f o r e i t m o v e s s o m e w h e r e e ls e .

    F o r t u n a t e l y , t h e s i t u a t i o n w a s n o tr e a l l y t h a t g r i m . B a s e d u p o n a n i l l -f o r m e d b u t v e r y r ea l c o n c e r n a b o u ts u c h a n o c c u r r e n c e , w e h a d i n c l u d e da n e m e r g e n c y e s c a p e w i th i n t h ew o r m m e c h a n i s m . U s i n g a n i n d e-p e n d e n t c o n t r o l p r o g r a m , w e w e r ea b l e t o i n j e c t a v e r y s p e c i a l p a c k e ti n t o t h e n e t w o r k , w h o s e s o le j o b w a st o t e l l e v e r y r u n n i n g w o r m t o s t o pn o m a t t e r w h a t e l s e it w a s d o i n g . A l lw o r m b e h a v i o r c e a se d . U n f o r t u -n a t e l y , t h e e m b a r a s s i n g r e s u l t s w e r el e f t f o r a l l to s e e: 1 00 d e a d m a c h i n e ss c a t t e r e d a r o u n d t h e b u i l d i n g .

    T h i s a n e c d o t e h i g h l i g h t s t h e n e e df o r p a r t i c u l a r a t t e n t i o n t o t h e c o n t r o la l g o r i t h m u s e d t o m a i n t a i n t h ew o r m . I n g e n e r a l , th i s d i s t r ib u t e d a l -g o r i t h m i n v o l v e s p r o c e s s i n g i n c o m -i n g s e g m e n t s t a tu s r e p o r t s a n d t a k i n ga c t i o n s b a s e d u p o n t h e m . O n o n eh a n d , y o u m a y h a v e a " h i g h s t r u n gw o r m " : a t t h e l e a s t d i s t u r b a n c e o rw i t h o n e l o s t p a c k e t , i t m a y d e c l a r ea s e g m e n t g o n e a n d s e e k a n e w o n e .I f t h e o l d s e g m e n t i s s ti l l t h e r e , i tm u s t l a t e r b e e x p u n g e d . A l t e r n a -t iv e l y, s o m e c o n t r o l p r o c e d u r e s w e r et o o s l o w i n r e s p o n d i n g t o c h a n g e sa n d w e r e c o n s t a n t l y o p e r a t i n g a t l e s st h a n f u l l s t re n g t h . S o m e w o r m s j u s tw i t h e r e d a n d d i e d , u n a b l e t o176

    p r o m p t l y a c t t o r e b u i l d t h e i r r e -s o u r c e s .

    E v e n w o r s e , h o w e v e r , w e r e t h eu n s t a b l e w o r m s , w h i c h s u d d e n l ys e e m e d t o g r o w o u t o f c o n t r o l , l ik et h e o n e d e s c r i b e d a b o v e . T h i s m e c h -a n i s m i s n o t y e t f u ll y u n d e r s t o o d , b u tw e h a v e i d e n t i f i e d s o m e c i r c u m -s t a n c e s t h a t c a n m a k e a w o r m g r o wi m p r o p e r l y . O n e f a c t o r i s a c l a s s i cf a i l u r e m o d e i n c o m p u t e r c o m m u -n i c a t i o n s s y s t e m s : t h e half-up link (o ro n e - w a y p a t h ) w h e r e h o s t A c a nc o m m u n i c a t e w i t h h o s t B , b u t n o tt h e o th e r w a y a r o u n d . W h e n i n f o r-m a t i o n a b o u t t h e s ta t e o f t h e w o r mi s b e i n g e x c h a n g e d , t h i s m a y r e s u l ti n t w o s e g m e n t s h a v i n g i n c o n s i s te n ti n f o r m a t i o n . O n e h o s t m a y t h i n ke v e r y t h i n g i s f i n e , w h i l e a n o t h e r i n -s i st s t h a t a n e w s e g m e n t i s n e c e s s a r ya n d g o e s o f f t o f i n d i t.

    S h o u l d a n e t w o r k b e p a r t i t i o n e df o r s o m e t im e , a w o r m m a y a l s o s ta r tt o g r o w . C o n s i d e r a t w o - s e g m e n tw o r m , w i t h t h e t w o s e g m e n t s r u n -n i n g o n h o s t s a t o p p o s i t e e n d s o f a nE t h e r n e t c a b l e , w h i c h h a s a r e p e a t e ri n th e m i d d l e . I f s o m e o n e t e m p o r a r -i l y d i s c o n n e c t s t h e r e p e a t e r , e a c hs e g m e n t w i l l a s s u m e t h a t t h e o t h e rh a s d i e d a n d s e e k a n e w p a r t n e r .T h u s , o n e t w o - p a r t w o r m b e c o m e st w o t w o - p a r t w o r m s . W h e n t h e r e -p e a t e r i s t u r n e d b a c k o n , t h e w h o l es y s t e m s u d d e n l y h a s t o o m a n y h o s t sc o m m i t te d t o w o r m p r o g r a m s . S im -i l a r l y , a w o r m w h i c h s p a n s d i f f e r e n tn e t w o r k s m a y b e c o m e p a r t i t i o n e d i ft h e i n t e rm e d i t e g a t e w a y g o e s d o w nf o r a w h i l e a n d t h e n c o m e s b a c k u p .

    I n g e n e r a l , t h e s t a b i l i t y o f th ew o r m c o n t r o l a l g o r i t h m s w a s i m -p r o v e d b y e x c h a n g i n g m o r e i n f o r -m a t i o n , a n d b y u s i n g fu r t h e r c h e c k sa n d e r r o r d e te c t i o n a s t h e p r o g r a m se v a l u a t e d t h e i n f o r m a t i o n t h e y w e r er e c e i v i n g . F o r e x a m p l e , i f a s e g m e n tf o u n d t h a t i t c o n t i n u a l ly h a d t r o u b l er e c e i v i n g s t a t u s r e p o r t s f r o m o t h e rs e g m e n t s , i t w o u l d c o n c l u d e t h a t i tw a s t h e c a u s e o f t h e t r o u b le a n dt h e r e u p o n s e l f - d e s t r u c t .

    F u r t h e r m o r e , a s p e c ia l p r o g r a mw a s d e v e l o p e d t o s e rv e a s a " w o r mw a t c h e r " m o n i t o r i n g t h e l o c a l n e t -w o r k . I f a w o r m s u d d e n l y s t a r t e dg r o w i n g b e y o n d c e r t a i n l i m i t s , t h eCommunicationsofthe ACM

    w o r m w a t c h e r c o u l d a u t o m a t i c a l l yt a k e s t e p s t o r e s t r i c t t h e s i z e o f t h ew o r m o r s h u t it d o w n a l t o g e th e r . I na d d i t io n , t h e w o r m w a t c h e r m a i n -t a i n e d a r u n n i n g l o g r e c o r d i n gc h a n g e s i n t h e s t a t e o f i n d i v i d u a ls e g m e n t s . T h i s i n f o r m a t i o n w a s i n -v a l u a b l e i n l a t e r a n a l y z i n g w h a tm i g h t h a v e g o n e w r o n g w i t h a w o r m ,w h e n , a n d w h y .

    I t s h o u l d b e e v i d e n t f r o m t h e s ec o m m e n t s t h a t th e d e v e l o p m e n t o fd i s t r i b u t e d w o r m c o n t r o l a l g o r i t h m sw i t h l o w d e l a y a n d s t a b l e b e h a v i o ri s a c h a l l e n g i n g a r e a . O u r e f f o r t s t ou n d e r s t a n d t h e c o n tr o l p r o c e d u r e sp a i d o f f , h o w e v e r : a f t e r t h e i n i t i a lt e s t p e r i o d t h e w o r m s r a n f l a w l e s s l y ,u n t i l t h e y w e r e d e l i b e r a t e l y s t o p p e d .S o m e r a n f o r w e e k s , a n d o n e w a sa l l o w e d t o r u n f o r o v e r a m o n t h .4 . A p p l i c a t i o n s U s in g t h eW o r m sI n t h e p r e v i o u s s e c t i on s w e h a v ed e s c r i b e d t h e p r o c e d u r e s f o r s t a r t i n ga n d m a i n t a i n i n g w o r m s ; h e r e w el o o k a t s o m e r e a l w o r m p r o g r a m sa n d a p p l i c a t i o n s w h i c h h a v e b e e nb u i l t .4 . 1 T h e E x i s te n t ia l W o r m

    T h e s i m p l e s t w o r m i s o n e w h i c hr u n s a n u l l p r o g r a m - - i t s s o l e p u r -p o s e i n l i f e i s t o s t a y a l i v e , e v e n i nt h e f a c e o f lo s t m a c h i n e s . T h e r e i sn o s u b s t a n t i v e a p p l i c a t i o n p r o g r a mb e i n g r u n ( a s a s l i g h t e m b e l l i s h m e n t ,t h o u g h , a w o r m s e g m e n t c a n d i s p l a ya m e s s a g e o n th e m a c h i n e w h e r e i ti s r u n n i n g ) .

    T h i s s i m p l e w o r m w a s t h e f ir s to n e w e c o n s t r u c t e d , a n d i t w a s u s e de x t e n s i v e l y a s t h e t e s t v e h i c l e f o rt h e u n d e r l y i n g c o n t r o l m e c h a n i s m s .A f t e r t h e f i rs t s e g m e n t w a s s t a r t e d , i tw o u l d r e a c h o u t , f r e d a d d i t i o n a l f r e em a c h i n e s , c o p y i t s e l f i n to t h e m , a n dt h e n j u s t r e s t. U s e r s w e r e a l w a y s f r e et o r e c la i m t h e i r m a c h i n e s b y b o o t i n gt h e m ; w h e n t h a t h a p p e n e d , t h e c u s -t o m a r y w o r m p r o c e d u r e w o u l d f i n da n d i n c o r p o r a t e a n e w s e g m e n t .

    A s a r u l e , t h o u g h , t h i s p r o c e -d u r e w o u l d o n l y f o r c e t h e w o r m t oc h a n g e m a c h i n e s a t v e r y i n f re q u e n ti n t e r v a l s . T h u s , t h e p r o g r a m w a se q u i p p e d w i t h a n i n d e p e n d e n t s e l f-d e s t r u c t t i m e r : a f t e r a s e g m e n t r a nMarch 1982Volume 25Number 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    6/9

    o n a m a c h i n e f o r s o m e r a n d o m i n-t e r v a l , i t w o u l d j u s t a l l o w i t s e l f t oe x p i r e , r e t u r n i n g t h e m a c h i n e t o a ni d l e s t a t e . T h i s d r a m a t i c a l l y i n -c r e a s e d t h e s e g m e n t d e a t h r a t e , a n de x e r ci s e d t he w o r m r e c o v e r y a n dr e p l i c a t i o n p r o c e d u r e s .4 . 2 T h e B i ll b o ar d W o r m

    W i t h t h e f u n d a m e n t a l w o r mm e c h a n i s m w e l l in h a n d , w e t r ie d t oe n h a n c e i ts im p a c t . A s w e d e s c r ib e d ,t h e E x i s t e n ti a l w o r m c o u l d d i s p l a y as m a l l m e s s a g e; th e " B i l l b o a r d w o r m "a d v a n c e d t h i s i d e a o n e s t e p f u r t h e r ,d i s t r i b u t i n g a f u l l - s iz e g r a p h i c s i m -a g e to m a n y d i f fe r e n t m a c h i n e s . S e v -e r a l a v a i l a b l e g r a p h i c s p r o g r a m su s e d a s t a n d a r d r e p r e s e n t a t i o n f o ra n i m a g e - - p i c t u r e s e i t h e r p r o d u c e df r o m a p r o g r a m o r r e a d i n w i t h as c a n n er . T h e s e i m a g e s c o u l d t h e n b es t o r e d o n a n e t w o r k f i le s e r v e r a n dr e a d b a c k t h r o u g h t h e n e t w o r k f o rd i s p l a y o n a u s e r ' s m a c h i n e .

    T h u s , t h e i n it ia l w o r m p r o g r a mw a s m o d i f i e d s o t h a t w h e n f i r sts t a r t e d , i t c o u l d b e a s k e d t o o b t a i na n i m a g e f r o m o n e o f t h e f il e s e r v e r s.F r o m t h e n o n, t he w o r m w o u l ds p r e a d t h i s i m a g e , d i s p l a y i n g i t o ns c r e e n s t h r o u g h o u t t h e b u i l d i n g .T w o v e r s i o n s o f t h e w o r m u s e d d i f -f e r e n t m e t h o d s t o o b t a i n t h e i m a g ei n e a c h n e w s e g m e n t : t h e f u l l i m a g ec o u l d b e i n c l u d e d i n t he p r o g r a m a si t m o v e d , o r t h e n e w s e g m e n t c o u l db e i n s t r u c t e d t o r e a d a n i m a g e d i -r e c tl y f r o m o n e o f th e n e t w o r k s e r v -e r s .

    W i t h a m e c h a n i c a l s c a n n e r t oc a p t u r e a n i m a g e , t h e B i l l b o a r dw o r m w a s u s e d t o d i s t r i b u t e a" c a r to o n o f t h e d a y " - - a g r ee t in gf o r w o r k e r s a s t h e y a r r i v e d a t t h e i rA l t o s .4 . 3 T h e A l ar m C l o c k W o r m

    T h e t w o e x a m p l e s j u s t d e s c r i b e dr e q u i r e d n o a p p l i c a ti o n - s p e c i f icc o m m u n i c a t i o n a m o n g t h e s e g m e n tso f a w o r m ; w i t h m o r e c o n f i d e n c e i nt h e s y s t e m , w e w a n t e d t o t e s t t h i sc a p a b i l i t y , p a r t i c u l a r l y w i t h a n a p -p l i c a t i o n t h a t r e q u i r e d h i g h r e l i a b i l -i t y . A s a m o t i v a t i n g e x a m p l e w ec h o s e th e d e v e l o p m e n t o f a c o m -p u t e r - b a s e d a l a r m c l o c k w h i c h w a sn o t t i e d to a p a r t i c u l a r m a c h i n e . T h i s177

    p r o g r a m w o u l d a c c e p t s i m p l e r e -q u e s t s t h r o u g h t h e n e t w o r k a n d s i g -n a l a u s e r a t s o m e s u b s e q u e n t t i m e ;i t w a s i m p o r t a n t t h a t t h e s e r v i c e n o tm a k e a m i s t a k e i f a s i ng l e m a c h i n es h o u l d f a il .

    T h e a l a r m c l o ck w a s b u i lt o n t o po f a m u l t i m a c h i n e w o r m . A s e p a r a t eu s e r p r o g r a m w a s w r i t t e n t o m a k ec o n t a c t w i t h a s e g m e n t o f t h e w o r ma n d s e t t h e t i m e f o r a s u b s e q u e n tw a k e - u p . T h e s i g n a l l i n g m e c h a n i s mf r o m t h e w o r m - b a s e d a l a r m c l o c kw a s c o n v o l u t e d , b u t e f f e c t i v e : t h ew o r m c o u l d r e a c h o u t t h r o u g h t h en e t w o r k t o a s e r v e r n o r m a l l y u s e df o r o u t - g o i n g t e r m i n a l c o n n e c t i o n sa n d t h e n p l a c e a c a l l t o t h e u s e r ' st e l e p h o n e !

    T h i s i s a n i n t e r e s t i n g a p p l i c a t i o nb e c a u s e i t n e e d s t o m a i n t a i n i n e a c hs e g m e n t o f t h e w o r m a c o p y o f th ed a t a b a s e - - t h e l is t o f w a k e - u p c a l l st o b e p l a c e d . T h e s t r a t e g y w a s q u i t es i m p l e : e a c h s e g m e n t w a s g i v e n t h ec u r r e n t l i s t w h e n i t f i r s t c a m e u p .W h e n a n e w r e q u e s t a r r i v e d , o n em a c h i n e t o o k r e s p o n s i b i l i t y f o r a c -c e p t i n g t h e r e q u e s t a n d t h e n p r o p a -g a t i n g i t t o th e o t h e r s e g m e n t s . W h e np l a c i n g t h e c a l l , o n e m a c h i n e n o t i -f i e d t h e o t h e r s t h a t i t w a s a b o u t t om a k e t h e c a l l , a n d o n c e c o m p l e t e d ,n o t i f i e d t h e o t h e r s t h a t t h e y c o u l dd e l e t e t h e e n t r y . T h i s w a s , h o w e v e r ,p r i m a r i l y a d e m o n s t r a t i o n o f a m u l -t i m a c h i n e a p p l i c a t i o n , a n d n o t a na t t e m p t t o f u ll y e x p l o r e t h e d o u b l e -c o m m i t p r o t o c o l s o r o t h e r a l g o r it h m st h a t m a i n t a i n t h e c o n s i s t e n c y o f d u -p l i c a t e d a t a b a s e s .

    A l s o n o t e t h a t t h i s w a s t h e f i r s ta p p l i c a t io n i n w h i c h i t w a s i m p o r t a n tf o r a s e p a r a t e u s e r p r o g r a m t o b ea b l e t o f i n d t h e w o r m , i n o r d e r t os c h e d u l e a w a k e - u p . I n t h e a b s e n c eo f a n e f fe c t iv e g r o u p - a d d r e s s i n gt e c h n i q u e , w e u s e d t w o m e t h o d s : t h eu s e r p r o g r a m c o u l d s o l ic i t a r e s p o n s eb y b r o a d c a s t i n g t o a w e l l - k n o w ns o c k e t o n a l l p o s s i b l e m a c h i n e s , o r i tc o u l d m o n i t o r a l l t r a f f ic lo o k i n g f o ra n a p p r o p r i a t e s t a t u s r e p o r t f r o m aw o r m s e g m e n t.4 . 4 M u l t i m a c h i n e A n i m a t i o nU s i n g a W o r m

    S o f a r , t h e e x a m p l e s d e s c r i b e dh a v e u s e d a d i s t r i b u t e d w o r m , w i t hCommunicationsofthe ACM

    n o c e n t r a l c o n t r o l . O n e a l t e r n a t i v ew a y t o u s e a w o r m , h o w e v e r , i s a s ar o b u s t s e t o f m a c h i n e s s u p p o r t i n g ap a r t i c u l a r a p p l i c a t i o n - - a n a p p l i c a -t i o n t h a t m a y i t s e lf b e t i e d t o ad e s i g n a t e d m a c h i n e . A n e x a m p l ew h i c h w e h a v e e x p l o r e d i s th e d e v e l -o m e n t o f a m u l t i m a c h i n e s y s t e m f o rr e a l - t i m e a n i m a t i o n . I n t h i s c a s e ,t h e r e i s a s i n g l e c o n t r o l n o d e o r m a s -t e r w h i c h i s c o n t r o ll i n g t h e c o m p u -t a t i o n a n d p l a y i n g b a c k t h e a n i m a -t i o n ; t h e m u l t i p l e m a c h i n e s i n t h ew o r m a r e u s e d i n p a r a ll e l to p r o d u c es u c c e s s i v e f r a m e s i n t h e s e q u e n c e ,r e t u r n i n g t h e m t o th e c o n t r o l n o d ef o r d i s p l a y .

    T h e m a s t e r n o d e i n i t ia l l y u s e s t h ew o r m m e c h a n i s m s t o a c q u i r e a se t o fm a c h i n e s . I n o n e a p p r o a c h , t h e m a s -t e r f i r s t d e t e r m i n e s h o w m a n y m a -c h i n e s a r e d e s i r e d a n d t h e n r e c r u i t st h e m w i t h o n e l a rg e w o r m . A s w ej u s t d i s c u s s e d , h o w e v e r , a s i n g l el a r g e w o r m m a y b e s l o w t o g e ts t a r t e d a s i t s e q u e n t i a l l y l o o k s f o ri d le m a c h i n e s , a n d i t m a y b e u n -w i e l d y t o m a i n t a i n . I n s t e a d o f u s i n go n e l a r g e w o r m t o s u p p o r t t h e a n i -m a t i o n , t h e m a s t e r s p a w n s o n e w o r mw i t h i n s tr u c t io n o n h o w m a n y o t h e rw o r m s t o g a th e r . T h i s s t a r ti n g w o r ml a u n c he s s o m e n u m b e r o f s e c o n d a ryw o r m s , w h i c h i n t u r n a c q u i r e t h e i rf u ll c o m p l e m e n t o f s e g m e n t s ( in t h i se x p e r i m e n t , t h r e e s e g m e n t s p e rw o r m ) . T h u s , o n e c a n v e r y r a p i d l yc o l l e c t a s e t o f m a c h i n e s r e s p o n d i n gt o t h e m a s t e r ; t h is c o l l e c t i o n o f m a -c h i n e s i s s t i l l m a i n t a i n e d b y t h e i n -d i v i d u a l w o r m p r o c e d u r e s .

    E a c h w o r m s e g m e n t t h e n b e -c o m e s a " g r a p h i c s m a c h i n e " w i t h ap o i n t e r b a c k t o th e m a s t e r , a n d e a c hr e p o r t s in w i t h a n " I ' m a l i v e " m e s -s a g e a f t e r i t i s c r e a t e d ; t h e m a s t e ri t se l f i s n o t p a r t o f a n y w o r m . T h em a s t e r m a i n t a i n s t h e b a s i c m o d e l o ft h e t h r e e - d im e n s i o n a l i m a g e a n dc o n t r o l s t h e s t e p s i n t h e a n i m a t i o n .T o a c t u a l l y p r o d u c e e a c h f r a m e ,t h o u g h , i t o n l y h a s t o s e n d t h e c o o r -d i n a t e s f o r e a c h o b je c t ; t h e " w o r k e r "m a c h i n e t h e n p e r f o r m s t h e h id d e n -l i n e e l i m i n a t i o n a n d h a l f - t o n e s h a d -i n g , c o m p u t i n g t h e f i n i s h e d f r a m e .W i t h t h i s a p p r o a c h , a l l o f t h e w o r ms e g m e n t s w o r k i n p a r a l l e l , p e r f o r m -i n g t h e c o m p u t a t i o n a l l y i n t e n s i v eMarch 1982Volume 25Number 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    7/9

    C O M P U T I N GP R A C T I C E St a s k s . T h e m a s t e r s u p p l i e s d e s c r i p -t i o n s o f t h e i m a g e t o t h e s e g m e n t sa n d l a t e r c a ll s u p o n t h e m t o r e tu r nt h e i r r e s u l t f o r d i s p l a y a s t h e n e x ti m a g e .

    T h e u n d e r l y i n g w o r m m e c h a -n i s m i s u s e d t o m a i n t a i n t h e c o l l e c -t i o n o f g r a p h i c s w o r k e r s ; i f a m a -c h i n e d i s a p p e a r s , t h e w o r m w i l l f i n da n e w o n e a n d u p d a t e t h e li st h e l db y t h e c o n t r o l p r o g r a m . T h e w o r mm a c h i n e s r u n a f a ir l y s i m p l e p r o -g r a m , w i t h n o s p e c i fi c k n o w l e d g ea b o u t t h e a n i m a t i o n i t s e l f . T h e s y s -t e m w a s t e s t e d w i t h s e v e r a l e x a m -p l e s, in c l u d i n g a w a l k t h r o u g h a c a v ea n d a c o l le c t io n o f b o u n c i n g a n dr o t a t i n g c u b e s .

    4 . 5 A D i a g n o s t i c W o r m f o r t h eE t h e r n e t

    T h e c o m b i n a t i o n o f a c e n tr a lc o n t r o l m a c h i n e a n d a m u l t i p a r tw o r m i s a l s o a u s e f u l w a y t o r u nd i s t ri b u t e d d i a g n o s ti c s o n m a n y m a -c h i n e s . W e k n e w , f o r e x a m p l e , t h a tA l t o E t h e r n e t i n t e r f a c e s s h o w e ds o m e p a i r - w i s e v a r i a t i o n i n t h e e r r o rr a t e s e x p e r i e n c e d w h e n c o m m u n i -c a t i n g w i t h c e r t a i n o t h e r m a c h i n e s .T o f u l l y t e s t t h i s , h o w e v e r , w o u l dr e q u i r e r u n n i n g a te s t p r o g r a m i n a lla v a i la b l e m a c h i n e s - - a t e rr ib l y a w k -w a r d t a s k t o s ta r t m a n u a l l y .

    T h e w o r m w a s t h e o b v i o u s t o o l .A c o n t r o l p r o g r a m w a s u s e d t os p a w n a t h r e e - s e g m e n t w o r m , w h i c hw o u l d t h e n f i n d a l l a v a i l a b l e m a -c h i n e s a n d l o a d t h e m w i t h a t e s tp r o g r a m ; t he s e m a c h i n e s w o u l d t h e nc h e c k i n w i t h t h e c e n t r a l c o n t r o l l e ra n d p r e p a r e t o r u n t h e s p e c i fi e d m e a -

    s u r e m e n t s . T e s t s w e r e c o n d u c t e dw i t h a s m a n y a s 8 0 , 9 0 , o r e v e n 1 20m a c h i n e s .

    I n t e s t i n g p a i r - w i s e e r r o r r a t e s ,e a c h m a c h i n e h a d a l is t o f a l l o t h e rp a r t i c ip a n t s a l r e a d y l o a d e d b y t h ew o r m a n d r e g i s t e re d w i t h t h e c o n t ro lp r o g r a m . E a c h h o s t w o u l d s i m p l y tr yt o e x c h a n g e p a c k e t s w i t h e a c h o t h e rm a c h i n e t h o u g h t t o b e a p a r t o f t h et e st . A t t h e e n d o f th e t e s t e a c h m a -c h i n e w o u l d r e p o r t i t s r e s u l t s t o t h ec o n t r o l h o s t - - t h u s i n d i c a t i n g w h i c hp a i r s s e e m e d t o h a v e e r r o r - p r o n e ( o rb r o k e n ) i n t e r f a c e s .

    F i g u r e 3 i s t h e E t h e r n e t s o u r c e -d e s t i n a t io n t r a ff i c m a t r i x p r o d u c e dd u r i n g t h is k i n d o f w o r m - b a s e d t e st .T o s p e e d t h e p r o c e s s o f g a th e r i n g a l la v a i l a b l e m a c h i n e s , a t h r e e - s e g m e n tw o r m w o u l d b e s p a w n e d , a n d t h e ses e g m e n t s c o u l d t h e n w o r k i n p a ra l le l .H o s t 2 1 7 w a s t h e c o n t r o l A l t o , a n d

    S o u r c e h o s t n u m b e r ( o c t a l ]40 03 603 403 2 03 0026 024 022 020 01 601 401 201 00604 0200

    ! ! . ! !.1 ~..=n I i I I i I * i l l |

    . - ; - ~

    i i ii i l| [ li i i] . ! ,| l i B| 1 l| | l | .m ii I i i Il I I I

    I l i l ~ I

    I I I I I l l | i l m l | i l l l n l l m l l i i il i m L - i H n a l i s i. . . . . . . . . . . . . . . . . . . . . . . . . .

    I I I ~ 1 1 I I i l l ~ 1 t i l l I O l l i b. . . . . . . . . . . . . . . . . . . . . . . . . .I i n I I l l I I I i l l i l G i l l I H I I I II i N n l ie i I I e l i H I R a i l i i n n i l l

    t 2 " . " " ; - -" ~'. . . . . . . . . . . . . . . .i i i i I i i i i i i q l l l i i i i %11i i i i i l l i i i i i n i i n i m l i l l l i l ini l l , I l l I U l n l m l l l O m l . i , . i o i l l. . . . . . . . . . . . . . . . . . . . . . . . .I I I I I I I I I I I I B I l I I ~ I I B I I I I

    rI I I F i l l l l i l i i l i l ~ I i l I B ~ B I il l

    ! ! ! ! !! ! ! ! n ! l ! l ! ! . q ! ! !!I I I I I I I I I l i B i l l l n l I I l l I I Io i i o i o P ~ . . . . + . . . .

    I l l l i l l r l I l l l i m l i l i l l l i l I I II | | L r i ll I l l l l i l l l l l l m l I I I mdl , , l , l l , i n . l l l ILI , l l ,~ i l ~ Hal IPl l . . l l l . l ,, . r , . l' " l ' l i b i l . li ll i, l U l I l lI % 1 P i l l I I i l l i m l B i l l i U l I l l

    IIII I I I I I I ~ 1 1m a i D * | i , i - a , ": : : _ - : : ' . : - - .

    l ll ~ I I I I I I ~ I , : : :m i | L m ! n i i i ~ *

    m i m e * l i i i P ~ *f i i | i l i l l , i ;i i i i l l i i i i i i i ~ l l lI I I I I I I I I r i lI l l l I I I I I I e li i i i i i i i i i . i iI n ln II l l l t l li i i i i i i i i i i iI I I I I I t l I t e li i i i i i I 1 I I I Ii . l, i . i * i i r e , ,n a i l I I I I I I I Il u l l I I I I I I I I

    l U l l n l l m I I | l i i l i l i l l l l l I I I n i l | I I I l l l i l

    1 7 8

    I I I I0 2 0 4 0 6 0

    I I I I I I I I I I I I I1 0 0 1 2 0 1 4 0 1 6 0 2 0 0 2 2 0 2 4 0 2 6 0 3 0 0 3 2 0 3 4 0 3 6 0 4 0 0

    D e s t i n a t i o n h o s t n u m b e r ( o c t a l ]C o m m u n i c a t i o n so ft h e A C M

    F i g. 3 E t h e r n e t S o u r c e - D e s t i n a t io nTr a f f i c M a t r i x W h e n T e s t i n g E t h e r-n e t C o n n e c t i v i ty ( T o t a l n u m b e r o fs o u r c e - d e s t i n a t io n p a i r s = 1 1 , 3 9 6 . )

    M a r c h 1 9 8 2V o l u m e 2 5N u m b e r 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    8/9

    i t f o u n d t h e t h r e e s e g m e n t s f o r i t sw o r m o n h o s t s b e t w e e n 0 a n d 2 0 .T h o s e t h r e e s e g m e n t s t h e n l o c a t e da n d i n i t i a li z e d a l l o f t h e o t h e r p a r t i c -i p a n t s . A s d e s c r i b e d e a r l i e r , a s i m p l el i n e a r s e a r c h t h r o u g h t h e h o s t a d -d r e ss s p a c e i s u s e d b y e a c h s e g m e n tt o i d e n t i f y i d l e m a c h i n e s . T o k e e pt h e m u l t i p l e s e g m e n t s f r o m i n i t i a l l yp i n g i n g t h e s a m e h o s t s , t h e s t a r t i n gp o i n t f o r e a c h s e g m e n t c o u l d b e s e -l e c t e d a t i n t e r v a l s i n t h e a d d r e s ss p a c e . E a c h s e g m e n t d o e s m a k e ac o m p l e t e c y c l e t h r o u g h t h e a d d r e s ss p a ce , h o w e v e r , l o o k i n g c a r e f u l l y f o ra n y i d le m a c h i n e s .

    T o a v o i d a n y u n u s u a l e f f e c t s d u r -i n g t h e c o u r s e o f t h e t e s t i t se l f, t h ew o r m m a i n t e n a n c e m e c h a n i s m w a st u r n e d o f f d u r i n g t h i s p e r io d . I f h o s tsh a d d i e d , t h e w o r m c o u l d l a t e r b er e e n a b l e d , i n a n e f f o r t t o r e b u i l d t h ec o l l e c ti o n o f h o s ts f o r a s u b s e q u e n ttes t .

    A t t h e c o n c l u s i o n o f t h e t e s ts , a l lo f th e m a c h i n e s a r e r e l e a s e d a n d a l -l o w e d t o r e t u r n t o t h e i r p r e v i o u s i d les t a t e - - g e n e r a l l y r u n n i n g t h e m e m -o r y d i a g n o s t i c . T h e s e m a c h i n e sw o u l d b o o t t h a t d i a g n o s t i c t h r o u g ht h e n e t w o r k , f ro m o n e o f t h e n e t w o r kb o o t f il e s e r v e r s; 1 2 0 m a c h i n e s t r y i n gt o d o t h i s a t o n c e , h o w e v e r , c a n c a u s es e v e r e p r o b l e m s . I n p a r t i c u l a r , t h eb o o t s e r v e r b e c o m e s a s c a r c e r e -s o u r c e t h a t m a y n o t b e a b l e to h a n d l ea l l o f t h e r e q u e s t s r i g h t a w a y , a n dt h e e r r o r r e c o v e r y i n t h i s v e r y s i m p l en e t w o r k - b o o t p r o c e d u r e i s n o t f o o l -p r o o f . T h u s , a l l o f t h e p a r t i c i p a n t s i nt h e m e a s u r e m e n t s c o o r d i n a t e t h e i rd e p a r t u r e a t t h e e n d o f a t e st : e a c hh o s t w a it s fo r a q u a s i - r a n d o m p e r i o db e f o r e a c t u a l l y a t t e m p t i n g t o r e b o o tf r o m t h e n e t w o r k b o o t s e r v e r .5 . S o m e H i s to r y : M u l t i m a c h i n eP r o g r a m s o n t h e A r p a n e t

    T h e w o r m p r o g r am s , o f c o u rs e ,w e r e n o t t h e f i r s t m u l t i m a c h i n e e x -p e r i m e n t s . I n d e e d , s o m e o f t h e w o r mf a c i l i t i e s w e r e s u g g e s t e d b y t h em e c h a n i s m s u s e d w i t h in t h e A r p a n e to r d e m o n s t r a t i o n s b u i l t o n t o p o ft h a t n e t w o r k :

    ( 1 ) T h e A r p a n e t r o u t i n g a l g o-r i t h m i t s e l f i s a l a r g e , m u l t i m a c h i n ed i s t r i b u t e d c o m p u t a t i o n , a s t h e I n -179

    t e r f a c e M e s s a g e P r o c e s s o r s ( I M P s )c o n t i n u a l l y e x c h a n g e i n f o r m a t i o na m o n g t h e m s e l v e s . T h e c o m p u t a -t io n s c o n t i n u e t o r u n , a d a p t i n g t o t h el os s o r a r r iv a l o f n e w I M P s . ( I n d e e d ,t h is i s p r o b a b l y o n e o f t h e l o n g e s t-r u n n i n g d i s t r i b u t e d c o m p u t a t i o n s . )

    ( 2 ) I n a s e p a r a t e p r o c e d u r e , t h eA r p a n e t I M P s c a n b e i n d i v i d u a l l yr e l o a d e d t h r o u g h t h e n e t w o r k , f r o ma n e i g h b o r i n g I M P . T h u s , t h e I M Pp r o g r a m m i g r a t e s t h r o u g h t h e A r -p a n e t , a s n e e d e d .

    ( 3 ) I n la t e 1 9 70 , o n e o f t h e e a r -l ie s t m u l t i m a c h i n e a p p l i c a ti o n s u s i n gt h e A r p a n e t t o o k p l a c e , s h a r i n g r e -s o u rc e s a t b o t h H a r v a r d a n d M I T t os u p p o r t a n a i r c r a f t c a r r i e r l a n d i n gs i m u l a t i o n . A P D P - 1 0 a t H a r v a r dw a s u s e d t o p r o d u c e t h e b a s i c s i m u -l a t i o n p r o g r a m a n d 3 - D g r a p h i c sd a t a . T h i s m a t e r i a l w a s t h e n s h i p p e dt o a n M I T P D P - 1 0 , w h e r e t h e p r o -g r a m s c o u l d b e r u n u s i n g t h e E v a n s& S u t h e r l a n d d i s p l a y p r o c e s s o ra v a i l a b l e a t M I T . F i n a l 2 - D i m a g e sp r o d u c e d t h e r e w e r e s h i p p e d t o aP D P - 1 a t H a r v a r d , f o r d is p l a y o n ag r a p h i c s t e r m i n a l . ( A l l o f th i s w a sd o n e i n t h e d a y s b e f o r e t h e r e g u l a rN e t w o r k C o n t r o l P r o g r a m ( N C P )w a s r u n n i n g ; o n e p a r t i c i p a n t h a s r e -m a r k e d t h a t " i t w a s s e v er a l y e a r sb e f o r e t h e N C P s w e r e s u r m o u n t e da n d w e w e r e a g a i n a b l e to c o n d u c t as i m i l a r n e t w o r k g r a p h i c s e x p e r i -m e n t . " )

    ( 4 ) " M c R o s s " w a s a l a t e r m u l -t i m a c h i n e s i m u l a t i o n b u i l t o n t o p o ft h e N C P , s p a n n i n g m a c h i n e b o u n d -a r i e s . T h i s p r o g r a m s i m u l a t e d a i rt r a f f i c c o n t r o l , w i t h e a c h h o s t r u n -n i n g o n e p a r t o f th e s i m u l a t e d a i rs p a c e . A s p l a n e s m o v e d i n t h e s i m -u l a ti o n , th e y w e r e h a n d e d f r o m o n eh o s t t o a n o t h e r .

    ( 5 ) O n e o f t h e f ir s t p r o g r a m s t om o v e b y i ts e lf t h r o u g h t h e A r p a n e tw a s t h e " C r e e p e r , " b u i l t b y B .T h o m a s o f B o lt B e r a n e k a n d N e w -m a n ( B B N ) . I t w a s a d e m o n s t r a t i o np r o g r a m u n d e r T e n e x t h a t w o u l ds t a r t t o p r i n t a f i l e , b u t t h e n s t o p ,f i n d a n o t h e r T e n e x , o p e n a c o n n e c -t i o n , p i c k i t s e l f u p a n d t r a n s f e r t o t h eo t h e r m a c h i n e ( a l o n g w i t h i t s e x t e r -Communicationsofthe ACM

    n a l s t a t e , f i l e s , e t c . ) , a n d t h e n s t a r tr u n n i n g o n t h e n e w m a c h i n e . T h u s ,t h i s w a s a r e l o c a t a b l e p r o g r a m , u s i n go n e m a c h i n e a t a t i m e .

    ( 6) T h e C r e e p e r p r o g r a m l ed t of u r t h e r w o r k , i n c l u d i n g a v e r s i o n b yR . T o m l i n s o n t h at n o t o n l y m o v e dt h r o u g h t h e n e t , b u t a l s o r e p l i c a t e di t s e lf a t t im e s . T o c o m p l e m e n t t h i se n h a n c e d C r e e p e r , t h e " R e a p e r "p r o g r a m m o v e d t h r o u g h t h e n e t ,t r y i n g t o f in d c o p i e s o f C r e e p e r a n dl o g t h e m o u t .

    ( 7) T h e i d e a o f m o v i n g p r o c -e s se s f r o m C r e e p e r w a s a d d e d t o t h eM c R o s s s i m u l a t i o n t o m a k e " r e l o -c a ta b l e M c R o s s . " N o t o n l y w e r ep l a n e s t r a n s f e r r e d a m o n g a i r sp a c es ,b u t e n t i r e a i r s p a c e s i m u l a t o r s c o u l db e m o v e d f r o m o n e m a c h i n e t o a n -o t h e r . O n c e o n t h e n e w m a c h i n e , t h es i m u l a t o r h a d t o r e e s t a b l i s h c o m -m u n i c a t i o n w i t h t h e o t h e r p a r t s o ft h e s i m u l a t io n . D u r i n g t h e m o v e t h i sp a r t o f t h e s i m u l a t o r w o u l d b e s u s -p e n d e d , b u t t h e r e w a s n o l o s s o fs i m u l a t o r f u n c t i o n a li t y .

    T h i s s u m m a r y i s p r o b a b l y n o tc o m p l e t e o r f u l l y a c c u r a t e , b u t i t i sa n i m p r e s s i v e c o l l e c t i o n o f d i s t r ib -u t e d c o m p u t a t i o n s , p r o d u c e d w i t h i no r o n t o p o f th e A r p a n e t . M u c h o ft h i s w o r k , h o w e v e r , w a s d o n e i n t h ee a r l y 7 0 s ; o n e p a r t i c i p a n t r e c e n t l yc o m m e n t e d , " I t 's h a r d f o r m e t o b e -l i e v e t h a t t h i s a l l h a p p e n e d s e v e ny e a r s a g o . " S i n c e t h a t t im e , w e h a v en o t w i t n e s s e d t h e a n t i c i p a t e d b l o s -s o m i n g o f m a n y d i s t r ib u t e d a p p l i c a -t i o n s u s i n g t h e l o n g - h a u l c a p a b i l i t i e so f t h e A r p a n e t.6 . C o n c l u s i o n s

    W e h a v e t h e t o o l s a t h a n d t oe x p e r i m e n t w i t h d i s t r i b u t e d c o m p u -t a t i o n s i n t h e i r f u l l e s t f o r m : d y n a m -i c a ll y a l lo c a t i n g r e s o u r c e s a n d m o v -i n g f r o m m a c h i n e t o m a c h i n e . F u r -t h e r m o r e , l o c a l n e t w o r k s s u p p o r t i n gr e l a ti v e l y l a r g e n u m b e r s o f h o s ts n o wp r o v i d e a r i c h e n v i r o n m e n t f o r th i sk i n d o f e x p e r i m e n t a t i o n . T h e b a s i cw o r m p r o g r a m s d e s c r ib e d h e r e d e m -o n s t r a t e t h e e a s e w i t h w h i c h t h e s em e c h a n i s m s c a n b e e x p l o r e d ; t h e ya l s o h ig h l i g h t m a n y a r e a s f o r f u r t h e rr e s e a r c h .March 1982Volume 25Number 3

  • 8/2/2019 rograms-EarlyExperiencewithaDistributedComputation

    9/9

    C O M P U T I N GP R A C T I C E SAcknowledgments

    T h i s w o r k g r e w o u t o f s o m e e a r l ye f f o r ts t o c o n t r o l m u l t i m a c h i n e m e a -s u r e m e n t s o f E t h e r n e t p e r f o r m a n c e[ 6 , 7 , 8 ] . E . T a f t a n d D . B o g g s p r o -d u c e d m u c h o f th e u n d e r l y i n g so f t-w a r e t h a t m a d e a l l o f t h e se e f f o r tsp o s s ib l e . I n a d d i t i o n , J . M a l e s o n i m -p l e m e n t e d m o s t o f t h e g r a p h i c s s o ft -w a r e n e e d e d f o r t h e m u l t i m a c h i n ea n i m a t i o n ; h i s i m a g i n a t i o n h e l p e dg r e a t l y t o f o c u s o u r e f f o r t o n a v e r yr e a l , u s e f u l , a n d i m p r e s s i v e a p p l i c a -t i o n . W h e n w e f i r s t e x p e r i m e n t e dw i t h m u l t i m a c h i n e m i g r a t o r y p r o -g r a m s , i t w a s S . W e y e r w h o p o i n t e do u t t h e r e l e v a n ce o f J o h n B r u n n e r ' sn o v e l d e s c r i b i n g t h e " t a p e w o r m "p r o g r a m s . ( R e a d e r s i n t e r e s t e d i nb o t h s c i e n c e f i c t i o n a n d m u l t i m a -c h i n e p r o g r a m s m i g h t a l s o w i s h t or e a d The Medusa Conspiracy b yE t h a n I . S h e d le y a n d The Adoles-cence of P-1 by T h o m a s J . R y a n . )F i n a l l y , o u r t h a n k s t o t h e m a n yf r i e n d s w i t h i n t h e A r p a n e t c o m m u -n i t y w h o h e l p e d p i e c e t o g e t h e r o u rb r i e f r ev i e w o f A r p a n e t - r e l a t e d e x -p e r i m e n t s , a n d o u r a p o l o g i e s to a n y -o n e w h o s e w o r k w e o v e r l o o k e d .

    R e f e r e n c e sI . Boggs, D.R. , Shoc h , J .F . , Taf t , E .A. , an dM e t c a l fe , R . M . P U P : A n i n t e r n e t w o r k a r c h i -tec tu re . I EEE T r ans . C om m un . 2 8 , 4 ( A p r i l1 9 8 0 ) . D e sc r i b e s t h e Pu p i n t e r n e t w o r k a r c h i -t e c t u r e , u se d t o t i e t o g e t h e r o v e r 1 , 20 0 m a -c h i n e s o n s e v e r a l d o z e n d i f f e r e n t n e t w o r k s .2 . D a l a i , Y . K . Br o a d c a s t p r o t o c o l s i np a c k e t s w i t c h e d c o m p u t e r n e t w o r k s . T e c h .Re p . 1 2 8 , S t a n f o r d D i g i t a l Sy s t. L a b . , S t a n -f o r d , Ca l i f . , A p r i l 1 9 7 7 . D i sc u ss i o n o f a l t e r -n a t i v e t e c h n i q u e s f o r b r o a d c a s t a d d r e s s i n g .3 . D a l a i , Y . K . , a n d P r i n t i s , R . S . 4 8 - b i t In -t e r n e t a n d E t h e r n e t h o s t n u m b e r s ( t o b ep u b l i s h e d i n t h e P r o c . 7 t h D a t a C o m m .Sy m p . , O c t . 1 9 8 1 ) . D e sc r i b e s t h e u se o fb r o a d c a s t a n d m u l t i c a s t a d d re s s e s in a n i n -t e r n e t d e s ig n , a n d h o w t h i s i n f l u e n c e d t h ed e v e l o p m e n t o f th e E t h e r n e t a d d r e s s i n gs c h e m e .4 . M e t c a l f e , R . M . , a n d Bo g g s , D . R . E t h e r -n e t : D i s t r i b u t e d p a c k e t s w i t c h i n g f o r l o c alc o m p u t e r n e t w o r k s . C o mm . A C M 1 9 , 7 ( J u l y1 9 76 ), 3 9 5 4 0 4 . T h e o r i g i n a l E t h e r n e t p a p e r,d e s c r i b i n g t h e p r i n c i p le s o f o p e r a t i o n a n d e x -p e r i e n c e w i t h t h e E x p e r i m e n t a l E t h e r n e t .5 . S h o c h , J . F . l n t e r n e t w o r k n a m i n g , a d -d r e s s i n g , a n d r o u t i n g . P r o c . 1 7 t h I E E ECo m p . So c . I n t . Co n f . ( Co m p c o n Fa l l ' 7 8 ) ,W a sh i n g t o n , D . C . , Se p t. 1 9 7 8 . G e n e r a l d i s -c u s s i o n o f a d d r e s s i n g m o d e s , i n c l u d i n g t h eu s e o f m u l t i c a s t a d d r e s s in g .6 . Sh o c h , J . F . Loca l C om pu ter N e twor ks .M c G r a w - H i l l , N e w Y o r k ( i n p re s s) . A s u r v e yo f a l t e r n a t iv e l o c a l n e t w o r k s a n d a d e t a i l e dd e s c r i p t i o n o f t h e E t h e r n e t l o c a l n e tw o r k .

    7 . S h o c h , J . F ., a n d H u p p , J . A . P e r f o r m a n c eo f a n E t h e r n e t l o c a l n e t w o r k - a p r e l i m i n a r yr e p o r t. L o c a l A r e a C o m m . N e t w o r k S y m p . ,B o s t o n , M a s s ., M a y 1 9 7 9 ( r e p r i n t e d i n t h eP r o c . 2 0 t h 1 E E E Co m p . So c . I n t . Co n f .( C o m p c o n S p r i n g ' 8 0 ) , S a n F r a n c i s c o , C a l if .,F e b . 1 9 80 ). D e s c r i p t i o n o f t h e m e a s u r e d p e r -f o r m a n c e o f t h e E t h e r n e t .

    8 . S h o c h , J . F ., a n d H u p p , J .A . M e a s u r e dp e r f o r m a n c e o f a n E t h e r n e t l o c a l n e t w o r k .C o m m. A C M 2 3, 12 (Dec . 1980) , 711-721 .D e t a i l e d d i s c u s s io n o f t h e m e a s u r e d p e r -f o r m a n c e o f t h e E t h e r n e t , i n c l u d i n g s e v e r a ls o u r c e - d e s t i n a t io n t r a ff i c g r a p h s s i m i l a r t ot h e o n e s p r e s e n t e d h e r e .

    9 . Sh o c h , J . F . , D a l a i , Y . K . , Cr a n e , R . C . ,a n d R e d e l l , D .D . E v o l u t i o n o f t h e E t h e r n e tl o c a l c o m p u t e r n e t w o r k . X e r o x T e c h . R e p .O P D - T 8 1 - 0 2 , Pa l o A l t o , Ca l i f ., Se p t . 1 9 8 1 .T h e b a s i c p a p e r o n t h e r e v i s e d a n d i m p r o v e dE t h e r n e t S p e c i fi c a ti o n , i n c l u d i n g c o m p a r i -s o n s w i t h t h e o r i g i n a l E x p e r i m e n t a l E t h e r -n e t .

    1 0 . T h a c k e r , C . P . , M c Cr e i g h t , E . M . , L a m p -so n , B . W. , Sp r o u l l , R . F . , a n d Bo g g s , D . R .A l t o : A p e r s o n a l c o m p u t e r . I n C om pu terStructures: Pr inciples an d Exam ples , 2nd edi-tion, Si e w i o r e k , Be l l, a n d N e w e l l , E d s .,M c G r a w - H i l l , N e w Y o r k , 1 9 8 2 , 5 4 9 - 5 7 2 .D e s c r ib i n g t h e A l t o c o m p u t e r - - a h i g h -p e r -f o r m a n c e , s i n g l e - u s e r m a c h i n e - - w h i c h w a su s e d f o r r u n n i n g t h e w o r m p r o g r a m s .

    T h e a t t e n ti o n o f C o m p u t i n g P r ac t ic e s r e a d e rsi s c a l l e d t o a l e t t e r o n s p e l l i n g c h e c k e r s b yR a b e n i n t h e A C M F o r u m , p p . 2 2 0 - 2 2 1 .

    18 0 C o m m u n i c a t i o n so ft h e A C MM a r c h 1 9 8 2V o l u m e 2 5N u m b e r 3