Patent application number | Description | Published |
20150188816 | LOOK-ASIDE PROCESSOR UNIT WITH INTERNAL AND EXTERNAL ACCESS FOR MULTICORE PROCESSORS - A method and a system embodying the method for information lookup request processing at a look-aside processor unit comprising storing a received lookup transaction request in a first buffer; rebuilding the lookup transaction request into a request packet; transmitting the request packet; receiving a packet; determining whether the received packet comprises a response packet or an exception packet; and processing the received packet in accordance with the determining is disclosed. Furthermore, a method and a system embodying the method for exception packet processing at a look-aside processor unit comprising storing at least one received lookup transaction request in a first buffer; receiving a packet; determining that the received packet comprises an exception packet; and associating the exception packet with one of the at least one stored lookup transaction request in accordance with an identifier of the first buffer is disclosed. | 07-02-2015 |
20150242655 | Apparatus and Method for Software Enabled Access to Protected Hardware Resources - A semiconductor includes a set of protected hardware resources, where at least one protected hardware resource stores a secure key. The semiconductor also includes a computation kernel and a memory to store a resource enablement module executed by the computation kernel. The resource enablement module selectively enables a protected hardware resource in response to a delivered key corresponding to the secure key. | 08-27-2015 |
20150317088 | SYSTEMS AND METHODS FOR NVME CONTROLLER VIRTUALIZATION TO SUPPORT MULTIPLE VIRTUAL MACHINES RUNNING ON A HOST - A new approach is proposed that contemplates systems and methods to virtualize a physical NVMe controller associated with a computing device or host so that every virtual machine running on the host can have its own dedicated virtual NVMe controller. First, a plurality of virtual NVMe controllers are created on a single physical NVMe controller, which is associated with one or more storage devices. Once created, the plurality of virtual NVMe controllers are provided to VMs running on the host in place of the single physical NVMe controller attached to the host, and each of the virtual NVMe controllers organizes the storage units to be accessed by its corresponding VM as a logical volume. As a result, each of the VMs running on the host has its own namespace(s) and can access its storage devices directly through its own virtual NVMe controller. | 11-05-2015 |
20150317091 | SYSTEMS AND METHODS FOR ENABLING LOCAL CACHING FOR REMOTE STORAGE DEVICES OVER A NETWORK VIA NVME CONTROLLER - A new approach is proposed that contemplates systems and methods to support mapping/importing remote storage devices as NVMe namespace(s) via an NVMe controller using a storage network protocol and utilizing one or more storage devices locally coupled to the NVMe controller as caches for fast access to the mapped remote storage devices. The NVMe controller exports and presents the NVMe namespace(s) of the remote storage devices to one or more VMs running on a host attached to the NVMe controller. Each of the VMs running on the host can then perform read/write operations on the logical volumes. During a write operation, data to be written to the remote storage devices by the VMs is stored in the locally coupled storage devices first before being transmitted over the network. The locally coupled storage devices may also cache data intelligently pre-fetched from the remote storage devices based on reading patterns and/or pre-configured policies of the VMs in anticipation of read operations. | 11-05-2015 |
20150317176 | SYSTEMS AND METHODS FOR ENABLING VALUE ADDED SERVICES FOR EXTENSIBLE STORAGE DEVICES OVER A NETWORK VIA NVME CONTROLLER - A new approach is proposed that contemplates systems and methods to support a plurality of value-added services for storage operations on a plurality of remote storage devices virtualized as extensible/flexible storages and NVMe namespace(s) via an NVMe controller in real time. First, the NVMe controller virtualizes and presents the remote storage devices to one or more VMs running on a host attached to the NVMe controller as logical volumes so that each of the VMs running on the host can perform read/write operations on the emote storage devices as if they were local storage devices. The NVMe controller then monitors and meters the resources consumed by the activities/operations by the VMs to the virtualized remote storage devices as well as the data being transmitted during such operations in real time and creates analytics for billing purposes. In addition, the NVMe controller performs one or more of crypto operations, checksum operations, and compression and/or decompression operations on the data written to and/or read from the remote storage devices by the VMs as part of the value-added services to improve security, integrity, and efficient transmission of the data. | 11-05-2015 |
20150317177 | SYSTEMS AND METHODS FOR SUPPORTING MIGRATION OF VIRTUAL MACHINES ACCESSING REMOTE STORAGE DEVICES OVER NETWORK VIA NVME CONTROLLERS - A new approach is proposed that contemplates systems and methods to support (live or quiesced) migration of virtual machines (VMs) accessing a set of remote storage devices over a network via non-volatile memory express (NVMe) controllers from a current host to a destination host. At the time of the VM migration, a first virtual NVMe controller running on a first physical NVMe controller enables a first VM running on the current host to access and perform a plurality of storage operations to one or more logical volumes mapped to the remote storage devices over the network as if they were local storage volumes. During the VM migration process, the current host puts the first virtual NVMe controller serving the first VM into a quiesce state, captures and saves an image of states of the first virtual NVMe controller on the first host. A second virtual NVMe controller is then created on a second physical NVMe controller using the saved image, wherein the second virtual NVMe controller is configured to serve a second VM on the destination host and has exactly the same states as the first virtual NVMe controller. The second virtual NVMe controller then initiates and/or resumes the storage operations to the remote storage devices without being interrupted by the migration of the first VM on the first host to the second VM on the second host. | 11-05-2015 |
20150319237 | SYSTEMS AND METHODS FOR ENABLING ACCESS TO EXTENSIBLE STORAGE DEVICES OVER A NETWORK AS LOCAL STORAGE VIA NVME CONTROLLER - A new approach is proposed that contemplates systems and methods to support extensible/flexible storage access in real time by virtualizing a plurality of remote storage devices as NVMe namespace(s) via an NVMe controller using a storage network protocol. The NVMe controller exports and presents the remote storage devices to one or more VMs running on a host attached to the NVMe controller as the NVMe namespace(s), wherein these remote storage devices appear virtually as one or more logical volumes of a collection of logical blocks in the NVMe namespace(s) to the VMs. As a result, each of the VMs running on the host can access these remote storage devices to perform read/write operations as if they were local storage devices via the NVMe namespace(s). | 11-05-2015 |
20150319243 | SYSTEMS AND METHODS FOR SUPPORTING HOT PLUGGING OF REMOTE STORAGE DEVICES ACCESSED OVER A NETWORK VIA NVME CONTROLLER - A new approach is proposed that contemplates systems and methods to support hot plugging and/or unplugging one or more of remote storage devices virtualized as extensible/flexible storages and NVMe namespace(s) via an NVMe controller during operation. First, the NVMe controller virtualizes and presents a set of remote storage devices to one or more VMs running on a host attached to the NVMe controller as logical volumes in the NVMe namespace(s) so that each of the VMs running on the host can access these remote storage devices to perform read/write operations as if they were local storage devices. When the one or more remote storage devices are added to or removed from the set of remote storage devices based on storage space needs of the VMs, the NVMe controller updates the logical volumes in the NVMe namespace(s) accordingly and enables these remote storage devices to be hot plugged or unplugged from the plurality of remote storage devices at runtime without requiring shutting down and restarting any of the VMs, the host, and/or the NVMe controller. The VMs may then perform read/write operations on the NVMe namespace(s) updated to reflect the changes in the configuration of the set of remote storage devices dynamically without any interruption. | 11-05-2015 |