| 1874 | In this scenario one VM has two interfaces on the same network as a remote which only has one interface. The RSpec: |
| 1875 | {{{ |
| 1876 | ... |
| 1877 | <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false"> |
| 1878 | <sliver_type name="emulab-openvz"/> |
| 1879 | <interface client_id="pg-utah:if0"> |
| 1880 | <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/> |
| 1881 | </interface> |
| 1882 | <interface client_id="pg-utah:if1"> |
| 1883 | <ip address="10.22.4.3" netmask="255.255.255.0" type="ipv4"/> |
| 1884 | </interface> |
| 1885 | </node> |
| 1886 | <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false"> |
| 1887 | <sliver_type name="emulab-openvz"/> |
| 1888 | <interface client_id="ig-utah:if0"> |
| 1889 | <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/> |
| 1890 | </interface> |
| 1891 | </node> |
| 1892 | <link client_id="link"> |
| 1893 | <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/> |
| 1894 | <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/> |
| 1895 | <interface_ref client_id="pg-utah:if0"/> |
| 1896 | <interface_ref client_id="pg-utah:if1"/> |
| 1897 | <interface_ref client_id="ig-utah:if0"/> |
| 1898 | <property source_id="pg-utah:if0" dest_id="ig-utah:if0"/> |
| 1899 | <property source_id="ig-utah:if0" dest_id="pg-utah:if0"/> |
| 1900 | <property source_id="pg-utah:if1" dest_id="ig-utah:if0"/> |
| 1901 | <property source_id="ig-utah:if0" dest_id="pg-utah:if1"/> |
| 1902 | <property source_id="pg-utah:if1" dest_id="pg-utah:if0"/> |
| 1903 | <property source_id="pg-utah:if0" dest_id="pg-utah:if1"/> |
| 1904 | </link> |
| 1905 | .... |
| 1906 | }}} |
| 1907 | Using the rspec above RSpec results in a |
| 1908 | |
| 1909 | {{{ |
| 1910 | $ omni.py createslice lnstitcha |
| 1911 | 10:49:20 INFO omni: Loading config file /home/lnevers/.gcf/omni_config |
| 1912 | 10:49:20 INFO omni: Using control framework pg |
| 1913 | 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 |
| 1914 | 10:49:22 INFO omni: ------------------------------------------------------------ |
| 1915 | 10:49:22 INFO omni: Completed createslice: |
| 1916 | Options as run: |
| 1917 | framework: pg |
| 1918 | Args: createslice lnstitcha |
| 1919 | 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 |
| 1920 | 10:49:22 INFO omni: ============================================================ |
| 1921 | |
| 1922 | $ rspeclint stitch-2if-local-rem-if-ref.rspec |
| 1923 | |
| 1924 | $ stitcher.py createsliver lnstitcha ./stitch-2if-local-rem-if-ref.rspec |
| 1925 | 10:54:21 INFO stitcher: Loading config file /home/lnevers/.gcf/omni_config |
| 1926 | 10:54:21 INFO stitcher: Using control framework pg |
| 1927 | StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec:: |
| 1928 | CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec. |
| 1929 | }}} |
| 1930 | |
| 1932 | An RSpec that has interface_ref that use client_ids not in the interfaces defined in the RSpec was defined, which looks as follows: |
| 1933 | {{{ |
| 1934 | ... |
| 1935 | <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false"> |
| 1936 | <sliver_type name="emulab-openvz"/> |
| 1937 | <interface client_id="pg-utah:if0"> |
| 1938 | <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/> |
| 1939 | </interface> |
| 1940 | </node> |
| 1941 | <node client_id="ig-utah" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false"> |
| 1942 | <sliver_type name="emulab-openvz"/> |
| 1943 | <interface client_id="ig-utah:if0"> |
| 1944 | <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/> |
| 1945 | </interface> |
| 1946 | </node> |
| 1947 | <link client_id="link"> |
| 1948 | <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/> |
| 1949 | <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/> |
| 1950 | <interface_ref client_id="ypg-utah:if0"/> |
| 1951 | <interface_ref client_id="xig-utah:if0"/> |
| 1952 | <property source_id="ypg-utah:if0" dest_id="xig-utah:if0"/> |
| 1953 | <property source_id="xig-utah:if0" dest_id="ypg-utah:if0"/> |
| 1954 | </link> |
| 1955 | ... |
| 1956 | }}} |
| 1957 | |
| 1958 | Created a slice and tried to stitch a sliver: |
| 1959 | {{{ |
| 1960 | $ rspeclint stitch-mismatch-if-ref-cl-id.rspec |
| 1961 | $ omni.py createslice lnst |
| 1962 | 11:03:50 INFO omni: Loading config file /home/lnevers/.gcf/omni_config |
| 1963 | 11:03:50 INFO omni: Using control framework pg |
| 1964 | 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 |
| 1965 | 11:03:52 INFO omni: ------------------------------------------------------------ |
| 1966 | 11:03:52 INFO omni: Completed createslice: |
| 1967 | Options as run: |
| 1968 | framework: pg |
| 1969 | Args: createslice lnst |
| 1970 | 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 |
| 1971 | 11:03:52 INFO omni: ============================================================ |
| 1972 | |
| 1973 | $ stitcher.py createsliver lnst ./stitch-mismatch-if-ref-cl-id.rspec |
| 1974 | 11:04:31 INFO stitcher: Loading config file /home/lnevers/.gcf/omni_config |
| 1975 | 11:04:31 INFO stitcher: Using control framework pg |
| 1976 | StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec:: |
| 1977 | CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec. |
| 1978 | }}} |
| 1979 | |
| 1981 | Created a request RSpec that meets that defines a 0 hop scenario from PG Utah to PG Utah: |
| 1982 | {{{ |
| 1983 | ... |
| 1984 | <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false"> |
| 1985 | <sliver_type name="emulab-openvz"/> |
| 1986 | <interface client_id="pg-utah:if0"> |
| 1987 | <ip address="10.22.4.1" netmask="255.255.255.0" type="ipv4"/> |
| 1988 | </interface> |
| 1989 | </node> |
| 1990 | <node client_id="pg-utah" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" exclusive="false"> |
| 1991 | <sliver_type name="emulab-openvz"/> |
| 1992 | <interface client_id="pg-utah2:if0"> |
| 1993 | <ip address="10.22.4.2" netmask="255.255.255.0" type="ipv4"/> |
| 1994 | </interface> |
| 1995 | </node> |
| 1996 | <link client_id="link"> |
| 1997 | <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/> |
| 1998 | <component_manager name="urn:publicid:IDN+emulab.net+authority+cm"/> |
| 1999 | <interface_ref client_id="pg-utah:if0"/> |
| 2000 | <interface_ref client_id="pg-utah2:if0"/> |
| 2001 | <property source_id="pg-utah:if0" dest_id="pg-utah2:if0"/> |
| 2002 | <property source_id="pg-utah2:if0" dest_id="pg-utah:if0"/> |
| 2003 | </link> |
| 2004 | ... |
| 2005 | }}} |
| 2006 | Created the slice and then a sliver: |
| 2007 | {{{ |
| 2008 | $ rspeclint stitch-0hop.rspec |
| 2009 | $ omni.py createslice 0hop |
| 2010 | 11:09:23 INFO omni: Loading config file /home/lnevers/.gcf/omni_config |
| 2011 | 11:09:23 INFO omni: Using control framework pg |
| 2012 | 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 |
| 2013 | 11:09:24 INFO omni: ------------------------------------------------------------ |
| 2014 | 11:09:24 INFO omni: Completed createslice: |
| 2015 | Options as run: |
| 2016 | framework: pg |
| 2017 | Args: createslice 0hop |
| 2018 | 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 |
| 2019 | 11:09:24 INFO omni: ============================================================ |
| 2020 | lnevers@arendia:~/gcf-2.4-preview/stitch-test/rspec-input$ stitcher.py createsliver 0hop ./stitch-0hop.rspec |
| 2021 | 11:09:40 INFO stitcher: Loading config file /home/lnevers/.gcf/omni_config |
| 2022 | 11:09:40 INFO stitcher: Using control framework pg |
| 2023 | StitchingServiceFailedError: Error from Stitching Service: code 1: GeniRSpec:: |
| 2024 | CreateApiRequestMessage - no stitching path or multi-aggregate link in request RSpec. |
| 2025 | $ |
| 2026 | }}} |
| 2027 | |