Changes between Initial Version and Version 1 of PlasticSlices/BaselineEvaluation/Baseline6Details


Ignore:
Timestamp:
06/09/11 15:22:37 (13 years ago)
Author:
Josh Smift
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PlasticSlices/BaselineEvaluation/Baseline6Details

    v1 v1  
     1[[PageOutline]]
     2
     3Here are the details of [wiki:PlasticSlices/BaselineEvaluation#Baseline6 Baseline 6], divided by slice.
     4
     5The raw logs of each experiment are at http://www.gpolab.bbn.com/plastic-slices/baseline-logs/baseline-6/.
     6
     7= plastic-101 =
     8
     9[PlasticSlices/Experiments#GigaPing GigaPing], using count=100000, and this table of client/server pairs:
     10
     11|| '''client'''                   || '''server'''                   || '''server address''' ||
     12|| ganel.gpolab.bbn.com           || planetlab5.clemson.edu         || server=10.42.101.105 ||
     13|| planetlab4.clemson.edu         || plnode2.cip.gatech.edu         || server=10.42.101.101 ||
     14|| plnode1.cip.gatech.edu         || pl5.myplc.grnoc.iu.edu         || server=10.42.101.73  ||
     15|| pl4.myplc.grnoc.iu.edu         || orbitplc2.orbit-lab.org        || server=10.42.101.112 ||
     16|| orbitplc1.orbit-lab.org        || of-planet2.stanford.edu        || server=10.42.101.91  ||
     17|| of-planet1.stanford.edu        || pl02.cs.washington.edu         || server=10.42.101.81  ||
     18|| pl01.cs.washington.edu         || wings-openflow-3.wail.wisc.edu || server=10.42.101.96  ||
     19|| wings-openflow-2.wail.wisc.edu || gardil.gpolab.bbn.com          || server=10.42.101.52  ||
     20
     21== Commands run on each client ==
     22
     23{{{
     24server=<ipaddr>
     25sudo ping -i .006 -s $((1500-8-20)) $server
     26}}}
     27
     28== Results ==
     29
     30ganel.gpolab.bbn.com:
     31
     32{{{
     33}}}
     34
     35planetlab4.clemson.edu:
     36
     37{{{
     38}}}
     39
     40plnode1.cip.gatech.edu:
     41
     42{{{
     43}}}
     44
     45pl4.myplc.grnoc.iu.edu:
     46
     47{{{
     48}}}
     49
     50orbitplc1.orbit-lab.org:
     51
     52{{{
     53}}}
     54
     55of-planet1.stanford.edu:
     56
     57{{{
     58}}}
     59
     60pl01.cs.washington.edu:
     61
     62{{{
     63}}}
     64
     65wings-openflow-2.wail.wisc.edu:
     66
     67{{{
     68}}}
     69
     70== Analysis ==
     71
     72''(forthcoming)''
     73
     74= plastic-102 =
     75
     76[PlasticSlices/Experiments#GigaPing GigaPing], using count=100000, and this table of client/server pairs:
     77
     78|| '''client'''                   || '''server'''                   || '''server address''' ||
     79|| sardis.gpolab.bbn.com          || planetlab4.clemson.edu         || server=10.42.102.104 ||
     80|| planetlab5.clemson.edu         || plnode1.cip.gatech.edu         || server=10.42.102.100 ||
     81|| plnode2.cip.gatech.edu         || pl4.myplc.grnoc.iu.edu         || server=10.42.102.72  ||
     82|| pl5.myplc.grnoc.iu.edu         || orbitplc1.orbit-lab.org        || server=10.42.102.111 ||
     83|| orbitplc2.orbit-lab.org        || of-planet4.stanford.edu        || server=10.42.102.93  ||
     84|| of-planet3.stanford.edu        || pl01.cs.washington.edu         || server=10.42.102.80  ||
     85|| pl02.cs.washington.edu         || wings-openflow-2.wail.wisc.edu || server=10.42.102.95  ||
     86|| wings-openflow-3.wail.wisc.edu || bain.gpolab.bbn.com            || server=10.42.102.54  ||
     87
     88== Commands run on each client ==
     89
     90{{{
     91server=<ipaddr>
     92sudo ping -i .006 -s $((1500-8-20)) $server
     93}}}
     94
     95== Results ==
     96
     97sardis.gpolab.bbn.com:
     98
     99{{{
     100}}}
     101
     102planetlab5.clemson.edu:
     103
     104{{{
     105}}}
     106
     107plnode2.cip.gatech.edu:
     108
     109{{{
     110}}}
     111
     112pl5.myplc.grnoc.iu.edu:
     113
     114{{{
     115}}}
     116
     117orbitplc2.orbit-lab.org:
     118
     119{{{
     120}}}
     121
     122of-planet3.stanford.edu:
     123
     124{{{
     125}}}
     126
     127pl02.cs.washington.edu:
     128
     129{{{
     130}}}
     131
     132wings-openflow-3.wail.wisc.edu:
     133
     134{{{
     135}}}
     136
     137== Analysis ==
     138
     139''(forthcoming)''
     140
     141= plastic-103 =
     142
     143[PlasticSlices/Experiments#GigaPerfTCP GigaPerf TCP], using port=5103, size=350, and this table of client/server pairs:
     144
     145|| '''client'''                   || '''server'''                   || '''server address''' ||
     146|| of-planet1.stanford.edu        || navis.gpolab.bbn.com           || server=10.42.103.55  ||
     147|| ganel.gpolab.bbn.com           || orbitplc1.orbit-lab.org        || server=10.42.103.111 ||
     148|| pl02.cs.washington.edu         || bain.gpolab.bbn.com            || server=10.42.103.54  ||
     149|| of-planet2.stanford.edu        || pl01.cs.washington.edu         || server=10.42.103.80  ||
     150|| orbitplc2.orbit-lab.org        || of-planet3.stanford.edu        || server=10.42.103.92  ||
     151
     152== One-time prep commands run on each client and server ==
     153
     154{{{
     155sudo yum -y install iperf
     156}}}
     157
     158== Commands run on each server ==
     159
     160{{{
     161server=<ipaddr>
     162nice -n 19 iperf -B $server -p 5103 -s -i 1
     163}}}
     164
     165== Commands run on each client ==
     166
     167{{{
     168server=<ipaddr>
     169nice -n 19 iperf -c $server -p 5103 -t 518400
     170}}}
     171
     172== Results ==
     173
     174of-planet1.stanford.edu:
     175
     176{{{
     177}}}
     178
     179ganel.gpolab.bbn.com:
     180
     181{{{
     182}}}
     183
     184orbitplc2.orbit-lab.org:
     185
     186{{{
     187}}}
     188
     189pl02.cs.washington.edu:
     190
     191{{{
     192}}}
     193
     194of-planet2.stanford.edu:
     195
     196{{{
     197}}}
     198
     199orbitplc1.orbit-lab.org:
     200
     201{{{
     202}}}
     203
     204== Analysis ==
     205
     206''(forthcoming)''
     207
     208= plastic-104 =
     209
     210[PlasticSlices/Experiments#GigaPerfUDP GigaPerf UDP], using port=5104, size=500, rate=100, and this table of client/server pairs:
     211
     212|| '''client'''                   || '''server'''                   || '''server address''' ||
     213|| navis.gpolab.bbn.com           || wings-openflow-2.wail.wisc.edu || server=10.42.104.95  ||
     214|| wings-openflow-3.wail.wisc.edu || orbitplc2.orbit-lab.org        || server=10.42.104.112 ||
     215|| orbitplc1.orbit-lab.org        || pl4.myplc.grnoc.iu.edu         || server=10.42.104.72  ||
     216|| pl5.myplc.grnoc.iu.edu         || gardil.gpolab.bbn.com          || server=10.42.104.52  ||
     217
     218== One-time prep commands run on each client and server ==
     219
     220{{{
     221sudo yum -y install iperf
     222}}}
     223
     224== Commands run on each server ==
     225
     226{{{
     227server=<ipaddr>
     228nice -n 19 iperf -u -B $server -p 5104 -s -i 1
     229}}}
     230
     231== Commands run on each client ==
     232
     233{{{
     234server=<ipaddr>
     235nice -n 19 iperf -u -c $server -p 5104 -t 518400 -b 3M
     236}}}
     237
     238== Results ==
     239
     240navis.gpolab.bbn.com:
     241
     242{{{
     243}}}
     244
     245wings-openflow-3.wail.wisc.edu:
     246
     247{{{
     248}}}
     249
     250orbitplc1.orbit-lab.org:
     251
     252{{{
     253}}}
     254
     255pl5.myplc.grnoc.iu.edu:
     256
     257{{{
     258}}}
     259
     260== Analysis ==
     261
     262''(forthcoming)''
     263
     264= plastic-105 =
     265
     266[PlasticSlices/Experiments#GigaPerfTCP GigaPerf TCP], using port=5105, size=250, and this table of client/server pairs:
     267
     268|| '''client'''                   || '''server'''                   || '''server address''' ||
     269|| wings-openflow-2.wail.wisc.edu || planetlab5.clemson.edu         || server=10.42.105.105 ||
     270|| planetlab4.clemson.edu         || sardis.gpolab.bbn.com          || server=10.42.105.53  ||
     271|| bain.gpolab.bbn.com            || plnode2.cip.gatech.edu         || server=10.42.105.101 ||
     272|| plnode1.cip.gatech.edu         || wings-openflow-3.wail.wisc.edu || server=10.42.105.96  ||
     273
     274== One-time prep commands run on each client and server ==
     275
     276{{{
     277sudo yum -y install iperf
     278}}}
     279
     280== Commands run on each server ==
     281
     282{{{
     283server=<ipaddr>
     284nice -n 19 iperf -B $server -p 5105 -s -i 1
     285}}}
     286
     287== Commands run on each client ==
     288
     289{{{
     290server=<ipaddr>
     291nice -n 19 iperf -c $server -p 5105 -t 518400
     292}}}
     293
     294== Results ==
     295
     296wings-openflow-2.wail.wisc.edu:
     297
     298{{{
     299}}}
     300
     301planetlab4.clemson.edu:
     302
     303{{{
     304}}}
     305
     306bain.gpolab.bbn.com:
     307
     308{{{
     309}}}
     310
     311plnode1.cip.gatech.edu:
     312
     313{{{
     314}}}
     315
     316== Analysis ==
     317
     318''(forthcoming)''
     319
     320= plastic-106 =
     321
     322[PlasticSlices/Experiments#GigaPerfUDP GigaPerf UDP], using port=5106, size=500, rate=100, and this table of client/server pairs:
     323
     324|| '''client'''                   || '''server'''                   || '''server address''' ||
     325|| planetlab5.clemson.edu         || wings-openflow-2.wail.wisc.edu || server=10.42.106.95  ||
     326|| wings-openflow-3.wail.wisc.edu || plnode1.cip.gatech.edu         || server=10.42.106.100 ||
     327|| plnode2.cip.gatech.edu         || ganel.gpolab.bbn.com           || server=10.42.106.51  ||
     328|| gardil.gpolab.bbn.com          || planetlab4.clemson.edu         || server=10.42.106.104 ||
     329
     330== One-time prep commands run on each client and server ==
     331
     332{{{
     333sudo yum -y install iperf
     334}}}
     335
     336== Commands run on each server ==
     337
     338{{{
     339server=<ipaddr>
     340nice -n 19 iperf -u -B $server -p 5106 -s -i 1
     341}}}
     342
     343== Commands run on each client ==
     344
     345{{{
     346server=<ipaddr>
     347nice -n 19 iperf -u -c $server -p 5106 -t 518400 -b 3M
     348}}}
     349
     350== Results ==
     351
     352== Analysis ==
     353
     354''(forthcoming)''
     355
     356= plastic-107 =
     357
     358[PlasticSlices/Experiments#GigaWeb GigaWeb], using count=30, port=4107, file=substrate.doc, md5sum=d4fcf71833327fbfef98be09deef8bfb, and this table of client/server pairs:
     359
     360|| '''client'''                   || '''server'''                   || '''server address''' ||
     361|| planetlab5.clemson.edu         || pl4.myplc.grnoc.iu.edu         || server=10.42.107.72  ||
     362|| pl5.myplc.grnoc.iu.edu         || plnode2.cip.gatech.edu         || server=10.42.107.101 ||
     363|| plnode1.cip.gatech.edu         || pl02.cs.washington.edu         || server=10.42.107.81  ||
     364|| pl01.cs.washington.edu         || planetlab4.clemson.edu         || server=10.42.107.104 ||
     365
     366== One-time prep commands run on each server ==
     367
     368{{{
     369sudo yum -y install pyOpenSSL patch
     370cd
     371rm -rf ~/gigaweb
     372mkdir -p ~/gigaweb/docroot
     373
     374cd ~/gigaweb
     375wget http://code.activestate.com/recipes/442473-simple-http-server-supporting-ssl-secure-communica/download/1/ -O httpsd.py
     376wget http://groups.geni.net/geni/attachment/wiki/PlasticSlices/Experiments/httpsd.py.patch?format=raw -O httpsd.py.patch
     377patch httpsd.py httpsd.py.patch
     378rm httpsd.py.patch
     379
     380cd ~/gigaweb/docroot
     381wget http://groups.geni.net/geni/attachment/wiki/DeliverablePage/Spiral1%20substrate%20catalog.doc?format=raw -O substrate.doc
     382
     383cd ~/gigaweb
     384openssl genrsa -passout pass:localhost -des3 -rand /dev/urandom -out localhost.localdomain.key 1024
     385openssl req -subj /CN=localhost.localdomain -passin pass:localhost -new -key localhost.localdomain.key -out localhost.localdomain.csr
     386openssl x509 -passin pass:localhost -req -days 3650 -in localhost.localdomain.csr -signkey localhost.localdomain.key -out localhost.localdomain.crt
     387openssl rsa -passin pass:localhost -in localhost.localdomain.key -out decrypted.localhost.localdomain.key
     388mv -f decrypted.localhost.localdomain.key localhost.localdomain.key
     389cat localhost.localdomain.key localhost.localdomain.crt > localhost.localdomain.pem
     390rm localhost.localdomain.key localhost.localdomain.crt localhost.localdomain.csr
     391}}}
     392
     393== Commands run on each server ==
     394
     395{{{
     396server=<ipaddr>
     397cd ~/gigaweb/docroot
     398python ../httpsd.py $server 4107
     399}}}
     400
     401== Commands run on each client ==
     402
     403{{{
     404server=<ipaddr>
     405cd
     406rm -rf ~/gigaweb
     407mkdir ~/gigaweb
     408cd ~/gigaweb
     409while true ; do wget --no-check-certificate https://$server:4107/substrate.doc -O substrate.doc ; echo -n "md5sum: " ; md5sum substrate.doc ; rm substrate.doc ; done
     410}}}
     411
     412== Results ==
     413
     414Since we transfered the file to each client hundreds (if not thousands) of times, we didn't save all the copies, but we did generate an MD5 checksum after each download, and log that, so we ran some grep commands on the logs to count the number of total checksums printed in each log, and the number where the checksum had the expected value.
     415
     416planetlab5.clemson.edu:
     417
     418{{{
     419}}}
     420
     421pl5.myplc.grnoc.iu.edu:
     422
     423{{{
     424}}}
     425
     426plnode1.cip.gatech.edu:
     427
     428{{{
     429}}}
     430
     431pl01.cs.washington.edu:
     432
     433{{{
     434}}}
     435
     436== Analysis ==
     437
     438''(forthcoming)''
     439
     440= plastic-108 =
     441
     442[PlasticSlices/Experiments#GigaWeb GigaWeb], using count=40, port=4108, file=substrate.doc, md5sum=d4fcf71833327fbfef98be09deef8bfb, and this table of client/server pairs:
     443
     444|| '''client'''                   || '''server'''                   || '''server address''' ||
     445|| wings-openflow-3.wail.wisc.edu || of-planet4.stanford.edu        || server=10.42.108.93  ||
     446|| of-planet3.stanford.edu        || orbitplc1.orbit-lab.org        || server=10.42.108.111 ||
     447|| orbitplc2.orbit-lab.org        || pl5.myplc.grnoc.iu.edu         || server=10.42.108.73  ||
     448|| pl4.myplc.grnoc.iu.edu         || wings-openflow-2.wail.wisc.edu || server=10.42.108.95  ||
     449
     450== One-time prep commands run on each server ==
     451
     452{{{
     453sudo yum -y install pyOpenSSL patch
     454cd
     455rm -rf ~/gigaweb
     456mkdir -p ~/gigaweb/docroot
     457
     458cd ~/gigaweb
     459wget http://code.activestate.com/recipes/442473-simple-http-server-supporting-ssl-secure-communica/download/1/ -O httpsd.py
     460wget http://groups.geni.net/geni/attachment/wiki/PlasticSlices/Experiments/httpsd.py.patch?format=raw -O httpsd.py.patch
     461patch httpsd.py httpsd.py.patch
     462rm httpsd.py.patch
     463
     464cd ~/gigaweb/docroot
     465wget http://groups.geni.net/geni/attachment/wiki/DeliverablePage/Spiral1%20substrate%20catalog.doc?format=raw -O substrate.doc
     466
     467cd ~/gigaweb
     468openssl genrsa -passout pass:localhost -des3 -rand /dev/urandom -out localhost.localdomain.key 1024
     469openssl req -subj /CN=localhost.localdomain -passin pass:localhost -new -key localhost.localdomain.key -out localhost.localdomain.csr
     470openssl x509 -passin pass:localhost -req -days 3650 -in localhost.localdomain.csr -signkey localhost.localdomain.key -out localhost.localdomain.crt
     471openssl rsa -passin pass:localhost -in localhost.localdomain.key -out decrypted.localhost.localdomain.key
     472mv -f decrypted.localhost.localdomain.key localhost.localdomain.key
     473cat localhost.localdomain.key localhost.localdomain.crt > localhost.localdomain.pem
     474rm localhost.localdomain.key localhost.localdomain.crt localhost.localdomain.csr
     475}}}
     476
     477== Commands run on each server ==
     478
     479{{{
     480server=<ipaddr>
     481cd ~/gigaweb/docroot
     482python ../httpsd.py $server 4108
     483}}}
     484
     485== Commands run on each client ==
     486
     487{{{
     488server=<ipaddr>
     489cd
     490rm -rf ~/gigaweb
     491mkdir ~/gigaweb
     492cd ~/gigaweb
     493while true ; do wget --no-check-certificate https://$server:4108/substrate.doc -O substrate.doc ; echo -n "md5sum: " ; md5sum substrate.doc ; rm substrate.doc ; done
     494}}}
     495
     496== Results ==
     497
     498Since we transfered the file to each client hundreds (if not thousands) of times, we didn't save all the copies, but we did generate an MD5 checksum after each download, and log that, so we ran some grep commands on the logs to count the number of total checksums printed in each log, and the number where the checksum had the expected value.
     499
     500wings-openflow-3.wail.wisc.edu:
     501
     502{{{
     503}}}
     504
     505of-planet3.stanford.edu:
     506
     507{{{
     508}}}
     509
     510orbitplc2.orbit-lab.org:
     511
     512{{{
     513}}}
     514
     515pl4.myplc.grnoc.iu.edu:
     516
     517{{{
     518}}}
     519
     520== Analysis ==
     521
     522''(forthcoming)''
     523
     524= plastic-109 =
     525
     526[PlasticSlices/Experiments#GigaNetcat GigaNetcat], using count=25, port=6109, file=substrate.doc, and this table of client/server pairs:
     527
     528|| '''client'''                   || '''server'''                   || '''server address''' ||
     529|| navis.gpolab.bbn.com           || pl5.myplc.grnoc.iu.edu         || server=10.42.109.73  ||
     530|| pl4.myplc.grnoc.iu.edu         || pl02.cs.washington.edu         || server=10.42.109.81  ||
     531|| pl01.cs.washington.edu         || planetlab5.clemson.edu         || server=10.42.109.105 ||
     532|| planetlab4.clemson.edu         || of-planet1.stanford.edu        || server=10.42.109.90  ||
     533|| of-planet2.stanford.edu        || wings-openflow-3.wail.wisc.edu || server=10.42.109.96  ||
     534|| wings-openflow-2.wail.wisc.edu || ganel.gpolab.bbn.com           || server=10.42.109.51  ||
     535
     536== One-time prep commands run on each server ==
     537
     538{{{
     539sudo yum -y install nc
     540mkdir -p ~/giganetcat
     541cd ~/giganetcat
     542wget http://groups.geni.net/geni/attachment/wiki/DeliverablePage/Spiral1%20substrate%20catalog.doc?format=raw -O substrate.doc
     543}}}
     544
     545== One-time prep commands run on each client ==
     546
     547{{{
     548sudo yum -y install nc
     549}}}
     550
     551== Commands run on each server ==
     552
     553{{{
     554server=<ipaddr>
     555cd ~/giganetcat
     556while true ; do nc -l $server 6109 < substrate.doc ; done
     557}}}
     558
     559== Commands run on each client ==
     560
     561{{{
     562server=<ipaddr>
     563cd
     564rm -rf ~/giganetcat
     565mkdir ~/giganetcat
     566cd ~/giganetcat
     567while true ; do nc $server 6109 > substrate.doc ; echo -n "$(date "+%F %T")  " ; md5sum substrate.doc ; rm substrate.doc ; done
     568}}}
     569
     570== Results ==
     571
     572Since we transfered the file to each client hundreds (if not thousands) of times, we didn't save all the copies, but we did generate an MD5 checksum after each download, and log that, so we ran some grep commands on the logs to count the number of total checksums printed in each log, and the number where the checksum had the expected value.
     573
     574navis.gpolab.bbn.com:
     575
     576{{{
     577}}}
     578
     579pl4.myplc.grnoc.iu.edu:
     580
     581{{{
     582}}}
     583
     584pl01.cs.washington.edu:
     585
     586{{{
     587}}}
     588
     589planetlab4.clemson.edu:
     590
     591{{{
     592}}}
     593
     594of-planet2.stanford.edu:
     595
     596{{{
     597}}}
     598
     599wings-openflow-2.wail.wisc.edu:
     600
     601{{{
     602}}}
     603
     604== Analysis ==
     605
     606''(forthcoming)''
     607
     608= plastic-110 =
     609
     610[PlasticSlices/Experiments#GigaNetcat GigaNetcat], using count=25, port=6110, file=substrate.doc, and this table of client/server pairs:
     611
     612|| '''client'''                   || '''server'''                   || '''server address''' ||
     613|| gardil.gpolab.bbn.com          || pl01.cs.washington.edu         || server=10.42.110.80  ||
     614|| pl02.cs.washington.edu         || of-planet3.stanford.edu        || server=10.42.110.92  ||
     615|| of-planet4.stanford.edu        || orbitplc2.orbit-lab.org        || server=10.42.110.112 ||
     616|| orbitplc1.orbit-lab.org        || pl4.myplc.grnoc.iu.edu         || server=10.42.110.72  ||
     617|| pl5.myplc.grnoc.iu.edu         || plnode1.cip.gatech.edu         || server=10.42.110.100 ||
     618|| plnode2.cip.gatech.edu         || sardis.gpolab.bbn.com          || server=10.42.110.53  ||
     619
     620== One-time prep commands run on each server ==
     621
     622{{{
     623sudo yum -y install nc
     624mkdir -p ~/giganetcat
     625cd ~/giganetcat
     626wget http://groups.geni.net/geni/attachment/wiki/DeliverablePage/Spiral1%20substrate%20catalog.doc?format=raw -O substrate.doc
     627}}}
     628
     629== One-time prep commands run on each client ==
     630
     631{{{
     632sudo yum -y install nc
     633}}}
     634
     635== Commands run on each server ==
     636
     637{{{
     638server=<ipaddr>
     639cd ~/giganetcat
     640while true ; do nc -l $server 6110 < substrate.doc ; done
     641}}}
     642
     643== Commands run on each client ==
     644
     645{{{
     646server=<ipaddr>
     647cd
     648rm -rf ~/giganetcat
     649mkdir ~/giganetcat
     650cd ~/giganetcat
     651while true ; do nc $server 6110 > substrate.doc ; echo -n "$(date "+%F %T")  " ; md5sum substrate.doc ; rm substrate.doc ; done
     652}}}
     653
     654== Results ==
     655
     656Since we transfered the file to each client hundreds (if not thousands) of times, we didn't save all the copies, but we did generate an MD5 checksum after each download, and log that, so we ran some grep commands on the logs to count the number of total checksums printed in each log, and the number where the checksum had the expected value.
     657
     658gardil.gpolab.bbn.com:
     659
     660{{{
     661}}}
     662
     663pl02.cs.washington.edu:
     664
     665{{{
     666}}}
     667
     668of-planet4.stanford.edu:
     669
     670{{{
     671}}}
     672
     673orbitplc1.orbit-lab.org:
     674
     675{{{
     676}}}
     677
     678pl5.myplc.grnoc.iu.edu:
     679
     680{{{
     681}}}
     682
     683plnode2.cip.gatech.edu:
     684
     685{{{
     686}}}
     687
     688== Analysis ==
     689
     690''(forthcoming)''