Internet-Draft Ryan Moats draft-moats-dmtf-system-ldap-00.txt Gerald Maziarski Expires in six months AT&T John Strassner cisco Systems October 1999 LDAP Schema for the DMTF System CIM Model Filename: draft-moats-dmtf-system-ldap-00.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This draft presents a LDAP schema for the DMTF CIM System model [5]. 1. Introduction This draft presents a LDAPv3 [1,2] schema for the DMTF CIM System model. It builds on the core model presented in [3]. Associations are mapped using a combination of auxiliary classes and DIT structure rules. Where auxiliary classes are used, name form and DIT content rules are specified. 2. Class Definitions For efficiency in the LDAP representation, associations are specified as a combination of auxiliary classes and DIT structure rules. Attribute definitions for each class are presented with the object Expires 4/30/00 [Page 1] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 class. Other definitions are also provided when necessary. This approach minimizes the number of DN pointers stored in the schema, but some pointer dereferencing is necessary. While not explicitly stated in the definitions below, we assume that all attributes with DN support the matching rule defined in [3]. Attribute names for DN pointers also follow the convention that a single pointer's name ends in "Ref", while an array of pointers' name ends in "Refs". Note: all OIDs are placeholders, and OIDs in definitions have been replaced by names for clarity. Several classes have attributes removed because they do not make sense for the directory to store: localDateTime, numberOfUsers, numberOfProcesses, totalSwapSpaceSize, totalVirtualMemorySize, freeVirtualMemory, freePhysicalMemory, totalVisibleMemorySize, sizeStoredInPagingFiles, freeSpaceInPagingFiles. Further, a directory shouldn't store logicalfile information, including datafiles, directories, and devices shouldn't be stored Therefore the DeviceAccessedByFile, DirectoryContainsFile, Mount, Export, and FileStorage associations aren't included because referenced pieces are missing. A directory should not store either Process, Thread, Job, or JobDestination objects. Therefore the associations OSProcess, ProcessThread, ProcessExecutable, HostedJobDestination, and JobDestinationJobs aren't included either. 2.1 dmtfComponentCSAuxClass A ComputerSystem can aggregate another ComputerSystem. This association can be used to model MPP Systems with workstation frontends, an I2O subsystem embedded in a UnitaryComputerSystem, or a System that splits functionality between two processors, potentially running different OperatingSystems. For example, if a CISC Processor and its associated OperatingSystem, are used for user interface and file support, and a RISC Processor and its OS are used for complex mathematical operations, this could be modeled as two ComputerSystems where one aggregates the other. Sometimes, this could be modeled as a Cluster. The difference is the focus of the relationship. ComponentCS represents that unique and distinct ComputerSystems are aggregated by a higher level CS object. However, each of the component CSs are still distinguishable entities and are only viewed as such. Alternately, with a Cluster, the ComputerSystems that participate in it are inconsequential, when viewed through the 'Cluster System'. When instantiating or subclassing the ComponentCS relationship, care Expires 4/30/00 [Page 2] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 should be taken that the component ComputerSystem meets the definitional requirements of a ComputerSystem - ie, a functional whole that provides compute capabilities and aggregates System Devices, an OperatingSystem, etc. Lastly, in this class both groupComponentRefs and partComponentRefs point to dmtfComputerSystem objects. ( NAME 'dmtfComponentCSAuxClass' DESC ' This association can be used to model MPP Systems with workstation frontends, an I2O subsystem embedded in a UnitaryComputerSystem, or a System that splits functionality between two processors, potentially running different OperatingSystems.' SUP dmtfSystemComponentAuxClass AUXILIARY ) 2.2 dmtfUnitaryComputerSystem A class derived from ComputerSystem that represents a Desktop, Mobile, NetPC, Server or other type of a single node Computer System. This class reuses the attributes powerManagementSupported, powerManagementCapabilities, and wakeUpType. It defines the attributes initialLoadInfo, lastLoadInfo, resetCapability and powerState. ( NAME 'initialLoadInfo' DESC 'This object contains the data needed to find either the initial load device (its key) or the boot service to request the operating system to start up. In addition, the load parameters (ie, a pathname and parameters) may also be specified.' SYNTAX string ) ( NAME 'lastLoadInfo' DESC 'This object contains the data identifying either the initial load device (its key) or the boot service that requested the last operating system load. In addition, the load parameters (ie, a pathname and parameters) may also be specified.' SYNTAX string SINGLE-VALUE ) ( NAME 'resetCapability' DESC 'If enabled (value = 4), the UnitaryComputerSystem can be reset via hardware (e.g. the power and reset buttons). If Expires 4/30/00 [Page 3] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 disabled (value = 3), hardware reset is not allowed. In addition to Enabled and Disabled, other Values for the property are also defined - "Not Implemented""Other" (2).' SYNTAX integer SINGLE-VALUE ) ( NAME 'powerState' DESC 'Shows the current power state of the ComputerSystem and its associated OperatingSystem. Regarding the Power Save states, these are defined as follows: Value 4 ("Power Save") shows that the System is known to be in a power save mode, but its exact status in this mode is unknown; 2 ("Power Save - Low Power Mode"the System is in a power save state but still functioning, and may exhibit degraded performance; 3 ("Power Save -") describes that the System is not functioning but could be brought to full power 'quickly'; value 7 ("Power Save") shows that the ComputerSystem is in a warning state, though also in a power save mode; and, values 8 and 9 describe the ACPI "Hibernate" states. Allowed values are: "Unknown", "Full Power", "Power Save - Low Power Mode", "Power Save - Standby", "Power Save - Unknown", "Power Cycle", "Power Off", "Power Save - Warning", "Power Save - Hibernate", "Power Save - Soft Off".' SYNTAX integer SINGLE-VALUE ) ( NAME 'dmtfUnitaryComputerSystem' DESC 'A class derived from ComputerSystem that represents a Desktop, Mobile, NetPC, Server or other type of a single node Computer System.' SUP dmtfComputerSystem MUST (initialLoadInfo $ lastLoadInfo $ resetCapability $ powerManagementSupported $ powerManagementCapabilities $ powerState $ wakeUpType) ) 2.3 dmtfSystemPartitionAuxClass A Partition is an instance of a UnitaryComputerSystem (with its own OperatingSystem and Devices dedicated to the Partition) that is supported by underlying hardware and software. A Partition is not a virtualization of a ComputerSystem, but the segmentation of the System's compute capabilities. Partitions can run independent copies of possibly different OperatingSystems and have dedicated Devices. The 'real', underlying System (perhaps a Cluster or another UnitaryComputerSystem) aggregates its Partitions. These semantics are described by the SystemPartition association.' Expires 4/30/00 [Page 4] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 In this class, groupComponentRefs point to dmtfComputerSystem objects and partComponentRefs point to dmtfUnitaryComputerSystem objects. ( NAME 'dmtfSystemPartitionAuxClass' DESC 'A Partition is an instance of a UnitaryComputerSystem (with its own OperatingSystem and Devices dedicated to the Partition) that is supported by underlying hardware and software.' SUP dmtfComponentCSAuxClass AUXILIARY ) 2.4 dmtfVirtualComputerSystem A string describing the type of System or hardware platform that is virtualized. OperatingSystem information is obtained via the RunningOS inherited from ComputerSystem. This class defines the attribute virtualSystem. ( NAME 'virtualSystem' DESC 'A string describing the type of System or hardware platform that is virtualized. OperatingSystem information is obtained via the RunningOS inherited from ComputerSystem.' SYNTAX string SINGLE-VALUE ) ( NAME 'dmtfVirtualComputerSystem' DESC 'A class derived from ComputerSystem that represents the ability to virtualize or emulate another ComputerSystem.' SUP dmtfComputerSystem MUST (virtualSystem) ) 2.5 dmtfHostingCSAuxClass A VirtualComputerSystem is hosted on another ComputerSystem. This association makes that relationship explicit. In this class, antecedentRefs point to dmtfComputerSystem objects and dependentRefs point to dmtfVirtualComputerSystem objects. ( NAME 'dmtfHostingCSAuxClass' DESC 'This association makes the hosting relationship between a computer system and a virtual computer system explicit.' SUP dmtfDependencyAuxClass AUXILIARY ) Expires 4/30/00 [Page 5] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 2.6 dmtfCluster A class derived from ComputerSystem that is made up of two or more ComputerSystems that operate together as an atomic, functional whole to increase the performance, resources and/or RAS (Reliability, Availability and Serviceability) of the component ComputerSystems, related to some aspects of these ComputerSystems. This class defines the attributes interconnect, interconnectAddress, types, maxNumberOfNodes, and clusterState. ( NAME 'interconnect' DESC 'Interconnect is a free form string that describes the interconnection mechanism for the Cluster.' SYNTAX string SINGLE-VALUE ) ( NAME 'interconnectAddress' DESC 'InterconnectAddress shows the address of the Cluster System, which is dependent on the interconnection scheme. If no address is available or applicable, a null string should be used.' SYNTAX string SINGLE-VALUE ) ( NAME 'types' DESC 'The cluster types. This specifies whether the cluster is for failover (value=2), performance (3), etc. The values which can be specified are not mutually exclusive. Thus, Types is an array. Allowed values are: "Unknown", "Other", "Failover", "Performance", "Distributed OS", "Node Grouping", "SysPlex".' SYNTAX integer ) ( NAME 'maxNumberOfNodes' DESC 'Shows the maximum number of nodes that may participate in the Cluster. If unlimited, enter 0.' SYNTAX integer SINGLE-VALUE ) ( NAME 'clusterState' DESC 'Shows the state of the Cluster. The cluster can be defined to be on-line (value=2), off-line (3), in a degraded mode of operation (4) or unavailable (5). Allowed values are: "Unknown", "Other", "On-line", "Off-line", "Degraded", "Unavailable".' SYNTAX integer SINGLE-VALUE Expires 4/30/00 [Page 6] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ) ( NAME 'dmtfCluster' DESC 'A class derived from ComputerSystem that "is made up of" two or more ComputerSystems that operate together as an atomic, functional whole to increase the performance, resources and/or RAS (Reliability, Availability and Serviceability) of the component ComputerSystems, related to some aspects of these ComputerSystems.' SUP dmtfComputerSystem MUST (interconnect $ interconnectAddress $ types $ maxNumberOfNodes $ clusterState) ) 2.7 dmtfParticipatingCSAuxClass A Cluster is composed of two or more ComputerSystems, operating together. A ComputerSystem may participate in multiple Clusters. This class defines the attributes stateOfNode and roleOfNode. In addition, antecedentRefs point to dmtfComputerSystem objects and dependentRefs point to dmtfCluster objects. ( NAME 'stateOfNode' DESC 'StateOfNode shows the condition of the participating ComputerSystem in the Cluster. For example, one value is "Joining". Allowed values are: "Unknown", "Other", "Joining", "Paused", "Available", "Unavailable", "Degraded".' SYNTAX integer SINGLE-VALUE ) ( NAME 'roleOfNode' DESC 'RoleOfNode shows whether the Cluster nodes are peers (value = 2), connected in a master-slave/primary-secondary relationship (values = 3 for primary, 4 for secondary), available in a standby configuration (5) or of some other (1) or unknown (0) relationship. In a System/390 environment, the nodes are identified as "Base" (value=6) or "Enhanced Plex". Allowed values are: "Unknown", "Other", "Peer", "Primary", "Secondary", "Standby", "Base Plex", "Enhanced Plex".' SYNTAX integer SINGLE-VALUE ) ( NAME 'dmtfParticipatingCSAuxClass' DESC 'A Cluster is composed of two or more ComputerSystems, operating together.' Expires 4/30/00 [Page 7] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 SUP dmtfDependencyAuxClass AUXILIARY MUST (stateOfNode $ roleOfNode) ) 2.8 dmtfClusteringService This class represents the functionality provided by a Cluster. For example, failover functionality may be modeled as a Service of a failover Cluster. ( NAME 'dmtfClusteringService' DESC 'ClusteringService represents the functionality provided by a Cluster.' SUP dmtfService ) 2.9 dmtfClusteringSAP This class is a representation of the access points of a clustering service. ( NAME 'dmtfClusteringSAP' DESC 'A representation of the access points of a ClusteringService.' SUP dmtfServiceAccessPoint ) 2.10 dmtfClusterServiceAccessBySAPAuxClass This class handles the relationship between a ClusteringService and its access points. In this class, antecedentRefs point to dmtfClusteringService objects and dependentRefs point to dmtfCusteringSAP objects. ( NAME 'dmtfClusterServiceAccessBySAPAuxClass' DESC 'the relationship between a ClusteringService and its access points.' SUP dmtfServiceAccessBySAPAuxClass AUXILIARY ) 2.11 dmtfBootService This class represents the functionality provided by a Device, software or via a Network to load an Operating System on a UnitaryComputerSystem. ( NAME 'dmtfBootService' DESC 'represents the functionality provided by a Device, software Expires 4/30/00 [Page 8] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 or via a Network to load an Operating System on a UnitaryComputerSystem.' SUP dmtfService ) 2.12 dmtfBootSAP This class represents the access points of a boot service. ( NAME 'dmtfBootSAP' DESC 'representation of the access points of a BootService.' SUP dmtfServiceAccessPoint ) 2.13 dmtfBootServiceAccessBySAPAuxClass This class describes the relationship between a BootService and its access points. In it, antecedentRefs point to dmtfBootService objects and dependentRefs point to dmtfBootSAP objects. ( NAME 'dmtfBootServiceAccessBySAPAuxClass' DESC 'the relationship between a BootService and its access points.' SUP dmtfServiceAccessBySAPAuxClass AUXILIARY ) 2.14 dmtfStorageLibrary A StorageLibrary is a collection of ManagedSystemElements that operate together to provide cartridge library capabilities. This object serves as an aggregation point to group the following elements: MediaTransferDevices, a LabelReader, a library Door, MediaAccessDevices, and other Library components. This class reuses the attribute capabilities and defines the attributes overfilled, auditNeeded, auditInProgress, maxAuditTime, and automated. ( NAME 'overfilled' DESC 'Boolean set to TRUE if there are more PhysicalMedia in a Library than there are StorageMediaLocations to contain them. For instance, if all MediaAccessDevices have a Media loaded in them, and all StorageMediaLocations are loaded by an operator, then an Overfilled condition exists.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'auditNeeded' DESC 'Boolean set to TRUE if the Library can not currently report Expires 4/30/00 [Page 9] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 the correct state of each PhysicalMedia within its proper StorageMediaLocation.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'auditInProgress' DESC 'Boolean set to TRUE if an audit of the location of some or all the Library's PhysicalMedia is currently being performed. That an individual Changer is currently doing an audit is shown by a similar AuditInProgress boolean property on the Changer object.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'maxAuditTime' DESC 'Maximum time in seconds that it takes for the StorageLibrary to do a complete audit of each StorageMediaLocation, to determine the absence or presence of a PhysicalMedia. If automated support is not provided, then this property's value is undefined.' SYNTAX integer SINGLE-VALUE ) ( NAME 'automated' DESC 'Boolean set to TRUE if the Library includes a robotics mechanism that can be controlled by a ComputerSystem, to automatically load and unload PhysicalMedia to/from MediaAccessDevices and StorageMediaLocations. The property is set to FALSE if the Library represents a repository of Media that are inaccessible to a MediaAccessDevice without human intervention. An example of a non-automated Library is a "shelf" or "vault" where PhysicalMedia are kept for extended periods of time.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'dmtfStorageLibrary' DESC 'A StorageLibrary is a collection of ManagedSystemElements that operate together to provide cartridge library capabilities.' SUP dmtfSystem MUST (capabilities $ overfilled $ auditNeeded $ auditInProgress $ maxAuditTime $ automated) ) Expires 4/30/00 [Page 10] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 2.15 dmtfOperatingSystem An OperatingSystem is software/firmware that makes a ComputerSystem's hardware usable, and implements and/or manages the resources, file systems, processes, user interfaces, and services available on the ComputerSystem.' This class reuses the attributes cSCreationClassName, cSName, creationClassName, name, and version. Further, it defines the attributes oSType, otherTypeDescription, lastBootUpTime, currentTimeZone, numberOfLicensedUsers, maxNumberOfProcesses, maxProcessMemorySize, distributed, and primaryOS. ( NAME 'oSType' DESC 'A integer indicating the type of OperatingSystem. Allowed values are: "Unknown", "Other", "MACOS", "ATTUNIX", "DGUX", "DECNT", "Digital Unix", "OpenVMS", "HPUX", "AIX", "MVS", "OS400", "OS/2", "JavaVM", "MSDOS", "WIN3x", "WIN95", "WIN98", "WINNT", "WINCE", "NCR3000", "NetWare", "OSF", "DC/OS", "Reliant UNIX", "SCO UnixWare", "SCO OpenServer", "Sequent", "IRIX", "Solaris", "SunOS", "U6000", "ASERIES", "TandemNSK", "TandemNT", "BS2000", "LINUX", "Lynx", "XENIX", "VM/ESA", "Interactive UNIX", "BSDUNIX", "FreeBSD", "NetBSD", "GNU Hurd", "OS9", "MACH Kernel", "Inferno", "QNX", "EPOC", "IxWorks", "VxWorks", "MiNT", "BeOS", "HP MPE", "NextStep", "PalmPilot", "Rhapsody", "Windows 2000", "Dedicated", "OS/390", "VSE", "TPF". SYNTAX integer SINGLE-VALUE ) ( NAME 'otherTypeDescription' DESC 'A string describing the manufacturer and OperatingSystem type - used when the OperatingSystem property, OSType, is set to 1 or 59 ("Other"). The format of the string inserted in OtherTypeDescription should be similar in format to the Values strings defined for OSType. OtherTypeDescription should be set to NULL when OSType is any value other than 1 or 59.' SYNTAX string{64} SINGLE-VALUE ) ( NAME 'lastBootUpTime' DESC 'Time when the OperatingSystem was last booted.' SYNTAX generalizedTime SINGLE-VALUE ) ( NAME 'currentTimeZone' DESC 'CurrentTimeZone shows the number of minutes the OperatingSystem is offset from Greenwich Mean Time. Either Expires 4/30/00 [Page 11] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 the number is positive, negative or zero.' SYNTAX binary SINGLE-VALUE ) ( NAME 'numberOfLicensedUsers' DESC 'Number of user licenses for the OperatingSystem. If unlimited, enter 0.' SYNTAX integer SINGLE-VALUE ) ( NAME 'maxNumberOfProcesses' DESC 'Maximum number of process contexts the OperatingSystem can support. If there is no fixed maximum, the value should be 0. On systems that have a fixed maximum, this object can help diagnose failures that occur when the maximum is reached.' SYNTAX integer SINGLE-VALUE ) ( NAME 'maxProcessMemorySize' DESC 'Maximum number of Kbytes of memory that can be allocated to a Process.' SYNTAX integer SINGLE-VALUE ) ( NAME 'distributed' DESC 'Boolean indicating whether the OperatingSystem is distributed across several ComputerSystem nodes. If so, these nodes should be grouped as a Cluster.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'primaryOS' DESC 'Boolean indicating that the OperatingSystem is the default OS for the ComputerSystem.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'dmtfOperatingSystem' DESC 'An OperatingSystem is software/firmware that makes a Computer Systems hardware usable.' SUP dmtfLogicalElement MUST (cSCreationClassName $ cSName $ creationClassName $ name $ oSType $ otherTypeDescription $ version $ lastBootUpTime $ currentTimeZone $ numberOfLicensedUsers $ primaryOS $ maxNumberOfProcesses $ maxProcessMemorySize $ distributed) ) Expires 4/30/00 [Page 12] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 Altough csCreationClassName and csName may be used as RDNs for this class, the solution used in the schema is to require that this class follow the containment and name form rules below. ( 22 NAME 'dmtfOperatingSystemStructureRule1' FORM dmtfOperatingSystemNameForm1 SUP 24 25 ) ( NAME 'dmtfOperatingSystemNameForm1' OC dmtfOperatingSystem MUST (creationClassName) ) ( 23 NAME 'dmtfOperatingSystemStructureRule2' FORM dmtfOperatingSystemNameForm2 SUP 24 25 ) ( NAME 'dmtfOperatingSystemNameForm2' OC dmtfOperatingSystem MUST (name) ) ( 24 NAME 'dmtfComputerSystemStructureRule1' FORM dmtfComputerSystemNameForm1 ) ( NAME 'dmtfComputerSystemNameForm1' OC dmtfComputerSystem MUST (creationClassName) ) ( 25 NAME 'dmtfComputerSystemStructureRule2' FORM dmtfComputerSystemNameForm2 ) ( NAME 'dmtfComputerSystemNameForm2' OC dmtfComputerSystem MUST (name) ) 2.16 dmtfRunningOSAuxClass This class shows the currently executing OperatingSystem. At most one OperatingSystem can execute at any time on a ComputerSystem. 'At most one' is specified, since the ComputerSystem may not be currently booted, or its OperatingSystem may be unknown. Expires 4/30/00 [Page 13] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 In this class antecedentRefs point to dmtfOperatingSystem objects and dependentRefs point to dmtfComputerSystem objects. ( NAME 'dmtfRunningOSAuxClass' DESC 'RunningOS shows the currently executing OperatingSystem.' SUP dmtfDependencyAuxClass AUXILIARY ) 2.17 dmtfOperatingSystemSoftwareFeatureAuxClass Shows the SoftwareFeatures that make up the OperatingSystem. The SoftwareFeatures can be part of different Products. In this class groupComponentRefs point to dmtfOperatingSystem objects and partComponentRefs point to dmtfSoftwareFeature objects. ( NAME 'dmtfOperatingSystemSoftwareFeatureAuxClass' DESC 'Shows the SoftwareFeatures that make up the OperatingSystem.' SUP dmtfComponentAuxClass AUXILIARY ) 2.18 dmtfFileSystem A file or dataset store local to a ComputerSystem or remotely mounted from a file server. This class reuses the attributes cSCreationClassName, cSName, creationClassName, name, blockSize, and compressionMethod, and defines the attributes root, fileSystemSize, encryptionMethod, readOnly, caseSensitive, casePreserved, codeSet, maxFileNameLength, clusterSize, and fileSystemType. ( NAME 'root' DESC 'Path name or other information defining the root of the FileSystem.' SYNTAX string SINGLE-VALUE ) ( NAME 'fileSystemSize' DESC 'The FileSystemSize property stores the total size of the FileSystem in bytes. If unknown, enter 0.' SYNTAX integer SINGLE-VALUE ) ( NAME 'readOnly' DESC 'Shows that the FileSystem is designated as read only.' SYNTAX boolean SINGLE-VALUE ) Expires 4/30/00 [Page 14] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'encryptionMethod' DESC 'A free form string indicating the algorithm or tool used to encrypt the FileSystem. If it is not possible or not desired to describe the encryption scheme (perhaps for security reasons), recommend using the following words: "Unknown" represent that it is not known whether the FileSystem is encrypted or not, "Encrypted" System is encrypted but either its encryption scheme is not known or not disclosed, and "Not Encrypted"that the FileSystem is not encrypted.' SYNTAX string SINGLE-VALUE ) ( NAME 'caseSensitive' DESC 'Shows that case sensitive file names are supported.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'casePreserved' DESC 'Shows that the case of file names are preserved.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'codeSet' DESC 'Array defining the character sets or encoding supported by the FileSystem. Allowed values are: "Unknown", "Other", "ASCII", "Unicode", "ISO2022", "ISO8859", "Extended UNIX Code", "UTF-8", "UCS-2".' SYNTAX integer ) ( NAME 'maxFileNameLength' DESC 'Integer indicating the maximum length of a file name within the FileSystem. 0 shows that there is no limit on file name length.' SYNTAX integer SINGLE-VALUE ) ( NAME 'clusterSize' DESC 'The minimum file allocation size (an integral number of blocks), imposed by the FileSystem. (The size of a block is specified in the BlockSize property for the FileSystem.) Minimum allocation size is the smallest amount of storage allocated to a LogicalFile by the FileSystem. This is not a mandatory minimum allocation for all FileSystems. Under stress conditions, some FileSystems may allocate storage in amounts smaller than the ClusterSize.' SYNTAX integer SINGLE-VALUE Expires 4/30/00 [Page 15] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ) ( NAME 'fileSystemType' DESC 'String describing the type of FileSystem and therefore, its conventions. For example, "NTFS" may be listed as well as any additional information on the FileSystems implementation. Since various flavors of FileSystems (like S5) exist, this property is defined as a string.' SYNTAX string SINGLE-VALUE ) ( NAME 'dmtfFileSystem' DESC 'A file or dataset store local to a ComputerSystem or remotely mounted from a file server.' SUP dmtfLogicalElement MUST (cSCreationClassName $ cSName $ creationClassName $ name $ root $ blockSize $ fileSystemSize $ readOnly $ encryptionMethod $ compressionMethod $ caseSensitive $ casePreserved $ codeSet $ maxFileNameLength $ clusterSize $ fileSystemType) ) Even though csCreationClassName and cSName may be used as RDNs, the preferred method is to use the following DIT structural rules. ( 26 NAME 'dmtfFileSystemStructureRule1' FORM dmtfFileSystemNameForm1 SUP 24 25 ) ( NAME 'dmtfFileSystemNameForm1' OC dmtfFileSystem MUST (creationClassName) ) ( 27 NAME 'dmtfFileSystemStructureRule2' FORM dmtfFileSystemNameForm2 SUP 24 25 ) ( NAME 'dmtfFileSystemNameForm2' OC dmtfFileSystem MUST (name) ) Expires 4/30/00 [Page 16] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 2.19 dmtfLocalFileSystem A class derived from dmtfFileSystem that represents the file store on a ComputerSystem's locally controlled media. ( NAME 'dmtfLocalFileSystem' DESC 'A class derived from FileSystem that represents the file store on a ComputerSystem's locally controlled media.' SUP dmtfFileSystem ) 2.20 dmtfRemoteFileSystem A class derived from FileSystem that represents access of the FileSystem via a network-related service. For example, the file store for a NFS FileSystem is NOT on a ComputerSystem's locally controlled media. ( NAME 'dmtfRemoteFileSystem' DESC 'A class derived from FileSystem that represents access of the FileSystem via a network-related service.' SUP dmtfFileSystem ) 2.21 dmtfNFS A class derived from RemoteFileSystem representing that the FileSystem is mounted from another ComputerSystem. The properties of the NFS object deal with the operational aspects of the mount.' This class defines the attributes hardMount, foregroundMount, interrupt, mountFailureRetries, retransmissionAttempts, retransmissionTimeout, readBufferSize, writeBufferSize, serverCommunicationPort, attributeCaching, attributeCachingForRegularFilesMin, attributeCachingForRegularFilesMax, attributeCachingForDirectoriesMin, and attributeCachingForDirectoriesMax. ( NAME 'hardMount' DESC 'If set to true: Once the FileSystem is mounted, NFS requests are retried until the hosting System responds. If set to false: Once the FileSystem is mounted, an error is returned if the hosting System does not respond.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'foregroundMount' Expires 4/30/00 [Page 17] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 DESC 'If set to true: Retries are performed in the foreground. If set to false: If the first mount attempt fails, retries are performed in the background.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'interrupt' DESC 'If set to true: Interrupts are permitted for hard mounts. If set to false: Interrupts are ignored for hard mounts.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'mountFailureRetries' DESC 'Maximum number of mount failure retries allowed.' SYNTAX integer SINGLE-VALUE ) ( NAME 'retransmissionAttempts' DESC 'Maximum number of NFS retransmissions allowed.' SYNTAX integer SINGLE-VALUE ) ( NAME 'retransmissionTimeout' DESC 'NFS timeout in tenths of a second.' SYNTAX integer SINGLE-VALUE ) ( NAME 'readBufferSize' DESC 'Read buffer size in bytes.' SYNTAX integer SINGLE-VALUE ) ( NAME 'writeBufferSize' DESC 'Write buffer size in bytes.' SYNTAX integer SINGLE-VALUE ) ( NAME 'serverCommunicationPort' DESC 'The NFS File server UDP port number.' SYNTAX integer SINGLE-VALUE ) ( NAME 'attributeCaching' DESC 'If set to true: Control attribute caching is enabled. If set to false: Control attribute caching is disabled.' SYNTAX boolean SINGLE-VALUE ) Expires 4/30/00 [Page 18] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'attributeCachingForRegularFilesMin' DESC 'Minimum number of seconds that cached attributes are held after file modification.' SYNTAX integer SINGLE-VALUE ) ( NAME 'attributeCachingForRegularFilesMax' DESC 'Maximum number of seconds that cached attributes are held after file modification.' SYNTAX integer SINGLE-VALUE ) ( NAME 'attributeCachingForDirectoriesMin' DESC 'Minimum number of seconds that cached attributes are held after directory update.' SYNTAX integer SINGLE-VALUE ) ( NAME 'attributeCachingForDirectoriesMax' DESC 'Maximum number of seconds that cached attributes are held after directory update.' SYNTAX integer SINGLE-VALUE ) ( NAME 'dmtfNFS' DESC 'A class derived from RemoteFileSystem representing that the FileSystem is mounted from another ComputerSystem.' SUP dmtfRemoteFileSystem MUST (hardMount $ foregroundMount $ interrupt $ mountFailureRetries $ retransmissionAttempts $ retransmissionTimeout $ readBufferSize $ writeBufferSize $ serverCommunicationPort $ attributeCaching $ attributeCachingForRegularFilesMin $ attributeCachingForRegularFilesMax $ attributeCachingForDirectoriesMin $ attributeCachingForDirectoriesMax) ) 2.22 dmtfBootOSFromFSAuxClass The relationship between the OperatingSystem and the FileSystem(s) from which this OperatingSystem is loaded. The association is many- to-many since a Distributed OS could depend on several FileSystems to correctly and completely load. In this class, antecedentRefs point to dmtfFileSystem objects and dependentRefs point to dmtfOperatingSystem objects. Expires 4/30/00 [Page 19] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'dmtfBootOSFromFSAuxClass' DESC 'A link between the OperatingSystem and the FileSystem(s) from which this OperatingSystem is loaded.' SUP dmtfDependencyAuxClass AUXILIARY MUST (dmtfFileSystemRefs $ dmtfOperatingSystemRefs) ) 2.23 dmtfBIOSFeature This class represents the capabilities of the low-level software that is used to bring up and configure a ComputerSystem. It reuses the attributes characteristics and characteristicDescriptions. ( NAME 'dmtfBIOSFeature' DESC 'represents the capabilities of the low-level software that is used to bring up and configure a ComputerSystem.' SUP dmtfSoftwareFeature MUST (characteristics $ characteristicDescriptions) ) 2.24 dmtfBIOSElement This class represents the low-level software that is loaded into non- volatile storage and used to bring up and configure a ComputerSystem. It reuses the attributes version, manufacturer and currentLanguage and defines the attributes primaryBIOS and listOfLanguages. ( NAME 'primaryBIOS' DESC 'If true, this is the primary BIOS of the ComputerSystem.' SYNTAX boolean SINGLE-VALUE ) ( NAME 'listOfLanguages' DESC 'A list of installable languages for the BIOS. This information can be obtained from SMBIOS, from the string list that follows the Type 13 structure. An ISO 639 Language Name should be used to specify the BIOS installable languages. The ISO 3166 Territory Name and the encoding method may also be specified, following the Language Name.' SYNTAX string ) ( NAME 'currentLanguageString' DESC 'Shows the current printer language being used.' SYNTAX string SINGLE-VALUE ) Expires 4/30/00 [Page 20] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'dmtfBIOSElement' DESC 'BIOSElement represents the low-level software that is loaded into non-volatile storage and used to bring up and configure a ComputerSystem.' SUP dmtfSoftwareElement MUST (version $ manufacturer $ primaryBIOS $ listOfLanguages $ currentLanguageString) ) 2.25 dmtfBIOSFeatureBIOSElementsAuxClass This auxiliary class provides a link between BIOSFeature and its aggregated BIOSElements. In this class, groupComponentRefs point to dmtfBIOSFeature objects and partComponentRefs point to dmtfBIOSElement objects. ( NAME 'dmtfBIOSFeatureBIOSElementsAuxClass' DESC 'A link between BIOSFeature and its aggregated BIOSElements.' SUP dmtfSoftwareFeatureSoftwareElementsAuxClass AUXILIARY ) 2.26 dmtfSystemBIOSAuxClass This auxiliary class associates a UnitaryComputerSystem's BIOS with the System itself. In it, groupComponentRefs point to dmtfUnitaryComputerSystem objects and partComponentRefs point to dmtfBIOSElementObjects. ( NAME 'dmtfSystemBIOSAuxClass' DESC 'associates a UnitaryComputerSystem BIOS with the System itself.' SUP dmtfSystemComponentAuxClass AUXILIARY ) 3. DIT Content Rules The following DIT Content Rules apply to objects in this schema. These content rules referrence not only auxiliary classes in this draft but auxiliary classes from other DMTF CIM models [3, 6, 7, 8, 9] ( NAME 'dmtfUnitaryComputerSystemContentRule' DESC 'shows what auxiliary classes may go with the dmtfUnitaryComputerSystem class' AUX (dmtfSystemPartitionAuxClass $ dmtfSystemBIOSAuxClass $ dmtfComputerSystemPackageAuxClass) ) Expires 4/30/00 [Page 21] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'dmtfVirtualComputerSystemContentRule' DESC 'shows what auxiliary classes may go with the dmtfVirtualComputerSystem class' AUX (dmtfHostingCSAuxClass) ) ( NAME 'dmtfClusterContentRule' DESC 'shows what auxiliary classes may go with the dmtfCluster class' AUX (dmtfParticipatingCSAuxClass) ) ( NAME 'dmtfClusteringServiceContentRule' DESC 'shows what auxiliary classes may go with the dmtfClusteringService class' AUX (dmtfClusterServiceAccessBySAPAuxClass) ) ( NAME 'dmtfClusteringSAPContentRule' DESC 'shows what auxiliary classes may go with the dmtfClusteringSAP class' AUX (dmtfClusterServiceAccessBySAPAuxClass) ) ( NAME 'dmtfBootServiceContentRule' DESC 'shows what auxiliary classes may go with the dmtfBootService class' AUX (dmtfBootServiceAccessBySAPAuxClass) ) ( NAME 'dmtfBootSAPContentRule' DESC 'shows what auxiliary classes may go with the dmtfBootSAP class' AUX (dmtfBootServiceAccessBySAPAuxClass) ) ( NAME 'dmtfStorageLibraryContentRule' DESC 'shows what auxiliary classes may go with the dmtfStorageLibrary class' AUX (dmtfLibraryPackageAuxClass) ) ( NAME 'dmtfOperatingSystemContentRule' DESC 'shows what auxiliary classes may go with the dmtfOperatingSystem class' AUX (dmtfRunningOSAuxClass $ dmtfBootOSFromFSAuxClass $ dmtfOperatingSystemSoftwareFeatureAuxClass) ) Expires 4/30/00 [Page 22] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 ( NAME 'dmtfFileSystemContentRule' DESC 'shows what auxiliary classes may go with the dmtfFileSystem class' AUX (dmtfBootOSFromFSAuxClass) ) ( NAME 'dmtfBIOSFeatureContentRule' DESC 'shows what auxiliary classes may go with the dmtfBIOSFeature class' AUX (dmtfBIOSFeatureBIOSElementsAuxClass) ) ( NAME 'dmtfBIOSElementContentRule' DESC 'shows what auxiliary classes may go with the dmtfBIOSElement class' AUX (dmtfBIOSFeatureBIOSElementsAuxClass $ dmtfSystemBIOSAuxClass) ) 4. References Request For Comments (RFC) and Internet Draft documents are available from numerous mirror sites. [1] M. Wahl, T. Howes, S. Kille, "Lightweight Directory Access Protocol (v3)," RFC 2251, Decemeber 1997. [2] M. Wahl, A. Coulbeck, T. Howes, S. Kille, "Lightweight Directory Access Protocol (v3): Attribute Synatx Defini- tions," RFC 2252, December 1997. [3] Ryan Moats, Gerald Maziarski, John Strassner, "LDAP Schema for the DMTF Core CIM Model," Internet Draft (work in progress), September 1999. [4] Ryan Moats, Gerald Maziarski, John Strassner, "Extensible Match Rule to Dereference Pointers", Internet Draft (work in progress), June 1999. [5] DMTF, "CIM System Model, v2.2". [6] Ryan Moats, Gerald Maziarski, John Strassner, "LDAP Schema for the DMTF Device CIM Model", September 1999. [7] Ryan Moats, Gerald Maziarski, John Strassner, "LDAP Schema for the DMTF Network CIM Model", October 1999. [8] Ryan Moats, Gerald Maziarski, John Strassner, "LDAP Schema for the DMTF Application CIM Model", October 1999. Expires 4/30/00 [Page 23] INTERNET DRAFT LDAP Schema for the DMTF System CIM Model October 1999 [9] Ryan Moats, Gerald Maziarski, John Strassner, "LDAP Schema for the DMTF Physical CIM Model", October 1999. 5. Author's Addresses Ryan Moats Jerry Maziarski John Strassner 15621 Drexel Circle Room C3-3Z01 Cisco Systems, Bldg 1 Omaha, NE 68135 200 S. Laurel Ave. 170 West Tasman Drive USA Middletown, NJ 07748 San Jose, CA 95134 E-mail: jayhawk@att.com USA E-mail: johns@cisco.com E-mail: gfm@qsun.att.com Expires 4/30/00 [Page 24]