[[PageOutline]] = Detailed test plan for EG-MON-2: GENI Software Configuration Inspection Test = ''This page is GPO's working page for performing EG-MON-2. It is public for informational purposes, but it is not an official status report. See [wiki:GENIRacksHome/ExogeniRacks/AcceptanceTestStatus] for the current status of ExoGENI acceptance tests.'' ''Last Update: 2012/08/14'' == Page format == * The status chart summarizes the state of this test * The high-level description from test plan contains text copied exactly from the public test plan and acceptance criteria pages. * The steps contain things i will actually do/verify: * Steps may be composed of related substeps where i find this useful for clarity * Each step is either a preparatory step (identified by "(prep)") or a verification step (the default): * Preparatory steps are just things we have to do. They're not tests of the rack, but are prerequisites for subsequent verification steps * Verification steps are steps in which we will actually look at rack output and make sure it is as expected. They contain a '''Using:''' block, which lists the steps to run the verification, and an '''Expect:''' block which lists what outcome is expected for the test to pass. == Status of test == Meaning of states: * [[Color(lightgreen,Pass)]]: Step is completed and passed (for a verification step), or is completed (for a prep step) * [[Color(red,Fail)]]: Step is completed and failed, and is not being revisited * in progress: We are currently testing or iterating on this step * [[Color(orange,Blocked)]]: Step is blocked by some other step or activity || '''Step''' || '''State''' || '''Date completed''' || '''Open Tickets''' || '''Closed Tickets/Comments''' || || 1 || [[Color(lightgreen,Pass)]] || 2012-08-14 || || || || 2 || [[Color(lightgreen,Pass)]] || 2012-08-14 || || || || 3 || [[Color(lightgreen,Pass)]] || 2012-08-14 || || || || 4 || [[Color(lightgreen,Pass)]] || 2012-08-14 || || || || 5 || [[Color(lightgreen,Pass)]] || 2012-08-14 || || || == High-level description from test plan == This test inspects the state of the GENI AM software in use on the rack. === Procedure === * A site administrator uses available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine the configuration of ExoGENI resources: * How many VMs are assigned to each of the BBN rack SM and the global ExoSM * How many bare metal nodes are configured on the rack and whether they are allocated to the BBN rack SM or by ExoSM. * How many unbound VLANs are in the rack's available pool and whether they are allocated to the BBN rack SM or by ExoSM. * Whether the BBN ExoGENI AM, the RENCI ExoGENI AM, and ExoSM trust the pgeni.gpolab.bbn.com slice authority, which will be used for testing. * A site administrator uses available system data sources to determine the configuration of !OpenFlow resources according to FOAM, ExoGENI, and !FlowVisor. === Criteria to verify as part of this test === * 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) * 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) * 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) == Step 1: determine VM resource allocations == === Overview of Step 1 === '''Using:''' * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine how many VMs are assigned to each of the BBN rack SM and to the global ExoSM. '''Verify:''' * The site administrator can determine how many VMs are allocated to each SM === Results of Step 1 from 2012-08-14 === On bbn-hn, in /opt/orca-12080/config/config.xml, I see {{{ MIICbTCCAdagAwIBAgIET0+04zANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJVUzELMAkGA1UE CBMCTkMxDzANBgNVBAcTBkR1cmhhbTENMAsGA1UEChMEb3JjYTEQMA4GA1UECxMHc2hpcmFrbzEt MCsGA1UEAxMkMmQ2MzA4YTQtZTM4Yi00MjEwLTlmNGItMzMxOWFjZDI4ZTRlMB4XDTEyMDMwMTE3 NDE1NVoXDTIyMDIyNzE3NDE1NVowezELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAk5DMQ8wDQYDVQQH EwZEdXJoYW0xDTALBgNVBAoTBG9yY2ExEDAOBgNVBAsTB3NoaXJha28xLTArBgNVBAMTJDJkNjMw OGE0LWUzOGItNDIxMC05ZjRiLTMzMTlhY2QyOGU0ZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC gYEA0LqNHOAo51mJbWHQaozNPZ3+rbwommOcP0aSe0dEOlF4YtdOy6CewxiipDpMrcbia/Ur3wfn s83Tm/+5tgGNyn9jmhGfmCGKr6PVieF0/F3jGsGN3wDX6C2bOG/B99pDbtyWM6EJR5wxVLVYsuji kkzA2I5P6Ri/G/edh1yaex0CAwEAATANBgkqhkiG9w0BAQUFAAOBgQAGmuajmFFnd577IX/rvit4 vL+HlM2Yybf22bkEqlzG0uFtaXFJRUto9xOcSPm+Y3xijkf2B/X4Q+N73CFTxBEJkSh6s89SPUab nLHlwi3NXDPNd5t3WR4L0KzWgFndObXbxP0ZQFS7bI5O/F8k6iBNVa5PfEvkTVekpJvYA9WJTg== bbnvmsite.vm 48 2010-01-30T00:00:00 2031-01-30T00:00:00 bbnvmsite.vlan 500 2010-01-30T00:00:00 2031-01-30T00:00:00 MIICbTCCAdagAwIBAgIETDtgYzANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJVUzELMAkGA1UE CBMCTkMxDzANBgNVBAcTBkR1cmhhbTENMAsGA1UEChMEb3JjYTEQMA4GA1UECxMHc2hpcmFrbzEt MCsGA1UEAxMkMjViYzkxMTEtOWI0MS00NmFiLWE5NmItM2M4N2Y1NzRjZmRlMB4XDTEwMDcxMjE4 MzUxNVoXDTIwMDcwOTE4MzUxNVowezELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAk5DMQ8wDQYDVQQH EwZEdXJoYW0xDTALBgNVBAoTBG9yY2ExEDAOBgNVBAsTB3NoaXJha28xLTArBgNVBAMTJDI1YmM5 MTExLTliNDEtNDZhYi1hOTZiLTNjODdmNTc0Y2ZkZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC gYEAqcyS60d5t9c3eEud529hYmD/0BrIHGkEevwAtqBb7FFD1X98SB1G8y7gzxplt0xr2Hm72Et+ 01qB7YgT6XQHWfJQQW7RUZEnrDbGsS0v6bffY291eeDVd0ZCH1ogzPDlyMqdhSGKsstqZd0CYc2E zRFNngOIytBu1m59Jr6/FqsCAwEAATANBgkqhkiG9w0BAQUFAAOBgQCpFKta+1JitcfPbti3x3Tj WqqINj2f/MzwTVZbxV1eW6gLrwc3FRTX8RgAfqn2sl9Igxfzb+GbQbhY2j5iyBsEV90eKjQQitgv KUA1IpJqVMYiGSohX2jL+uXEK7bujv9eRyNG82Rp+ouWCrDKo7kOVLh/iSD1s8Mrk03/wd3qfw== bbnvmsite.vm 48 2010-01-30T00:00:00 2031-01-30T00:00:00 bbnvmsite.baremetalce 2 2010-01-30T00:00:00 2031-01-30T00:00:00 bbnvmsite.vlan 500 2010-01-30T00:00:00 2031-01-30T00:00:00 MIICbTCCAdagAwIBAgIETDtgYzANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJVUzELMAkGA1UE CBMCTkMxDzANBgNVBAcTBkR1cmhhbTENMAsGA1UEChMEb3JjYTEQMA4GA1UECxMHc2hpcmFrbzEt MCsGA1UEAxMkMjViYzkxMTEtOWI0MS00NmFiLWE5NmItM2M4N2Y1NzRjZmRlMB4XDTEwMDcxMjE4 MzUxNVoXDTIwMDcwOTE4MzUxNVowezELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAk5DMQ8wDQYDVQQH EwZEdXJoYW0xDTALBgNVBAoTBG9yY2ExEDAOBgNVBAsTB3NoaXJha28xLTArBgNVBAMTJDI1YmM5 MTExLTliNDEtNDZhYi1hOTZiLTNjODdmNTc0Y2ZkZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC gYEAqcyS60d5t9c3eEud529hYmD/0BrIHGkEevwAtqBb7FFD1X98SB1G8y7gzxplt0xr2Hm72Et+ 01qB7YgT6XQHWfJQQW7RUZEnrDbGsS0v6bffY291eeDVd0ZCH1ogzPDlyMqdhSGKsstqZd0CYc2E zRFNngOIytBu1m59Jr6/FqsCAwEAATANBgkqhkiG9w0BAQUFAAOBgQCpFKta+1JitcfPbti3x3Tj WqqINj2f/MzwTVZbxV1eW6gLrwc3FRTX8RgAfqn2sl9Igxfzb+GbQbhY2j5iyBsEV90eKjQQitgv KUA1IpJqVMYiGSohX2jL+uXEK7bujv9eRyNG82Rp+ouWCrDKo7kOVLh/iSD1s8Mrk03/wd3qfw== bbnNet.vlan 10 2010-01-30T00:00:00 2031-01-30T00:00:00 }}} That indicates that 48 VMs are allocated to bbn-broker, and 48 VMs are allocated to ndl-broker. == Step 2: determine bare metal node configurations == === Overview of Step 2 === '''Using:''' * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine how many nodes in the rack are configured as bare metal nodes, and whether they are allocated to the BBN rack SM or by ExoSM. '''Verify:''' * The site administrator can determine how many bare metal nodes are allocated to the local SM * The site administrator can determine what each bare metal node is allocated to if it is not allocated to the local SM === Results of Step 2 from 2012-08-14 === See Step 1 for the full topology element from /opt/orca-12080/config/config.xml. In that topology, I see {{{ }}} in the bbn-broker section, and {{{ bbnvmsite.baremetalce 2 2010-01-30T00:00:00 2031-01-30T00:00:00 }}} in the ndl-broker section. That indicates that one bare metal node would normally be allocated to bbn-broker, but it's commented out; and two bare metal nodes are currently allocated to ndl-broker. == Step 3: determine available VLAN pool == === Overview of Step 3 === '''Using:''' * 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. * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine whether any bound VLANs are available for rack use, and whether they are allocated by the local rack SM or by ExoSM. '''Verify:''' * The site administrator can determine how many unbound VLANs are available for use and where they are allocated. * The site administrator can determine what bound VLANs are available for use and where they are allocated. === Results of Step 3 from 2012-08-14 === For the first, see Step 1 for the full topology element from /opt/orca-12080/config/config.xml. In that topology, I see {{{ bbnvmsite.vlan 500 2010-01-30T00:00:00 2031-01-30T00:00:00 }}} in the bbn-broker section, and {{{ bbnvmsite.vlan 500 2010-01-30T00:00:00 2031-01-30T00:00:00 }}} in the ndl-broker section. That indicates that 500 VLANs are allocated to bbn-broker, and 500 VLANs are allocated to ndl-broker. For the second, in /opt/orca-12080/ndl/bbnvmsite.rdf, I see {{{ 1 false }}} which indicates that VLAN 1750 is the only bound VLAN. == Step 4: determine which GENI SAs are trusted == === Overview of Step 4 === '''Using:''' * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine which GENI slice authorities the BBN ExoGENI AM trusts. * On bbn-hn, use available system data sources (process listings, monitoring output, system logs, etc) and/or AM administrative interfaces to determine which GENI slice authorities FOAM trusts. * Use the GENI AM API to verify that the BBN ExoGENI AM and the ExoSM trust the pgeni.gpolab.bbn.com SA. * Use the GENI AM API to verify that the rack FOAM instance trusts the pgeni.gpolab.bbn.com SA. '''Verify:''' * The site administrator can determine the full set of trusted GENI slice authorities on the local rack. * An experimenter can verify that the four AMs to be used in the test trust the pgeni.gpolab.bbn.com SA. === Results of Step 4 from 2012-08-14 === For the first, on bbn-hn: {{{ [17:37:14] jbs@bbn-hn:/home/jbs +$ keytool -v -list -keystore /opt/orca-11080/config/geni-trusted.jks Enter keystore password: ***************** WARNING WARNING WARNING ***************** * The integrity of the information stored in your keystore * * has NOT been verified! In order to verify its integrity, * * you must provide your keystore password. * ***************** WARNING WARNING WARNING ***************** Keystore type: JKS Keystore provider: SUN Your keystore contains 3 entries Alias name: ben-ca Creation date: Nov 29, 2011 Entry type: trustedCertEntry Owner: EMAILADDRESS=ben-ops@renci.org, O=BEN@RENCI, L=Chapel Hill, ST=NC, C=US Issuer: EMAILADDRESS=ben-ops@renci.org, O=BEN@RENCI, L=Chapel Hill, ST=NC, C=US Serial number: 88753bc67f92f627 Valid from: Fri Aug 29 14:27:45 EDT 2008 until: Mon Aug 27 14:27:45 EDT 2018 Certificate fingerprints: MD5: 6A:5B:EA:64:D7:40:BF:C1:AC:F0:D0:34:A6:54:00:C5 SHA1: 94:63:C3:04:4F:48:00:B7:35:34:35:32:C3:03:E5:B7:2E:3A:44:B1 Signature algorithm name: SHA1withRSA Version: 3 Extensions: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: D8 9C 85 3A 11 47 9B CF 41 2E 59 B3 8B 54 37 F0 ...:.G..A.Y..T7. 0010: B9 D7 1E 42 ...B ] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: D8 9C 85 3A 11 47 9B CF 41 2E 59 B3 8B 54 37 F0 ...:.G..A.Y..T7. 0010: B9 D7 1E 42 ...B ] [EMAILADDRESS=ben-ops@renci.org, O=BEN@RENCI, L=Chapel Hill, ST=NC, C=US] SerialNumber: [ 88753bc6 7f92f627] ] ******************************************* ******************************************* Alias name: gpo-ca Creation date: Nov 28, 2011 Entry type: trustedCertEntry Owner: EMAILADDRESS=testbed-ops@ops.pgeni.gpolab.bbn.com, CN=boss.pgeni.gpolab.bbn.com, OU=Certificate Authority, O=GENI Project Office, L=Cambridge, ST=Massachusetts, C=US Issuer: EMAILADDRESS=testbed-ops@ops.pgeni.gpolab.bbn.com, CN=boss.pgeni.gpolab.bbn.com, OU=Certificate Authority, O=GENI Project Office, L=Cambridge, ST=Massachusetts, C=US Serial number: fcedda89e11abaaf Valid from: Fri May 28 12:07:58 EDT 2010 until: Wed Nov 18 11:07:58 EST 2015 Certificate fingerprints: MD5: 0D:A1:E0:43:F9:C9:5A:06:39:A4:27:33:02:A6:CD:D1 SHA1: 2D:78:00:D0:1F:A0:7F:14:96:FA:57:DA:11:C6:E5:CC:F1:42:C2:BD Signature algorithm name: MD5withRSA Version: 3 Extensions: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 98 57 01 01 AE BF D9 9C 8D D2 F0 04 06 D9 2A E8 .W............*. 0010: 06 CB B0 F9 .... ] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: 98 57 01 01 AE BF D9 9C 8D D2 F0 04 06 D9 2A E8 .W............*. 0010: 06 CB B0 F9 .... ] [EMAILADDRESS=testbed-ops@ops.pgeni.gpolab.bbn.com, CN=boss.pgeni.gpolab.bbn.com, OU=Certificate Authority, O=GENI Project Office, L=Cambridge, ST=Massachusetts, C=US] SerialNumber: [ fcedda89 e11abaaf] ] #4: ObjectId: 2.5.29.18 Criticality=false IssuerAlternativeName [ URIName: urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root ] #5: ObjectId: 2.5.29.17 Criticality=false SubjectAlternativeName [ URIName: urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root ] ******************************************* ******************************************* Alias name: utah-emulab Creation date: Nov 29, 2011 Entry type: trustedCertEntry Owner: EMAILADDRESS=testbed-ops@flux.utah.edu, CN=boss.emulab.net, OU=Certificate Authority, O=Utah Network Testbed, L=Salt Lake City, ST=Utah, C=US Issuer: EMAILADDRESS=testbed-ops@flux.utah.edu, CN=boss.emulab.net, OU=Certificate Authority, O=Utah Network Testbed, L=Salt Lake City, ST=Utah, C=US Serial number: 0 Valid from: Wed Dec 02 13:47:47 EST 2009 until: Mon May 25 14:47:47 EDT 2015 Certificate fingerprints: MD5: AC:CD:F6:5E:90:E6:7F:4D:BA:A2:75:CE:21:C6:09:99 SHA1: 23:44:33:D5:30:5F:4B:6C:53:75:8D:B0:A5:4D:46:72:FB:F6:8A:70 Signature algorithm name: MD5withRSA Version: 3 Extensions: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: E1 FD 98 33 CE 37 B3 7D F0 D3 75 31 DF A7 D8 31 ...3.7....u1...1 0010: A0 F6 98 20 ... ] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: E1 FD 98 33 CE 37 B3 7D F0 D3 75 31 DF A7 D8 31 ...3.7....u1...1 0010: A0 F6 98 20 ... ] [EMAILADDRESS=testbed-ops@flux.utah.edu, CN=boss.emulab.net, OU=Certificate Authority, O=Utah Network Testbed, L=Salt Lake City, ST=Utah, C=US] SerialNumber: [ 00] ] #4: ObjectId: 2.5.29.18 Criticality=false IssuerAlternativeName [ URIName: urn:publicid:IDN+emulab.net+authority+root ] #5: ObjectId: 2.5.29.17 Criticality=false SubjectAlternativeName [ URIName: urn:publicid:IDN+emulab.net+authority+root ] ******************************************* ******************************************* }}} That indicates that ben-ca, gpo-ca, and utah-emulab are trusted by the ORCA AM. For the second, on bbn-hn: {{{ [13:13:44] jbs@bbn-hn:/home/jbs +$ cat /opt/foam/etc/gcf-ca-certs/pgeni.gpolab.bbn.com.pem Certificate: Data: Version: 3 (0x2) Serial Number: fc:ed:da:89:e1:1a:ba:af Signature Algorithm: md5WithRSAEncryption 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 Validity Not Before: May 28 16:07:58 2010 GMT Not After : Nov 18 16:07:58 2015 GMT 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 Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (1024 bit) Modulus (1024 bit): 00:bb:7e:9b:79:87:8b:54:88:95:ad:39:54:2c:58: 7e:5f:cc:99:15:15:ee:25:f1:06:11:50:9e:bd:47: d1:4f:5d:44:f1:d1:74:af:9f:ff:af:56:8b:17:b1: f9:7b:b3:a3:df:1b:d5:13:ae:e5:71:4d:68:31:64: ab:b7:b5:2b:40:51:20:3e:8b:b9:ba:0b:4e:f0:10: 3c:05:9b:1a:8f:75:4f:79:f3:a0:24:9a:8b:b5:4f: a2:fe:50:9b:21:5a:6f:92:4e:43:d4:f0:56:06:23: 38:f5:e2:1d:c4:32:0c:38:0e:96:50:f0:a3:87:60: 4a:93:13:d9:d8:79:b0:3a:11 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Key Identifier: 98:57:01:01:AE:BF:D9:9C:8D:D2:F0:04:06:D9:2A:E8:06:CB:B0:F9 X509v3 Authority Key Identifier: keyid:98:57:01:01:AE:BF:D9:9C:8D:D2:F0:04:06:D9:2A:E8:06:CB:B0:F9 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 serial:FC:ED:DA:89:E1:1A:BA:AF X509v3 Basic Constraints: CA:TRUE X509v3 Subject Alternative Name: URI:urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root X509v3 Issuer Alternative Name: URI:urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+root Signature Algorithm: md5WithRSAEncryption 67:2c:95:c6:a1:d8:8a:1d:a4:1d:62:f8:36:e5:df:bd:08:ef: 5f:57:1b:b4:6c:20:bd:79:d5:c8:96:de:ce:31:3b:cf:d9:4a: 26:84:88:e4:eb:83:91:16:42:18:65:ea:9f:9a:ae:a0:57:52: f6:d2:17:fc:8a:a4:b7:8e:2a:a1:54:64:bb:e1:2a:68:fc:33: 52:e5:18:f4:7f:78:8d:c0:31:db:52:ee:51:2c:bb:f2:44:f5: 07:aa:19:0c:17:f2:5c:a7:d0:ba:e2:9b:c3:00:65:79:97:78: e5:ff:26:c7:b3:c6:2e:a6:2e:d7:08:bb:1d:c0:e5:e0:d6:af: ae:12 -----BEGIN CERTIFICATE----- MIIE3jCCBEegAwIBAgIJAPzt2onhGrqvMA0GCSqGSIb3DQEBBAUAMIHQMQswCQYD VQQGEwJVUzEWMBQGA1UECBMNTWFzc2FjaHVzZXR0czESMBAGA1UEBxMJQ2FtYnJp ZGdlMRwwGgYDVQQKExNHRU5JIFByb2plY3QgT2ZmaWNlMR4wHAYDVQQLExVDZXJ0 aWZpY2F0ZSBBdXRob3JpdHkxIjAgBgNVBAMTGWJvc3MucGdlbmkuZ3BvbGFiLmJi bi5jb20xMzAxBgkqhkiG9w0BCQEWJHRlc3RiZWQtb3BzQG9wcy5wZ2VuaS5ncG9s YWIuYmJuLmNvbTAeFw0xMDA1MjgxNjA3NThaFw0xNTExMTgxNjA3NThaMIHQMQsw CQYDVQQGEwJVUzEWMBQGA1UECBMNTWFzc2FjaHVzZXR0czESMBAGA1UEBxMJQ2Ft YnJpZGdlMRwwGgYDVQQKExNHRU5JIFByb2plY3QgT2ZmaWNlMR4wHAYDVQQLExVD ZXJ0aWZpY2F0ZSBBdXRob3JpdHkxIjAgBgNVBAMTGWJvc3MucGdlbmkuZ3BvbGFi LmJibi5jb20xMzAxBgkqhkiG9w0BCQEWJHRlc3RiZWQtb3BzQG9wcy5wZ2VuaS5n cG9sYWIuYmJuLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAu36beYeL VIiVrTlULFh+X8yZFRXuJfEGEVCevUfRT11E8dF0r5//r1aLF7H5e7Oj3xvVE67l cU1oMWSrt7UrQFEgPou5ugtO8BA8BZsaj3VPefOgJJqLtU+i/lCbIVpvkk5D1PBW BiM49eIdxDIMOA6WUPCjh2BKkxPZ2HmwOhECAwEAAaOCAbwwggG4MB0GA1UdDgQW BBSYVwEBrr/ZnI3S8AQG2SroBsuw+TCCAQUGA1UdIwSB/TCB+oAUmFcBAa6/2ZyN 0vAEBtkq6AbLsPmhgdakgdMwgdAxCzAJBgNVBAYTAlVTMRYwFAYDVQQIEw1NYXNz YWNodXNldHRzMRIwEAYDVQQHEwlDYW1icmlkZ2UxHDAaBgNVBAoTE0dFTkkgUHJv amVjdCBPZmZpY2UxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhvcml0eTEiMCAG A1UEAxMZYm9zcy5wZ2VuaS5ncG9sYWIuYmJuLmNvbTEzMDEGCSqGSIb3DQEJARYk dGVzdGJlZC1vcHNAb3BzLnBnZW5pLmdwb2xhYi5iYm4uY29tggkA/O3aieEauq8w DAYDVR0TBAUwAwEB/zA/BgNVHREEODA2hjR1cm46cHVibGljaWQ6SUROK3BnZW5p Lmdwb2xhYi5iYm4uY29tK2F1dGhvcml0eStyb290MD8GA1UdEgQ4MDaGNHVybjpw dWJsaWNpZDpJRE4rcGdlbmkuZ3BvbGFiLmJibi5jb20rYXV0aG9yaXR5K3Jvb3Qw DQYJKoZIhvcNAQEEBQADgYEAZyyVxqHYih2kHWL4NuXfvQjvX1cbtGwgvXnVyJbe zjE7z9lKJoSI5OuDkRZCGGXqn5quoFdS9tIX/Iqkt44qoVRku+EqaPwzUuUY9H94 jcAx21LuUSy78kT1B6oZDBfyXKfQuuKbwwBleZd45f8mx7PGLqYu1wi7HcDl4Nav rhI= -----END CERTIFICATE----- }}} That indicates that boss.pgeni.gpolab.bbn.com is trusted by FOAM. For the third: {{{ [17:48:37] jbs@jericho:/home/jbs +$ grep -A 8 -B 2 '\[gpolab\]' ~/.gcf/omni_config ## GPO Lab ProtoGENI [gpolab] type = pg verbose = false ch = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/ch sa = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/sa cert = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem key = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem [17:50:36] jbs@jericho:/home/jbs +$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc listresources -f gpolab INFO:omni:Loading config file /home/jbs/.gcf/omni_config INFO:omni:Using control framework gpolab INFO:omni:Listed resources on 1 out of 1 possible aggregates. INFO:omni: INFO:omni: INFO:omni: INFO:omni: ------------------------------------------------------------ INFO:omni: Completed listresources: Options as run: aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc framework: gpolab native: True Args: listresources Result Summary: Retrieved resources from 1 aggregates. Wrote rspecs from 1 aggregates. INFO:omni: ============================================================ }}} That indicates that BBN ExoGENI trusts the pgeni.gpolab.bbn.com SA. I also verified that it did not trust another SA, the BBN pgeni1 staging SA in this case: {{{ [17:51:17] jbs@jericho:/home/jbs +$ grep -A 8 -B 2 '\[pgeni1\]' ~/.gcf/omni_config ## GPO Lab staging ProtoGENI [pgeni1] type = pg verbose = false ch = https://www.pgeni1.gpolab.bbn.com/protogeni/xmlrpc/ch sa = https://www.pgeni1.gpolab.bbn.com/protogeni/xmlrpc/sa cert = ~/.ssl/jbs@pgeni1.gpolab.bbn.com.pem key = ~/.ssl/jbs@pgeni1.gpolab.bbn.com.pem [17:52:09] jbs@jericho:/home/jbs +$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc listresources -f pgeni1 INFO:omni:Loading config file /home/jbs/.gcf/omni_config INFO:omni:Using control framework pgeni1 INFO:omni:Listed resources on 0 out of 1 possible aggregates. INFO:omni:Got no resources. No resources from AM https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc: Credendial Exception: javax.security.auth.login.CredentialException: No credential was found with appropriate privileges. INFO:omni: ------------------------------------------------------------ INFO:omni: Completed listresources: Options as run: aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc framework: pgeni1 native: True Args: listresources Result Summary: Got no resources. No resources from AM https://bbn-hn.exogeni.gpolab.bbn.com:11443/orca/xmlrpc: Credendial Exception: javax.security.auth.login.CredentialException: No credential was found with appropriate privileges. INFO:omni: ============================================================ }}} That indicates that it does not trust the BBN pgeni1 SA. For the fourth: {{{ [13:15:53] jbs@jericho:/home/jbs +$ grep -A 8 -B 2 '\[gpolab\]' ~/.gcf/omni_config ## GPO Lab ProtoGENI [gpolab] type = pg verbose = false ch = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/ch sa = https://www.pgeni.gpolab.bbn.com/protogeni/xmlrpc/sa cert = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem key = ~/.ssl/jbs@pgeni.gpolab.bbn.com.pem [13:16:54] jbs@jericho:/home/jbs +$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 getversion -f gpolab INFO:omni:Loading config file /home/jbs/.gcf/omni_config INFO:omni:Using control framework gpolab INFO:omni:AM URN: unspecified_AM_URN (url: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1) has version: INFO:omni:{ 'ad_rspec_versions': [ { 'extensions': [ 'http://www.geni.net/resources/rspec/ext/openflow/3'], 'namespace': 'http://www.geni.net/resources/rspec/3', 'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd', 'type': 'GENI', 'version': '3'}], 'foam_version': '0.8.2', 'geni_api': 1, 'request_rspec_versions': [ { 'extensions': [ 'http://www.geni.net/resources/rspec/ext/openflow/3', 'http://www.geni.net/resources/rspec/ext/openflow/4', 'http://www.geni.net/resources/rspec/ext/flowvisor/1'], 'namespace': 'http://www.geni.net/resources/rspec/3', 'schema': 'http://www.geni.net/resources/rspec/3/request.xsd', 'type': 'GENI', 'version': '3'}], 'site_info': { }} INFO:omni: ------------------------------------------------------------ INFO:omni: Completed getversion: Options as run: aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 framework: gpolab native: True Args: getversion Result Summary: Got version for 1 out of 1 aggregates INFO:omni: ============================================================ }}} That indicates that FOAM trusts the pgeni.gpolab.bbn.com SA. I also verified that it did not trust another SA, Utah ProtoGENI in this case: {{{ [13:17:00] jbs@jericho:/home/jbs +$ grep -A 8 -B 2 '\[utah\]' ~/.gcf/omni_config ## Utah ProtoGENI [utah] type = pg verbose = false ch = https://www.emulab.net/protogeni/xmlrpc/ch sa = https://www.emulab.net/protogeni/xmlrpc/sa cert = ~/.ssl/jbs@www.emulab.net.pem key = ~/.ssl/jbs@www.emulab.net.pem [13:17:37] jbs@jericho:/home/jbs +$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 getversion -f utah INFO:omni:Loading config file /home/jbs/.gcf/omni_config INFO:omni:Using control framework utah ERROR:omni.protogeni:Call for GetVersion at https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 failed.: ProtocolError: ERROR:omni.protogeni: ..... Run with --debug for more information WARNING:omni:URN: unspecified_AM_URN (url:https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1) call failed: ProtocolError: INFO:omni: ------------------------------------------------------------ INFO:omni: Completed getversion: Options as run: aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 framework: utah native: True Args: getversion Result Summary: Cannot GetVersion at https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1: ProtocolError: Got version for 0 out of 1 aggregates INFO:omni: ============================================================ }}} That indicates that it does not trust the ProtoGENI Utah SA. == Step 5: determine rack !OpenFlow state == === Overview of Step 5 === '''Using:''' * From a login to the 8264 (dataplane) switch, view the !OpenFlow configuration. * On bbn-hn, use fvctl to view the set of devices reporting to the !FlowVisor. * On bbn-hn, use foamctl to view the list of slivers. * Use the GENI AM API to view the set of datapaths advertised by FOAM. '''Verify:''' * All datapaths on the rack switch report to !FlowVisor. * All datapaths reporting to !FlowVisor come from the rack switch. * A site administrator can look at flowvisor's state using fvctl. * A site administrator can look at FOAM's state using foamctl. * FOAM advertises all datapaths on the rack switch. === Results of Step 5 from 2012-08-14 === For the first of those, the switch shows some !OpenFlow information: {{{ bbn-8264.bbn.xo>show openflow Protocol Version: 1 Openflow State: Enabled Max Flows: 10000 FDB Table Priority: 1000 Open Flow Instance ID: 1 Openflow Edge ports : None Openflow Management ports : 63 Openflow Buffering : Enabled Openflow Buffer Size: 1024 Emergency Mode : Disabled }}} Aha, and apparently that "Open Flow Instance ID: 1" tells me that 'show openflow 1' has a bunch more info: {{{ bbn-8264.bbn.xo>show openflow 1 Open Flow Instance ID: 1 DataPath ID: 0x640817f4b52a00 Vlan ID: 100 Max Retries per controller: 4 Echo Request Interval: 30 Echo Reply Timeout: 15 Emergency Timeout: 30 Operational Mode: Normal Miss Send Len: 128 Swicth Support Capabiilities: Flow Statistics : enabled Table Statistics : enabled Port Statistics : enabled Spanning Tree : disabled Reserved : disabled Reassemble IP Fragments : disabled Queue Statistics : disabled Match IP Addr in ARP Packets: disabled Swicth Support action: Output to Switch Port : enabled Set Vlan ID : enabled Set Priority : enabled Strip dot1q Header : enabled Ethernet Source Addr : enabled Ethernet Destination Addr: enabled IP Source Address : disabled IP Destination Address : disabled IP ToS : enabled TCP/UDP Source Port : disabled TCP/UDP Destination Port : disabled Output to Queue : disabled Vendor : disabled PortList Status State Config Current Advertised Supported Peer 1 d 0x201 0x2 0x200 0x0 0x0 0x0 2 d 0x201 0x2 0x240 0x0 0x0 0x0 3 d 0x201 0x2 0x240 0x0 0x0 0x0 4 d 0x201 0x2 0x240 0x0 0x0 0x0 5 d 0x201 0x2 0x200 0x0 0x0 0x0 6 d 0x201 0x2 0x240 0x0 0x0 0x0 7 d 0x201 0x2 0x240 0x0 0x0 0x0 8 d 0x201 0x2 0x240 0x0 0x0 0x0 9 d 0x201 0x2 0x200 0x0 0x0 0x0 10 d 0x201 0x2 0x240 0x0 0x0 0x0 11 d 0x201 0x2 0x240 0x0 0x0 0x0 12 d 0x201 0x2 0x240 0x0 0x0 0x0 13 d 0x201 0x2 0x200 0x0 0x0 0x0 14 d 0x201 0x2 0x240 0x0 0x0 0x0 15 d 0x201 0x2 0x240 0x0 0x0 0x0 16 d 0x201 0x2 0x240 0x0 0x0 0x0 17 e 0x200 0x2 0xc0 0x0 0x0 0x0 18 e 0x200 0x2 0xc0 0x0 0x0 0x0 19 e 0x200 0x2 0xc0 0x0 0x0 0x0 20 e 0x200 0x2 0xc0 0x0 0x0 0x0 21 e 0x200 0x2 0xc0 0x0 0x0 0x0 22 e 0x200 0x2 0xc0 0x0 0x0 0x0 23 e 0x200 0x2 0xc0 0x0 0x0 0x0 24 d 0x201 0x2 0xc0 0x0 0x0 0x0 25 d 0x201 0x2 0xc0 0x0 0x0 0x0 26 d 0x201 0x2 0xc0 0x0 0x0 0x0 27 d 0x201 0x2 0x200 0x0 0x0 0x0 28 d 0x201 0x2 0x200 0x0 0x0 0x0 29 d 0x201 0x2 0x200 0x0 0x0 0x0 30 d 0x201 0x2 0x200 0x0 0x0 0x0 31 d 0x201 0x2 0x200 0x0 0x0 0x0 32 d 0x201 0x2 0x200 0x0 0x0 0x0 33 d 0x201 0x2 0x200 0x0 0x0 0x0 34 d 0x201 0x2 0x200 0x0 0x0 0x0 35 d 0x201 0x2 0x200 0x0 0x0 0x0 36 d 0x201 0x2 0x200 0x0 0x0 0x0 37 d 0x201 0x2 0x200 0x0 0x0 0x0 38 d 0x201 0x2 0x200 0x0 0x0 0x0 39 d 0x201 0x2 0x200 0x0 0x0 0x0 40 d 0x201 0x2 0x200 0x0 0x0 0x0 41 e 0x200 0x2 0xc0 0x0 0x0 0x0 42 e 0x200 0x2 0xc0 0x0 0x0 0x0 43 e 0x200 0x2 0xc0 0x0 0x0 0x0 44 e 0x200 0x2 0xc0 0x0 0x0 0x0 45 e 0x200 0x2 0xc0 0x0 0x0 0x0 46 e 0x200 0x2 0xc0 0x0 0x0 0x0 47 e 0x200 0x2 0xc0 0x0 0x0 0x0 48 d 0x201 0x2 0xc0 0x0 0x0 0x0 49 d 0x201 0x2 0xc0 0x0 0x0 0x0 50 d 0x201 0x2 0xc0 0x0 0x0 0x0 51 d 0x201 0x2 0x200 0x0 0x0 0x0 52 d 0x201 0x2 0x200 0x0 0x0 0x0 53 d 0x201 0x2 0x200 0x0 0x0 0x0 54 d 0x201 0x2 0x200 0x0 0x0 0x0 55 d 0x201 0x2 0x200 0x0 0x0 0x0 56 d 0x201 0x2 0x200 0x0 0x0 0x0 57 d 0x201 0x2 0x200 0x0 0x0 0x0 58 d 0x201 0x2 0x200 0x0 0x0 0x0 59 d 0x201 0x2 0x200 0x0 0x0 0x0 60 e 0x200 0x2 0x2a0 0x0 0x0 0x0 61 d 0x201 0x2 0x200 0x0 0x0 0x0 62 d 0x201 0x2 0x200 0x0 0x0 0x0 64 e 0x200 0x2 0x2a0 0x0 0x0 0x0 Number of Ports: 63 Configured Controllers: IP Address: 192.168.103.10 State: Active Port: 6633 Retry Count: 0 Configured Controller Count 1 }}} So, there is only one datapath, and it points to 192.168.103.10:6633. That IP address is an interface on bbn-hn: {{{ [13:31:20] jbs@bbn-hn:/home/jbs +$ ifconfig -a | grep -A 7 -B 1 192.168.103.10 bond2.1006 Link encap:Ethernet HWaddr 5C:F3:FC:6B:10:A8 inet addr:192.168.103.10 Bcast:192.168.103.255 Mask:255.255.255.0 inet6 addr: fe80::5ef3:fcff:fe6b:10a8/64 Scope:Link UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:106891 errors:0 dropped:0 overruns:0 frame:0 TX packets:117109 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:11828203 (11.2 MiB) TX bytes:17760462 (16.9 MiB) }}} FlowVisor is running on port 6633: {{{ [13:32:26] jbs@bbn-hn:/home/jbs +$ sudo netstat -anp | grep 6633 [sudo] password for jbs: tcp 0 0 :::6633 :::* LISTEN 3517/java tcp 0 125 ::ffff:192.168.103.10:6633 ::ffff:192.168.103.4:41595 ESTABLISHED 3517/java [13:32:43] jbs@bbn-hn:/home/jbs +$ ps -efwww | grep 3517 491 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 jbs 4327 1532 0 13:33 pts/4 00:00:00 grep 3517 }}} This verifies that all (one) datapaths on the rack switch report to FlowVisor. For the second, fvctl shows only one device: {{{ [13:33:43] jbs@bbn-hn:/home/jbs +$ fvctl --passwd-file=/etc/flowvisor/fvpasswd listDevices Device 0: 00:64:08:17:f4:b5:2a:00 }}} This verifies that all datapaths reporting to !FlowVisor come from the rack switch, and a site admin can look at FV's state using fvctl. For the third, foamctl can show a list of slivers: {{{ [13:37:07] jbs@bbn-hn:/home/jbs +$ foamctl geni:list-slivers --passwd-file=/opt/foam/etc/foampasswd { "slivers": [ { "status": "Approved", "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+tuptymon:3d95c17c-412b-4451-a2c2-c79d8b0542ee", "creation": "2012-08-10 04:51:08.680747+00:00", "pend_reason": null, "expiration": "2012-09-15 00:00:00+00:00", "deleted": "False", "user": null, "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+tuptymon", "enabled": true, "email": "tupty@bbn.com", "flowvisor_slice": "3d95c17c-412b-4451-a2c2-c79d8b0542ee", "desc": "tuptymon OpenFlow resources at BBN.", "ref": null, "id": 12, "uuid": "3d95c17c-412b-4451-a2c2-c79d8b0542ee" }, { "status": "Approved", "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs16:d45b6df8-84ce-4764-811c-6bf2234efaa1", "creation": "2012-08-10 04:51:10.287736+00:00", "pend_reason": null, "expiration": "2012-10-15 19:00:00+00:00", "deleted": "False", "user": null, "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs16", "enabled": true, "email": "jbs@bbn.com", "flowvisor_slice": "d45b6df8-84ce-4764-811c-6bf2234efaa1", "desc": "JBS 16 OpenFlow resources at BBN ExoGENI.", "ref": null, "id": 19, "uuid": "d45b6df8-84ce-4764-811c-6bf2234efaa1" }, { "status": "Approved", "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs15:8ae4e90c-c6e3-4570-8e23-2357303c6a27", "creation": "2012-08-10 04:51:10.488696+00:00", "pend_reason": null, "expiration": "2012-10-15 19:00:00+00:00", "deleted": "False", "user": null, "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+jbs15", "enabled": true, "email": "jbs@bbn.com", "flowvisor_slice": "8ae4e90c-c6e3-4570-8e23-2357303c6a27", "desc": "JBS 15 OpenFlow resources at BBN ExoGENI.", "ref": null, "id": 20, "uuid": "8ae4e90c-c6e3-4570-8e23-2357303c6a27" }, { "status": "Approved", "sliver_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+trans:9d1e8717-424a-4495-a968-c7be314396dd", "creation": "2012-08-10 04:51:13.414379+00:00", "pend_reason": null, "expiration": "2012-08-14 00:00:00+00:00", "deleted": "False", "user": null, "slice_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+trans", "enabled": true, "email": "lnevers@bbn.com", "flowvisor_slice": "9d1e8717-424a-4495-a968-c7be314396dd", "desc": "Vlan translation for EG-EXP-5 resources at BBN ExoGENI.", "ref": null, "id": 33, "uuid": "9d1e8717-424a-4495-a968-c7be314396dd" } ] } }}} This verifies that a site administrator can look at FOAM's state using foamctl. For the fourth, Omni can show advertised datapaths via the GENI AM API: {{{ [13:39:38] jbs@jericho:/home/jbs +$ omni -a https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 listresources INFO:omni:Loading config file /home/jbs/.gcf/omni_config INFO:omni:Using control framework gpolab INFO:omni:Listed resources on 1 out of 1 possible aggregates. INFO:omni: INFO:omni: INFO:omni: INFO:omni: ------------------------------------------------------------ INFO:omni: Completed listresources: Options as run: aggregate: https://bbn-hn.exogeni.gpolab.bbn.com:3626/foam/gapi/1 framework: gpolab native: True Args: listresources Result Summary: Retrieved resources from 1 aggregates. Wrote rspecs from 1 aggregates. INFO:omni: ============================================================ }}} The one datapath from the switch (via FV) is advertised; this verifies that FOAM advertises all datapaths on the rack switch.