Commit 8e00ea1e authored by Mac Newbold's avatar Mac Newbold

Add the smaller "condensed" version of the arch diagram. Commit the fig

and the ps in doc, and the gif in www/doc/, where it is linked into the
web appropriately.
parent ff7a781f
#FIG 3.2
Portrait
Center
Inches
Letter
100.00
Single
-2
1200 2
0 32 #a6a6a6
0 33 #cfcfcf
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
3300 1950 9000 1950 9000 2250 3300 2250 3300 1950
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
6750 3450 4800 3450 4800 3900 6750 3900 6750 3450
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
6750 2550 9000 2550 9000 3000 6750 3000 6750 2550
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
6750 3000 9000 3000 9000 3450 6750 3450 6750 3000
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
6750 3450 9000 3450 9000 3900 6750 3900 6750 3450
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
4800 2550 6750 2550 6750 3000 4800 3000 4800 2550
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
4800 3000 6750 3000 6750 3450 4800 3450 4800 3000
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
4800 3225 3300 3225 3300 3900 4800 3900 4800 3225
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
3300 2250 9000 2250 9000 2550 3300 2550 3300 2250
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
4800 3225 3300 3225 3300 2550 4800 2550 4800 3225
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 1950 1425 1950 1425 2175 1200 2175 1200 1950
2 2 0 1 33 7 50 0 18 0.000 0 0 -1 0 0 5
1200 2175 1425 2175 1425 2400 1200 2400 1200 2175
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 2175 1425 2175 1425 2400 1200 2400 1200 2175
2 2 0 1 0 7 49 0 -1 0.000 0 0 -1 0 0 5
4725 1500 6000 1500 6000 1950 4725 1950 4725 1500
2 2 0 1 33 7 50 0 18 0.000 0 0 -1 0 0 5
4725 1500 6000 1500 6000 1950 4725 1950 4725 1500
2 2 0 1 0 7 49 0 -1 0.000 0 0 -1 0 0 5
3300 1500 4725 1500 4725 1950 3300 1950 3300 1500
2 2 0 1 33 7 50 0 18 0.000 0 0 -1 0 0 5
3300 1500 4725 1500 4725 1950 3300 1950 3300 1500
2 2 1 1 33 7 50 0 18 4.000 0 0 -1 0 0 5
7575 1500 9000 1500 9000 1950 7575 1950 7575 1500
2 2 0 1 33 7 50 0 41 0.000 0 0 -1 0 0 5
1200 3000 3300 3000 3300 3900 1200 3900 1200 3000
2 2 0 1 33 7 50 0 41 0.000 0 0 -1 0 0 5
1200 1500 1425 1500 1425 1725 1200 1725 1200 1500
2 2 0 1 33 7 50 0 41 0.000 0 0 -1 0 0 5
2250 2550 3300 2550 3300 3000 2250 3000 2250 2550
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
2250 2550 3300 2550 3300 3000 2250 3000 2250 2550
2 2 0 1 33 7 50 0 41 0.000 0 0 -1 0 0 5
1200 2550 2250 2550 2250 3000 1200 3000 1200 2550
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 2550 2250 2550 2250 3000 1200 3000 1200 2550
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 1500 1425 1500 1425 1725 1200 1725 1200 1500
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 3000 3300 3000 3300 3900 1200 3900 1200 3000
2 2 0 1 32 7 50 0 46 0.000 0 0 -1 0 0 5
1200 3900 9000 3900 9000 4500 1200 4500 1200 3900
2 2 0 1 32 7 50 0 46 0.000 0 0 -1 0 0 5
1200 1725 1425 1725 1425 1950 1200 1950 1200 1725
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 3900 9000 3900 9000 4500 1200 4500 1200 3900
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 1725 1425 1725 1425 1950 1200 1950 1200 1725
2 2 1 1 33 7 50 0 18 4.000 0 0 -1 0 0 5
6000 1500 7575 1500 7575 1950 6000 1950 6000 1500
2 2 1 1 0 7 48 0 -1 4.000 0 0 -1 0 0 5
6000 1500 7575 1500 7575 1950 6000 1950 6000 1500
2 2 1 1 0 7 48 0 -1 4.000 0 0 -1 0 0 5
7575 1500 9000 1500 9000 1950 7575 1950 7575 1500
4 1 0 50 0 16 11 0.0000 4 150 1770 5775 3300 Node Monitoring/Control\001
4 1 0 50 0 16 11 0.0000 4 150 1215 6150 2175 Link Management\001
4 1 0 50 0 16 11 0.0000 4 150 1305 6150 2475 Node Management\001
4 1 0 50 0 16 11 0.0000 4 150 1590 7875 3300 Experiment Scheduling\001
4 1 0 50 0 16 11 0.0000 4 120 1350 7875 2850 Resource Allocation\001
4 1 0 50 0 16 11 0.0000 4 120 765 4050 3450 Distributed\001
4 1 0 50 0 16 11 0.0000 4 120 420 4050 3600 Event\001
4 1 0 50 0 16 11 0.0000 4 150 510 4050 3750 System\001
4 1 0 50 0 16 11 0.0000 4 120 540 4050 3000 Control\001
4 1 0 50 0 16 11 0.0000 4 120 675 4050 2850 Run-Time \001
4 1 0 50 0 16 11 0.0000 4 150 1710 5775 3750 Node Self-Configuration\001
4 0 0 50 0 16 11 0.0000 4 120 990 1500 1650 User Interface\001
4 0 0 50 0 16 11 0.0000 4 120 1635 1500 1875 Accounts and Database\001
4 0 0 50 0 16 11 0.0000 4 150 1545 1500 2100 Expt. Config./Control\001
4 0 0 50 0 16 11 0.0000 4 120 720 1500 2325 Back-ends\001
4 1 0 50 0 16 11 0.0000 4 150 1800 7875 3750 Experiment Configuration\001
4 1 0 49 0 16 11 0.0000 4 120 405 1725 2850 Users\001
4 1 0 49 0 16 11 0.0000 4 120 540 2775 2775 Testbed\001
4 1 0 49 0 16 11 0.0000 4 120 510 2775 2970 Admins\001
4 1 0 49 0 16 11 0.0000 4 120 990 2250 3225 User Interface\001
4 1 0 49 0 16 11 0.0000 4 120 705 5400 1800 Wide-Area\001
4 1 0 49 0 16 11 0.0000 4 120 675 3975 1800 Emulation\001
4 1 0 49 0 16 11 0.0000 4 150 780 6825 1800 Multiplexed\001
4 1 0 49 0 16 11 0.0000 4 120 705 8325 1800 Simulation\001
4 1 0 48 0 16 11 0.0000 4 120 990 1800 3750 Command-line\001
4 1 0 48 0 16 11 0.0000 4 120 960 1800 3525 Web Interface\001
4 1 0 48 0 16 11 0.0000 4 120 285 2850 3525 GUI\001
4 1 0 48 0 16 11 0.0000 4 150 765 2850 3750 NS Scripts\001
4 1 0 48 0 16 11 0.0000 4 120 1065 5100 4200 Access Control\001
4 1 0 48 0 16 11 0.0000 4 150 1500 7500 4200 Account Management\001
4 1 0 48 0 16 11 0.0000 4 150 3285 5100 4425 (Integrated in all aspects of the Emulab system)\001
4 1 0 48 0 16 11 0.0000 4 150 1335 2700 4200 Database (MySQL)\001
4 1 0 50 0 16 11 0.0000 4 150 1410 5775 2850 Clearing Node State\001
%!PS-Adobe-2.0
%%Title: tb-arch-diagram-small.ps
%%Creator: fig2dev Version 3.2 Patchlevel 3d
%%CreationDate: Thu May 8 10:46:19 2003
%%For: newbold@kamas (Mac Newbold)
%%Orientation: Portrait
%%Pages: 1
%%BoundingBox: 0 0 612 792
%%BeginSetup
%%IncludeFeature: *PageSize Letter
%%EndSetup
%%Magnification: 1.0000
%%EndComments
/MyAppDict 100 dict dup begin def
/$F2psDict 200 dict def
$F2psDict begin
$F2psDict /mtrx matrix put
/col-1 {0 setgray} bind def
/col0 {0.000 0.000 0.000 srgb} bind def
/col1 {0.000 0.000 1.000 srgb} bind def
/col2 {0.000 1.000 0.000 srgb} bind def
/col3 {0.000 1.000 1.000 srgb} bind def
/col4 {1.000 0.000 0.000 srgb} bind def
/col5 {1.000 0.000 1.000 srgb} bind def
/col6 {1.000 1.000 0.000 srgb} bind def
/col7 {1.000 1.000 1.000 srgb} bind def
/col8 {0.000 0.000 0.560 srgb} bind def
/col9 {0.000 0.000 0.690 srgb} bind def
/col10 {0.000 0.000 0.820 srgb} bind def
/col11 {0.530 0.810 1.000 srgb} bind def
/col12 {0.000 0.560 0.000 srgb} bind def
/col13 {0.000 0.690 0.000 srgb} bind def
/col14 {0.000 0.820 0.000 srgb} bind def
/col15 {0.000 0.560 0.560 srgb} bind def
/col16 {0.000 0.690 0.690 srgb} bind def
/col17 {0.000 0.820 0.820 srgb} bind def
/col18 {0.560 0.000 0.000 srgb} bind def
/col19 {0.690 0.000 0.000 srgb} bind def
/col20 {0.820 0.000 0.000 srgb} bind def
/col21 {0.560 0.000 0.560 srgb} bind def
/col22 {0.690 0.000 0.690 srgb} bind def
/col23 {0.820 0.000 0.820 srgb} bind def
/col24 {0.500 0.190 0.000 srgb} bind def
/col25 {0.630 0.250 0.000 srgb} bind def
/col26 {0.750 0.380 0.000 srgb} bind def
/col27 {1.000 0.500 0.500 srgb} bind def
/col28 {1.000 0.630 0.630 srgb} bind def
/col29 {1.000 0.750 0.750 srgb} bind def
/col30 {1.000 0.880 0.880 srgb} bind def
/col31 {1.000 0.840 0.000 srgb} bind def
/col32 {0.651 0.651 0.651 srgb} bind def
/col33 {0.812 0.812 0.812 srgb} bind def
end
save
newpath 0 792 moveto 0 0 lineto 612 0 lineto 612 792 lineto closepath clip newpath
0.0 576.0 translate
1 -1 scale
% This junk string is used by the show operators
/PATsstr 1 string def
/PATawidthshow { % cx cy cchar rx ry string
% Loop over each character in the string
{ % cx cy cchar rx ry char
% Show the character
dup % cx cy cchar rx ry char char
PATsstr dup 0 4 -1 roll put % cx cy cchar rx ry char (char)
false charpath % cx cy cchar rx ry char
/clip load PATdraw
% Move past the character (charpath modified the
% current point)
currentpoint % cx cy cchar rx ry char x y
newpath
moveto % cx cy cchar rx ry char
% Reposition by cx,cy if the character in the string is cchar
3 index eq { % cx cy cchar rx ry
4 index 4 index rmoveto
} if
% Reposition all characters by rx ry
2 copy rmoveto % cx cy cchar rx ry
} forall
pop pop pop pop pop % -
currentpoint
newpath
moveto
} bind def
/PATcg {
7 dict dup begin
/lw currentlinewidth def
/lc currentlinecap def
/lj currentlinejoin def
/ml currentmiterlimit def
/ds [ currentdash ] def
/cc [ currentrgbcolor ] def
/cm matrix currentmatrix def
end
} bind def
% PATdraw - calculates the boundaries of the object and
% fills it with the current pattern
/PATdraw { % proc
save exch
PATpcalc % proc nw nh px py
5 -1 roll exec % nw nh px py
newpath
PATfill % -
restore
} bind def
% PATfill - performs the tiling for the shape
/PATfill { % nw nh px py PATfill -
PATDict /CurrentPattern get dup begin
setfont
% Set the coordinate system to Pattern Space
PatternGState PATsg
% Set the color for uncolored pattezns
PaintType 2 eq { PATDict /PColor get PATsc } if
% Create the string for showing
3 index string % nw nh px py str
% Loop for each of the pattern sources
0 1 Multi 1 sub { % nw nh px py str source
% Move to the starting location
3 index 3 index % nw nh px py str source px py
moveto % nw nh px py str source
% For multiple sources, set the appropriate color
Multi 1 ne { dup PC exch get PATsc } if
% Set the appropriate string for the source
0 1 7 index 1 sub { 2 index exch 2 index put } for pop
% Loop over the number of vertical cells
3 index % nw nh px py str nh
{ % nw nh px py str
currentpoint % nw nh px py str cx cy
2 index oldshow % nw nh px py str cx cy
YStep add moveto % nw nh px py str
} repeat % nw nh px py str
} for
5 { pop } repeat
end
} bind def
% PATkshow - kshow with the current pattezn
/PATkshow { % proc string
exch bind % string proc
1 index 0 get % string proc char
% Loop over all but the last character in the string
0 1 4 index length 2 sub {
% string proc char idx
% Find the n+1th character in the string
3 index exch 1 add get % string proe char char+1
exch 2 copy % strinq proc char+1 char char+1 char
% Now show the nth character
PATsstr dup 0 4 -1 roll put % string proc chr+1 chr chr+1 (chr)
false charpath % string proc char+1 char char+1
/clip load PATdraw
% Move past the character (charpath modified the current point)
currentpoint newpath moveto
% Execute the user proc (should consume char and char+1)
mark 3 1 roll % string proc char+1 mark char char+1
4 index exec % string proc char+1 mark...
cleartomark % string proc char+1
} for
% Now display the last character
PATsstr dup 0 4 -1 roll put % string proc (char+1)
false charpath % string proc
/clip load PATdraw
neewath
pop pop % -
} bind def
% PATmp - the makepattern equivalent
/PATmp { % patdict patmtx PATmp patinstance
exch dup length 7 add % We will add 6 new entries plus 1 FID
dict copy % Create a new dictionary
begin
% Matrix to install when painting the pattern
TilingType PATtcalc
/PatternGState PATcg def
PatternGState /cm 3 -1 roll put
% Check for multi pattern sources (Level 1 fast color patterns)
currentdict /Multi known not { /Multi 1 def } if
% Font dictionary definitions
/FontType 3 def
% Create a dummy encoding vector
/Encoding 256 array def
3 string 0 1 255 {
Encoding exch dup 3 index cvs cvn put } for pop
/FontMatrix matrix def
/FontBBox BBox def
/BuildChar {
mark 3 1 roll % mark dict char
exch begin
Multi 1 ne {PaintData exch get}{pop} ifelse % mark [paintdata]
PaintType 2 eq Multi 1 ne or
{ XStep 0 FontBBox aload pop setcachedevice }
{ XStep 0 setcharwidth } ifelse
currentdict % mark [paintdata] dict
/PaintProc load % mark [paintdata] dict paintproc
end
gsave
false PATredef exec true PATredef
grestore
cleartomark % -
} bind def
currentdict
end % newdict
/foo exch % /foo newlict
definefont % newfont
} bind def
% PATpcalc - calculates the starting point and width/height
% of the tile fill for the shape
/PATpcalc { % - PATpcalc nw nh px py
PATDict /CurrentPattern get begin
gsave
% Set up the coordinate system to Pattern Space
% and lock down pattern
PatternGState /cm get setmatrix
BBox aload pop pop pop translate
% Determine the bounding box of the shape
pathbbox % llx lly urx ury
grestore
% Determine (nw, nh) the # of cells to paint width and height
PatHeight div ceiling % llx lly urx qh
4 1 roll % qh llx lly urx
PatWidth div ceiling % qh llx lly qw
4 1 roll % qw qh llx lly
PatHeight div floor % qw qh llx ph
4 1 roll % ph qw qh llx
PatWidth div floor % ph qw qh pw
4 1 roll % pw ph qw qh
2 index sub cvi abs % pw ph qs qh-ph
exch 3 index sub cvi abs exch % pw ph nw=qw-pw nh=qh-ph
% Determine the starting point of the pattern fill
%(px, py)
4 2 roll % nw nh pw ph
PatHeight mul % nw nh pw py
exch % nw nh py pw
PatWidth mul exch % nw nh px py
end
} bind def
% Save the original routines so that we can use them later on
/oldfill /fill load def
/oldeofill /eofill load def
/oldstroke /stroke load def
/oldshow /show load def
/oldashow /ashow load def
/oldwidthshow /widthshow load def
/oldawidthshow /awidthshow load def
/oldkshow /kshow load def
% These defs are necessary so that subsequent procs don't bind in
% the originals
/fill { oldfill } bind def
/eofill { oldeofill } bind def
/stroke { oldstroke } bind def
/show { oldshow } bind def
/ashow { oldashow } bind def
/widthshow { oldwidthshow } bind def
/awidthshow { oldawidthshow } bind def
/kshow { oldkshow } bind def
/PATredef {
MyAppDict begin
{
/fill { /clip load PATdraw newpath } bind def
/eofill { /eoclip load PATdraw newpath } bind def
/stroke { PATstroke } bind def
/show { 0 0 null 0 0 6 -1 roll PATawidthshow } bind def
/ashow { 0 0 null 6 3 roll PATawidthshow }
bind def
/widthshow { 0 0 3 -1 roll PATawidthshow }
bind def
/awidthshow { PATawidthshow } bind def
/kshow { PATkshow } bind def
} {
/fill { oldfill } bind def
/eofill { oldeofill } bind def
/stroke { oldstroke } bind def
/show { oldshow } bind def
/ashow { oldashow } bind def
/widthshow { oldwidthshow } bind def
/awidthshow { oldawidthshow } bind def
/kshow { oldkshow } bind def
} ifelse
end
} bind def
false PATredef
% Conditionally define setcmykcolor if not available
/setcmykcolor where { pop } {
/setcmykcolor {
1 sub 4 1 roll
3 {
3 index add neg dup 0 lt { pop 0 } if 3 1 roll
} repeat
setrgbcolor - pop
} bind def
} ifelse
/PATsc { % colorarray
aload length % c1 ... cn length
dup 1 eq { pop setgray } { 3 eq { setrgbcolor } { setcmykcolor
} ifelse } ifelse
} bind def
/PATsg { % dict
begin
lw setlinewidth
lc setlinecap
lj setlinejoin
ml setmiterlimit
ds aload pop setdash
cc aload pop setrgbcolor
cm setmatrix
end
} bind def
/PATDict 3 dict def
/PATsp {
true PATredef
PATDict begin
/CurrentPattern exch def
% If it's an uncolored pattern, save the color
CurrentPattern /PaintType get 2 eq {
/PColor exch def
} if
/CColor [ currentrgbcolor ] def
end
} bind def
% PATstroke - stroke with the current pattern
/PATstroke {
countdictstack
save
mark
{
currentpoint strokepath moveto
PATpcalc % proc nw nh px py
clip newpath PATfill
} stopped {
(*** PATstroke Warning: Path is too complex, stroking
with gray) =
cleartomark
restore
countdictstack exch sub dup 0 gt
{ { end } repeat } { pop } ifelse
gsave 0.5 setgray oldstroke grestore
} { pop restore pop } ifelse
newpath
} bind def
/PATtcalc { % modmtx tilingtype PATtcalc tilematrix
% Note: tiling types 2 and 3 are not supported
gsave
exch concat % tilingtype
matrix currentmatrix exch % cmtx tilingtype
% Tiling type 1 and 3: constant spacing
2 ne {
% Distort the pattern so that it occupies
% an integral number of device pixels
dup 4 get exch dup 5 get exch % tx ty cmtx
XStep 0 dtransform
round exch round exch % tx ty cmtx dx.x dx.y
XStep div exch XStep div exch % tx ty cmtx a b
0 YStep dtransform
round exch round exch % tx ty cmtx a b dy.x dy.y
YStep div exch YStep div exch % tx ty cmtx a b c d
7 -3 roll astore % { a b c d tx ty }
} if
grestore
} bind def
/PATusp {
false PATredef
PATDict begin
CColor PATsc
end
} bind def
% this is the pattern fill program from the Second edition Reference Manual
% with changes to call the above pattern fill
% left30
11 dict begin
/PaintType 1 def
/PatternType 1 def
/TilingType 1 def
/BBox [0 0 1 1] def
/XStep 1 def
/YStep 1 def
/PatWidth 1 def
/PatHeight 1 def
/Multi 2 def
/PaintData [
{ clippath } bind
{ 32 16 true [ 32 0 0 -16 0 16 ]
{<c000c000300030000c000c000300030000c000c000300030
000c000c00030003c000c000300030000c000c0003000300
00c000c000300030000c000c00030003>}
imagemask } bind
] def
/PaintProc {
pop
exec fill
} def
currentdict
end
/P1 exch def
% crosshatch45
11 dict begin
/PaintType 1 def
/PatternType 1 def
/TilingType 1 def
/BBox [0 0 1 1] def
/XStep 1 def
/YStep 1 def
/PatWidth 1 def
/PatHeight 1 def
/Multi 2 def
/PaintData [
{ clippath } bind
{ 32 32 true [ 32 0 0 -32 0 32 ]
{<828282824444444428282828101010102828282844444444
828282820101010182828282444444442828282810101010
282828284444444482828282010101018282828244444444
282828281010101028282828444444448282828201010101
828282824444444428282828101010102828282844444444
8282828201010101>}
imagemask } bind
] def
/PaintProc {
pop
exec fill
} def
currentdict
end
/P6 exch def
/cp {closepath} bind def
/ef {eofill} bind def
/gr {grestore} bind def
/gs {gsave} bind def
/sa {save} bind def
/rs {restore} bind def
/l {lineto} bind def
/m {moveto} bind def
/rm {rmoveto} bind def
/n {newpath} bind def
/s {stroke} bind def
/sh {show} bind def
/slc {setlinecap} bind def
/slj {setlinejoin} bind def
/slw {setlinewidth} bind def
/srgb {setrgbcolor} bind def
/rot {rotate} bind def
/sc {scale} bind def
/sd {setdash} bind def
/ff {findfont} bind def
/sf {setfont} bind def
/scf {scalefont} bind def
/sw {stringwidth} bind def
/tr {translate} bind def
/tnt {dup dup currentrgbcolor
4 -2 roll dup 1 exch sub 3 -1 roll mul add
4 -2 roll dup 1 exch sub 3 -1 roll mul add
4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
bind def
/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
4 -2 roll mul srgb} bind def
/reencdict 12 dict def /ReEncode { reencdict begin
/newcodesandnames exch def /newfontname exch def /basefontname exch def
/basefontdict basefontname findfont def /newfont basefontdict maxlength dict def
basefontdict { exch dup /FID ne { dup /Encoding eq
{ exch dup length array copy newfont 3 1 roll put }
{ exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall
newfont /FontName newfontname put newcodesandnames aload pop
128 1 255 { newfont /Encoding get exch /.notdef put } for
newcodesandnames length 2 idiv { newfont /Encoding get 3 1 roll put } repeat
newfontname newfont definefont pop end } def
/isovec [
8#055 /minus 8#200 /grave 8#201 /acute 8#202 /circumflex 8#203 /tilde
8#204 /macron 8#205 /breve 8#206 /dotaccent 8#207 /dieresis
8#210 /ring 8#211 /cedilla 8#212 /hungarumlaut 8#213 /ogonek 8#214 /caron
8#220 /dotlessi 8#230 /oe 8#231 /OE
8#240 /space 8#241 /exclamdown 8#242 /cent 8#243 /sterling
8#244 /currency 8#245 /yen 8#246 /brokenbar 8#247 /section 8#250 /dieresis
8#251 /copyright 8#252 /ordfeminine 8#253 /guillemotleft 8#254 /logicalnot
8#255 /hyphen 8#256 /registered 8#257 /macron 8#260 /degree 8#261 /plusminus
8#262 /twosuperior 8#263 /threesuperior 8#264 /acute 8#265 /mu 8#266 /paragraph
8#267 /periodcentered 8#270 /cedilla 8#271 /onesuperior 8#272 /ordmasculine
8#273 /guillemotright 8#274 /onequarter 8#275 /onehalf
8#276 /threequarters 8#277 /questiondown 8#300 /Agrave 8#301 /Aacute
8#302 /Acircumflex 8#303 /Atilde 8#304 /Adieresis 8#305 /Aring
8#306 /AE 8#307 /Ccedilla 8#310 /Egrave 8#311 /Eacute
8#312 /Ecircumflex 8#313 /Edieresis 8#314 /Igrave 8#315 /Iacute
8#316 /Icircumflex 8#317 /Idieresis 8#320 /Eth 8#321 /Ntilde 8#322 /Ograve
8#323 /Oacute 8#324 /Ocircumflex 8#325 /Otilde 8#326 /Odieresis 8#327 /multiply
8#330 /Oslash 8#331 /Ugrave 8#332 /Uacute 8#333 /Ucircumflex
8#334 /Udieresis 8#335 /Yacute 8#336 /Thorn 8#337 /germandbls 8#340 /agrave
8#341 /aacute 8#342 /acircumflex 8#343 /atilde 8#344 /adieresis 8#345 /aring
8#346 /ae 8#347 /ccedilla 8#350 /egrave 8#351 /eacute
8#352 /ecircumflex 8#353 /edieresis 8#354 /igrave 8#355 /iacute
8#356 /icircumflex 8#357 /idieresis 8#360 /eth 8#361 /ntilde 8#362 /ograve
8#363 /oacute 8#364 /ocircumflex 8#365 /otilde 8#366 /odieresis 8#367 /divide
8#370 /oslash 8#371 /ugrave 8#372 /uacute 8#373 /ucircumflex
8#374 /udieresis 8#375 /yacute 8#376 /thorn 8#377 /ydieresis] def
/Helvetica /Helvetica-iso isovec ReEncode
/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
/$F2psEnd {$F2psEnteredState restore end} def
$F2psBegin
10 setmiterlimit
0.06000 0.06000 sc
%%Page: 1 1
%
% Fig objects follow
%
% Polyline
7.500 slw
n 3300 1500 m 4725 1500 l 4725 1950 l 3300 1950 l
cp gs col7 0.90 shd ef gr gs col33 s gr
% Polyline
n 6750 3450 m 4800 3450 l 4800 3900 l 6750 3900 l
cp gs col0 s gr
% Polyline
n 6750 2550 m 9000 2550 l 9000 3000 l 6750 3000 l
cp gs col0 s gr
% Polyline
n 6750 3000 m 9000 3000 l 9000 3450 l 6750 3450 l
cp gs col0 s gr
% Polyline
n 6750 3450 m 9000 3450 l 9000 3900 l 6750 3900 l
cp gs col0 s gr
% Polyline
n 4800 2550 m 6750 2550 l 6750 3000 l 4800 3000 l
cp gs col0 s gr
% Polyline
n 4800 3000 m 6750 3000 l 6750 3450 l 4800 3450 l
cp gs col0 s gr
% Polyline
n 4800 3225 m 3300 3225 l 3300 3900 l 4800 3900 l
cp gs col0 s gr
% Polyline
n 3300 2250 m 9000 2250 l 9000 2550 l 3300 2550 l
cp gs col0 s gr
% Polyline
n 4800 3225 m 3300 3225 l 3300 2550 l 4800 2550 l
cp gs col0 s gr
% Polyline
n 1200 1950 m 1425 1950 l 1425 2175 l 1200 2175 l
cp gs col0 s gr
% Polyline
n 1200 2175 m 1425 2175 l 1425 2400 l 1200 2400 l
cp gs col7 0.90 shd ef gr gs col33 s gr
% Polyline
n 1200 2175 m 1425 2175 l 1425 2400 l 1200 2400 l
cp gs col0 s gr
% Polyline
n 1200 3900 m 9000 3900 l 9000 4500 l 1200 4500 l
cp gs col0 s gr
% Polyline
n 1200 1725 m 1425 1725 l 1425 1950 l 1200 1950 l
cp gs col0 s gr
% Polyline
[60] 0 sd
n 6000 1500 m 7575 1500 l 7575 1950 l 6000 1950 l
cp gs col7 0.90 shd ef gr gs col33 s gr [] 0 sd
/Helvetica-iso ff 165.00 scf sf
5775 3300 m
gs 1 -1 sc (Node Monitoring/Control) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
6150 2175 m
gs 1 -1 sc (Link Management) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
6150 2475 m
gs 1 -1 sc (Node Management) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
7875 3300 m
gs 1 -1 sc (Experiment Scheduling) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
7875 2850 m
gs 1 -1 sc (Resource Allocation) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
4050 3450 m
gs 1 -1 sc (Distributed) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
4050 3600 m
gs 1 -1 sc (Event) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
4050 3750 m
gs 1 -1 sc (System) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
4050 3000 m
gs 1 -1 sc (Control) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
4050 2850 m
gs 1 -1 sc (Run-Time ) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
5775 3750 m
gs 1 -1 sc (Node Self-Configuration) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
1500 1650 m
gs 1 -1 sc (User Interface) col0 sh gr
/Helvetica-iso ff 165.00 scf sf
1500 1875 m
gs 1 -1 sc (Accounts and Database) col0 sh gr
/Helvetica-iso ff 165.00 scf sf
1500 2100 m
gs 1 -1 sc (Expt. Config./Control) col0 sh gr
/Helvetica-iso ff 165.00 scf sf
1500 2325 m
gs 1 -1 sc (Back-ends) col0 sh gr
/Helvetica-iso ff 165.00 scf sf
7875 3750 m
gs 1 -1 sc (Experiment Configuration) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
5775 2850 m
gs 1 -1 sc (Clearing Node State) dup sw pop 2 div neg 0 rm col0 sh gr
% Polyline
n 4725 1500 m 6000 1500 l 6000 1950 l 4725 1950 l
cp gs col7 0.90 shd ef gr gs col33 s gr
% Polyline
n 3300 1950 m 9000 1950 l 9000 2250 l 3300 2250 l
cp gs col0 s gr
% Polyline
[60] 0 sd
n 7575 1500 m 9000 1500 l 9000 1950 l 7575 1950 l
cp gs col7 0.90 shd ef gr gs col33 s gr [] 0 sd
% Polyline
n 1200 3000 m 3300 3000 l 3300 3900 l 1200 3900 l
cp gs /PC [[1.00 1.00 1.00] [0.81 0.81 0.81]] def
15.00 15.00 sc P1 [16 0 0 -8 80.00 200.00] PATmp PATsp ef gr PATusp gs col33 s gr
% Polyline
n 1200 1500 m 1425 1500 l 1425 1725 l 1200 1725 l
cp gs /PC [[1.00 1.00 1.00] [0.81 0.81 0.81]] def
15.00 15.00 sc P1 [16 0 0 -8 80.00 100.00] PATmp PATsp ef gr PATusp gs col33 s gr
% Polyline
n 2250 2550 m 3300 2550 l 3300 3000 l 2250 3000 l
cp gs /PC [[1.00 1.00 1.00] [0.81 0.81 0.81]] def
15.00 15.00 sc P1 [16 0 0 -8 150.00 170.00] PATmp PATsp ef gr PATusp gs col33 s gr
% Polyline
n 2250 2550 m 3300 2550 l 3300 3000 l 2250 3000 l
cp gs col0 s gr
% Polyline
n 1200 2550 m 2250 2550 l 2250 3000 l 1200 3000 l
cp gs /PC [[1.00 1.00 1.00] [0.81 0.81 0.81]] def
15.00 15.00 sc P1 [16 0 0 -8 80.00 170.00] PATmp PATsp ef gr PATusp gs col33 s gr
% Polyline
n 1200 2550 m 2250 2550 l 2250 3000 l 1200 3000 l
cp gs col0 s gr
% Polyline
n 1200 1500 m 1425 1500 l 1425 1725 l 1200 1725 l
cp gs col0 s gr
% Polyline
n 1200 3000 m 3300 3000 l 3300 3900 l 1200 3900 l
cp gs col0 s gr
% Polyline
n 1200 3900 m 9000 3900 l 9000 4500 l 1200 4500 l
cp gs /PC [[1.00 1.00 1.00] [0.65 0.65 0.65]] def
15.00 15.00 sc P6 [16 0 0 -16 80.00 260.00] PATmp PATsp ef gr PATusp gs col32 s gr
% Polyline
n 1200 1725 m 1425 1725 l 1425 1950 l 1200 1950 l
cp gs /PC [[1.00 1.00 1.00] [0.65 0.65 0.65]] def
15.00 15.00 sc P6 [16 0 0 -16 80.00 115.00] PATmp PATsp ef gr PATusp gs col32 s gr
% Polyline
n 4725 1500 m 6000 1500 l 6000 1950 l 4725 1950 l
cp gs col0 s gr
% Polyline
n 3300 1500 m 4725 1500 l 4725 1950 l 3300 1950 l
cp gs col0 s gr
/Helvetica-iso ff 165.00 scf sf
2775 2775 m
gs 1 -1 sc (Testbed) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
2775 2970 m
gs 1 -1 sc (Admins) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
2250 3225 m
gs 1 -1 sc (User Interface) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
5400 1800 m
gs 1 -1 sc (Wide-Area) dup sw pop 2 div neg 0 rm col0 sh gr
/Helvetica-iso ff 165.00 scf sf
3975 1800 m