Changes between Version 6 and Version 7 of GENIRacksHome/ExogeniRacks/AcceptanceTestStatus/EG-MON-2


Ignore:
Timestamp:
08/14/12 13:44:07 (12 years ago)
Author:
Josh Smift
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIRacksHome/ExogeniRacks/AcceptanceTestStatus/EG-MON-2

    v6 v7  
    2020
    2121Meaning of states:
    22  * [[Color(green,Pass)]]: Step is completed and passed (for a verification step), or is completed (for a prep step)
     22 * [[Color(lightgreen,Pass)]]: Step is completed and passed (for a verification step), or is completed (for a prep step)
    2323 * [[Color(red,Fail)]]: Step is completed and failed, and is not being revisited
    2424 * in progress: We are currently testing or iterating on this step
    2525 * [[Color(orange,Blocked)]]: Step is blocked by some other step or activity
    2626
    27 || '''Step''' || '''State'''               || '''Date completed''' || '''Open Tickets''' || '''Closed Tickets/Comments'''                      ||
    28 || 1          ||                           ||                      ||                    || ready to test                                      ||
    29 || 2          ||                           ||                      ||                    || ready to test                                      ||
    30 || 3          ||                           ||                      ||                    || ready to test                                      ||
    31 || 4          ||                           ||                      ||                    || ready to test                                      ||
    32 || 5          ||                           ||                      ||                    || ready to test                                      ||
     27|| '''Step''' || '''State'''                || '''Date completed''' || '''Open Tickets''' || '''Closed Tickets/Comments'''                      ||
     28|| 1          || [[Color(orange,Blocked)]]  ||                      ||                    || need info from exogeni-design, asked 2012-08-14    ||
     29|| 2          || [[Color(orange,Blocked)]]  ||                      ||                    || need info from exogeni-design, asked 2012-08-14    ||
     30|| 3          || [[Color(orange,Blocked)]]  ||                      ||                    || need info from exogeni-design, asked 2012-08-14    ||
     31|| 4          || [[Color(orange,Blocked)]]  ||                      ||                    || need info from exogeni-design, asked 2012-08-14    ||
     32|| 5          || [[Color(lightgreen,Pass)]] || 2012-08-14           ||                    ||                                                    ||
    3333
    3434== High-level description from test plan ==
     
    4949 * VI.12. A public document describes all the GENI experimental resources within the rack, and explains what policy options exist for each, including: how to configure rack nodes as bare metal vs. VM server, what options exist for configuring automated approval of compute and network resource requests and how to set them, how to configure rack aggregates to trust additional GENI slice authorities, whether it is possible to trust local users within the rack. (F.7)
    5050 * VI.13. A public document describes the expected state of all the GENI experimental resources in the rack, including how to determine the state of an experimental resource and what state is expected for an unallocated bare metal node. (F.5)
    51  * VII.11. A site administrator can locate current configuration of flowvisor, FOAM, and any other OpenFlow services, and find logs of recent activity and changes. (D.6.a)
     51 * VII.11. A site administrator can locate current configuration of flowvisor, FOAM, and any other !OpenFlow services, and find logs of recent activity and changes. (D.6.a)
    5252
    5353== Step 1: determine VM resource allocations ==
     54
     55=== Overview of Step 1 ===
    5456
    5557'''Using:'''
     
    6062
    6163== Step 2: determine bare metal node configurations ==
     64
     65=== Overview of Step 2 ===
    6266
    6367'''Using:'''
     
    7074== Step 3: determine available VLAN pool ==
    7175
     76=== Overview of Step 3 ===
     77
    7278'''Using:'''
    7379 * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine how many unbound VLANs are available for rack use, and whether they are allocated by the local rack SM or by ExoSM.
     
    7985
    8086== Step 4: determine which GENI SAs are trusted ==
     87
     88=== Overview of Step 4 ===
    8189
    8290'''Using:'''
     
    8997 * An experimenter can verify that the four AMs to be used in the test trust the pgeni.gpolab.bbn.com SA.
    9098
     99=== Results of Step 4 from 2012-08-14 ===
     100
     101I verified that the rack FOAM instance trusts the pgeni.gpolab.bbn.com SA in two ways.
     102
     103On bbn-hn:
     104
     105{{{
     106[13:13:44] jbs@bbn-hn:/home/jbs
     107+$ cat /opt/foam/etc/gcf-ca-certs/pgeni.gpolab.bbn.com.pem
     108Certificate:
     109    Data:
     110        Version: 3 (0x2)
     111        Serial Number:
     112            fc:ed:da:89:e1:1a:ba:af
     113        Signature Algorithm: md5WithRSAEncryption
     114        Issuer: C=US, ST=Massachusetts, L=Cambridge, O=GENI Project Office, OU=Certificate Authority, CN=boss.pgeni.gpolab.bbn.com/emailAddress=testbed-ops@ops.pgeni.gpolab.bbn.com
     115        Validity
     116            Not Before: May 28 16:07:58 2010 GMT
     117            Not After : Nov 18 16:07:58 2015 GMT
     118        Subject: C=US, ST=Massachusetts, L=Cambridge, O=GENI Project Office, OU=Certificate Authority, CN=boss.pgeni.gpolab.bbn.com/emailAddress=testbed-ops@ops.pgeni.gpolab.bbn.com
     119        Subject Public Key Info:
     120            Public Key Algorithm: rsaEncryption
     121            RSA Public Key: (1024 bit)
     122                Modulus (1024 bit):
     123                    00:bb:7e:9b:79:87:8b:54:88:95:ad:39:54:2c:58:
     124                    7e:5f:cc:99:15:15:ee:25:f1:06:11:50:9e:bd:47:
     125                    d1:4f:5d:44:f1:d1:74:af:9f:ff:af:56:8b:17:b1:
     126                    f9:7b:b3:a3:df:1b:d5:13:ae:e5:71:4d:68:31:64:
     127                    ab:b7:b5:2b:40:51:20:3e:8b:b9:ba:0b:4e:f0:10:
     128                    3c:05:9b:1a:8f:75:4f:79:f3:a0:24:9a:8b:b5:4f:
     129                    a2:fe:50:9b:21:5a:6f:92:4e:43:d4:f0:56:06:23:
     130                    38:f5:e2:1d:c4:32:0c:38:0e:96:50:f0:a3:87:60:
     131                    4a:93:13:d9:d8:79:b0:3a:11
     132                Exponent: 65537 (0x10001)
     133        X509v3 extensions:
     134            X509v3 Subject Key Identifier:
     135                98:57:01:01:AE:BF:D9:9C:8D:D2:F0:04:06:D9:2A:E8:06:CB:B0:F9
     136            X509v3 Authority Key Identifier:
     137                keyid:98:57:01:01:AE:BF:D9:9C:8D:D2:F0:04:06:D9:2A:E8:06:CB:B0:F9
     138                DirName:/C=US/ST=Massachusetts/L=Cambridge/O=GENI Project Office/OU=Certificate Authority/CN=boss.pgeni.gpolab.bbn.com/emailAddress=testbed-ops@ops.pgeni.gpolab.bbn.com
     139                serial:FC:ED:DA:89:E1:1A:BA:AF
     140
     141            X509v3 Basic Constraints:
     142                CA:TRUE
     143            X509v3 Subject Alternative Name:
     144                URI:urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root
     145            X509v3 Issuer Alternative Name:
     146                URI:urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root
     147    Signature Algorithm: md5WithRSAEncryption
     148        67:2c:95:c6:a1:d8:8a:1d:a4:1d:62:f8:36:e5:df:bd:08:ef:
     149        5f:57:1b:b4:6c:20:bd:79:d5:c8:96:de:ce:31:3b:cf:d9:4a:
     150        26:84:88:e4:eb:83:91:16:42:18:65:ea:9f:9a:ae:a0:57:52:
     151        f6:d2:17:fc:8a:a4:b7:8e:2a:a1:54:64:bb:e1:2a:68:fc:33:
     152        52:e5:18:f4:7f:78:8d:c0:31:db:52:ee:51:2c:bb:f2:44:f5:
     153        07:aa:19:0c:17:f2:5c:a7:d0:ba:e2:9b:c3:00:65:79:97:78:
     154        e5:ff:26:c7:b3:c6:2e:a6:2e:d7:08:bb:1d:c0:e5:e0:d6:af:
     155        ae:12
     156-----BEGIN CERTIFICATE-----
     157MIIE3jCCBEegAwIBAgIJAPzt2onhGrqvMA0GCSqGSIb3DQEBBAUAMIHQMQswCQYD
     158VQQGEwJVUzEWMBQGA1UECBMNTWFzc2FjaHVzZXR0czESMBAGA1UEBxMJQ2FtYnJp
     159ZGdlMRwwGgYDVQQKExNHRU5JIFByb2plY3QgT2ZmaWNlMR4wHAYDVQQLExVDZXJ0
     160aWZpY2F0ZSBBdXRob3JpdHkxIjAgBgNVBAMTGWJvc3MucGdlbmkuZ3BvbGFiLmJi
     161bi5jb20xMzAxBgkqhkiG9w0BCQEWJHRlc3RiZWQtb3BzQG9wcy5wZ2VuaS5ncG9s
     162YWIuYmJuLmNvbTAeFw0xMDA1MjgxNjA3NThaFw0xNTExMTgxNjA3NThaMIHQMQsw
     163CQYDVQQGEwJVUzEWMBQGA1UECBMNTWFzc2FjaHVzZXR0czESMBAGA1UEBxMJQ2Ft
     164YnJpZGdlMRwwGgYDVQQKExNHRU5JIFByb2plY3QgT2ZmaWNlMR4wHAYDVQQLExVD
     165ZXJ0aWZpY2F0ZSBBdXRob3JpdHkxIjAgBgNVBAMTGWJvc3MucGdlbmkuZ3BvbGFi
     166LmJibi5jb20xMzAxBgkqhkiG9w0BCQEWJHRlc3RiZWQtb3BzQG9wcy5wZ2VuaS5n
     167cG9sYWIuYmJuLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAu36beYeL
     168VIiVrTlULFh+X8yZFRXuJfEGEVCevUfRT11E8dF0r5//r1aLF7H5e7Oj3xvVE67l
     169cU1oMWSrt7UrQFEgPou5ugtO8BA8BZsaj3VPefOgJJqLtU+i/lCbIVpvkk5D1PBW
     170BiM49eIdxDIMOA6WUPCjh2BKkxPZ2HmwOhECAwEAAaOCAbwwggG4MB0GA1UdDgQW
     171BBSYVwEBrr/ZnI3S8AQG2SroBsuw+TCCAQUGA1UdIwSB/TCB+oAUmFcBAa6/2ZyN
     1720vAEBtkq6AbLsPmhgdakgdMwgdAxCzAJBgNVBAYTAlVTMRYwFAYDVQQIEw1NYXNz
     173YWNodXNldHRzMRIwEAYDVQQHEwlDYW1icmlkZ2UxHDAaBgNVBAoTE0dFTkkgUHJv
     174amVjdCBPZmZpY2UxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhvcml0eTEiMCAG
     175A1UEAxMZYm9zcy5wZ2VuaS5ncG9sYWIuYmJuLmNvbTEzMDEGCSqGSIb3DQEJARYk
     176dGVzdGJlZC1vcHNAb3BzLnBnZW5pLmdwb2xhYi5iYm4uY29tggkA/O3aieEauq8w
     177DAYDVR0TBAUwAwEB/zA/BgNVHREEODA2hjR1cm46cHVibGljaWQ6SUROK3BnZW5p
     178Lmdwb2xhYi5iYm4uY29tK2F1dGhvcml0eStyb290MD8GA1UdEgQ4MDaGNHVybjpw
     179dWJsaWNpZDpJRE4rcGdlbmkuZ3BvbGFiLmJibi5jb20rYXV0aG9yaXR5K3Jvb3Qw
     180DQYJKoZIhvcNAQEEBQADgYEAZyyVxqHYih2kHWL4NuXfvQjvX1cbtGwgvXnVyJbe
     181zjE7z9lKJoSI5OuDkRZCGGXqn5quoFdS9tIX/Iqkt44qoVRku+EqaPwzUuUY9H94
     182jcAx21LuUSy78kT1B6oZDBfyXKfQuuKbwwBleZd45f8mx7PGLqYu1wi7HcDl4Nav
     183rhI=
     184-----END CERTIFICATE-----
     185}}}
     186
     187Via the GENI AM API:
     188
     189{{{
     190[13:15:53] jbs@jericho:/home/jbs
     191+$ grep -A 8 -B 2 '\[gpolab\]' ~/.gcf/omni_config
     192## GPO Lab ProtoGENI
     193
     194[gpolab]
     195
     196type = pg
     197verbose = false
     198ch = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/ch
     199sa = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/sa
     200cert = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem
     201key = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem
     202
     203[13:16:54] jbs@jericho:/home/jbs
     204+$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 getversion -f gpolab
     205INFO:omni:Loading config file /home/jbs/.gcf/omni_config
     206INFO:omni:Using control framework gpolab
     207INFO:omni:AM URN: unspecified_AM_URN (url: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1) has version:
     208INFO:omni:{   'ad_rspec_versions': [   {   'extensions': [   'http://www.geni.net/resources/rspec/ext/openflow/3'],
     209                                 'namespace': 'http://www.geni.net/resources/rspec/3',
     210                                 'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd',
     211                                 'type': 'GENI',
     212                                 'version': '3'}],
     213    'foam_version': '0.8.2',
     214    'geni_api': 1,
     215    'request_rspec_versions': [   {   'extensions': [   'http://www.geni.net/resources/rspec/ext/openflow/3',
     216                                                        'http://www.geni.net/resources/rspec/ext/openflow/4',
     217                                                        'http://www.geni.net/resources/rspec/ext/flowvisor/1'],
     218                                      'namespace': 'http://www.geni.net/resources/rspec/3',
     219                                      'schema': 'http://www.geni.net/resources/rspec/3/request.xsd',
     220                                      'type': 'GENI',
     221                                      'version': '3'}],
     222    'site_info': {   }}
     223INFO:omni: ------------------------------------------------------------
     224INFO:omni: Completed getversion:
     225
     226  Options as run:
     227                aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1
     228                framework: gpolab
     229                native: True
     230
     231  Args: getversion
     232
     233  Result Summary:
     234Got version for 1 out of 1 aggregates
     235 
     236INFO:omni: ============================================================
     237}}}
     238
     239I also verified that it did not trust another SA, Utah ProtoGENI in this case:
     240
     241{{{
     242[13:17:00] jbs@jericho:/home/jbs
     243+$ grep -A 8 -B 2 '\[utah\]' ~/.gcf/omni_config
     244## Utah ProtoGENI
     245
     246[utah]
     247
     248type = pg
     249verbose = false
     250ch = https://www.emulab.net/protogeni/xmlrpc/ch
     251sa = https://www.emulab.net/protogeni/xmlrpc/sa
     252cert = ~/.ssl/jbs@www.emulab.net.pem
     253key = ~/.ssl/jbs@www.emulab.net.pem
     254
     255[13:17:37] jbs@jericho:/home/jbs
     256+$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 getversion -f utah
     257INFO:omni:Loading config file /home/jbs/.gcf/omni_config
     258INFO:omni:Using control framework utah
     259ERROR:omni.protogeni:Call for GetVersion at https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 failed.: ProtocolError: <ProtocolError for bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1: 400 Bad Request>
     260ERROR:omni.protogeni:    ..... Run with --debug for more information
     261WARNING:omni:URN: unspecified_AM_URN (url:https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1) call failed: ProtocolError: <ProtocolError for bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1: 400 Bad Request>
     262
     263INFO:omni: ------------------------------------------------------------
     264INFO:omni: Completed getversion:
     265
     266  Options as run:
     267                aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1
     268                framework: utah
     269                native: True
     270
     271  Args: getversion
     272
     273  Result Summary: Cannot GetVersion at https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1: ProtocolError: <ProtocolError for bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1: 400 Bad Request>
     274
     275Got version for 0 out of 1 aggregates
     276 
     277INFO:omni: ============================================================
     278}}}
     279
    91280== Step 5: determine rack !OpenFlow state ==
     281
     282=== Overview of Step 5 ===
    92283
    93284'''Using:'''
    94285 * From a login to the 8264 (dataplane) switch, view the !OpenFlow configuration.
    95  * On bbn-hn, use fvctl to view the set of devices reporting to the !FlowVisor
    96  * Use the GENI AM API to view the set of datapaths advertised by FOAM
     286 * On bbn-hn, use fvctl to view the set of devices reporting to the !FlowVisor.
     287 * On bbn-hn, use foamctl to view the list of slivers.
     288 * Use the GENI AM API to view the set of datapaths advertised by FOAM.
    97289
    98290'''Verify:'''
    99  * All datapaths on the rack switch report either to !FlowVisor or to FOAM
    100  * All datapaths reporting to !FlowVisor or to FOAM come from the rack switch
    101  * A site administrator can look at flowvisor's state using fvctl
    102  * A site administrator can look at FOAM's state using foamctl
    103 
     291 * All datapaths on the rack switch report to !FlowVisor.
     292 * All datapaths reporting to !FlowVisor come from the rack switch.
     293 * A site administrator can look at flowvisor's state using fvctl.
     294 * A site administrator can look at FOAM's state using foamctl.
     295 * FOAM advertises all datapaths on the rack switch.
     296
     297=== Results of Step 5 from 2012-08-14 ===
     298
     299For the first of those, the switch shows some !OpenFlow information:
     300
     301{{{
     302bbn-8264.bbn.xo>show openflow
     303        Protocol Version: 1
     304        Openflow State: Enabled
     305        Max Flows: 10000
     306        FDB Table Priority: 1000
     307        Open Flow Instance ID: 1
     308        Openflow Edge ports : None
     309        Openflow Management ports :  63
     310        Openflow Buffering : Enabled
     311        Openflow Buffer Size: 1024
     312        Emergency Mode : Disabled
     313}}}
     314
     315Aha, and apparently that "Open Flow Instance ID: 1" tells me that 'show openflow 1' has a bunch more info:
     316
     317{{{
     318bbn-8264.bbn.xo>show openflow 1
     319Open Flow Instance ID: 1
     320        DataPath ID: 0x640817f4b52a00
     321        Vlan ID: 100
     322        Max Retries per controller: 4
     323        Echo Request Interval: 30
     324        Echo Reply Timeout: 15
     325        Emergency Timeout: 30
     326        Operational Mode: Normal
     327        Miss Send Len: 128
     328        Swicth Support Capabiilities:
     329                Flow Statistics             : enabled
     330                Table Statistics            : enabled
     331                Port Statistics             : enabled
     332                Spanning Tree               : disabled
     333                Reserved                    : disabled
     334                Reassemble IP Fragments     : disabled
     335                Queue Statistics            : disabled
     336                Match IP Addr in ARP Packets: disabled
     337        Swicth Support action:
     338                Output to Switch Port    : enabled
     339                Set Vlan ID              : enabled
     340                Set Priority             : enabled
     341                Strip dot1q Header       : enabled
     342                Ethernet Source Addr     : enabled
     343                Ethernet Destination Addr: enabled
     344                IP Source Address        : disabled
     345                IP Destination Address   : disabled
     346                IP ToS                   : enabled
     347                TCP/UDP Source Port      : disabled
     348                TCP/UDP Destination Port : disabled
     349                Output to Queue          : disabled
     350                Vendor                   : disabled
     351
     352PortList  Status  State  Config  Current  Advertised Supported  Peer
     3531           d     0x201   0x2     0x200    0x0       0x0         0x0
     3542           d     0x201   0x2     0x240    0x0       0x0         0x0
     3553           d     0x201   0x2     0x240    0x0       0x0         0x0
     3564           d     0x201   0x2     0x240    0x0       0x0         0x0
     3575           d     0x201   0x2     0x200    0x0       0x0         0x0
     3586           d     0x201   0x2     0x240    0x0       0x0         0x0
     3597           d     0x201   0x2     0x240    0x0       0x0         0x0
     3608           d     0x201   0x2     0x240    0x0       0x0         0x0
     3619           d     0x201   0x2     0x200    0x0       0x0         0x0
     36210          d     0x201   0x2     0x240    0x0       0x0         0x0
     36311          d     0x201   0x2     0x240    0x0       0x0         0x0
     36412          d     0x201   0x2     0x240    0x0       0x0         0x0
     36513          d     0x201   0x2     0x200    0x0       0x0         0x0
     36614          d     0x201   0x2     0x240    0x0       0x0         0x0
     36715          d     0x201   0x2     0x240    0x0       0x0         0x0
     36816          d     0x201   0x2     0x240    0x0       0x0         0x0
     36917          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37018          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37119          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37220          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37321          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37422          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37523          e     0x200   0x2     0xc0     0x0       0x0         0x0
     37624          d     0x201   0x2     0xc0     0x0       0x0         0x0
     37725          d     0x201   0x2     0xc0     0x0       0x0         0x0
     37826          d     0x201   0x2     0xc0     0x0       0x0         0x0
     37927          d     0x201   0x2     0x200    0x0       0x0         0x0
     38028          d     0x201   0x2     0x200    0x0       0x0         0x0
     38129          d     0x201   0x2     0x200    0x0       0x0         0x0
     38230          d     0x201   0x2     0x200    0x0       0x0         0x0
     38331          d     0x201   0x2     0x200    0x0       0x0         0x0
     38432          d     0x201   0x2     0x200    0x0       0x0         0x0
     38533          d     0x201   0x2     0x200    0x0       0x0         0x0
     38634          d     0x201   0x2     0x200    0x0       0x0         0x0
     38735          d     0x201   0x2     0x200    0x0       0x0         0x0
     38836          d     0x201   0x2     0x200    0x0       0x0         0x0
     38937          d     0x201   0x2     0x200    0x0       0x0         0x0
     39038          d     0x201   0x2     0x200    0x0       0x0         0x0
     39139          d     0x201   0x2     0x200    0x0       0x0         0x0
     39240          d     0x201   0x2     0x200    0x0       0x0         0x0
     39341          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39442          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39543          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39644          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39745          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39846          e     0x200   0x2     0xc0     0x0       0x0         0x0
     39947          e     0x200   0x2     0xc0     0x0       0x0         0x0
     40048          d     0x201   0x2     0xc0     0x0       0x0         0x0
     40149          d     0x201   0x2     0xc0     0x0       0x0         0x0
     40250          d     0x201   0x2     0xc0     0x0       0x0         0x0
     40351          d     0x201   0x2     0x200    0x0       0x0         0x0
     40452          d     0x201   0x2     0x200    0x0       0x0         0x0
     40553          d     0x201   0x2     0x200    0x0       0x0         0x0
     40654          d     0x201   0x2     0x200    0x0       0x0         0x0
     40755          d     0x201   0x2     0x200    0x0       0x0         0x0
     40856          d     0x201   0x2     0x200    0x0       0x0         0x0
     40957          d     0x201   0x2     0x200    0x0       0x0         0x0
     41058          d     0x201   0x2     0x200    0x0       0x0         0x0
     41159          d     0x201   0x2     0x200    0x0       0x0         0x0
     41260          e     0x200   0x2     0x2a0    0x0       0x0         0x0
     41361          d     0x201   0x2     0x200    0x0       0x0         0x0
     41462          d     0x201   0x2     0x200    0x0       0x0         0x0
     41564          e     0x200   0x2     0x2a0    0x0       0x0         0x0
     416
     417Number of Ports: 63
     418Configured Controllers:
     419        IP Address: 192.168.103.10
     420                State: Active
     421                Port: 6633
     422                Retry Count: 0
     423        Configured Controller Count 1
     424}}}
     425
     426So, there is only one datapath, and it points to 192.168.103.10:6633. That IP address is an interface on bbn-hn:
     427
     428{{{
     429[13:31:20] jbs@bbn-hn:/home/jbs
     430+$ ifconfig -a | grep -A 7 -B 1 192.168.103.10
     431bond2.1006 Link encap:Ethernet  HWaddr 5C:F3:FC:6B:10:A8 
     432          inet addr:192.168.103.10  Bcast:192.168.103.255  Mask:255.255.255.0
     433          inet6 addr: fe80::5ef3:fcff:fe6b:10a8/64 Scope:Link
     434          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
     435          RX packets:106891 errors:0 dropped:0 overruns:0 frame:0
     436          TX packets:117109 errors:0 dropped:0 overruns:0 carrier:0
     437          collisions:0 txqueuelen:0
     438          RX bytes:11828203 (11.2 MiB)  TX bytes:17760462 (16.9 MiB)
     439
     440}}}
     441
     442FlowVisor is running on port 6633:
     443
     444{{{
     445[13:32:26] jbs@bbn-hn:/home/jbs
     446+$ sudo netstat -anp | grep 6633
     447[sudo] password for jbs:
     448tcp        0      0 :::6633                     :::*                        LISTEN      3517/java           
     449tcp        0    125 ::ffff:192.168.103.10:6633  ::ffff:192.168.103.4:41595  ESTABLISHED 3517/java           
     450
     451[13:32:43] jbs@bbn-hn:/home/jbs
     452+$ ps -efwww | grep 3517
     453491       3517     1  2 12:12 ?        00:02:19 java -server -Xms256M -Xmx1500M -XX:OnError=flowvisor-crash-logger -XX:+UseConcMarkSweepGC -Dorg.flowvisor.config_dir=/opt/flowvisor/etc/flowvisor -Dorg.flowvisor.install_dir=/opt/flowvisor/libexec/flowvisor -Djavax.net.ssl.keyStore=/opt/flowvisor/etc/flowvisor/mySSLKeyStore -Djavax.net.ssl.keyStorePassword=CHANGEME_PASSWD -cp /opt/flowvisor/libexec/flowvisor/openflow.jar:/opt/flowvisor/libexec/flowvisor/xmlrpc-client-3.1.3.jar:/opt/flowvisor/libexec/flowvisor/xmlrpc-common-3.1.3.jar:/opt/flowvisor/libexec/flowvisor/xmlrpc-server-3.1.3.jar:/opt/flowvisor/libexec/flowvisor/commons-logging-1.1.jar:/opt/flowvisor/libexec/flowvisor/ws-commons-util-1.0.2.jar:/opt/flowvisor/libexec/flowvisor/jsse.jar:/opt/flowvisor/libexec/flowvisor/asm-3.0.jar:/opt/flowvisor/libexec/flowvisor/cglib-2.2.jar:/opt/flowvisor/libexec/flowvisor/commons-codec-1.4.jar:/opt/flowvisor/libexec/flowvisor/gson-1.7.1.jar:/opt/flowvisor/libexec/flowvisor/jetty-continuation-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/jetty-http-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/jetty-io-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/jetty-security-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/jetty-server-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/jetty-util-7.0.2.v20100331.jar:/opt/flowvisor/libexec/flowvisor/servlet-api-2.5.jar:/opt/flowvisor/libexec/flowvisor/flowvisor.jar org.flowvisor.FlowVisor /opt/flowvisor/etc/flowvisor/config.xml
     454jbs       4327  1532  0 13:33 pts/4    00:00:00 grep 3517
     455}}}
     456
     457This verifies that all (one) datapaths on the rack switch report to FlowVisor.
     458
     459For the second, fvctl shows only one device:
     460
     461{{{
     462[13:33:43] jbs@bbn-hn:/home/jbs
     463+$ fvctl --passwd-file=/etc/flowvisor/fvpasswd listDevices
     464Device 0: 00:64:08:17:f4:b5:2a:00
     465}}}
     466
     467This verifies that all datapaths reporting to !FlowVisor come from the rack switch, and a site admin can look at FV's state using fvctl.
     468
     469For the third, foamctl can show a list of slivers:
     470
     471{{{
     472[13:37:07] jbs@bbn-hn:/home/jbs
     473+$ foamctl geni:list-slivers --passwd-file=/opt/foam/etc/foampasswd
     474{
     475 "slivers": [
     476  {
     477   "status": "Approved",
     478   "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+tuptymon:3d95c17c-412b-4451-a2c2-c79d8b0542ee",
     479   "creation": "2012-08-10 04:51:08.680747+00:00",
     480   "pend_reason": null,
     481   "expiration": "2012-09-15 00:00:00+00:00",
     482   "deleted": "False",
     483   "user": null,
     484   "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+tuptymon",
     485   "enabled": true,
     486   "email": "tupty@bbn.com",
     487   "flowvisor_slice": "3d95c17c-412b-4451-a2c2-c79d8b0542ee",
     488   "desc": "tuptymon OpenFlow resources at BBN.",
     489   "ref": null,
     490   "id": 12,
     491   "uuid": "3d95c17c-412b-4451-a2c2-c79d8b0542ee"
     492  },
     493  {
     494   "status": "Approved",
     495   "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs16:d45b6df8-84ce-4764-811c-6bf2234efaa1",
     496   "creation": "2012-08-10 04:51:10.287736+00:00",
     497   "pend_reason": null,
     498   "expiration": "2012-10-15 19:00:00+00:00",
     499   "deleted": "False",
     500   "user": null,
     501   "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs16",
     502   "enabled": true,
     503   "email": "jbs@bbn.com",
     504   "flowvisor_slice": "d45b6df8-84ce-4764-811c-6bf2234efaa1",
     505   "desc": "JBS 16 OpenFlow resources at BBN ExoGENI.",
     506   "ref": null,
     507   "id": 19,
     508   "uuid": "d45b6df8-84ce-4764-811c-6bf2234efaa1"
     509  },
     510  {
     511   "status": "Approved",
     512   "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs15:8ae4e90c-c6e3-4570-8e23-2357303c6a27",
     513   "creation": "2012-08-10 04:51:10.488696+00:00",
     514   "pend_reason": null,
     515   "expiration": "2012-10-15 19:00:00+00:00",
     516   "deleted": "False",
     517   "user": null,
     518   "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs15",
     519   "enabled": true,
     520   "email": "jbs@bbn.com",
     521   "flowvisor_slice": "8ae4e90c-c6e3-4570-8e23-2357303c6a27",
     522   "desc": "JBS 15 OpenFlow resources at BBN ExoGENI.",
     523   "ref": null,
     524   "id": 20,
     525   "uuid": "8ae4e90c-c6e3-4570-8e23-2357303c6a27"
     526  },
     527  {
     528   "status": "Approved",
     529   "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+trans:9d1e8717-424a-4495-a968-c7be314396dd",
     530   "creation": "2012-08-10 04:51:13.414379+00:00",
     531   "pend_reason": null,
     532   "expiration": "2012-08-14 00:00:00+00:00",
     533   "deleted": "False",
     534   "user": null,
     535   "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+trans",
     536   "enabled": true,
     537   "email": "lnevers@bbn.com",
     538   "flowvisor_slice": "9d1e8717-424a-4495-a968-c7be314396dd",
     539   "desc": "Vlan translation for EG-EXP-5 resources at BBN ExoGENI.",
     540   "ref": null,
     541   "id": 33,
     542   "uuid": "9d1e8717-424a-4495-a968-c7be314396dd"
     543  }
     544 ]
     545}
     546}}}
     547
     548This verifies that a site administrator can look at FOAM's state using foamctl.
     549
     550For the fourth, Omni can show advertised datapaths via the GENI AM API:
     551
     552{{{
     553[13:39:38] jbs@jericho:/home/jbs
     554+$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 listresources
     555INFO:omni:Loading config file /home/jbs/.gcf/omni_config
     556INFO:omni:Using control framework gpolab
     557INFO:omni:Listed resources on 1 out of 1 possible aggregates.
     558INFO:omni:<?xml version="1.0" ?>
     559INFO:omni:<!-- Resources at AM:
     560        URN: unspecified_AM_URN
     561        URL: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1
     562 -->
     563INFO:omni:
     564<rspec type="advertisement" xmlns="http://www.geni.net/resources/rspec/3" xmlns:openflow="http://www.geni.net/resources/rspec/ext/openflow/3" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/ad.xsd http://www.geni.net/resources/rspec/ext/openflow/3 http://www.geni.net/resources/rspec/ext/openflow/3/of-ad.xsd">
     565  <openflow:datapath component_id="urn:publicid:IDN+openflow:foam:bbn-hn.exogeni.gpolab.bbn.com+datapath+00:64:08:17:f4:b5:2a:00" component_manager_id="urn:publicid:IDN+openflow:foam:bbn-hn.exogeni.gpolab.bbn.com+authority+am" dpid="00:64:08:17:f4:b5:2a:00">
     566    <openflow:port name="1" num="1"/>
     567    <openflow:port name="2" num="2"/>
     568    <openflow:port name="3" num="3"/>
     569    <openflow:port name="4" num="4"/>
     570    <openflow:port name="5" num="5"/>
     571    <openflow:port name="6" num="6"/>
     572    <openflow:port name="7" num="7"/>
     573    <openflow:port name="8" num="8"/>
     574    <openflow:port name="9" num="9"/>
     575    <openflow:port name="10" num="10"/>
     576    <openflow:port name="11" num="11"/>
     577    <openflow:port name="12" num="12"/>
     578    <openflow:port name="13" num="13"/>
     579    <openflow:port name="14" num="14"/>
     580    <openflow:port name="15" num="15"/>
     581    <openflow:port name="16" num="16"/>
     582    <openflow:port name="17" num="17"/>
     583    <openflow:port name="18" num="18"/>
     584    <openflow:port name="19" num="19"/>
     585    <openflow:port name="20" num="20"/>
     586    <openflow:port name="21" num="21"/>
     587    <openflow:port name="22" num="22"/>
     588    <openflow:port name="23" num="23"/>
     589    <openflow:port name="24" num="24"/>
     590    <openflow:port name="27" num="27"/>
     591    <openflow:port name="28" num="28"/>
     592    <openflow:port name="29" num="29"/>
     593    <openflow:port name="30" num="30"/>
     594    <openflow:port name="31" num="31"/>
     595    <openflow:port name="32" num="32"/>
     596    <openflow:port name="33" num="33"/>
     597    <openflow:port name="34" num="34"/>
     598    <openflow:port name="35" num="35"/>
     599    <openflow:port name="36" num="36"/>
     600    <openflow:port name="37" num="37"/>
     601    <openflow:port name="38" num="38"/>
     602    <openflow:port name="39" num="39"/>
     603    <openflow:port name="40" num="40"/>
     604    <openflow:port name="41" num="41"/>
     605    <openflow:port name="42" num="42"/>
     606    <openflow:port name="43" num="43"/>
     607    <openflow:port name="44" num="44"/>
     608    <openflow:port name="45" num="45"/>
     609    <openflow:port name="46" num="46"/>
     610    <openflow:port name="47" num="47"/>
     611    <openflow:port name="48" num="48"/>
     612    <openflow:port name="51" num="51"/>
     613    <openflow:port name="52" num="52"/>
     614    <openflow:port name="53" num="53"/>
     615    <openflow:port name="54" num="54"/>
     616    <openflow:port name="55" num="55"/>
     617    <openflow:port name="56" num="56"/>
     618    <openflow:port name="57" num="57"/>
     619    <openflow:port name="58" num="58"/>
     620    <openflow:port name="59" num="59"/>
     621    <openflow:port name="60" num="60"/>
     622    <openflow:port name="61" num="61"/>
     623    <openflow:port name="62" num="62"/>
     624    <openflow:port name="64" num="64"/>
     625    <openflow:port name="50" num="50"/>
     626    <openflow:port name="26" num="26"/>
     627    <openflow:port name="49" num="49"/>
     628    <openflow:port name="25" num="25"/>
     629  </openflow:datapath>
     630</rspec>
     631
     632INFO:omni: ------------------------------------------------------------
     633INFO:omni: Completed listresources:
     634
     635  Options as run:
     636                aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1
     637                framework: gpolab
     638                native: True
     639
     640  Args: listresources
     641
     642  Result Summary: Retrieved resources from 1 aggregates.
     643Wrote rspecs from 1 aggregates.
     644INFO:omni: ============================================================
     645}}}
     646
     647The one datapath from the switch (via FV) is advertised; this verifies that FOAM advertises all datapaths on the rack switch.