Virtual Media Profile Document Number: DCIM1008 Document Type: Specification Document Status: Published Document Language: E Date: 2008-11-10 Version: 1.0.
Virtual Media Profile THIS PROFILE IS FOR INFORMATIONAL PURPOSES ONLY, AND MAY CONTAIN TYPOGRAPHICAL ERRORS AND TECHNICAL INACCURACIES. THE CONTENT IS PROVIDED AS IS, WITHOUT EXPRESS OR IMPLIED WARRANTIES OF ANY KIND. ABSENT A SEPARATE AGREEMENT BETWEEN YOU AND DELL™ WITH REGARD TO FEEDBACK TO DELL ON THIS PROFILE SPECIFICATION, YOU AGREE ANY FEEDBACK YOU PROVIDE TO DELL REGARDING THIS PROFILE SPECIFICATION WILL BE OWNED AND CAN BE FREELY USED BY DELL. © 2008 Dell Inc. All rights reserved.
Virtual Media Profile CONTENTS 1 2 3 4 5 6 7 8 9 Scope .................................................................................................................................................... 9 Normative References........................................................................................................................... 9 2.1 Approved References ................................................................................................................. 9 2.
Virtual Media Profile 10 9.10 Determine whether USB Redirection SAPs can be Created .................................................... 48 9.11 Determine the Emulated USB Devices Already Available via a USB Redirection SAP ........... 48 9.12 Determine if a USB Device is Redirected ................................................................................. 48 9.13 Determine how the Virtual Media State is Managed ................................................................ 48 9.
Virtual Media Profile Table 2 – DCIM_OEMVirtualMediaService.RequestStateChange( ) Method: Return Code Values .......... 26 Table 3 – DCIM_OEMVirtualMediaService.RequestStateChange( ) Method: Parameters ........................ 27 Table 4 – DCIM_OEMVirtualMediaService.RequestStateChange( ) Method: Return Code Values .......... 27 Table 5 – DCIM_OEMVirtualMediaService.CreateUSBDevice( ) Method: Return Code Values ............... 28 Table 6 – DCIM_OEMVirtualMediaService.CreateUSBDevice( ) Method: Parameters ..
Virtual Media Profile Foreword The Virtual Media Profile (DCIM1008) was prepared by the Dell CIM Review Board. 6 Version 1.0.
Virtual Media Profile Introduction This specification identifies the necessary classes, properties, methods, and values to be instantiated and manipulated to represent and manage virtual media modeled using the DMTF Common Information Model (CIM) core and extended model definitions. This document is intended for implementers who write CIM-based providers or consumers of management interfaces representing the component described herein Version 1.0.
Virtual Media Profile Virtual Media Profile 1 Scope The Virtual Media Profile extends the management capabilities of referencing profiles, and provides the capability to manage virtual media sessions and devices that utilize the USB redirection provided by the system. For KVM (keyboard, video, and mouse) devices, this profile should be used if the devices are to be managed as USB devices. Otherwise, the KVM Redirection Profile should be used.
3.2 cannot used for statements of possibility and capability, whether material, physical, or causal 3.3 conditional indicates requirements to be followed strictly to conform to the document when the specified conditions are met 3.4 mandatory indicates requirements to be followed strictly to conform to the document, and from which no deviation is permitted 3.5 may indicates a course of action permissible within the limits of the document 3.
Virtual Media Profile 3.14 Emulated USB Device the USB device locally emulated on the managed system, which can be redirected to a remote system which contains the physical USB device 3.15 Remote System the system which contains the physical USB device, to which the managed system can establish a network connection for an Emulated USB Device 3.16 Virtual Media composed of an instance of DCIM_OEMVirtualMediaService and an instance of CIM_USBRedirectionSAP.
5 Synopsis Profile Name: Virtual Media Version: 1.0.0 Organization: Dell CIM Schema version: 2.17.0 Central Class: DCIM_OEMVirtualMediaService Scoping Class: CIM_ComputerSystem The Virtual Media Profile extends the management capabilities of referencing profiles, and provides the capability to manage virtual media sessions and devices that utilize the USB redirection provided by the system. DCIM_OEMVirtualMediaService is the Central Class of this profile.
Virtual Media Profile This includes capabilities such as the type and maximum number devices that can be redirected, and RequestStateChange method support among others. Each instance of DCIM_OEMVirtualMediaService is connected to an instance of CIM_ComputerSystem that represents the Virtual Media Scoping Class by a CIM_HostedService association, and by a CIM_ServiceAffectsElement association.
Figure 1 – Virtual Media Profile: Class Diagram 7 Implementation This section details the requirements related to the arrangement of instances and their properties for implementation of this profile. Section 7.9.2 describes the class methods required by the profile. 7.
Virtual Media Profile 7.2.5 Maximum Number of Concurrently Enabled Redirection SAPs The Virtual Media Service may support multiple USB Redirection SAPs; however, there may be a limitation to the number of concurrent redirections. The DCIM_OEMVirtualMediaService.MaxCurrentEnabledSAPs property shall contain the maximum number of instances of CIM_USBRedirectionSAP’s, whose EnabledState property is set to 2 (Enabled) that may be associated to the instance of DCIM_OEMVirtualMediaService. 7.2.
When there is an instance of CIM_USBRedirectionCapablities associated with the instance of DCIM_OEMVirtualMediaService and the Virtual Media Service does support creating USB Redirection SAPs, and then the properties of CIM_USBRedirectionCapabilities shall reflect the maximum values that can be supported across all the USB Redirection SAPs associated to the Virtual Media Service. 7.3.
Virtual Media Profile 7.3.3 SAPCapabilitiesSupported When there is an instance of CIM_USBRedirectionCapabilities associated with the instance of DCIM_OEMVirtualMediaService, the CIM_USBRedirectionCapabilities.SAPCapabilitiesSupported array property shall contain values that specify whether the static pre-configured USB Redirection SAPs exist.
7.3.7 ConnectionModesSupported When there is an instance of CIM_USBRedirectionCapabilities associated with the instance of DCIM_OEMVirtualMediaService, the CIM_USBRedirectionCapabilities.ConnectionModesSupported array property shall contain values that specify which connection modes the service supports.
Virtual Media Profile 7.4.3 The Relationship to the Computer System with the SAP The relationship between the USB Redirection SAP and the computer system that contains the endpoint for the USB Redirection SAP shall be modeled with an instance of CIM_HostedAccessPoint. When used in this way, the CIM_HostedAccessPoint association's Antecedent property shall reference the CIM_ComputerSystem instance, and its Dependent property shall reference the CIM_USBRedirectionSAP instance. 7.4.
7.4.6 Session Connection Mode Two connection modes are defined for USB Redirection SAPs: a) The USB Redirection SAP waits (listens) for an application on a Remote System to initiate a network connection for Virtual Media or b) the USB Redirection SAP initiates connecting to the applications on the Remote System for Virtual Media. The connection mode of the USB Redirection SAP shall be represented by the CIM_USBRedirectionSAP.ConnectionMode property.
Virtual Media Profile The relationship shall be modeled with an instance of the CIM_LogicalIdentity association. When used in this way, the CIM_LogicalIdentity association's SystemElement property shall reference the CIM_USBDevice instance, and its SameElement property shall reference the CIM_LogicalDevice instance. 7.5.4 Representing the USB Device Class The USB Device Class shall be represented by the value of the CIM_USBDevice.ClassCode property.
If the Virtual Media is in inactive state, the value of the EnabledState property of DCIM_OEMVirtualMediaService may be 3 (Disabled), and the value of the EnabledState property of CIM_USBRedirectionSAP shall be 3 (Disabled). If the Virtual Media is in the inactive state, Virtual Media Session shall not exist. 7.7 Representing the Destination of the USB Redirection (Optional) The remote destination of USB Redirection may be modeled.
Virtual Media Profile 7.8 State Management of a Virtual Media Service (Optional) The following sections describe the CIM elements and behaviors that allow the client to determine whether state management of the Virtual Media Service is supported. Support for managing the state of a Virtual Media Service is optional behavior. The following sections describe the CIM elements and behaviors that allow the client to determine whether state management of the Virtual Media Service is supported. 7.8.
When the RequestedState parameter has a value of 2 (Enabled) or 3 (Disabled) or 6 (Offline) and the DCIM_OEMVirtualMediaService.RequestStateChange( ) method completes successfully, the value of the EnabledState property shall equal the value of the DCIM_OEMVirtualMediaService.RequestedState property. If the method does not complete successfully, the value of the EnabledState property is indeterminate. 7.8.
Virtual Media Profile The CIM_ElementCapabilities association's ManagedElement property shall reference the CIM_USBRedirectionSAP instance, and its Capabilities property shall reference the CIM_ EnabledLogicalElementCapabilities instance. 7.9.1.1.1 CIM_ EnabledLogicalElementCapabilities.RequestedStatesSupported The RequestedStatesSupported property shall contain one or more of the following values: 2 (Enabled), 3 (Disabled) or 6 (Offline). 7.9.1.2 CIM_USBRedirectionSAP.
7.9.2.3 CIM_USBRedirectionSAP.EnabledState The EnabledState property shall have one of the following values: 2 (Enabled), 3 (Disabled), 0 (Unknown), or 6 (Enabled but Offline). The value 0 (Unknown) may be set when non-CIM instrumentation has manipulated the instance of CIM_USBRedirectionSAP. 7.
Virtual Media Profile Table 3 – DCIM_OEMVirtualMediaService.
If an instance of CIM_USBRedirectionCapabilites is not associated with an instance of DCIM_OEMVirtualMediaService by a CIM_ServiceAccessBySAP association, then this method shall not be supported. Invocation of the CreateUSBDevice( ) method 1) creates an instance of CIM_USBDevice and 2) creates a CIM_ServiceAffectsElement association between the CIM_USBDevice and the DCIM_OEMVirtualMediaService. The LogicalDevice parameter may be NULL.
Virtual Media Profile • Creates a CIM_SAPAvailableForElement association between the new CIM_USBRedirectionSAP and the CIM_ComputerSystem instance that represents the source of the Virtual Media flow. • Creates an instance of CIM_EnabledLogicalElementCapabilities and an instance of CIM_ElementCapablities associating the new instance of CIM_USBRedirectionSAP with the new instance of CIM_EnabledLogicalElementCapabilities.
Detailed requirements of the method are specified in Table 7 and Table 8. No standard messages are defined. Table 7 – DCIM_OEMVirtualMediaService.CreateRedirectionSAP( ) Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is unsupported. 2 Error occurred. 4096 Job started: REF returned to started CIM_ConcreteJob. Table 8 – DCIM_OEMVirtualMediaService.
Virtual Media Profile c) the CIM_SAPAvailableForElement associations between CIM_USBRedirectionSAP and CIM_USBDevice d) any CIM_BindsTo associations between CIM_USBRedirectionSAP and CIM_ProtocolEndpoint. e) any CIM_RemoteAccessAvailableToElement association between CIM_USBRedirectionSAP and CIM_RemoteServiceAccessPoint • If the CIM_USBRedirectionSAP was associated to an instance of CIM_ProtocolEndpoint, and the instance of CIM_ProtocolEndpoint was created by DCIM_OEMVirtualMediaService.
No standard messages are defined. Invoking the RequestStateChange( ) method multiple times could result in earlier requests being overwritten or lost. Table 11 – CIM_USBRedirectionSAP.RequestStateChange( ) Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is unsupported. 2 Error occurred. 4096 Job started: REF returned to started CIM_ConcreteJob. Table 12 – CIM_USBRedirectionSAP.
Virtual Media Profile • References • ReferenceNames • EnumerateInstances • EnumerateInstanceNames A compliant implementation shall support all of the operations in the default list for each class, unless the “Requirement” column states something other than Mandatory. 8.8 CIM_BindsTo Table 13 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported.
8.10 CIM_EnabledLogicalElementCapabilities Table 15 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported.
Virtual Media Profile 8.13 DCIM_OEMVirtualMediaService Table 18 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported. Table 18 – Operations: DCIM_OEMVirtualMediaService Operation Requirement Messages GetInstance Mandatory None ModifyInstance Optional See clause 8.13.1.
8.14 CIM_RemoteAccessAvailableToElement Table 17 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported. Table 19 – Operations: CIM_RemoteAccessAvailableToElement Operation Requirement Messages GetInstance Mandatory None EnumerateInstances Unspecified None EnumerateInstanceNames Unspecified None Associators Unspecified None AssociatorNames Unspecified None References Unspecified None ReferenceNames Unspecified None 8.
Virtual Media Profile CIM_USBRedirectionCapabilities.InfoFormatsSupported is not empty, the implementation shall allow the ModifyInstance operation to change the value of the AccessInfo property of the CIM_RemoteServiceAccessPoint instance. 8.15.1.3 CIM_RemoteServiceAccessPoint.OtherInfoFormatDescription Property When an instance of CIM_USBRedirectionCapabilities is associated with the DCIM_OEMVirtualMediaService instance and the CIM_USBRedirectionCapabilities.
8.18 CIM_USBDevice Table 15 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported. Table 23 – Operations: CIM_USBDevice Operation Requirement Messages GetInstance Mandatory None DeleteInstance Conditional. See 8.18.
Virtual Media Profile 8.20 CIM_USBRedirectionSAP Table 25 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported. Table 25 – Operations: CIM_USBRedirectionSAP Operation Requirement Messages GetInstance Mandatory None ModifyInstance Optional See clause 8.20.1.
8.21 CIM_TCPProtocolEndpoint Table 25 lists operations that either have special requirements beyond those from DSP0200 version 1.2 or shall not be supported. Table 26 – Operations: CIM_TCPProtocolEndpoint Operation Requirement Messages GetInstance Mandatory None ModifyInstance Optional See clause 8.20.1.
Virtual Media Profile This instance of DCIM_OEMVirtualMediaService conforms to the Virtual Media Profile version 1.0.0 as indicated by the CIM_ElementConformsToProfile association with the CIM_RegisteredProfile instance. system1:ComputerSystem ElementConformsToProfile ReferencedProfile SystemComponent sp1:ComputerSystem ElementConformsToProfile ServiceProcessor : RegisteredProfile RegisteredOrganization : 2 (DMTF) RegisteredName : Service Processor RegisteredVersion : 1.0.
usbredirectcap : USBRedirectionCapabilitiies RequestedStatesSupported : 2 (Enable), 3(Disabled), 6(Offline) ConnectionModesSupported: 1 (listen) SAPCapabilitiesSupported : 4 (Modify SAP), 32768 (Dell Modify TCPProtocolEndpoint) USBVersionsSupported: 0x0100 (1.00), 0x0200 (2.
Virtual Media Profile Figure 4 – Monolithic System – Create SAPs The Virtual Media Service is represented by usbredirectsvc1. The service (usbredirectsvc1) is hosted on system1 as represented by the CIM_HostedService association between system1 and usbredirectsvc1. There is an instance of CIM_USBRedirectionCapabilities, usbredirectcap1, associated to usbredirectsvc1 using an instance of CIM_ElementCapabilities. The CIM_USBRedirectionCapabilities.
Figure 5 – Monolithic System – Pre-configured SAPs - Connect The Virtual Media Service is represented by usbredirectsvc1. The USB Redirection SAP is represented by usbredirectsap1. The instance of CIM_USBRedirectionCapabilities, usbredirectcap1, describes the capabilities of the Virtual Media Service. The SAPCapabilitiesSupported property value of 2 (Pre-configured SAPs) determines that at least one static pre-configured Virtual MediaSAP exists.
Virtual Media Profile The CIM_HostedService association between system1 and usbredirectsvc1 determines that the Virtual Media Service is hosted on system1. The CIM_ServiceAffectsElement association between usbredirectsvc1 and usbdevice1 determines that the Virtual Media Service is configured to redirect the session of the locally emulated USB Device. The USBVersion and ClassCode property of usbdevice1 conforms to the constraints of the CIM_USBRedirectionCapabilities.
association between usbredirectsvc1 and usbredirectsap1 determines that the usbredirectsvc1 is available at usbredirectsap1. The ConnectionMode property of CIM_USBRedirectionSAP is set to "listen" that determines that the SAP will wait for the Remote System to initiate a session. The instance of CIM_ProtocolEndpoint,Endpoint1, contains the information the Remote System needs to initiate a session with the local USB Redirection SAP 9.
Virtual Media Profile The ConnectionMode property of CIM_USBRedirectionSAP has been set to "connect", so the instance of CIM_RemoteServiceAccessPoint, remotesap1, has been configured with information about how to access the remote SAP. 9.7 Object Diagram for a Monolithic Server with Service Processor Figure 8 shows a monolithic server with a service processor. The diagram is similar to Figure 6, but Figure 8 contains an instance of CIM_ComputerSystem, sp1, that represents the service processor.
3) 9.10 For the instance of CIM_USBRedirectionCapabilities that is found, if the SAPCapabilitiesSupported array contains a value of 1 (Pre-configured SAPs), then at least one pre-configured USB Redirection SAP exists. Determine whether USB Redirection SAPs can be Created A client can determine whether USB Redirection SAPs can be created on the computer system of interest as follows: 1) Start at the instances of DCIM_OEMVirtualMediaService found using the use case in section 9.8.
Virtual Media Profile 3) From the instance of DCIM_OEMVirtualMediaService, find the instance of CIM_USBRedirectionCapabilities that is associated through an instance of CIM_ElementCapabilities. If an instance of CIM_USBRedirectionCapabilities is not found, the Virtual Media cannot be managed through the state of the Virtual Media Service. 4) For the CIM_USBRedirectionCapabilities instance that is found, obtain the values of the RequestedStatesSupported property.
4) Invoke the CIM_USBRedirectionSAP.RequestStateChange( ) method with the RequestedState parameter set to 2 (Enabled). 5) Verify that the CIM_USBRedirectionSAP.EnabledState property is set to a value of 2 (Enabled). The Virtual Media is now active. 9.16 Stop All Virtual Medias Associated with the Service – SAP State Management In the following use case, it is assumed that the client knows the instance of DCIM_OEMVirtualMediaService of interest.
Virtual Media Profile 4) For each found CIM_USBRedirectionSAP instance, query the value of the EnabledState property. 5) Count all the CIM_USBRedirectionSAP.EnabledState properties whose value is 2 (Enabled). 9.
5) When the CreateDevices Boolean parameter is TRUE, in addition to the USB device references in the USBDevices parameter, the CreateRedirectionSAP() method will create new instances of CIM_USBDevices as specified in the NewUSBDevices parameter and associate them with the new SAP.
Virtual Media Profile If the value is TRUE, the DCIM_OEMVirtualMediaService.ElementName property can be modified by a client. If no instance of CIM_USBRedirectionCapabilities is associated with the DCIM_OEMVirtualMediaService instance, modifying the DCIM_OEMVirtualMediaService.ElementName property is not supported. 10 CIM Elements Table 27 shows the instances of CIM Elements for this profile. Instances of the CIM Elements shall be implemented as described in Table 27. Sections 7 (“Implementation”) and 7.9.
10.1 CIM_RegisteredProfile CIM_RegisteredProfile identifies the Virtual Media Profile in order for a client to determine whether an instance of CIM_ComputerSystem conforms to this profile. The CIM_RegisteredProfile class is defined by the Profile Registration Profile. With the exception of the mandatory values specified for the properties in Table 28, the behavior of the CIM_RegisteredProfile instance is in accordance with the Profile Registration Profile.
Virtual Media Profile 10.4 CIM_ElementCapabilities Relating CIM_USBRedirectionSAP to CIM_EnabledLogicalElementCapabilities The CIM_ElementCapabilities association is used to relate an instance of CIM_EnabledLogicalElementCapabilities with an instance of CIM_USBRedirectionSAP. Table 31 contains the elements requirements for this class.
10.7 CIM_HostedService The CIM_HostedService association is used to relate the DCIM_OEMVirtualMediaService instance to the CIM_ComputerSystem instance on which it is hosted. Table 34 contains the elements requirements for this class. Table 34 – Class: CIM_HostedService Elements Requirement Notes Antecedent Mandatory This property shall be a reference to an instance of the CIM_ComputerSystem class. See section 7.2.1. Cardinality is "1".
Virtual Media Profile 10.10 CIM_RemoteServiceAccessPoint The CIM_RemoteServiceAccessPoint class represents the SAP on the remote system. Table 37 contains the elements requirements for this class. Table 37 – Class: CIM_RemoteServiceAccessPoint Elements Requirement Notes SystemCreationClassName Mandatory Key SystemName Mandatory Key Name Mandatory Key CreationClassName Mandatory Key AccessContext Mandatory The property shall match the value 1 (Other) AccessInfo Mandatory See section 7.7.
10.12 CIM_SAPAvailableForElement Relating CIM_USBRedirectionSAP to CIM_USBDevice The CIM_SAPAvailableForElement association is used to relate the instance of CIM_USBRedirectionSAP to the instance of CIM_USBDevice that represents the Emulated USB Device accessible through the USB Redirection SAP. Table 39 contains the elements requirements for this class.
Virtual Media Profile 10.15 CIM_ServiceAffectsElement Relating DCIM_OEMVirtualMediaService to CIM_USBDevice The CIM_ServiceAffectsElement association is used to relate the instance of DCIM_OEMVirtualMediaService to the local emulated USB Device that can be redirected. Table 42 contains the elements requirements for this class.
Elements Requirement Notes SubClassesSupported[] Optional See section 7.3.1.3. MaxDevicesSupported[] Mandatory See section 7.3.2. SAPCapabilitiesSupported[] Mandatory See section 7.3.3. RequestedStatesSupportedFor CreatedSAP Conditional See section 7.3.4. This property is Conditional on SAPCapabilitiesSupported including 3 (CreateSAPs) InfoFormatsSupported Conditional See section 8.15.1.1.
Virtual Media Profile 10.19 DCIM_OEMVirtualMediaService The DCIM_OEMVirtualMediaService class represents the ability to manage the Virtual Media capabilities of a computer system. Table 46 contains the elements requirements for this class. Table 46 – Class: DCIM_OEMVirtualMediaService Elements Requirement Notes SystemCreationClassName Mandatory Key SystemName Mandatory Key CreationClassName Mandatory Key Name Mandatory Key ElementName Mandatory See section 7.2.6.
ANNEX A (informative) Change Log 62 Version Date 0.9.0 10/31/2007 Description First draft Version 1.0.
Virtual Media Profile ANNEX B (informative) Acknowledgments The authors wish to acknowledge the following people. Editor: • Khachatur Papanyan – Dell Contributors: • Khachatur Papanyan – Dell Version 1.0.