Changes between Initial Version and Version 1 of NDL-OWL-substrate

07/22/11 16:32:26 (8 years ago)
ibaldin (IP:



  • NDL-OWL-substrate

    v1 v1  
     1= Substrate models = 
     4== 1. Substrate description model == 
     5This is the detailed resource and topology model that is used to describe a physical substrate including network topology and edge resources (compute and storage).  ORCA AMs use this model to drive their internal resource allocation policies and resource configuration (setup/teardown handler invocations).  The model also specifies which elements of the structure are exposed externally (e.g., in resource advertisements or delegations), and which are kept hidden.  
     6 '''a. Domain Service Description ([source:orca/trunk/network/src/main/resources/orca/network/schema/domain.owl domain.owl])'''  
     7      The class hierarchy is defined in the diagram below. A substrate (domain) is defined as a collection of !PoPs. Each PoP has a geographical location and a collection of network devices and/or edge resources (e.g., a cloud provider site). The Class ''Domain'' also has a property ''!NetworkService'' which could have a number of ''!ServiceElement''.  The ServiceElements will be made visible in external advertisements (see below). 
     8             * !AccessMethod: e.g. ORCAActor, or GENI AM API. 
     9             * Topology: Topology abstraction level exposed to outside. Right now, only node abstraction is defined. 
     10             * !ResourceType: This is inferred via a list of defined available resource label set, e.g. 32 VMs, 100 VLANS.    
     11             * !AggregateManager: e.g. the URL of its aggregate manager. 
     15   '''b. Compute Resource Description:''' 
     16 * [source:orca/trunk/network/src/main/resources/orca/network/schema/compute.owl compute.owl] 
     17 * [source:orca/trunk/network/src/main/resources/orca/network/schema/geni.owl geni.owl] 
     19       The top-level class hierarchy is shown in the attached image ''ndl-compute.png''. Three subclass hierarchies are defined, and geni related sub classes are defined in ''geni.owl'': 
     20        * Features: 
     21                * VMM (XEN, KVM, VServer or other virtualization technology, including None) 
     22                * OS (Linux, Windows) 
     23                * !ServerSize: Defined by the size of CPU, Memory, Storage. Quantifies the size of a server. 
     24                      * !MediumServerSize 
     25                      * !LargeServerSize 
     26                      * !SmallServerSize 
     27                 * Vendor 
     28        * !ComputeElement 
     29                * !ClassifiedServer : defined by the serverSize and using popular cloud provisioning technologies. Each can be distinguished by number and type of CPU cores, amount of RAM or storage and support for different virtualization technologies. 
     30                     * !LargeServer  
     31                     * !MediumServer 
     32                     * !SmallServer  
     33                     * !UnitServer 
     34                     * EC2M1Large 
     35                     * EC2C1Medium 
     36                     * EC2M1Small 
     37                     * !PlanetLabNode 
     38                     * !ProtoGeniNode 
     40                For example, the ''EC2M1Small'' is defined that has the ''EC2CPUCore'' (an EC2 core equivalent of AMD 1.7Ghz) , 1 cpu core  count, 128M memory, 2G storage, and support both ''Xen'' and ''KVM'' VMM virtualization. See [source:orca/trunk/network/src/main/resources/orca/network/schema/geni.owl geni.owl] for details. This allows describing a server/server cloud instance to host an instance of the  VM instance via the property ''VM-in-Server'' which is a sub-property of ''!AdaptationProperty''.  
     41                We note these are both subclasses of the Class ''!ClassifiedServer'' and the instance members of the class ''!ClassifiedServerInstance''. 
     43   [[Image(ndl-geni-ComputeElement.png)]] 
     45                * !ClassifiedServerInstance: has above ''!ClassifiedServer'' classes as its instance members. This enables a specific server cloud to claim the type of VM node it can support. 
     47                * !ComputeComponentElement:  
     48                    * VMImage - Image that is or can be instantiated on the component. 
     49                    * CPU: {EC2CPUCore} - CPU type equivalent. E.g. Amazon/EC CPU core equivalent is a 1.7Ghz AMD. 
     50                    * !DiskImage -  
     51                    * Memory -  
     53        *  !NetworkElement 
     54              * Server 
     55                  * !ServerCloud 
     56                      * !PlanetLabCluster  
     57                      * !ProtoGeniCluster 
     58                      * !EucalyptusCluster 
     60         A specific server cluster is defined by the ''virtualize'' property constraints on the ''!ClassifiedServer''. For Example, ''!PlanetLabCluster'' ''virtualize'' ''!PlanetLabNode''.  This indicates that a cluster belonging to class ''PlanetLabCluster'' can produce ''PlanetLabNode'' types.           
     64   '''c. Network topology and resource description''': extension of the original NDL 
     65         * [source:orca/trunk/network/src/main/resources/orca/network/schema/topology.owl topology.owl] 
     66         * [source:orca/trunk/network/src/main/resources/orca/network/schema/layer.owl layer.owl] 
     67         * [source:orca/trunk/network/src/main/resources/orca/network/schema/ethernet.owl ethernet.owl], [source:orca/trunk/network/src/main/resources/orca/network/schema/ip4.owl ipv4.owl], [source:orca/trunk/network/src/main/resources/orca/network/schema/dtn.owl dtn.owl]