wiki:GeniNetworkStitchingTestStatus/Functional

Version 78 (modified by lnevers@bbn.com, 11 years ago) (diff)

--

Stitching Functional Tests

This page captures status and execution details for the Stitching Functional tests. For overall status see the GENI Network Stitching Test Status page and for test details see the GENI Network Stitching Test Plan page.

Last update: 06/11/13

Function State Ticket Comments
1. GENI AM API Functions Color(yellow,Complete)? #1031 #1036 #1039 #1040 #1043
2. RSpec Support Color(#63B8FF,In Progress)? #1037 #1038 gcf ticket 300 #1048 #1049 #1050
3. Negative and Boundary Color(#63B8FF,In Progress)?


State Legend Description
Color(green,Pass)? Test completed and met all criteria
Color(#98FB98,Pass: most criteria)? Test completed and met most criteria. Exceptions documented
Color(red,Fail)? Test completed and failed to meet criteria.
Color(yellow,Complete)? Test completed but will require re-execution due to expected changes
Color(orange,Blocked)? Blocked by ticketed issue(s).
Color(#63B8FF,In Progress)? Currently under test.


Test Execution

Assumptions:

Notes:

  • Stitcher currently does not support AM API v3, because the PG AMs that claimed to do V3 were doing it incorrectly, so stitcher is delivered to run AM API V2.
  • Capacity must be specified for scenarios where Utah IG is end-point.

1.0 GENI AM API Functions

The following GENI AM API functions are verified in managing stitching resources using GENI AM API V3. The GCF tool (stitcher.py) negotiates to V2 when an aggregate does not support V3.

1.1 List Resources for aggregate

List resources for the 4 aggregate listed in the assumptions and verify that Advertisement:

  • can pass rspeclint
  • contains expected VLAN information (vlanRangeAvailability, vlanTranslation).

GPO InstaGENI:

$ omni.py listresources -a ig-gpo -V3 -o
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname ig-gpo with URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm
INFO:omni:Saving output to a file.
INFO:omni:Substituting AM nickname ig-gpo with URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm
WARNING:omni:Requested API version 3, but AM https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0 uses version 2. Same aggregate talks API v3 at a different URL: https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/3.0
INFO:omni:Switching AM URL to match requested version
INFO:omni:Listed advertised resources at 1 out of 1 possible aggregates.
INFO:omni:Substituting AM nickname ig-gpo with URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=0290a8d62a7817406203ef2fd86ed99f)
INFO:omni:Writing to 'rspec-instageni-gpolab-bbn-com.xml'
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed listresources:

  Options as run:
		aggregate: ['ig-gpo']
		api_version: 3
		framework: portal
		output: True
		project: ln-prj

  Args: listresources

  Result Summary: Queried resources from 1 of 1 aggregate(s).
Wrote rspecs from 1 aggregate(s) to 1 file(s)
Saved listresources RSpec from 'urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm' (url 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/3.0') to file rspec-instageni-gpolab-bbn-com.xml;  
INFO:omni: ============================================================

$ rspeclint rspec-instageni-gpolab-bbn-com-protogeniv3.xml
Ignoring node rspec_opstate with unknown namespace http://www.geni.net/resources/rspec/ext/opstate/1

$ egrep -i "vlanRangeAvailability|vlanTranslation" rspec-instageni-gpolab-bbn-com-protogeniv3.xml 
                            <vlanRangeAvailability>                    3747-3749                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    2644-2649                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  

Internet2:

$ omni.py listresources -a i2 -V2 -o
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
INFO:omni:Saving output to a file.
INFO:omni:Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
INFO:omni:Listed advertised resources at 1 out of 1 possible aggregates.
INFO:omni:Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
INFO:omni:Writing to 'rspec-ion-internet2-edu.xml'
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed listresources:

  Options as run:
		aggregate: ['i2']
		framework: portal
		output: True
		project: ln-prj

  Args: listresources

  Result Summary: Queried resources from 1 of 1 aggregate(s).
Wrote rspecs from 1 aggregate(s) to 1 file(s)
Saved listresources RSpec from 'urn:publicid:IDN+ion.internet2.edu+authority+cm' (url 'http://geni-am.net.internet2.edu:12346') to file rspec-ion-internet2-edu.xml;  
INFO:omni: ============================================================

$ rspeclint rspec-ion-internet2-edu.xml
Line 6: Failed validation with root at element: Schemas validity error : Element '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}scheduledServices': This element is not expected. Expected is one of ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}scheduledservices, {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}negotiatedservices, {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}lifetime, {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}node, {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}port, {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}link ).
: stitching

$ egrep -i "vlanRangeAvailability|vlanTranslation" rspec-ion-internet2-edu.xml 
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    3020-3030,3100-3109,3200-3219                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    670,3726-3750                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>            

Utah ProtoGENI:

$ omni.py listresources -a pg-utah -V3 -o
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+emulab.net+authority+cm
INFO:omni:Saving output to a file.
INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+emulab.net+authority+cm
WARNING:omni:Requested API version 3, but AM https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0 uses version 2. Same aggregate talks API v3 at a different URL: https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0
INFO:omni:Switching AM URL to match requested version
INFO:omni:Listed advertised resources at 1 out of 1 possible aggregates.
INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+emulab.net+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=0c869084faca0cc290a5f7f17364933c)
INFO:omni:Writing to 'rspec-emulab-net.xml'
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed listresources:

  Options as run:
		aggregate: ['pg-utah']
		api_version: 3
		framework: portal
		output: True
		project: ln-prj

  Args: listresources

  Result Summary: Queried resources from 1 of 1 aggregate(s).
Wrote rspecs from 1 aggregate(s) to 1 file(s)
Saved listresources RSpec from 'urn:publicid:IDN+emulab.net+authority+cm' (url 'https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0') to file rspec-emulab-net.xml;  
INFO:omni: ============================================================

$ rspeclint rspec-emulab-net.xml 
Ignoring node rspec_opstate with unknown namespace http://www.geni.net/resources/rspec/ext/opstate/1

$ egrep -i "vlanRangeAvailability|vlanTranslation" rspec-emulab-net.xml        
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  

Utah InstaGENI:

$ omni.py listresources -a ig-utah -V3 -o
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname ig-utah with URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+utah.geniracks.net+authority+cm
INFO:omni:Saving output to a file.
INFO:omni:Substituting AM nickname ig-utah with URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+utah.geniracks.net+authority+cm
WARNING:omni:Requested API version 3, but AM https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/2.0 uses version 2. Same aggregate talks API v3 at a different URL: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0
INFO:omni:Switching AM URL to match requested version
INFO:omni:Listed advertised resources at 1 out of 1 possible aggregates.
INFO:omni:Substituting AM nickname ig-utah with URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+utah.geniracks.net+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=7ebb578814d5e76b124dbdd2690a75f1)
INFO:omni:Writing to 'rspec-utah-geniracks-net.xml'
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed listresources:

  Options as run:
		aggregate: ['ig-utah']
		api_version: 3
		framework: portal
		output: True
		project: ln-prj

  Args: listresources

  Result Summary: Queried resources from 1 of 1 aggregate(s).
Wrote rspecs from 1 aggregate(s) to 1 file(s)
Saved listresources RSpec from 'urn:publicid:IDN+utah.geniracks.net+authority+cm' (url 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0') to file rspec-utah-geniracks-net.xml;  
INFO:omni: ============================================================

$ rspeclint rspec-utah-geniracks-net.xml         
Ignoring node rspec_opstate with unknown namespace http://www.geni.net/resources/rspec/ext/opstate/1

$ egrep -i "vlanRangeAvailability|vlanTranslation" rspec-utah-geniracks-net.xml 
                            <vlanRangeAvailability>                    256-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  

1.2 Getversion

GPO InstaGENI:

$ omni.py getversion -V3  -a ig-gpo  
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname ig-gpo with URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm
INFO:omni:Substituting AM nickname ig-gpo with URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0, URN urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=9bab7721b01dc44643e4f3fe32fcdfde)
INFO:omni:AM URN: urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm (url: https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0) has version: ( (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=9bab7721b01dc44643e4f3fe32fcdfde).)
INFO:omni:{   'code_tag': 'd1e8fd6d3f2f912b0898ee0a90e52ebb3a155aa7',
    'geni_ad_rspec_versions': [   {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.1/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.1'},
                                  {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.geni.net/resources/rspec/3',
                                      'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd',
                                      'type': 'GENI',
                                      'version': '3'}],
    'geni_api': 2,
    'geni_api_versions': {   '1': 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/1.0',
                             '2': 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0',
                             '3': 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/3.0'},
    'geni_request_rspec_versions': [   {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.1/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.1'},
                                       {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.geni.net/resources/rspec/3',
                                           'schema': 'http://www.geni.net/resources/rspec/3/request.xsd',
                                           'type': 'GENI',
                                           'version': '3'}],
    'hostname': 'boss.instageni.gpolab.bbn.com',
    'hrn': 'bbninstageni.cm',
    'interface': 'aggregate',
    'url': 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am',
    'urn': 'urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm'}
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed getversion:

  Options as run:
		aggregate: ['ig-gpo']
		api_version: 3
		framework: portal
		noGetVersionCache: True
		project: ln-prj

  Args: getversion

  Result Summary: 
Got version for https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am/2.0
 
INFO:omni: ============================================================

Internet2 Aggregate:

$ omni.py getversion -V3  -a i2    
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Continuing with your requested API version 3, but consider next time calling Omni with '-V2'.
INFO:omni:Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
INFO:omni:AM URN: urn:publicid:IDN+ion.internet2.edu+authority+cm (url: http://geni-am.net.internet2.edu:12346) has version:
INFO:omni:{   'code_tag': '2.0-9',
    'code_url': 'git://git.onelab.eu/sfa.git@sfa-2.0-9',
    'geni_ad_rspec_versions': [   {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/flack/1',
                                                        'http://www.planet-lab.org/resources/sfa/ext/planetlab/1',
                                                        'http://hpn.east.isi.edu/rspec/ext/stitch/0.1/'],
                                      'namespace': 'http://www.geni.net/resources/rspec/3',
                                      'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd',
                                      'type': 'GENI',
                                      'version': '3'}],
    'geni_am_type': ['dcn', 'max'],
    'geni_api': 2,
    'geni_api_versions': {   '2': 'http://geni-am.net.internet2.edu:12346'},
    'geni_request_rspec_versions': [   {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/flack/1',
                                                             'http://www.planet-lab.org/resources/sfa/ext/planetlab/1',
                                                             'http://hpn.east.isi.edu/rspec/ext/stitch/0.1/'],
                                           'namespace': 'http://www.geni.net/resources/rspec/3',
                                           'schema': 'http://www.geni.net/resources/rspec/3/request.xsd',
                                           'type': 'GENI',
                                           'version': '3'}],
    'hostname': 'geni-am.net.internet2.edu',
    'hrn': 'ion.internet2.edu',
    'interface': 'aggregate',
    'sfa': 2,
    'testbed': 'myplc',
    'urn': 'urn:publicid:IDN+ion.internet2.edu+authority+cm'}
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed getversion:

  Options as run:
		aggregate: ['i2']
		api_version: 3
		framework: portal
		noGetVersionCache: True
		project: ln-prj

  Args: getversion

  Result Summary: Your AMs do not all speak requested API v3. At the URLs you are contacting, all your AMs speak AM API v2. Continuing with your requested API version 3, but consider next time calling Omni with '-V2'.
Got version for http://geni-am.net.internet2.edu:12346
 
INFO:omni: ============================================================

Utah ProtoGENI:

$ omni.py getversion -V3  -a pg-utah3
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname pg-utah3 with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0, URN urn:publicid:IDN+emulab.net+authority+cm
INFO:omni:Substituting AM nickname pg-utah3 with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0, URN urn:publicid:IDN+emulab.net+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=8459ac1e74947af546d1501471bc6b18)
INFO:omni:AM URN: urn:publicid:IDN+emulab.net+authority+cm (url: https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0) has version: ( (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=8459ac1e74947af546d1501471bc6b18).)
INFO:omni:{   'code_tag': '0a814e9fa25f2335fce9122911946353e70090b6',
    'geni_ad_rspec_versions': [   {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.1/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.1'},
                                  {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.geni.net/resources/rspec/3',
                                      'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd',
                                      'type': 'GENI',
                                      'version': '3'}],
    'geni_allocate': 'geni_disjoint',
    'geni_api': 3,
    'geni_api_versions': {   '1': 'https://www.emulab.net:12369/protogeni/xmlrpc/am/1.0',
                             '2': 'https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0',
                             '3': 'https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0'},
    'geni_credential_types': [   {   'geni_type': 'geni_sfa',
                                     'geni_version': '2'},
                                 {   'geni_type': 'geni_sfa',
                                     'geni_version': '3'}],
    'geni_request_rspec_versions': [   {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.1/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.1'},
                                       {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.geni.net/resources/rspec/3',
                                           'schema': 'http://www.geni.net/resources/rspec/3/request.xsd',
                                           'type': 'GENI',
                                           'version': '3'}],
    'geni_single_allocation': '1',
    'hostname': 'boss.emulab.net',
    'hrn': 'utahemulab.cm',
    'interface': 'aggregate',
    'peers': {   'urn:publicid:IDN+ansp.br+authority+cm': 'https://pg-boss.ansp.br:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+attcm.net+authority+cm': 'https://localhost.localdomain/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+chi.itesm.mx+authority+cm': 'https://boss.chi.itesm.mx/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+cis.fiu.edu+authority+cm': 'https://pg-boss.cis.fiu.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+cmcl.cs.cmu.edu+authority+cm': 'https://boss.cmcl.cs.cmu.edu/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+cron.loni.org+authority+cm': 'https://www.cron.loni.org/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+denali.nx+authority+cm': 'https://denali.nmc-probe.org:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+emulab.larc.usp.br+authority+cm': 'https://www.emulab.larc.usp.br:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+emulab.net+authority+cm': 'https://www.emulab.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+etri-cm1.kreonet.net+authority+cm': 'https://etri-cm1.kreonet.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+etri-cm2.kreonet.net+authority+cm': 'https://etri-cm2.kreonet.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+geni.kettering.edu+authority+cm': 'https://boss.geni.kettering.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+genicloud:hplabs+authority+sa': 'https://opencirrus-07501.hpl.hp.com:12346/',
                 'urn:publicid:IDN+genirack.nyu.edu+authority+cm': 'https://boss.genirack.nyu.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+gims.wail.wisc.edu+authority+cm': 'https://gims.wail.wisc.edu/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+host.protogeni-abac.geni.emulab.net+authority+cm': 'https://host.protogeni-abac.geni.emulab.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.arl.hpc.mil+authority+cm': 'https://boss.instageni.arl.hpc.mil:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.clemson.edu+authority+cm': 'https://boss.instageni.clemson.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.cs.princeton.edu+authority+cm': 'https://boss.instageni.cs.princeton.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm': 'https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.ku.gpeni.net+authority+cm': 'https://boss.instageni.ku.gpeni.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.northwestern.edu+authority+cm': 'https://boss.instageni.northwestern.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+instageni.rnoc.gatech.edu+authority+cm': 'https://boss.instageni.rnoc.gatech.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+ion:internet2:edu+authority+sa': 'https://geni-am.net.internet2.edu:12346',
                 'urn:publicid:IDN+jonlab.testbed.emulab.net+authority+cm': 'https://myboss.jonlab.testbed.emulab.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+kodiak.nx+authority+cm': 'https://kodiak.nmc-probe.org:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+lan.sdn.uky.edu+authority+cm': 'https://boss.lan.sdn.uky.edu:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+maxpl+authority+sa': 'http://max-myplc.dragon.maxgigapop.net:12346',
                 'urn:publicid:IDN+myelab.testbed.emulab.net+authority+cm': 'https://myboss.myelab.testbed.emulab.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+pgeni.gpolab.bbn.com+authority+cm': 'https://www.pgeni.gpolab.bbn.com:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+pgeni1.gpolab.bbn.com+authority+cm': 'https://www.pgeni1.gpolab.bbn.com:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+pgeni3.gpolab.bbn.com+authority+cm': 'https://www.pgeni3.gpolab.bbn.com:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+plc+authority+sa': 'https://planet-lab.org:12346',
                 'urn:publicid:IDN+ple+authority+sa': 'https://www.planet-lab.eu:12346/',
                 'urn:publicid:IDN+pni.uml.edu+authority+cm': 'https://pni.uml.edu/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+portal.nx+authority+cm': 'https://portal.nmc-probe.org:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+schooner.wail.wisc.edu+authority+cm': 'https://www.schooner.wail.wisc.edu/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+shadownet.uky.emulab.net+authority+cm': 'https://shadownet.uky.emulab.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+sparta.com+authority+cm': 'https://host.referencecm.amp.emulab.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+uky.emulab.net+authority+cm': 'https://www.uky.emulab.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+uml.emulab.net+authority+cm': 'https://boss.uml.emulab.net/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+utah.geniracks.net+authority+cm': 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+vwall.ilabt.iminds.be+authority+cm': 'https://www.vwall.ilabt.iminds.be:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+wall3.test.ibbt.be+authority+cm': 'https://www.wall3.test.ibbt.be:12369/protogeni/xmlrpc/am',
                 'urn:publicid:IDN+wilab2.ilabt.iminds.be+authority+cm': 'https://www.wilab2.ilabt.iminds.be:12369/protogeni/xmlrpc/am'},
    'url': 'https://www.emulab.net:12369/protogeni/xmlrpc/am',
    'urn': 'urn:publicid:IDN+emulab.net+authority+cm'}
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed getversion:

  Options as run:
		aggregate: ['pg-utah3']
		api_version: 3
		framework: portal
		noGetVersionCache: True
		project: ln-prj

  Args: getversion

  Result Summary: 
Got version for https://www.emulab.net:12369/protogeni/xmlrpc/am/3.0
 
INFO:omni: ============================================================

Utah InstaGENI:

$ omni.py getversion -V3  -a ig-utah3
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Substituting AM nickname ig-utah3 with URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0, URN urn:publicid:IDN+utah.geniracks.net+authority+cm
INFO:omni:Substituting AM nickname ig-utah3 with URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0, URN urn:publicid:IDN+utah.geniracks.net+authority+cm
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=980bc0d09b18c1f378c1d9660fcf31a9)
INFO:omni:AM URN: urn:publicid:IDN+utah.geniracks.net+authority+cm (url: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0) has version: ( (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=980bc0d09b18c1f378c1d9660fcf31a9).)
INFO:omni:{   'code_tag': '5ae9b0b4f055a6d55d372cda4b42f0a339cf0457',
    'geni_ad_rspec_versions': [   {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.1/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.1'},
                                  {   'extensions': [],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/0.2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '0.2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                      'schema': 'http://www.protogeni.net/resources/rspec/2/ad.xsd',
                                      'type': 'ProtoGENI',
                                      'version': '2'},
                                  {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                      'namespace': 'http://www.geni.net/resources/rspec/3',
                                      'schema': 'http://www.geni.net/resources/rspec/3/ad.xsd',
                                      'type': 'GENI',
                                      'version': '3'}],
    'geni_allocate': 'geni_disjoint',
    'geni_api': 3,
    'geni_api_versions': {   '1': 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/1.0',
                             '2': 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/2.0',
                             '3': 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0'},
    'geni_credential_types': [   {   'geni_type': 'geni_sfa',
                                     'geni_version': '2'},
                                 {   'geni_type': 'geni_sfa',
                                     'geni_version': '3'}],
    'geni_request_rspec_versions': [   {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.1',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.1/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.1'},
                                       {   'extensions': [],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/0.2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/0.2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '0.2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.protogeni.net/resources/rspec/2',
                                           'schema': 'http://www.protogeni.net/resources/rspec/2/request.xsd',
                                           'type': 'ProtoGENI',
                                           'version': '2'},
                                       {   'extensions': [   'http://www.protogeni.net/resources/rspec/ext/emulab/1'],
                                           'namespace': 'http://www.geni.net/resources/rspec/3',
                                           'schema': 'http://www.geni.net/resources/rspec/3/request.xsd',
                                           'type': 'GENI',
                                           'version': '3'}],
    'geni_single_allocation': '1',
    'hostname': 'boss.utah.geniracks.net',
    'hrn': 'utahgenirack.cm',
    'interface': 'aggregate',
    'url': 'https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am',
    'urn': 'urn:publicid:IDN+utah.geniracks.net+authority+cm'}
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed getversion:

  Options as run:
		aggregate: ['ig-utah3']
		api_version: 3
		framework: portal
		noGetVersionCache: True
		project: ln-prj

  Args: getversion
  Result Summary: 
Got version for https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am/3.0
INFO:omni: ============================================================

1.3 Create Sliver

Using AM API V3 commands, first create a slice and then using stitcher.py create a sliver (allocate, provision, perform operational action start/stop/restart) from GPO InstaGENI to Utah InstaGENI. Create slice:

$ omni.py createslice stitch-gpo-utah  -V3
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Created slice with Name stitch-gpo-utah, URN urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah, Expiration 2013-06-06 21:51:18
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createslice:

  Options as run:
		api_version: 3
		framework: portal
		project: ln-prj

  Args: createslice stitch-gpo-utah

  Result Summary: Created slice with Name stitch-gpo-utah, URN urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah, Expiration 2013-06-06 21:51:18
INFO:omni: ============================================================

Create the sliver using stitch-ig-gpo-ig-utah.rspec:

$ stitcher.py allocate stitch-gpo-utah  -V3 ./stitch-ig-gpo-ig-utah.rspec 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:<Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> speaks AM API v3, but sticking with v2
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
INFO:stitcher:<Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitcher:<Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitch.Aggregate:Writing to '/tmp/stitch-gpo-utah-createsliver-request-11-instageni-gpolab-bbn-com.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/stitch-gpo-utah-createsliver-request-11-instageni-gpolab-bbn-com.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=5ff2ffb474bf4666131c03dc05b55aef)
INFO:omni:Got return from CreateSliver for slice stitch-gpo-utah at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'stitch-gpo-utah-manifest-rspec-instageni-gpolab-bbn-com-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: stitch-gpo-utah
	at AM:
	URN: unspecified_AM_URN
	URL: https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: stitch-gpo-utah at AM: https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-manifest-rspec-instageni-gpolab-bbn-com-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/stitch-gpo-utah-createsliver-request-11-emulab-net.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/stitch-gpo-utah-createsliver-request-11-emulab-net.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=37b0d042a7c2aefbb95204b6ebb7e099)
INFO:omni:Got return from CreateSliver for slice stitch-gpo-utah at https://www.emulab.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'stitch-gpo-utah-manifest-rspec-www-emulab-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: stitch-gpo-utah
	at AM:
	URN: unspecified_AM_URN
	URL: https://www.emulab.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: stitch-gpo-utah at AM: https://www.emulab.net:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-manifest-rspec-www-emulab-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/stitch-gpo-utah-createsliver-request-11-ion-internet2-edu.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at http://geni-am.net.internet2.edu:12346
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/stitch-gpo-utah-createsliver-request-11-ion-internet2-edu.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah
INFO:omni:Got return from CreateSliver for slice stitch-gpo-utah at http://geni-am.net.internet2.edu:12346:
INFO:omni:Writing to 'stitch-gpo-utah-manifest-rspec-geni-am-net-internet2-edu.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: stitch-gpo-utah
	at AM:
	URN: unspecified_AM_URN
	URL: http://geni-am.net.internet2.edu:12346
 -->
INFO:omni:Wrote result of createsliver for slice: stitch-gpo-utah at AM: http://geni-am.net.internet2.edu:12346 to file stitch-gpo-utah-manifest-rspec-geni-am-net-internet2-edu.xml
INFO:stitch.Aggregate:DCN AM <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+cm>: must wait for status ready....
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: changing
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: changing
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: changing
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: changing
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
INFO:stitch.Aggregate:DCN circuit 18541 is ready
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Saving output to a file.
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Gathering resources reserved for slice stitch-gpo-utah.
INFO:omni:Listed reserved resources on 1 out of 1 possible aggregates.
INFO:omni:Writing to 'stitch-gpo-utah-manifest-rspec-geni-am-net-internet2-edu.xml'
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/stitch-gpo-utah-createsliver-request-11-utah-geniracks-net.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/stitch-gpo-utah-createsliver-request-11-utah-geniracks-net.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=142c1ce3613ea2c56c58681b9432d3b7)
INFO:omni:Got return from CreateSliver for slice stitch-gpo-utah at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'stitch-gpo-utah-manifest-rspec-utah-geniracks-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: stitch-gpo-utah
	at AM:
	URN: unspecified_AM_URN
	URL: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: stitch-gpo-utah at AM: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-manifest-rspec-utah-geniracks-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> complete.
INFO:stitch.launcher:All aggregates are complete.
INFO:stitcher:<?xml version="1.0" ?>
INFO:stitcher:  <!-- Reserved resources for:
	Slice: stitch-gpo-utah
	at AM:
	URN: stitching-combined
	URL: 
 -->
INFO:stitcher:  
<!--
Aggregate Details
{
  "url": "https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24", 
      "vlan_tag": "3748", 
      "id": "1"
    }
  ], 
  "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
{
  "url": "http://geni-am.net.internet2.edu:12346", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni", 
      "vlan_tag": "930", 
      "id": "3"
    }, 
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:ae0:bbn", 
      "vlan_tag": "3748", 
      "id": "2"
    }
  ], 
  "urn": "urn:publicid:IDN+ion.internet2.edu+authority+cm", 
  "user_requested": false, 
  "api_version": 2
}
{
  "url": "https://www.emulab.net:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+emulab.net+interface+procurveA:3.19", 
      "vlan_tag": "930", 
      "id": "5"
    }, 
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21", 
      "vlan_tag": "930", 
      "id": "4"
    }
  ], 
  "urn": "urn:publicid:IDN+emulab.net+authority+cm", 
  "user_requested": false, 
  "api_version": 2
}
{
  "url": "https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-18541", 
      "urn": "urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19", 
      "vlan_tag": "930", 
      "id": "6"
    }
  ], 
  "urn": "urn:publicid:IDN+utah.geniracks.net+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
-->
<rspec expires="2013-06-06T21:51:18Z" type="manifest" xmlns="http://www.geni.net/resources/rspec/3" xmlns:flack="http://www.protogeni.net/resources/rspec/ext/flack/1" xmlns:planetlab="http://www.planet-lab.org/resources/sfa/ext/planetlab/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3   http://www.geni.net/resources/rspec/3/manifest.xsd http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd">
	<node client_id="ig-gpo" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc1" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+5589">
		<sliver_type name="emulab-openvz"/>
		<services>
			<execute command="sudo yum install iperf -y" shell="sh"/>
			<login authentication="ssh-keys" hostname="pc1.instageni.gpolab.bbn.com" port="34362" username="lnevers"/>
		</services>
		<interface client_id="ig-gpo:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc1:eth1" mac_address="02eaa3978ef4" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+5592">
			<ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm1-14" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="ig-gpo.stitch-gpo-utah.ch-geni-net.instageni.gpolab.bbn.com"/>
	</node>
	<node client_id="ig-utah" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc5" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20762">
		<sliver_type name="emulab-openvz"/>
		<services>
			<execute command="sudo yum install iperf -y" shell="sh"/>
			<login authentication="ssh-keys" hostname="pc5.utah.geniracks.net" port="31546" username="lnevers"/>
		</services>
		<interface client_id="ig-utah:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc5:eth1" mac_address="02425aa8f240" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20765">
			<ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm5-2" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="ig-utah.stitch-gpo-utah.ch-geni-net.utah.geniracks.net"/>
	</node>
	<link client_id="link" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20764" vlantag="930">
		<!--AM urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm: sliver_id=urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+5591 vlantag=3748-->
		<component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
		<component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+cm"/>
		<component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
		<component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
		<interface_ref client_id="ig-gpo:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc1:eth1" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+5592"/>
		<interface_ref client_id="ig-utah:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc5:eth1" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20765"/>
		<property capacity="100000" dest_id="ig-utah:if0" source_id="ig-gpo:if0"/>
		<property capacity="100000" dest_id="ig-gpo:if0" source_id="ig-utah:if0"/>
	</link>
	<stitching lastUpdateTime="20130606:06:53:01" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/">
		<path id="link">
			<hop id="1">
				<link id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									3748
								</vlanRangeAvailability>
								<suggestedVLANRange>
									3748
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					2
				</nextHop>
			</hop>
			<hop id="2">
				<link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:ae0:bbn">
					<trafficEngineeringMetric>
            10
					</trafficEngineeringMetric>
					<capacity>
            100000.0
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
              l2sc
						</switchingcapType>
						<encodingType>
              ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
                  9000
								</interfaceMTU>
								<vlanRangeAvailability>
                  3748
								</vlanRangeAvailability>
								<suggestedVLANRange>
                  3748
								</suggestedVLANRange>
								<vlanTranslation>
                  true
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
          3
				</nextHop>
			</hop>
			<hop id="3">
				<link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni">
					<trafficEngineeringMetric>
            10
					</trafficEngineeringMetric>
					<capacity>
            100000.0
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
              l2sc
						</switchingcapType>
						<encodingType>
              ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
                  9000
								</interfaceMTU>
								<vlanRangeAvailability>
                  930
								</vlanRangeAvailability>
								<suggestedVLANRange>
                  930
								</suggestedVLANRange>
								<vlanTranslation>
                  true
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
          4
				</nextHop>
			</hop>
			<hop id="4">
				<link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									930
								</vlanRangeAvailability>
								<suggestedVLANRange>
									930
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					5
				</nextHop>
			</hop>
			<hop id="5">
				<link id="urn:publicid:IDN+emulab.net+interface+procurveA:3.19">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									930
								</vlanRangeAvailability>
								<suggestedVLANRange>
									930
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					6
				</nextHop>
			</hop>
			<hop id="6">
				<link id="urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									930
								</vlanRangeAvailability>
								<suggestedVLANRange>
									930
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					null
				</nextHop>
			</hop>
		</path>
	</stitching>
</rspec>

Stitching success: Reserved resources in slice stitch-gpo-utah at 4 Aggregates (including 2 intermediate aggregate(s) not in the original request), creating 1 link(s).

Note: Could not use V3 provision and poa functions with stitcher.py, slivers were ready after the allocate command.

1.4 List resources for sliver

Could not use describe function with stitcher.py:

$ stitcher.py describe stitch-gpo-utah  -V3 -o
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
ERROR:omni:Describe is only available in AM API v3+. Use ListResources with AM API v2, or specify -V3 to use AM API v3.
Describe is only available in AM API v3+. Use ListResources with AM API v2, or specify -V3 to use AM API v3.

Note: Could not use V3 describe function with stitcher.py.

1.5 Sliver status

Could not use the V3 status command with stitcher.py:

$ stitcher.py status stitch-gpo-utah  -V3 -o 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
ERROR:omni:Status is only available in AM API v3+. Use SliverStatus with AM API v2, or specify -V3 to use AM API v3.
Status is only available in AM API v3+. Use SliverStatus with AM API v2, or specify -V3 to use AM API v3.

Verify that the slivers are ready with V2:

$ stitcher.py sliverstatus stitch-gpo-utah  -V3 -o                            
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni:Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah:
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=95d114d26c2ecc2a1acb353f36a8b54c)
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am has overall SliverStatus: ready  <===READY=>
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-instageni-gpolab-bbn-com-protogeni.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=8c06b83db995ee494c7204dabf63d7d6)
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://www.emulab.net:12369/protogeni/xmlrpc/am has overall SliverStatus: ready
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-www-emulab-net-protogeni.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=e6785536c17648f68a013a818bc99066)
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am has overall SliverStatus: ready  <===READY===>
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-utah-geniracks-net-protogeni.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready
INFO:omni:Writing to 'stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json'
INFO:omni:Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM URL http://geni-am.net.internet2.edu:12346
Your AMs do not all speak requested API v3. At the URLs you are contacting, all your AMs speak AM API v2. Switching to AM API v2. Next time call Omni with '-V2'.
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day(s) on 2013-06-06 21:51:18 UTC
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am has overall SliverStatus: ready.   <===READY===>
 Saved sliverstatus on stitch-gpo-utah at AM https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-sliverstatus-instageni-gpolab-bbn-com-protogeni.json. 
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://www.emulab.net:12369/protogeni/xmlrpc/am has overall SliverStatus: ready.
 Saved sliverstatus on stitch-gpo-utah at AM https://www.emulab.net:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-sliverstatus-www-emulab-net-protogeni.json. 
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am has overall SliverStatus: ready.
 Saved sliverstatus on stitch-gpo-utah at AM https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am to file stitch-gpo-utah-sliverstatus-utah-geniracks-net-protogeni.json. 
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready.                          <===READY===>
 Saved sliverstatus on stitch-gpo-utah at AM http://geni-am.net.internet2.edu:12346 to file stitch-gpo-utah-sliverstatus-geni-am-net-internet2-edu.json. 
Returned status of slivers on 4 of 4 possible aggregates.

Note: Could not use the V3 status command with stitcher.py

1.6 Renew sliver

First slice expiration, renew slice and then sliver:

$ omni.py print_slice_expiration stitch-gpo-utah     
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day on 2013-06-06 21:51:18 UTC
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed print_slice_expiration:

  Options as run:
		framework: portal
		project: ln-prj

  Args: print_slice_expiration stitch-gpo-utah

  Result Summary: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires within 1 day(s) on 2013-06-06 21:51:18 UTC 
INFO:omni: ============================================================
$ omni.py renewslice  stitch-gpo-utah  2013-06-08
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni.pgch:Requesting new slice expiration '2013-06-08T00:00:00'
INFO:omni:Slice stitch-gpo-utah now expires at 2013-06-08 00:00:00 UTC
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires on 2013-06-08 00:00:00 UTC
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed renewslice:

  Options as run:
		framework: portal
		project: ln-prj

  Args: renewslice stitch-gpo-utah 2013-06-08

  Result Summary: Slice stitch-gpo-utah now expires at 2013-06-08 00:00:00 UTC
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires on 2013-06-08 00:00:00 UTC 
INFO:omni: ============================================================

Renew sliver:

$ stitcher.py renewsliver  stitch-gpo-utah  2013-06-08
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires on 2013-06-08 00:00:00 UTC
INFO:omni:Renewing Sliver stitch-gpo-utah until 2013-06-08 00:00:00+00:00 (UTC)
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=d93863cc6af0506115b11f956b3e55df)
INFO:omni:Renewed sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at unspecified_AM_URN (https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am) until 2013-06-08T00:00:00+00:00 (UTC)
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=95014bab7b39abcdf2f15a1a430f60c4)
INFO:omni:Renewed sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at unspecified_AM_URN++ (https://www.emulab.net:12369/protogeni/xmlrpc/am) until 2013-06-08T00:00:00+00:00 (UTC)
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=f934095065417640b84ee0c0dbd420ba)
INFO:omni:Renewed sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at unspecified_AM_URN+++ (https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am) until 2013-06-08T00:00:00+00:00 (UTC)
INFO:omni:Renewed sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah at unspecified_AM_URN+ (http://geni-am.net.internet2.edu:12346) until 2013-06-08T00:00:00+00:00 (UTC)
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires on 2013-06-08 00:00:00 UTC
Renewed slivers on 4 out of 4 aggregates for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah until 2013-06-08 00:00:00+00:00 (UTC)

1.7 Delete sliver

Could not use V3 delete command:

$ stitcher.py delete stitch-gpo-utah  -V3 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
ERROR:omni:Delete is only available in AM API v3+. Use DeleteSliver with AM API v2, or specify -V3 to use AM API v3.
Delete is only available in AM API v3+. Use DeleteSliver with AM API v2, or specify -V3 to use AM API v3.

Used V2 deletesliver to delete the sliver:

$ stitcher.py delete stitch-gpo-utah  -V3 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
ERROR:omni:Delete is only available in AM API v3+. Use DeleteSliver with AM API v2, or specify -V3 to use AM API v3.
Delete is only available in AM API v3+. Use DeleteSliver with AM API v2, or specify -V3 to use AM API v3.
lnevers@arendia:~/gcf-2.3.1/stitch-test$ stitcher.py deletesliver stitch-gpo-utah  -V3 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice stitch-gpo-utah aggregates from file ch\.geni\.net.ln-prj.stitch-gpo-utah-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
WARNING:omni:You asked to use AM API 3, but the AM(s) you are contacting do not all speak that version.
WARNING:omni:At the URLs you are contacting, all your AMs speak AM API v2. 
WARNING:omni:Switching to AM API v2. Next time call Omni with '-V2'.
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah expires on 2013-06-08 00:00:00 UTC
INFO:omni: (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=ba61835e4eb1970fa9ffd50721eaf426)
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah on unspecified_AM_URN at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=add7757854b9583b2e9920845b106071)
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah on unspecified_AM_URN++ at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=20e7d77cfcd230bacb7911d79c7eb1fe)
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah on unspecified_AM_URN+++ at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+stitch-gpo-utah on unspecified_AM_URN+ at http://geni-am.net.internet2.edu:12346
Your AMs do not all speak requested API v3. At the URLs you are contacting, all your AMs speak AM API v2. Switching to AM API v2. Next time call Omni with '-V2'.
Deleted slivers on 4 out of a possible 4 aggregates

Note: Could not use V3 delete command

1.8 Shutdown Sliver

Ran shutdown on stitched slice ln-ext1:

$ stitcher.py shutdown ln-ext1 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:Reading stitching slice ln-ext1 aggregates from file ch\.geni\.net.ln-prj.ln-ext1-amlist.txt
INFO:stitcher:Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
INFO:stitcher:Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
INFO:stitcher:Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
INFO:stitcher:Adding aggregate option https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+utah.geniracks.net+authority+cm)
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 expires within 1 day on 2013-06-07 00:50:54 UTC
ERROR:omni.pgch:Call for Shutdown urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am failed. Server says: <Fault -32600: 'Internal Error executing Shutdown'>
WARNING:omni:Failed to shutdown sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on AM unspecified_AM_URN at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am. <Fault -32600: 'Internal Error executing Shutdown'> (missing result)
ERROR:omni.pgch:Call for Shutdown urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on https://www.emulab.net:12369/protogeni/xmlrpc/am failed. Server says: <Fault -32600: 'Internal Error executing Shutdown'>
WARNING:omni:Failed to shutdown sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on AM unspecified_AM_URN++ at https://www.emulab.net:12369/protogeni/xmlrpc/am. <Fault -32600: 'Internal Error executing Shutdown'> (missing result)
ERROR:omni.pgch:Call for Shutdown urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am failed. Server says: <Fault -32600: 'Internal Error executing Shutdown'>
WARNING:omni:Failed to shutdown sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on AM unspecified_AM_URN+++ at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am. <Fault -32600: 'Internal Error executing Shutdown'> (missing result)
INFO:omni:Shutdown Sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on AM unspecified_AM_URN+ at http://geni-am.net.internet2.edu:12346
Shutdown slivers of slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext1 on 1 of 4 possible aggregates

2.0 GENI RSpec Support

GENI RSpec support tests validate that each of the RSpec (Advertisement, Manifest, and Request) provide complete and accurate information.

The Advertisement RSpec were validated as part of the listresources output validation, not being re-executed here.

The manifest RSpecs generates as part of the create sliver in the functional tests were used for validation.

The GPO InstaGENI manifest:

$ rspeclint stitch-gpo-utah-manifest-rspec-instageni-gpolab-bbn-com-protogeni.xml
Ignoring node rs:vnode with unknown namespace http://www.protogeni.net/resources/rspec/ext/emulab/1
Line 28: Failed validation with root at element: Schemas validity error : Element 
'{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities': This element is not expected. 
Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}switchingCapabilityDescriptor ).
Schemas validity error : Element '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities':
 This element is not expected. Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}
switchingCapabilityDescriptor ).
: stitching

The Internet2 manifest:

$ rspeclint stitch-gpo-utah-manifest-rspec-geni-am-net-internet2-edu.xml 
$

The Utah ProtoGENI manifest:

$ rspeclint stitch-gpo-utah-manifest-rspec-www-emulab-net-protogeni.xml 
Line 28: Failed validation with root at element: Schemas validity error : 
Element '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities': 
This element is not expected. Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}
switchingCapabilityDescriptor ).
Schemas validity error : Element '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities': 
This element is not expected. Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}
switchingCapabilityDescriptor ).
: stitching

The InstaGENI Utah manifest:

$ rspeclint stitch-gpo-utah-manifest-rspec-utah-geniracks-net-protogeni.xml 
Ignoring node rs:vnode with unknown namespace http://www.protogeni.net/resources/rspec/ext/emulab/1
Line 28: Failed validation with root at element: Schemas validity error : Element
 '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities': This element is not expected. 
Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}switchingCapabilityDescriptor ).
Schemas validity error : Element '{http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}capabilities': 
This element is not expected. Expected is ( {http://hpn.east.isi.edu/rspec/ext/stitch/0.1/}switchingCapabilityDescriptor ).
: stitching

2.1 Stitching Extensions

Verified that request RSpec with stitching extension results in an extension being used. The sliver in the functional test was also created with an RSpec that did include the stitching extension. No issues found.

Verified that request RSpec without stitching extension results in an extension being created. The sliver in the functional test did not specify an extension and thus verified that one was created. No issues found.

Verified Stitching Path support for a single point-to-point path path with one stitched slice from Utah InstaGENI to GPO InstaGENI in the functional experiment. Once set up, exchanged traffic between host endpoints. No issues found.

Verified Stitching Path support for multiple point-to-point paths by having 2 concurrent stitched slivers (ln-ext1, ln-ext2) from Utah InstaGENI to GPO InstaGENI. Set up first sliver (ln-ext1) and logged into endpoint hosts to send ping traffic. Left pings running and created the second sliver (ln-ext2). Second sliver started without any problem and started pings between end-points. Left both experiments running for 1 hour. Was able to renew sliver and get sliver status on both experiments.

2.2 Requests RSpec validation

Verified RSpec Versions 3 support by the creation of the sliver in the functional test which used a V3 RSpec. Rspec is attached as stitch-ig-gpo-ig-utah.rspec.

Verified routing profile options by including both an include and and exclude hops, and only exclude VLAN tags as follows:

First determine range to use by getting an Advertisement RSpec at each aggregate. PG Utah and IG Utah were used in this scenario:

IG Utah Advertisement details:

      <node id="urn:publicid:IDN+utah.geniracks.net+node+procurve2">
          <port id="urn:publicid:IDN+utah.geniracks.net+stitchport+procurve2:1.19">
              <capacity>            1000000 </capacity>
              <maximumReservableCapacity> 1000000          </maximumReservableCapacity>
              <minimumReservableCapacity> 1000          </minimumReservableCapacity>
              <link id="urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19">
                  <remoteLinkId> urn:publicid:IDN+emulab.net+interface+procurveA:3.19 </remoteLinkId>
                  <capacity>              1000000 </capacity>
                  <maximumReservableCapacity> 1000000            </maximumReservableCapacity>
                  <minimumReservableCapacity> 1000            </minimumReservableCapacity>
<vlanRangeAvailability> 256-1000 </vlanRangeAvailability>
<vlanTranslation>                    false </vlanTranslation>
              </link>
          </port>
      </node>

PG Utah Advertisement details:

      <node id="urn:publicid:IDN+emulab.net+node+procurveA">
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurveA:3.19">
              <capacity>            1000000 </capacity>
              <maximumReservableCapacity> 1000000          </maximumReservableCapacity>
              <minimumReservableCapacity> 1000          </minimumReservableCapacity>
              <link id="urn:publicid:IDN+emulab.net+interface+procurveA:3.19">
                  <remoteLinkId> urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19 </remoteLinkId>
                  <capacity>              1000000 </capacity>
                  <maximumReservableCapacity> 1000000            </maximumReservableCapacity>
                  <minimumReservableCapacity> 1000            </minimumReservableCapacity>
<vlanRangeAvailability> 750-1000 </vlanRangeAvailability>
<vlanTranslation>                    false </vlanTranslation>
              </link>
          </port>
      </node> 

The PG Utah site uses VLAN Rang 750-1000, so we will exclude part of the range (750-900) and include the IG Utah hop:

$ stitcher.py createsliver ln-excl-incl ./stitch-pg-utah-ig-utah.rspec --includehop urn:publicid:IDN+utah.geniracks.net+stitchport+procurve2:1.19 --excludehop urn:publicid:IDN+emulab.net+stitchport+procurveA:3.19=750-900 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework pg
INFO:stitcher:<Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitcher:<Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitch.Aggregate:Writing to '/tmp/ln-excl-incl-createsliver-request-11-emulab-net.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-excl-incl expires on 2013-06-08 17:20:22 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-excl-incl-createsliver-request-11-emulab-net.xml for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-excl-incl
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=bd5bbddf0d764fb9093b35fd5b5255bb)
INFO:omni:Got return from CreateSliver for slice ln-excl-incl at https://www.emulab.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'ln-excl-incl-manifest-rspec-www-emulab-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: ln-excl-incl
	at AM:
	URN: unspecified_AM_URN
	URL: https://www.emulab.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: ln-excl-incl at AM: https://www.emulab.net:12369/protogeni/xmlrpc/am to file ln-excl-incl-manifest-rspec-www-emulab-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/ln-excl-incl-createsliver-request-11-utah-geniracks-net.xml'
INFO:stitch.Aggregate:
	Stitcher doing createsliver at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-excl-incl expires on 2013-06-08 17:20:22 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-excl-incl-createsliver-request-11-utah-geniracks-net.xml for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-excl-incl
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=25ca5e1193e29ae7962279f2046d6b62)
INFO:omni:Got return from CreateSliver for slice ln-excl-incl at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'ln-excl-incl-manifest-rspec-utah-geniracks-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
	Slice: ln-excl-incl
	at AM:
	URN: unspecified_AM_URN
	URL: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: ln-excl-incl at AM: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am to file ln-excl-incl-manifest-rspec-utah-geniracks-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> complete.
INFO:stitch.launcher:All aggregates are complete.
INFO:stitcher:<?xml version="1.0" ?>
INFO:stitcher:  <!-- Reserved resources for:
	Slice: ln-excl-incl
	at AM:
	URN: stitching-combined
	URL: 
 -->
INFO:stitcher:  
<!--
Aggregate Details
{
  "url": "https://www.emulab.net:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": null, 
      "urn": "urn:publicid:IDN+emulab.net+interface+procurveA:3.19", 
      "vlan_tag": "916", 
      "id": "1"
    }
  ], 
  "urn": "urn:publicid:IDN+emulab.net+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
{
  "url": "https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": null, 
      "urn": "urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19", 
      "vlan_tag": "916", 
      "id": "2"
    }
  ], 
  "urn": "urn:publicid:IDN+utah.geniracks.net+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
-->
<rspec expires="2013-06-08T17:20:22Z" type="manifest" xmlns="http://www.geni.net/resources/rspec/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3   http://www.geni.net/resources/rspec/3/manifest.xsd http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd">
	<node client_id="pg-utah" component_id="urn:publicid:IDN+emulab.net+node+pc545" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+emulab.net+sliver+133280">
		<sliver_type name="emulab-openvz"/>
		<interface client_id="pg-utah:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc545:eth2" mac_address="023abd731f86" sliver_id="urn:publicid:IDN+emulab.net+sliver+133283">
			<ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm545-1" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="pg-utah.ln-excl-incl.pgeni-gpolab-bbn-com.emulab.net"/>
		<services>
			<login authentication="ssh-keys" hostname="pc545.emulab.net" port="33594" username="lnevers"/>
		</services>
	</node>
	<node client_id="ig-utah" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc1" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20833">
		<sliver_type name="emulab-openvz"/>
		<interface client_id="ig-utah:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc1:eth1" mac_address="0209cdfdc524" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20836">
			<ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm1-4" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="ig-utah.ln-excl-incl.pgeni-gpolab-bbn-com.utah.geniracks.net"/>
		<services>
			<login authentication="ssh-keys" hostname="pc1.utah.geniracks.net" port="32314" username="lnevers"/>
		</services>
	</node>
	<link client_id="link" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20835" vlantag="916">
		<!--AM urn:publicid:IDN+emulab.net+authority+cm: sliver_id=urn:publicid:IDN+emulab.net+sliver+133282 vlantag=916-->
		<component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
		<component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
		<interface_ref client_id="pg-utah:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc545:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+133283"/>
		<interface_ref client_id="ig-utah:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc1:eth1" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+20836"/>
		<property dest_id="ig-utah:if0" source_id="pg-utah:if0"/>
		<property dest_id="pg-utah:if0" source_id="ig-utah:if0"/>
	</link>
	<stitching lastUpdateTime="20130607:09:50:43" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/">
		<path id="link">
			<hop id="1">
				<link id="urn:publicid:IDN+emulab.net+interface+procurveA:3.19">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									916
								</vlanRangeAvailability>
								<suggestedVLANRange>
									916
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					2
				</nextHop>
			</hop>
			<hop id="2">
				<link id="urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									916
								</vlanRangeAvailability>
								<suggestedVLANRange>
									916
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					null
				</nextHop>
			</hop>
		</path>
	</stitching>
</rspec>

Stitching success: Reserved resources in slice ln-excl-incl at 2 Aggregates (including 0 intermediate aggregate(s) not in the original request), creating 1 link(s).

The include/excludes hops and VLAN tags were used as requested.

2.3 Bandwidth and VLAN Negotiation

The stitcher tool does not directly negotiate bandwidth. Bandwidth can be requested in the link property element. Some aggregates along the network path may refuse the bandwidth request and allocate some other amount.

VLAN Negotiation is accomplished by the stitcher.py trying to request a VLAN in the available range, and if requested VLAN is not available, then the next VLAN in the range is tried. This is repeated until a requested VLAN is available. Following is a capture that show stitcher going through available range of VLANs:

py createsliver ln-ext-2l ./stitch-ig-gpo-ig-utah-2links-capacity.rspec 
INFO:stitcher:Loading config file /home/lnevers/.gcf/omni_config
INFO:stitcher:Using control framework portal
INFO:stitcher:<Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitcher:<Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitcher:<Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> speaks AM API v3, but sticking with v2
INFO:stitch.Aggregate:Writing to '/tmp/ln-ext-2l-createsliver-request-11-instageni-gpolab-bbn-com.xml'
INFO:stitch.Aggregate:
        Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-ext-2l-createsliver-request-11-instageni-gpolab-bbn-com.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l
ERROR:omni: {'output': 'vlan tag for link2 not available', 'code': {'protogeni_error_log': 'urn:publicid:IDN+instageni.gpolab.bbn.com+log+a73a5adbbee7517a5b08b44c235970a3', 'am_type': 'protogeni', 'geni_code': 1, 'am_code': 1, 'protogeni_error_url': 'https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=a73a5adbbee7517a5b08b44c235970a3'}, 'value': 0}
INFO:stitch.Aggregate:Got AMAPIError doing createsliver ln-ext-2l at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm>: AMAPIError: Error from Aggregate: code 1. protogeni AM code: 1: vlan tag for link2 not available.
INFO:stitch.launcher:Will put <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> back in the pool to allocate. Got Retry <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> 2th time with new suggested VLANs
INFO:stitch.launcher:Pausing for 10 seconds for Aggregates to free up resources...


INFO:stitch.Aggregate:Writing to '/tmp/ln-ext-2l-createsliver-request-11-emulab-net.xml'
INFO:stitch.Aggregate:
        Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-ext-2l-createsliver-request-11-emulab-net.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=4357c82f20118d7093a53adcf0af8598)
INFO:omni:Got return from CreateSliver for slice ln-ext-2l at https://www.emulab.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'ln-ext-2l-manifest-rspec-www-emulab-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
        Slice: ln-ext-2l
        at AM:
        URN: unspecified_AM_URN
        URL: https://www.emulab.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: ln-ext-2l at AM: https://www.emulab.net:12369/protogeni/xmlrpc/am to file ln-ext-2l-manifest-rspec-www-emulab-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/ln-ext-2l-createsliver-request-12-instageni-gpolab-bbn-com.xml'
INFO:stitch.Aggregate:
        Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-ext-2l-createsliver-request-12-instageni-gpolab-bbn-com.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l
ERROR:omni: {'output': 'vlan tag for link2 not available', 'code': {'protogeni_error_log': 'urn:publicid:IDN+instageni.gpolab.bbn.com+log+a4afda955fc28fa5c8c95e9b9ba303d0', 'am_type': 'protogeni', 'geni_code': l, 'am_code': 1, 'protogeni_error_url': 'https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=a4afda955fc28fa5c8c95e9b9ba303d0'}, 'value': 0}
INFO:stitch.Aggregate:Got AMAPIError doing createsliver ln-ext-2l at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm>: AMAPIError: Error from Aggregate: code 1. protogeni AM code: 1: vlan tag for link2 not available.
INFO:stitch.launcher:Will put <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> back in the pool to allocate. Got Retry <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> 3th time with new suggested VLANs
INFO:stitch.launcher:Pausing for 10 seconds for Aggregates to free up resources...


INFO:stitch.Aggregate:Writing to '/tmp/ln-ext-2l-createsliver-request-11-utah-geniracks-net.xml'
INFO:stitch.Aggregate:
        Stitcher doing createsliver at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-ext-2l-createsliver-request-11-utah-geniracks-net.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=9bd8416e4b9d5eb1c153925cd6b5cd5f)
INFO:omni:Got return from CreateSliver for slice ln-ext-2l at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am:
INFO:omni:Writing to 'ln-ext-2l-manifest-rspec-utah-geniracks-net-protogeni.xml'
INFO:omni:<!-- Reserved resources for:
        Slice: ln-ext-2l
        at AM:
        URN: unspecified_AM_URN
        URL: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
 -->
INFO:omni:Wrote result of createsliver for slice: ln-ext-2l at AM: https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am to file ln-ext-2l-manifest-rspec-utah-geniracks-net-protogeni.xml
INFO:stitch.Aggregate:Allocation at <Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> complete.
INFO:stitch.Aggregate:Writing to '/tmp/ln-ext-2l-createsliver-request-13-instageni-gpolab-bbn-com.xml'
INFO:stitch.Aggregate:
        Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni:Creating sliver(s) from rspec file /tmp/ln-ext-2l-createsliver-request-13-instageni-gpolab-bbn-com.xml for slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l
ERROR:omni: {'output': 'vlan tag for link2 not available', 'code': {'protogeni_error_log': 'urn:publicid:IDN+instageni.gpolab.bbn.com+log+6bdb7562233197a6ac4626385e34bf91', 'am_type': 'protogeni', 'geni_code': 1, 'am_code': 1, 'protogeni_error_url': 'https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=6bdb7562233197a6ac4626385e34bf91'}, 'value': 0}
INFO:stitch.Aggregate:Got AMAPIError doing createsliver ln-ext-2l at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm>: AMAPIError: Error from Aggregate: code 1. protogeni AM code: 1: vlan tag for link2 not available.
INFO:stitch.Aggregate:Cannot redo request locally: <Hop u'urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24' on path u'link2'> available VLAN range too small: 3747. VLANs unavailable: 3747-3749
WARNING:stitcher:Stitching failed with an error: Stitching failed trying createsliver at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm>: AMAPIError: Error from Aggregate: code 1. protogeni AM code: 1: vlan tag for link2 not available.
WARNING:stitcher:Had reservation at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:stitch.Aggregate:Doing deletesliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni.pgch:Detected busy result for DeleteSliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l at https://www.emulab.net:12369/protogeni/xmlrpc/am. Retrying in 10 seconds.
INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=5f4ed7194b73a5327a6c2c24a6d21b5e)
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l on unspecified_AM_URN at https://www.emulab.net:12369/protogeni/xmlrpc/am
WARNING:stitcher:Deleted reservation at https://www.emulab.net:12369/protogeni/xmlrpc/am
WARNING:stitcher:Had reservation at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:stitch.Aggregate:Doing deletesliver at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework portal
INFO:omni:Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l expires within 1 day on 2013-06-07 19:23:37 UTC
INFO:omni: (PG log url - look here for details on any failures: https://boss.utah.geniracks.net/spewlogfile.php3?logfile=8a181235b7fa80872551670c62357df9)
INFO:omni:Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ln-ext-2l on unspecified_AM_URN at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
WARNING:stitcher:Deleted reservation at https://boss.utah.geniracks.net:12369/protogeni/xmlrpc/am
Stitching failed trying createsliver at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm>: AMAPIError: Error from Aggregate: code 1. protogeni AM code: 1: vlan tag for link2 not available.

2.4 RSpec Input Validation

Tests in this section validated the handling of various RSpec input scenarios. Each planned scenario is captured below:

2.4.1 Request link with only 1 component_manager tag

The following RSpec was used defining only one component_manager for PG Utah and not including the IG Utah component_manager:

...
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="ig-utah:if0">
      <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="ig-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-utah:if0"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if0"/>
  </link>
...

The scenario results in the stitcher evaluating the link and determining that there is no stitching that needs to take place, thus passing the request onto omni.py. Omni exits because the -a argument is not given:

$ rspeclint stitch-1component-tag.rspec
lnevers@arendia:~/gcf-2.4-preview/stitch-test/rspec-input$ omni.py createslice ln-stitch1
09:36:40 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
09:36:40 INFO     omni: Using control framework pg
09:36:41 INFO     omni: Created slice with Name ln-stitch1, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-stitch1, Expiration 2013-06-11 14:36:41+00:00
09:36:41 INFO     omni:  ------------------------------------------------------------
09:36:41 INFO     omni:  Completed createslice:
  Options as run:
		framework: pg
  Args: createslice ln-stitch1
  Result Summary: Created slice with Name ln-stitch1, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln-stitch1, Expiration 2013-06-11 14:36:41+00:00
09:36:41 INFO     omni:  ============================================================

$ stitcher.py createsliver ln-stitch1 ./stitch-1component-tag.rspec 
09:37:52 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
09:37:52 INFO     stitcher: Using control framework pg
09:37:52 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
09:37:52 INFO     omni: Using control framework pg
09:38:01 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://www.schooner.wail.wisc.edu/protogeni/xmlrpc/am failed.: ProtocolError: <ProtocolError for www.schooner.wail.wisc.edu/protogeni/xmlrpc/am: 403 Forbidden>
09:38:01 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:38:21 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://pg-boss.ansp.br:12369/protogeni/xmlrpc/am failed.: Unknown socket error: [Errno 113] No route to host
09:38:21 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:38:43 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://opencirrus-07501.hpl.hp.com:12346/ failed.: Unknown SSL error The read operation timed out
09:38:43 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:38:53 ERROR    omni: Missing -a argument: specify an aggregate where you want the reservation.
Missing -a argument: specify an aggregate where you want the reservation.

2.4.2 Request link with 2 interface_ref elements but no component_manager elements

The following RSpec was used defining only no component_manager for either aggregate associated with the link:

...
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="ig-utah:if0">
      <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link">
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="ig-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-utah:if0"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if0"/>
  </link>
...

The test shows the same failure as the previous scenario, due to stitcher evaluating the link, determining that the request is not a stitching scenario due to the lack on component managers in the link definition, and handing off the request to omny which fails due to the missing aggregate "-a" argument.

$ stitcher.py createsliver ln-stitch1 ./stitch-2if-ref-no-comp-mgr.rspec 
09:55:55 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
09:55:55 INFO     stitcher: Using control framework pg
09:55:55 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
09:55:55 INFO     omni: Using control framework pg
09:56:03 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://www.schooner.wail.wisc.edu/protogeni/xmlrpc/am failed.: ProtocolError: <ProtocolError for www.schooner.wail.wisc.edu/protogeni/xmlrpc/am: 403 Forbidden>
09:56:03 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:56:21 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://pg-boss.ansp.br:12369/protogeni/xmlrpc/am failed.: Unknown socket error: [Errno 113] No route to host
09:56:21 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:56:44 ERROR    omni.protogeni: Call for Test PG AM for GENI API compatibilitity at https://opencirrus-07501.hpl.hp.com:12346/ failed.: Unknown SSL error The read operation timed out
09:56:44 ERROR    omni.protogeni:     ..... Run with --debug for more information
09:56:52 ERROR    omni: Missing -a argument: specify an aggregate where you want the reservation.
Missing -a argument: specify an aggregate where you want the reservation.

2.4.3 Request link with 2 local interface_ref elements and 1 remote interface_ref element

In this scenario one VM has two interfaces on the same network as a remote which only has one interface. The RSpec:

...
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="pg-utah:if1">
      <ip address="10.22.4.3" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="ig-utah:if0">
      <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="pg-utah:if1"/>
    <interface_ref client_id="ig-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-utah:if0"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if0"/>
    <property source_id="pg-utah:if1" dest_id="ig-utah:if0"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if1"/>
    <property source_id="pg-utah:if1" dest_id="pg-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="pg-utah:if1"/>
  </link>
....

Using the rspec above RSpec results in the rspec being evaluated as a multi-point topology, which is not supported until after GEC 17.

$ omni.py createslice lnstitcha 
10:49:20 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
10:49:20 INFO     omni: Using control framework pg
10:49:22 INFO     omni: Created slice with Name lnstitcha, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitcha, Expiration 2013-06-11 15:49:22+00:00
10:49:22 INFO     omni:  ------------------------------------------------------------
10:49:22 INFO     omni:  Completed createslice:
  Options as run:
		framework: pg
  Args: createslice lnstitcha
  Result Summary: Created slice with Name lnstitcha, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitcha, Expiration 2013-06-11 15:49:22+00:00
10:49:22 INFO     omni:  ============================================================

$ rspeclint stitch-2if-local-rem-if-ref.rspec 

$ stitcher.py createsliver lnstitcha ./stitch-2if-local-rem-if-ref.rspec 
10:54:21 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
10:54:21 INFO     stitcher: Using control framework pg
StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec::
CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec.

2.4.4 Request link with an interface_ref whose client_id is not the ID for any interface in the RSpec

An RSpec that has interface_ref that use client_ids not in the interfaces defined in the RSpec was defined, which looks as follows:

...
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="ig-utah:if0">
      <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="ypg-utah:if0"/>
    <interface_ref client_id="xig-utah:if0"/>
    <property source_id="ypg-utah:if0" dest_id="xig-utah:if0"/>
    <property source_id="xig-utah:if0" dest_id="ypg-utah:if0"/>
  </link>
...

Created a slice and tried to stitch a sliver:

$ rspeclint stitch-mismatch-if-ref-cl-id.rspec 
$ omni.py createslice lnst
11:03:50 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:03:50 INFO     omni: Using control framework pg
11:03:52 INFO     omni: Created slice with Name lnst, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnst, Expiration 2013-06-11 16:03:52+00:00
11:03:52 INFO     omni:  ------------------------------------------------------------
11:03:52 INFO     omni:  Completed createslice:
  Options as run:
		framework: pg
  Args: createslice lnst
  Result Summary: Created slice with Name lnst, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnst, Expiration 2013-06-11 16:03:52+00:00
11:03:52 INFO     omni:  ============================================================

$ stitcher.py createsliver lnst ./stitch-mismatch-if-ref-cl-id.rspec 
11:04:31 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
11:04:31 INFO     stitcher: Using control framework pg
StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec::
CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec.

2.4.5 Request stitching extension with a path that has 0 hops

Created a request RSpec that meets that defines a 0 hop scenario from PG Utah to PG Utah:

...
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah2:if0">
      <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="pg-utah2:if0"/>
    <property source_id="pg-utah:if0" dest_id="pg-utah2:if0"/>
    <property source_id="pg-utah2:if0" dest_id="pg-utah:if0"/>
  </link>
...

Created the slice and then a sliver:

$ rspeclint stitch-0hop.rspec
$ omni.py createslice 0hop
11:09:23 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:09:23 INFO     omni: Using control framework pg
11:09:24 INFO     omni: Created slice with Name 0hop, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+0hop, Expiration 2013-06-11 16:09:24+00:00
11:09:24 INFO     omni:  ------------------------------------------------------------
11:09:24 INFO     omni:  Completed createslice:
  Options as run:
		framework: pg
  Args: createslice 0hop
  Result Summary: Created slice with Name 0hop, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+0hop, Expiration 2013-06-11 16:09:24+00:00
11:09:24 INFO     omni:  ============================================================
lnevers@arendia:~/gcf-2.4-preview/stitch-test/rspec-input$ stitcher.py createsliver 0hop ./stitch-0hop.rspec 
11:09:40 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
11:09:40 INFO     stitcher: Using control framework pg
StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec::
CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec.
$ 

Note: Stitcher should recognize that this is not a stitching scenario. The gcf ticket ~~300~~ captured the defect and has been addressed.

2.4.6 Request capacity below minimum reservable capacity

This scenario should be run for each stitching aggregate. First scenario includes InstaGENI Utah which define the following capacity: a) minimumReservableCapacity = 1000 and b) maximumReservableCapacity = 1000000

The test requests a link capacity of 666, which is below the minimum reservable capacity of 1000. The following link definition was used:

...
  <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="ig-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-utah:if0" capacity="666"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if0" capacity="666"/>
  </link>
...

The stitcher createsliver with the default capacity and does not report an error ticket #1048.

2.4.7 Request capacity above maximum reservable capacity

This scenario should be run for each stitching aggregate. First scenario includes InstaGENI Utah which define the following capacity: a) minimumReservableCapacity = 1000 and b) maximumReservableCapacity = 1000000

The test requests a link capacity of 1999999 which is above the maximum reservable capacity of 1000000. The following link definition was used:

 <link client_id="link">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="ig-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-utah:if0" capacity="1999999"/>
    <property source_id="ig-utah:if0" dest_id="pg-utah:if0" capacity="1999999"/>
  </link>

The stitcher createsliver keeps trying to set up and invalid scenario. A ticket was written and this is no longer the default behavior, stitcher.py now exits. #1049.

$ stitcher.py createsliver ln1999999 ./stitch-capacity-1999999.rspec 
12:31:11 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
12:31:11 INFO     stitcher: Using control framework pg
12:31:14 INFO     stitcher: <Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
12:31:14 INFO     stitcher: <Aggregate urn:publicid:IDN+utah.geniracks.net+authority+cm> speaks AM API v3, but sticking with v2
12:31:14 INFO     stitch.Aggregate: Writing to '/tmp/ln1999999-createsliver-request-11-emulab-net.xml'
12:31:14 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
12:31:14 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
12:31:14 INFO     omni: Using control framework pg
12:31:15 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln1999999 expires on 2013-06-11 17:30:45 UTC
12:31:15 INFO     omni: Creating sliver(s) from rspec file /tmp/ln1999999-createsliver-request-11-emulab-net.xml for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln1999999
12:32:14 ERROR    omni:  {'output': '*** ERROR: mapper: Reached run limit. Giving up.\nseed = 1370903756\nPhysical Graph: 276\nCalculating shortest paths on switch fabric.\nVirtual Graph: 2\nGenerating physical equivalence classes:204\nType precheck:\nType precheck passed.\nNode mapping precheck:\nNode mapping precheck succeeded\nPolicy precheck:\nPolicy precheck succeeded\nAnnealing.\nAdjusting dificulty estimate for fixed nodes, 1 remain.\nDoing melting run\nReverting: forced\nReverting to best solution\nDone\n   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds\nWith 1 violations\nIters to find best score:  12\nViolations: 1\n  unassigned:  0\n  pnode_load:  0\n  no_connect:  1\n  link_users:  0\n  bandwidth:   0\n  desires:     0\n  vclass:      0\n  delay:       0\n  trivial mix: 0\n  subnodes:    0\n  max_types:   0\n  endpoints:   0\nNodes:\nig-utah interconnect-instageni\npg-utah pc411\nEnd Nodes\nEdges:\nlinksimple/link/pg-utah:0,ig-utah:0 Mapping Failed\nEnd Edges\nEnd solution\nSummary:\ninterconnect-instageni 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=interconnect-vm\n    ?+ram: used=128 total=0\n    ?+cpupercent: used=0 total=92\n    ?+rampercent: used=0 total=80\npc411 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=pcvm\n    ?+cpu: used=0 total=2400\n    ?+ram: used=128 total=11008\n    ?+cpupercent: used=0 total=92\n    ?+rampercent: used=0 total=80\nTotal physical nodes used: 2\nEnd summary\nASSIGN FAILED:\nType precheck passed.\nNode mapping precheck succeeded\nPolicy precheck succeeded\nAnnealing.\nAdjusting dificulty estimate for fixed nodes, 1 remain.\nDoing melting run\nReverting: forced\nReverting to best solution\nDone\n   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds\n  unassigned:  0\n  pnode_load:  0\n  no_connect:  1\n  link_users:  0\n  bandwidth:   0\n  desires:     0\n  vclass:      0\n  delay:       0\n  trivial mix: 0\n  subnodes:    0\n  max_types:   0\n  endpoints:   0\n', 'code': {'protogeni_error_log': 'urn:publicid:IDN+emulab.net+log+8d0e01debe2f270931c7ba281ccf80c8', 'am_type': 'protogeni', 'geni_code': 2, 'am_code': 2, 'protogeni_error_url': 'https://www.emulab.net/spewlogfile.php3?logfile=8d0e01debe2f270931c7ba281ccf80c8'}, 'value': 'Could not map to resources'}
12:32:14 INFO     stitch.Aggregate: Got AMAPIError doing createsliver ln1999999 at <Aggregate urn:publicid:IDN+emulab.net+authority+cm>: AMAPIError: Error from Aggregate: code 2. protogeni AM code: 2: *** ERROR: mapper: Reached run limit. Giving up.
seed = 1370903756
Physical Graph: 276
Calculating shortest paths on switch fabric.
Virtual Graph: 2
Generating physical equivalence classes:204
Type precheck:
Type precheck passed.
Node mapping precheck:
Node mapping precheck succeeded
Policy precheck:
Policy precheck succeeded
Annealing.
Adjusting dificulty estimate for fixed nodes, 1 remain.
Doing melting run
Reverting: forced
Reverting to best solution
Done
   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds
With 1 violations
Iters to find best score:  12
Violations: 1
  unassigned:  0
  pnode_load:  0
  no_connect:  1
  link_users:  0
  bandwidth:   0
  desires:     0
  vclass:      0
  delay:       0
  trivial mix: 0
  subnodes:    0
  max_types:   0
  endpoints:   0
Nodes:
ig-utah interconnect-instageni
pg-utah pc411
End Nodes
Edges:
linksimple/link/pg-utah:0,ig-utah:0 Mapping Failed
End Edges
End solution
Summary:
interconnect-instageni 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=interconnect-vm
    ?+ram: used=128 total=0
    ?+cpupercent: used=0 total=92
    ?+rampercent: used=0 total=80
pc411 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=pcvm
    ?+cpu: used=0 total=2400
    ?+ram: used=128 total=11008
    ?+cpupercent: used=0 total=92
    ?+rampercent: used=0 total=80
Total physical nodes used: 2
End summary
ASSIGN FAILED:
Type precheck passed.
Node mapping precheck succeeded
Policy precheck succeeded
Annealing.
Adjusting dificulty estimate for fixed nodes, 1 remain.
Doing melting run
Reverting: forced
Reverting to best solution
Done
   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds
  unassigned:  0
  pnode_load:  0
  no_connect:  1
  link_users:  0
  bandwidth:   0
  desires:     0
  vclass:      0
  delay:       0
  trivial mix: 0
  subnodes:    0
  max_types:   0
  endpoints:   0
.
12:32:14 WARNING  stitcher: Stitching failed but will retry: Circuit reservation failed at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> (AMAPIError: Error from Aggregate: code 2. protogeni AM code: 2: *** ERROR: mapper: Reached run limit. Giving up.
seed = 1370903756
Physical Graph: 276
Calculating shortest paths on switch fabric.
Virtual Graph: 2
Generating physical equivalence classes:204
Type precheck:
Type precheck passed.
Node mapping precheck:
Node mapping precheck succeeded
Policy precheck:
Policy precheck succeeded
Annealing.
Adjusting dificulty estimate for fixed nodes, 1 remain.
Doing melting run
Reverting: forced
Reverting to best solution
Done
   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds
With 1 violations
Iters to find best score:  12
Violations: 1
  unassigned:  0
  pnode_load:  0
  no_connect:  1
  link_users:  0
  bandwidth:   0
  desires:     0
  vclass:      0
  delay:       0
  trivial mix: 0
  subnodes:    0
  max_types:   0
  endpoints:   0
Nodes:
ig-utah interconnect-instageni
pg-utah pc411
End Nodes
Edges:
linksimple/link/pg-utah:0,ig-utah:0 Mapping Failed
End Edges
End solution
Summary:
interconnect-instageni 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=interconnect-vm
    ?+ram: used=128 total=0
    ?+cpupercent: used=0 total=92
    ?+rampercent: used=0 total=80
pc411 1 vnodes, 0 nontrivial BW, 0 trivial BW, type=pcvm
    ?+cpu: used=0 total=2400
    ?+ram: used=128 total=11008
    ?+cpupercent: used=0 total=92
    ?+rampercent: used=0 total=80
Total physical nodes used: 2
End summary
ASSIGN FAILED:
Type precheck passed.
Node mapping precheck succeeded
Policy precheck succeeded
Annealing.
Adjusting dificulty estimate for fixed nodes, 1 remain.
Doing melting run
Reverting: forced
Reverting to best solution
Done
   BEST SCORE:  4.6 in 16840 iters and 0.493181 seconds
  unassigned:  0
  pnode_load:  0
  no_connect:  1
  link_users:  0
  bandwidth:   0
  desires:     0
  vclass:      0
  delay:       0
  trivial mix: 0
  subnodes:    0
  max_types:   0
  endpoints:   0
.). Try again from the SCS
12:32:14 INFO     stitcher: Pausing for 30 seconds for Aggregates to free up resources...


12:32:44 INFO     stitcher: Calling SCS for the 2th time...
12:32:44 INFO     stitch.Aggregate: Writing to '/tmp/ln1999999-createsliver-request-21-emulab-net.xml'
12:32:44 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
12:32:44 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
12:32:44 INFO     omni: Using control framework pg
12:32:46 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln1999999 expires on 2013-06-11 17:30:45 UTC
12:32:46 INFO     omni: Creating sliver(s) from rspec file /tmp/ln1999999-createsliver-request-21-emulab-net.xml for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+ln1999999
...

2.4.8 Invalid Path options

Verify the options (geni_hold_path, geni_start_time, geni_end_time) defined at http://geni.maxgigapop.net/twiki/bin/view/GENI/NetworkStitchingAPI.

Note: These options are not yet available via the GENI AM API. Ticket #1050

2.4.9 Invalid Routing profiles

(not sure what this is and how to do it ?)

2.4.9 Invalid Path input - Include/exclude invalid VLANs

For this scenario, the initial plan was to have a stitching path added to the RSpec requesting both a valid and an invalid VLAN, but command line options are available to exclude/include path information such as VLANs. The following stitcher command line options were used for this test:

  --excludehop=HOP_EXCLUDE           Hop URN to exclude from any path
  --includehop=HOP_INCLUDE           Hop URN to include on every path - use with caution

Before running the invalid scenarios, verified the ability to exclude valid VLANs between GPO IG and PG Utah:

$ stitcher.py createsliver lnpath ./stitch-ig-gpo-pg-utah.rspec --excludehop urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21=867-868 
10:31:42 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
10:31:42 INFO     stitcher: Using control framework portal
10:31:42 INFO     stitcher: Checking that slice lnpath is valid...
10:31:43 INFO     stitcher: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+lnpath expires on 2013-08-06 14:17:28 UTC
10:31:44 INFO     stitcher: <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> speaks AM API v3, but sticking with v2
10:31:44 INFO     stitcher: <Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
10:31:44 INFO     stitch.Aggregate: Writing to '/tmp/lnpath-createsliver-request-11-instageni-gpolab-bbn-com.xml'
10:31:44 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
10:31:57 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> complete.
10:31:57 WARNING  stitch.Aggregate: Slivers at PG Utah may not be requested initially for > 5 days. PG Utah slivers will expire earlier than at other aggregates - requested expiration being reset from 2013-08-06T14:17:28Z to 2013-08-04T14:11:57Z
10:31:57 INFO     stitch.Aggregate: Writing to '/tmp/lnpath-createsliver-request-11-emulab-net.xml'
10:31:57 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
10:32:36 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> complete.
10:32:36 INFO     stitch.Aggregate: Writing to '/tmp/lnpath-createsliver-request-11-ion-internet2-edu.xml'
10:32:36 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at http://geni-am.net.internet2.edu:12346
10:33:19 INFO     stitch.Aggregate: DCN AM <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+am>: must wait for status ready....
10:33:19 INFO     stitch.Aggregate: Pause to let circuit become ready...
10:33:56 INFO     stitch.Aggregate: DCN circuit 23731 is ready
10:34:04 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+am> complete.
10:34:04 INFO     stitch.launcher: All aggregates are complete.

Verified that exclude VLANs (867-868) were not used for the hop procurve-pgeni-atla:3.21 in the request RSpec:

<hop id="4"><link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">
 <trafficEngineeringMetric>10</trafficEngineeringMetric>
 <capacity>100000</capacity>
 <switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType>
  <encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo>
  <switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU>
  <vlanRangeAvailability>750-866,869-1000</vlanRangeAvailability>     <<<<===== EXCLUDED VLANs ARE NOT PART OF RANGE!
  <suggestedVLANRange>947</suggestedVLANRange><vlanTranslation>false</vlanTranslation>
  </switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo>
  </switchingCapabilityDescriptor></link><nextHop>null</nextHop></hop>

Delete the previous sliver and recreate, but this time exclude and invalid VLAN range:

$ stitcher.py createsliver lnpath stitch-ig-gpo-pg-utah.rspec --excludehop urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21=99867-99868
...

10:43:34 INFO     stitch.launcher: All aggregates are complete.

No error is reported and a VLAN within the advertised range is assigned. The request RSpec for ION was reviewed and shows the available VLAN range being requested:

<hop id="4"><link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">
<trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000</capacity>
<switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType>
<encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo>
<switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU>
<vlanRangeAvailability>750-1000</vlanRangeAvailability>               <<<<=== INVALID REQUEST DOES NOT IMPACT REQUESTED RANGE
<suggestedVLANRange>913</suggestedVLANRange><vlanTranslation>false</vlanTranslation>
</switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo>
</switchingCapabilityDescriptor></link><nextHop>null</nextHop></hop></path></stitching>

2.5 Advertisement RSpecs

Advertisement RSpecs were reviewed to verify that they accurately capture the following for each of the aggregates:

  • Stitching elements (nodes, ports, links, capacity)
  • VLAN IDs and their availability
  • VLAN Bandwidth capability

Information from the GPO InstaGENI Advertisement RSpec:

$ egrep -i "node|port|link|capacity|vlanrange|translation" rspec-instageni-gpolab-bbn-com.xml
....
....

     <node id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+procurve2">        
          <port id="urn:publicid:IDN+instageni.gpolab.bbn.com+stitchport+procurve2:5.24">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:ae0:bbn            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    3747-3749                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+procurve2">        
          <port id="urn:publicid:IDN+instageni.gpolab.bbn.com+stitchport+procurve2:5.24">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24">            
                  <remoteLinkId>              urn:publicid:IDN+NLR+interface+BBNIFACE            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    2644-2649                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      

Information from the Internet2 Advertisement RSpec:

$ egrep -i "node|port|link|capacity|vlanrange|translation" rspec-ion-internet2-edu.xml 
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.kans">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.kans:ge-10/2/9">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.kans:ge-10/2/9:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+node+procurve-pgeni-kans:3.12            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.kans:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.kans:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.wash">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.wash:ge-10/3/1">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.wash:ge-10/3/1:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurve-pgeni-wash:1.24            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.wash:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.wash:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.losa">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.losa:ge-10/3/0">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.losa:ge-10/3/0:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurve-pgeni-losa:3.31            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.losa:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.losa:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.hous">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.hous:ge-9/1/4">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.hous:ge-9/1/4:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurve-pgeni-hous:3.24            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.hous:xe-7/1/0">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.hous:xe-7/1/0:*">            
                  <remoteLinkId>              urn:publicid:IDN+loni.org+interface+loni-dcn-e1:0-1-4:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.hous:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.hous:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.atla">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.atla:ge-10/3/2">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.atla:xe-0/1/3">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:xe-0/1/3:*">            
                  <remoteLinkId>              urn:publicid:IDN+*+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.atla:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.salt">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.salt:ge-10/2/7">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.salt:ge-10/2/7:protogeni">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurve-pgeni-salt:3.21            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.salt:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.salt:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+ion.internet2.edu+node+rtr.newy">        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.newy:xe-0/1/1">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:xe-0/1/1:*">            
                  <remoteLinkId>              urn:publicid:IDN+dragon.maxgigapop.net+interface+clpk:1/2/3:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    3020-3030,3100-3109,3200-3219                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.newy:ae0">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:ae0:bbn">            
                  <remoteLinkId>              urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    670,3726-3750                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
          <port id="urn:publicid:IDN+ion.internet2.edu+stitchport+rtr.newy:*">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:*:*">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+*:*:*            </remoteLinkId>            
                  <capacity>              10000000            </capacity>            
                  <maximumReservableCapacity>              10000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                             <vlanRangeAvailability>                    2-4094                  </vlanRangeAvailability>                  
                             <vlanTranslation>                    true                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>

Information from the Utah ProtoGENI Advertisement RSpec:

$ egrep -i "node|port|link|capacity|vlanrange|translation" rspec-emulab-net.xml 
....
....
  </link>  
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-losa">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-losa:3.21">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-losa:3.21">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.losa:ge-10/3/0:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-atla">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-atla:3.21">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurveA">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurveA:3.19">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurveA:3.19">            
                  <remoteLinkId>              urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-kans">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-kans:3.21">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-kans:3.21">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.kans:ge-10/2/9:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-kans">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-kans:3.12">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-kans:3.12">            
                  <remoteLinkId>              urn:publicid:IDN+gpeni+interface+bbg1.gpeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-salt">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-salt:3.21">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-salt:3.21">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.salt:ge-10/2/7:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-wash">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-wash:1.24">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-wash:1.24">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.wash:ge-10/3/1:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>      
      <node id="urn:publicid:IDN+emulab.net+node+procurve-pgeni-hous">        
          <port id="urn:publicid:IDN+emulab.net+stitchport+procurve-pgeni-hous:3.24">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-hous:3.24">            
                  <remoteLinkId>              urn:publicid:IDN+ion.internet2.edu+interface+rtr.hous:ge-9/1/4:protogeni            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    750-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node>   

Information from the Utah InstaGENI Advertisement RSpec:

$ egrep -i "node|port|link|capacity|vlanrange|translation" rspec-utah-geniracks-net.xml 
....
....
      <node id="urn:publicid:IDN+utah.geniracks.net+node+procurve2">        
          <port id="urn:publicid:IDN+utah.geniracks.net+stitchport+procurve2:1.19">          
              <capacity>            1000000          </capacity>          
              <maximumReservableCapacity>            1000000          </maximumReservableCapacity>          
              <minimumReservableCapacity>            1000          </minimumReservableCapacity>          
              <link id="urn:publicid:IDN+utah.geniracks.net+interface+procurve2:1.19">            
                  <remoteLinkId>              urn:publicid:IDN+emulab.net+interface+procurveA:3.19            </remoteLinkId>            
                  <capacity>              1000000            </capacity>            
                  <maximumReservableCapacity>              1000000            </maximumReservableCapacity>            
                  <minimumReservableCapacity>              1000            </minimumReservableCapacity>            
                            <vlanRangeAvailability>                    256-1000                  </vlanRangeAvailability>                  
                            <vlanTranslation>                    false                  </vlanTranslation>                  
              </link>          
          </port>        
      </node> 

3.0 Negative and Boundary tests

This is a starting list of scenarios that will validate negative and boundary conditions, this list will be expanded as more scenarios are determined as of interest.

3.1 Allocate not advertised

At ION, InstaGENI and ExoGENI, allocate resources that are not advertised, verify failure.

The VLAN ranges available at each router via the ION aggregate are between 2-4094, for this test we will request VLAN 4321:

At ION, create a sliver that requests a VLAN 4321 which does not exist, and verify that request fails:

$ omni.py createsliver lnstitch4321 -a i2 ./stitch-ion-no-exist.rspec 
11:44:16 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:44:16 INFO     omni: Using control framework pg
11:44:16 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:44:17 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch4321 expires on 2013-06-12 16:44:06 UTC
11:44:17 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:44:17 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:44:17 INFO     omni: Creating sliver(s) from rspec file ./stitch-ion-no-exist.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch4321
11:44:24 WARNING  omni: Failed CreateSliver for slice lnstitch4321 at http://geni-am.net.internet2.edu:12346.  Error from Aggregate: code 5. sfa AM code: 5: : CreateSliver: Internal API error: Request VLAN '4321' is invalid for link 'urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni' - check the Ad RSpec.
11:44:24 INFO     omni:  ------------------------------------------------------------
11:44:24 INFO     omni:  Completed createsliver:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: createsliver lnstitch4321 ./stitch-ion-no-exist.rspec

  Result Summary: Failed CreateSliver for slice lnstitch4321 at http://geni-am.net.internet2.edu:12346.  Error from Aggregate: code 5. sfa AM code: 5: : CreateSliver: Internal API error: Request VLAN '4321' is invalid for link 'urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni' - check the Ad RSpec. 
11:44:24 INFO     omni:  ============================================================

Results: Failed as expected.

3.2 Request VLAN already in use

At ION, InstaGENI and ExoGENI, allocate VLAN tags that are already in use, verify failure.

At ION, create a sliver that uses VLAN 850 and verify that it is ready:

$ omni.py createsliver -a i2 lnstitch ./stitch-ion.rspec          
11:20:01 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:20:01 INFO     omni: Using control framework pg
11:20:01 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:20:02 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch expires on 2013-06-12 16:15:48 UTC
11:20:02 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:20:02 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:20:02 INFO     omni: Creating sliver(s) from rspec file ./stitch-ion.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch
11:20:46 INFO     omni: Got return from CreateSliver for slice lnstitch at http://geni-am.net.internet2.edu:12346:
11:20:46 INFO     omni: <!-- Reserved resources for:
	Slice: lnstitch
	at AM:
	URN: urn:publicid:IDN+ion.internet2.edu+authority+cm
	URL: http://geni-am.net.internet2.edu:12346
 -->
11:20:46 INFO     omni: <rspec  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd" xmlns="http://www.geni.net/resources/rspec/3" expires="2013-06-11T15:20:40.849Z" generated="2013-06-11T15:20:40.849Z" type="manifest">

<node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
<sliver_type name="emulab-openvz"/>
<interface client_id="pg-utah:if0"><ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/></interface></node>

<node client_id="pg-uky" component_manager_id="urn:publicid:IDN+uky.emulab.net+authority+cm" exclusive="false">
<sliver_type name="emulab-openvz"/><interface client_id="pg-uky:if0">
<ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/></interface></node>
<link client_id="link" sliver_id="urn:publicid:IDN+ion.internet2.edu+sliver+ion.internet2.edu-19991" vlantag="850">
<component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
<component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+cm"/>
<component_manager name="urn:publicid:IDN+uky.emulab.net+authority+cm"/>
<interface_ref client_id="pg-utah:if0"/>
<interface_ref client_id="pg-uky:if0"/><property dest_id="pg-uky:if0" source_id="pg-utah:if0"/>
<property dest_id="pg-utah:if0" source_id="pg-uky:if0"/></link>
<stitching  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/" lastUpdateTime="2013-06-11T15:20:40.849Z">

<path id="link"><globalId>ion.internet2.edu-19991</globalId><lifetime id="ion.internet2.edu-19991"><start type="xgc">2013-06-12T15:20:06.000Z</start><end type="xgc">2013-06-11T15:20:40.849Z</end></lifetime>

<hop id="1"><link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU>
<vlanRangeAvailability>750-1000</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>false</vlanTranslation>
</switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>2</nextHop></hop>

<hop id="2"><link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000.0</capacity><switchingCapabilityDescriptor>
<switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo>
<switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>850</vlanRangeAvailability>
<suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>true</vlanTranslation></switchingCapabilitySpecificInfo_L2sc>
</switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>3</nextHop></hop>

<hop id="3"><link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:xe-0/1/3:*"><trafficEngineeringMetric>10</trafficEngineeringMetric>
<capacity>100000.0</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType>
<switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU>
<vlanRangeAvailability>850</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>true</vlanTranslation>
</switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor>

</link><nextHop>4</nextHop></hop><hop id="4"><link id="urn:publicid:IDN+uky.emulab.net+interface+cisco1:1.2">
<trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000</capacity><switchingCapabilityDescriptor>
<switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>850-859</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>false</vlanTranslation></switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>null</nextHop>
</hop></path></stitching></rspec>
11:20:46 INFO     omni:  ------------------------------------------------------------
11:20:46 INFO     omni:  Completed createsliver:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: createsliver lnstitch ./stitch-ion.rspec

  Result Summary: Got Reserved resources RSpec from ion-internet2-edu 
11:20:46 INFO     omni:  ============================================================
lnevers@arendia:~/gcf-2.4-preview2$ omni.py sliverstatus -a i2 lnstitch                             
11:23:47 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:23:47 INFO     omni: Using control framework pg
11:23:47 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:23:48 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch expires on 2013-06-12 16:15:48 UTC
11:23:48 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:23:48 INFO     omni: Status of Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch:
11:23:55 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready
11:23:55 INFO     omni: Sliver status for Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch at AM URL http://geni-am.net.internet2.edu:12346
11:23:55 INFO     omni: {
  "geni_resources": [
    {
      "geni_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+sliver+lnstitch_vlan_ion.internet2.edu-19991", 
      "geni_error": "", 
      "geni_status": "ready"
    }
  ], 
  "geni_expires": "2013-06-12T15:20:06.000Z", 
  "geni_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch", 
  "geni_status": "ready"
}
11:23:55 INFO     omni:  ------------------------------------------------------------
11:23:55 INFO     omni:  Completed sliverstatus:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: sliverstatus lnstitch

  Result Summary: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch expires on 2013-06-12 16:15:48 UTC
Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready.
 Returned status of slivers on 1 of 1 possible aggregates. 
11:23:55 INFO     omni:  ============================================================

Also verify the VLAN requested has been allocated:

$ omni.py listresources -a i2 lnstitch1 
11:33:33 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:33:33 INFO     omni: Using control framework pg
11:33:33 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:33:34 ERROR    omni.protogeni: Call for Get Slice Cred for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1 failed.: Exception: PG Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1 does not exist.
11:33:34 ERROR    omni.protogeni:     ..... Run with --debug for more information
11:33:34 ERROR    omni: Cannot do listresources for urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1: Could not get slice credential: Exception: PG Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1 does not exist.
Cannot do listresources for urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1: Could not get slice credential: Exception: PG Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch1 does not exist.
lnevers@arendia:~/gcf-2.4-preview2$ omni.py listresources -a i2 lnstitch 
11:33:51 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:33:51 INFO     omni: Using control framework pg
11:33:51 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:33:53 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch expires on 2013-06-12 16:15:48 UTC
11:33:53 INFO     omni: Gathering resources reserved for slice lnstitch.
11:33:53 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:33:59 INFO     omni: Listed reserved resources on 1 out of 1 possible aggregates.
11:33:59 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:33:59 INFO     omni: <?xml version="1.0" ?>
11:33:59 INFO     omni:   <!-- Reserved resources for:
	Slice: lnstitch
	at AM:
	URN: urn:publicid:IDN+ion.internet2.edu+authority+cm
	URL: http://geni-am.net.internet2.edu:12346
 -->
11:33:59 INFO     omni:   
<rspec expires="2013-06-11T15:21:16.630Z" generated="2013-06-11T15:21:16.630Z" type="manifest" xmlns="http://www.geni.net/resources/rspec/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd">
  <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-utah:if0">
      <ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="pg-uky" component_manager_id="urn:publicid:IDN+uky.emulab.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="pg-uky:if0">
      <ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link" sliver_id="urn:publicid:IDN+ion.internet2.edu+sliver+ion.internet2.edu-19991" vlantag="850">
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+cm"/>
    <component_manager name="urn:publicid:IDN+uky.emulab.net+authority+cm"/>
    <interface_ref client_id="pg-utah:if0"/>
    <interface_ref client_id="pg-uky:if0"/>
    <property dest_id="pg-uky:if0" source_id="pg-utah:if0"/>
    <property dest_id="pg-utah:if0" source_id="pg-uky:if0"/>
  </link>
  <stitching lastUpdateTime="2013-06-11T15:21:16.630Z" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd">
    <path id="link">
      <globalId>
        ion.internet2.edu-19991
      </globalId>
      <lifetime id="ion.internet2.edu-19991">
        <start type="xgc">
          2013-06-12T15:20:06.000Z
        </start>
        <end type="xgc">
          2013-06-11T15:21:16.630Z
        </end>
      </lifetime>
      <hop id="1">
        <link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">
          <trafficEngineeringMetric>
            10
          </trafficEngineeringMetric>
          <capacity>
            100000
          </capacity>
          <switchingCapabilityDescriptor>
            <switchingcapType>
              l2sc
            </switchingcapType>
            <encodingType>
              ethernet
            </encodingType>
            <switchingCapabilitySpecificInfo>
              <switchingCapabilitySpecificInfo_L2sc>
                <interfaceMTU>
                  9000
                </interfaceMTU>
                <vlanRangeAvailability>
                  750-1000
                </vlanRangeAvailability>
                <suggestedVLANRange>
                  850
                </suggestedVLANRange>
                <vlanTranslation>
                  false
                </vlanTranslation>
              </switchingCapabilitySpecificInfo_L2sc>
            </switchingCapabilitySpecificInfo>
          </switchingCapabilityDescriptor>
        </link>
        <nextHop>
          2
        </nextHop>
      </hop>
      <hop id="2">
        <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni">
          <trafficEngineeringMetric>
            10
          </trafficEngineeringMetric>
          <capacity>
            100000.0
          </capacity>
          <switchingCapabilityDescriptor>
            <switchingcapType>
              l2sc
            </switchingcapType>
            <encodingType>
              ethernet
            </encodingType>
            <switchingCapabilitySpecificInfo>
              <switchingCapabilitySpecificInfo_L2sc>
                <interfaceMTU>
                  9000
                </interfaceMTU>
                <vlanRangeAvailability>
                  850
                </vlanRangeAvailability>
                <suggestedVLANRange>
                  850
                </suggestedVLANRange>
                <vlanTranslation>
                  true
                </vlanTranslation>
              </switchingCapabilitySpecificInfo_L2sc>
            </switchingCapabilitySpecificInfo>
          </switchingCapabilityDescriptor>
        </link>
        <nextHop>
          3
        </nextHop>
      </hop>
      <hop id="3">
        <link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:xe-0/1/3:*">
          <trafficEngineeringMetric>
            10
          </trafficEngineeringMetric>
          <capacity>
            100000.0
          </capacity>
          <switchingCapabilityDescriptor>
            <switchingcapType>
              l2sc
            </switchingcapType>
            <encodingType>
              ethernet
            </encodingType>
            <switchingCapabilitySpecificInfo>
              <switchingCapabilitySpecificInfo_L2sc>
                <interfaceMTU>
                  9000
                </interfaceMTU>
                <vlanRangeAvailability>
                  850
                </vlanRangeAvailability>
                <suggestedVLANRange>
                  850
                </suggestedVLANRange>
                <vlanTranslation>
                  true
                </vlanTranslation>
              </switchingCapabilitySpecificInfo_L2sc>
            </switchingCapabilitySpecificInfo>
          </switchingCapabilityDescriptor>
        </link>
        <nextHop>
          4
        </nextHop>
      </hop>
      <hop id="4">
        <link id="urn:publicid:IDN+uky.emulab.net+interface+cisco1:1.2">
          <trafficEngineeringMetric>
            10
          </trafficEngineeringMetric>
          <capacity>
            100000
          </capacity>
          <switchingCapabilityDescriptor>
            <switchingcapType>
              l2sc
            </switchingcapType>
            <encodingType>
              ethernet
            </encodingType>
            <switchingCapabilitySpecificInfo>
              <switchingCapabilitySpecificInfo_L2sc>
                <interfaceMTU>
                  9000
                </interfaceMTU>
                <vlanRangeAvailability>
                  850-859
                </vlanRangeAvailability>
                <suggestedVLANRange>
                  850
                </suggestedVLANRange>
                <vlanTranslation>
                  false
                </vlanTranslation>
              </switchingCapabilitySpecificInfo_L2sc>
            </switchingCapabilitySpecificInfo>
          </switchingCapabilityDescriptor>
        </link>
        <nextHop>
          null
        </nextHop>
      </hop>
    </path>
  </stitching>
</rspec>

11:33:59 INFO     omni:  ------------------------------------------------------------
11:33:59 INFO     omni:  Completed listresources:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: listresources lnstitch

  Result Summary: Queried resources for slice lnstitch from 1 of 1 aggregate(s).
 
11:33:59 INFO     omni:  ============================================================

Now create a second sliver requesting the same VLAN 850 and verify status:

$ omni.py createsliver -a i2 lnstitch2 ./stitch-ion.rspec
11:29:36 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:29:36 INFO     omni: Using control framework pg
11:29:36 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:29:37 INFO     omni.protogeni: Detected busy result for Get PG slice credential for urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 from SA https://www.pgeni.gpolab.bbn.com:443/protogeni/xmlrpc/sa. Retrying in 10 seconds.
11:29:48 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 expires on 2013-06-12 16:29:01 UTC
11:29:48 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:29:48 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:29:48 INFO     omni: Creating sliver(s) from rspec file ./stitch-ion.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2
11:30:32 INFO     omni: Got return from CreateSliver for slice lnstitch2 at http://geni-am.net.internet2.edu:12346:
11:30:32 INFO     omni: <!-- Reserved resources for:
	Slice: lnstitch2
	at AM:
	URN: urn:publicid:IDN+ion.internet2.edu+authority+cm
	URL: http://geni-am.net.internet2.edu:12346
 -->
11:30:32 INFO     omni: <rspec  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd" xmlns="http://www.geni.net/resources/rspec/3" expires="2013-06-11T15:30:26.874Z" generated="2013-06-11T15:30:26.874Z" type="manifest"><node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false"><sliver_type name="emulab-openvz"/><interface client_id="pg-utah:if0"><ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/></interface></node><node client_id="pg-uky" component_manager_id="urn:publicid:IDN+uky.emulab.net+authority+cm" exclusive="false"><sliver_type name="emulab-openvz"/><interface client_id="pg-uky:if0"><ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/></interface></node><link client_id="link" sliver_id="urn:publicid:IDN+ion.internet2.edu+sliver+ion.internet2.edu-20011" vlantag="850"><component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/><component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+cm"/><component_manager name="urn:publicid:IDN+uky.emulab.net+authority+cm"/><interface_ref client_id="pg-utah:if0"/><interface_ref client_id="pg-uky:if0"/><property dest_id="pg-uky:if0" source_id="pg-utah:if0"/><property dest_id="pg-utah:if0" source_id="pg-uky:if0"/></link><stitching  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/" lastUpdateTime="2013-06-11T15:30:26.874Z"><path id="link"><globalId>ion.internet2.edu-20011</globalId><lifetime id="ion.internet2.edu-20011"><start type="xgc">2013-06-12T15:29:52.000Z</start><end type="xgc">2013-06-11T15:30:26.874Z</end></lifetime><hop id="1"><link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>750-1000</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>false</vlanTranslation></switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>2</nextHop></hop><hop id="2"><link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000.0</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>850</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>true</vlanTranslation></switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>3</nextHop></hop><hop id="3"><link id="urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:xe-0/1/3:*"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000.0</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>850</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>true</vlanTranslation></switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>4</nextHop></hop><hop id="4"><link id="urn:publicid:IDN+uky.emulab.net+interface+cisco1:1.2"><trafficEngineeringMetric>10</trafficEngineeringMetric><capacity>100000</capacity><switchingCapabilityDescriptor><switchingcapType>l2sc</switchingcapType><encodingType>ethernet</encodingType><switchingCapabilitySpecificInfo><switchingCapabilitySpecificInfo_L2sc><interfaceMTU>9000</interfaceMTU><vlanRangeAvailability>850-859</vlanRangeAvailability><suggestedVLANRange>850</suggestedVLANRange><vlanTranslation>false</vlanTranslation></switchingCapabilitySpecificInfo_L2sc></switchingCapabilitySpecificInfo></switchingCapabilityDescriptor></link><nextHop>null</nextHop></hop></path></stitching></rspec>
11:30:32 INFO     omni:  ------------------------------------------------------------
11:30:32 INFO     omni:  Completed createsliver:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: createsliver lnstitch2 ./stitch-ion.rspec

  Result Summary: Got Reserved resources RSpec from ion-internet2-edu 
11:30:32 INFO     omni:  ============================================================

$ omni.py sliverstatus -a i2 lnstitch2                   
11:31:51 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:31:51 INFO     omni: Using control framework pg
11:31:51 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:31:53 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 expires on 2013-06-12 16:29:01 UTC
11:31:53 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:31:53 INFO     omni: Status of Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2:
11:32:00 INFO     omni: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: failed
11:32:00 INFO     omni: Sliver status for Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 at AM URL http://geni-am.net.internet2.edu:12346
11:32:00 INFO     omni: {
  "geni_resources": [
    {
      "geni_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+sliver+lnstitch2_vlan_ion.internet2.edu-20011", 
      "geni_error": "VLAN PCE(PCE_CREATE_FAILED): 'There are no VLANs available on link ion.internet2.edu:rtr.atla:xe-0/1/3:*  on reservation ion.internet2.edu-20011 in VLAN PCE'", 
      "geni_status": "failed"
    }
  ], 
  "geni_expires": "2013-06-12T15:29:52.000Z", 
  "geni_urn": "urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2", 
  "geni_status": "failed"
}
11:32:00 INFO     omni:  ------------------------------------------------------------
11:32:00 INFO     omni:  Completed sliverstatus:

  Options as run:
		aggregate: ['i2']
		framework: pg

  Args: sliverstatus lnstitch2

  Result Summary: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 expires on 2013-06-12 16:29:01 UTC
Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+lnstitch2 at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: failed.
 Returned status of slivers on 1 of 1 possible aggregates. 
11:32:00 INFO     omni:  ============================================================

Results: Failed as expected.

3.2 Recovery and logging for killed circuit

In this scenario, an ION circuit is killed manually to verify impact on sliver and how aggregates handle the circuit being killed, the recovery, and logging of event.

First created a slice "ig-gpo-pg-utah" and then created a sliver between GPO IG and PG Utah:

lnevers@sendaria:~/gcf-2.4-preview4/stitch-test$ stitcher.py createsliver ig-gpo-pg-utah stitch-ig-gpo-pg-utah.rspec --ionRetryIntervalSecs 180
10:42:34 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
10:42:34 INFO     stitcher: Using control framework portal
10:42:34 INFO     stitcher: Checking that slice ig-gpo-pg-utah is valid...
10:42:35 INFO     stitcher: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah expires within 1 day on 2013-06-19 00:00:00 UTC
10:42:36 INFO     stitcher: <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> speaks AM API v3, but sticking with v2
10:42:36 INFO     stitcher: <Aggregate urn:publicid:IDN+emulab.net+authority+cm> speaks AM API v3, but sticking with v2
10:42:36 INFO     stitch.Aggregate: Writing to '/tmp/ig-gpo-pg-utah-createsliver-request-11-instageni-gpolab-bbn-com.xml'
10:42:36 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
10:42:51 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm> complete.
10:42:51 INFO     stitch.Aggregate: Writing to '/tmp/ig-gpo-pg-utah-createsliver-request-11-emulab-net.xml'
10:42:51 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at https://www.emulab.net:12369/protogeni/xmlrpc/am
10:43:25 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+emulab.net+authority+cm> complete.
10:43:25 INFO     stitch.Aggregate: Writing to '/tmp/ig-gpo-pg-utah-createsliver-request-11-ion-internet2-edu.xml'
10:43:25 INFO     stitch.Aggregate: 
	Stitcher doing createsliver at http://geni-am.net.internet2.edu:12346
10:44:09 INFO     stitch.Aggregate: DCN AM <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+cm>: must wait for status ready....
10:44:09 INFO     stitch.Aggregate: Pause to let circuit become ready...
10:44:47 INFO     stitch.Aggregate: DCN circuit 20871 is ready
10:44:55 INFO     stitch.Aggregate: Allocation at <Aggregate urn:publicid:IDN+ion.internet2.edu+authority+cm> complete.
10:44:55 INFO     stitch.launcher: All aggregates are complete.
10:44:55 INFO     stitcher: <?xml version="1.0" ?>
10:44:55 INFO     stitcher:   <!-- Reserved resources for:
	Slice: ig-gpo-pg-utah
	at AM:
	URN: stitching-combined
	URL: 
 -->
10:44:55 INFO     stitcher:   
<!--
Aggregate Details
{
  "url": "https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-20871", 
      "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24", 
      "vlan_tag": "3748", 
      "id": "1"
    }
  ], 
  "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
{
  "url": "http://geni-am.net.internet2.edu:12346", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-20871", 
      "urn": "urn:publicid:IDN+ion.internet2.edu+interface+rtr.atla:ge-10/3/2:protogeni", 
      "vlan_tag": "930", 
      "id": "3"
    }, 
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-20871", 
      "urn": "urn:publicid:IDN+ion.internet2.edu+interface+rtr.newy:ae0:bbn", 
      "vlan_tag": "3748", 
      "id": "2"
    }
  ], 
  "urn": "urn:publicid:IDN+ion.internet2.edu+authority+cm", 
  "user_requested": false, 
  "api_version": 2
}
{
  "url": "https://www.emulab.net:12369/protogeni/xmlrpc/am", 
  "hops_info": [
    {
      "path_id": "link", 
      "path_global_id": "ion.internet2.edu-20871", 
      "urn": "urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21", 
      "vlan_tag": "930", 
      "id": "4"
    }
  ], 
  "urn": "urn:publicid:IDN+emulab.net+authority+cm", 
  "user_requested": true, 
  "api_version": 2
}
-->
<rspec expires="2013-06-18T14:44:40.805Z" generated="2013-06-18T14:44:40.805Z" type="manifest" xmlns="http://www.geni.net/resources/rspec/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd">
	<node client_id="ig-gpo" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc2" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+6019">
		<sliver_type name="emulab-openvz"/>
		<interface client_id="ig-gpo:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth1" mac_address="023f98020fd2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+6022">
			<ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm2-6" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="ig-gpo.ig-gpo-pg-utah.ch-geni-net.instageni.gpolab.bbn.com"/>
		<services>
			<login authentication="ssh-keys" hostname="pc2.instageni.gpolab.bbn.com" port="30010" username="lnevers"/>
		</services>
	</node>
	<node client_id="pg-utah" component_id="urn:publicid:IDN+emulab.net+node+pc403" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false" sliver_id="urn:publicid:IDN+emulab.net+sliver+134707">
		<sliver_type name="emulab-openvz"/>
		<interface client_id="pg-utah:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc403:eth2" mac_address="02b2eaa61afd" sliver_id="urn:publicid:IDN+emulab.net+sliver+134710">
			<ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/>
		</interface>
		<rs:vnode name="pcvm403-3" xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1"/>
		<host name="pg-utah.ig-gpo-pg-utah.ch-geni-net.emulab.net"/>
		<services>
			<login authentication="ssh-keys" hostname="pc403.emulab.net" port="34106" username="lnevers"/>
		</services>
	</node>
	<link client_id="link" sliver_id="urn:publicid:IDN+ion.internet2.edu+sliver+ion.internet2.edu-20871" vlantag="3748:930">
		<!--AM urn:publicid:IDN+emulab.net+authority+cm: sliver_id=urn:publicid:IDN+emulab.net+sliver+134709 vlantag=930-->
		<!--AM urn:publicid:IDN+ion.internet2.edu+authority+cm: sliver_id=urn:publicid:IDN+ion.internet2.edu+sliver+ion.internet2.edu-20871 vlantag=3748:930-->
		<!--AM urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm: sliver_id=urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+6021 vlantag=3748-->
		<component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
		<component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+cm"/>
		<component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
		<interface_ref client_id="ig-gpo:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth1" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+6022"/>
		<interface_ref client_id="pg-utah:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc403:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+134710"/>
		<property dest_id="pg-utah:if0" source_id="ig-gpo:if0"/>
		<property dest_id="ig-gpo:if0" source_id="pg-utah:if0"/>
	</link>
	<stitching lastUpdateTime="2013-06-18T14:44:40.805Z" xmlns="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hpn.east.isi.edu/rspec/ext/stitch/0.1/ http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd">
		<path id="link">
			<globalId>
        ion.internet2.edu-20871
			</globalId>
			<lifetime id="ion.internet2.edu-20871">
				<start type="xgc">
          2013-06-19T00:00:00.000Z
				</start>
				<end type="xgc">
          2013-06-18T14:44:40.805Z
				</end>
			</lifetime>
			<hop id="1">
				<link id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+procurve2:5.24">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									3748
								</vlanRangeAvailability>
								<suggestedVLANRange>
									3748
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					2
				</nextHop>
			</hop>
			<hop id="4">
				<link id="urn:publicid:IDN+emulab.net+interface+procurve-pgeni-atla:3.21">
					<trafficEngineeringMetric>
						10
					</trafficEngineeringMetric>
					<capacity>
						100000
					</capacity>
					<switchingCapabilityDescriptor>
						<switchingcapType>
							l2sc
						</switchingcapType>
						<encodingType>
							ethernet
						</encodingType>
						<switchingCapabilitySpecificInfo>
							<switchingCapabilitySpecificInfo_L2sc>
								<interfaceMTU>
									9000
								</interfaceMTU>
								<vlanRangeAvailability>
									930
								</vlanRangeAvailability>
								<suggestedVLANRange>
									930
								</suggestedVLANRange>
								<vlanTranslation>
									false
								</vlanTranslation>
							</switchingCapabilitySpecificInfo_L2sc>
						</switchingCapabilitySpecificInfo>
					</switchingCapabilityDescriptor>
				</link>
				<nextHop>
					null
				</nextHop>
			</hop>
		</path>
	</stitching>
</rspec>

Stitching success: Reserved resources in slice ig-gpo-pg-utah at 3 Aggregates (including 1 intermediate aggregate(s) not in the original request), creating 1 link(s).

Started traffic between the end-point and then requested for circuit to be deleted by Internet2 folks. Once deleted it takes 15 minutes for status to reflect the deletion:

$ omni.py sliverstatus -a i2 ig-gpo-pg-utah 
11:31:29 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:31:29 INFO     omni: Using control framework portal
11:31:29 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:31:30 INFO     omni: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah expires within 1 day on 2013-06-19 00:00:00 UTC
11:31:30 INFO     omni: Substituting AM nickname i2 with URL http://geni-am.net.internet2.edu:12346, URN urn:publicid:IDN+ion.internet2.edu+authority+cm
11:31:30 INFO     omni: Status of Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah:
11:31:37 INFO     omni: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready
11:31:37 INFO     omni: Sliver status for Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah at AM URL http://geni-am.net.internet2.edu:12346
11:31:37 INFO     omni: {
  "geni_resources": [
    {
      "geni_urn": "urn:publicid:IDN+ch.geni.net:ln-prj+sliver+ig-gpo-pg-utah_vlan_ion.internet2.edu-20871", 
      "geni_error": "VLAN cancelled by rollback from contingent failure", 
      "geni_status": "failed"
    }
  ], 
  "geni_expires": "2013-06-19T00:00:00.000Z", 
  "geni_urn": "urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah", 
  "geni_status": "ready"
}
11:31:37 INFO     omni:  ------------------------------------------------------------
11:31:37 INFO     omni:  Completed sliverstatus:

  Options as run:
		aggregate: ['i2']
		framework: portal
		project: ln-prj

  Args: sliverstatus ig-gpo-pg-utah

  Result Summary: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah expires within 1 day(s) on 2013-06-19 00:00:00 UTC
Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah at AM http://geni-am.net.internet2.edu:12346 has overall SliverStatus: ready.
 Returned status of slivers on 1 of 1 possible aggregates. 

Delete sliver:

$ stitcher.py deletesliver ig-gpo-pg-utah 
11:53:42 INFO     stitcher: Loading config file /home/lnevers/.gcf/omni_config
11:53:42 INFO     stitcher: Using control framework portal
11:53:42 INFO     stitcher: Reading stitching slice ig-gpo-pg-utah aggregates from file ch\.geni\.net.ln-prj.ig-gpo-pg-utah-amlist.txt
11:53:42 INFO     stitcher: Adding aggregate option https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am (urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm)
11:53:42 INFO     stitcher: Adding aggregate option http://geni-am.net.internet2.edu:12346 (urn:publicid:IDN+ion.internet2.edu+authority+cm)
11:53:42 INFO     stitcher: Adding aggregate option https://www.emulab.net:12369/protogeni/xmlrpc/am (urn:publicid:IDN+emulab.net+authority+cm)
11:53:42 INFO     omni: Loading config file /home/lnevers/.gcf/omni_config
11:53:42 INFO     omni: Using control framework portal
11:53:46 INFO     omni: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah expires within 1 day on 2013-06-19 00:00:00 UTC
11:54:36 INFO     omni:  (PG log url - look here for details on any failures: https://boss.instageni.gpolab.bbn.com/spewlogfile.php3?logfile=e6a76cebaae41371b305169e10257681)
11:54:36 INFO     omni: Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah on unspecified_AM_URN at https://boss.instageni.gpolab.bbn.com:12369/protogeni/xmlrpc/am
11:55:50 INFO     omni:  (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=70af18bf6c0ddef0f7e6849a7c235256)
11:55:50 INFO     omni: Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah on unspecified_AM_URN++ at https://www.emulab.net:12369/protogeni/xmlrpc/am
11:55:55 INFO     omni: Deleted sliver urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-pg-utah on unspecified_AM_URN+ at http://geni-am.net.internet2.edu:12346
Deleted slivers on 3 out of a possible 3 aggregates

3.3 Race condition

Create a request race condition where two slices (Slice1 and Slice2) request the same resources (AM1 <->VLAN1<->AM2), but Slice1 gets VLAN1 at AM1 and Slice2 gets VLAN1 at AM2. Verify results tools handle the results and properly handle resources.

Created Slice1 and Slice2, and then executed the following two commands concurrently:

$ stitcher.py createsliver -a pg-utah Slice1 stitch-race.rspec
$ stitcher.py createsliver -a ig-gpo Slice2 stitch-race.rspec

It was found that the order of the sliver creation is controlled by the SCS and so this test cannot be executed.

3.4 Pseudo Loop Scenario

This 2 part test scenario will request and invalid topology which uses PG Utah to ION to InstaGENI GPO.

Part 1: Request the following incorrect links in one RSpec:

Utah PG if0 <-ION-> GPO IG if0
Utah PG if1 <-ION-> GPO IG if0

Part 2:Once the part 1 fails, switch to the following definition:

Utah PG if0 <-ION-> GPO IG if0
Utah PG if1 <-ION-> GPO IG if1

Part 1 test run output:

Using the following link definition:

	<link client_id="link">
		<component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
		<component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+am"/><component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
		<interface_ref client_id="ig-gpo:if0"/>
		<interface_ref client_id="pg-utah:if0"/>
		<property dest_id="pg-utah:if0" source_id="ig-gpo:if0"/>
		<property dest_id="ig-gpo:if0" source_id="pg-utah:if0"/>
	</link>
	<link client_id="link2">
		<component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
		<component_manager name="urn:publicid:IDN+ion.internet2.edu+authority+am"/><component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
		<interface_ref client_id="ig-gpo:if0"/>
		<interface_ref client_id="pg-utah:if1"/>
		<property dest_id="pg-utah:if1" source_id="ig-gpo:if0"/>
		<property dest_id="ig-gpo:if0" source_id="pg-utah:if1"/>
	</link>

Created a sliver:

$ stitcher.py createsliver lnloop ./stitch-loop-bad.rspec 

TODO capture

Results: ???

Part 2 test run output:

Modified RSpec linkd to:

  <link client_id="link">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <interface_ref client_id="ig-gpo:if0"/>
    <interface_ref client_id="pg-utah:if0"/>
    <property source_id="ig-gpo:if0" dest_id="pg-utah:if0"/>
    <property source_id="pg-utah:if0" dest_id="ig-gpo:if0"/>
  </link>
  <link client_id="link2">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/>
    <interface_ref client_id="ig-gpo:if1"/>
    <interface_ref client_id="pg-utah:if1"/>
    <property source_id="ig-gpo:if1" dest_id="pg-utah:if1"/>
    <property source_id="pg-utah:if1" dest_id="ig-gpo:if1"/>
  </link>

and created a sliver:

$ stitcher.py createsliver lnloop ./stitch-loop.rspec 

TODO CAPTURE

Results: ???

?? Get definition from source: Then request a 2nd interface at PG Utah node to ION to same interface on same node at IG GPO. If that fails, then request a 2nd interface on that node at IG GPO - that should work.??

Attachments (1)

Download all attachments as: .zip