Notice of Pre-AIA or AIA Status
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Drawings
2. Figures 3 and 4 are objected to because they are difficult to make out. The text is blurry in many places and should be made bolder and more obvious. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Specification
3. The disclosure is objected to because of the following informalities: paragraphs [0015], [0025], [0055], and [0089] should correct the term “vifo” to “vfio”. Appropriate correction is required.
Claim Objections
4. Claims 9 and 19 objected to because of the following informalities: the term “vifo” should be corrected to “vfio”. Appropriate correction is required.
Claim Rejections - 35 USC § 103
5. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
6. Claims 1-6, 11, 14, 15, 17, 18, 20, and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Liguori et al. Pat. No. US 10,318,311 B2 (hereafter Liguori) and in further view of ARON et al. Pub. No. US 021/0034404 A1 (hereafter ARON).
7. Regarding claim 1, Liguori teaches “A virtualization processing system ([Fig. 1 and Col. 8 line 55 – Col. 9 line 12 ]teaches a system), comprising: a virtualization infrastructure, deployed on a side of a virtual machine management and control board card (Fig. 3 and Col. 10 line 51 – Col. 12 line 9] teaches a partially-offloaded virtualization manager (PVM) that may operate on an offload card) and configured for constructing a virtualization system to manage a user virtual machine ([Fig. 2 and Col. 11 line 56 – Col. 12 line 44] teaches a hypervisor with a subcomponent of a Guest Virtual Machine (GVM) manager that manages a user VM); and a management and control … machine, deployed on a side of a host machine and configured for managing and controlling use of a host machine resource by the user virtual machine. ([Fig. 2 and Col. 11 line 56 – Col. 12 line 44] teaches a component on the hypervisor; a GVM manager that is responsible for respective GVM(s) such that it manages the GVMs’ use of resources).”
Liguori does mention in [Fig. 2 and Col. 9 line 66 – Col. 10 line 4] of administrative virtual machines, but does not explicitly teach that a GVM manager is a virtual machine.
However, in analogous art, ARON teaches a controller VM that manages user VMs such that it teaches the limitation “a management and control virtual machine ([0034-0036]).”
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to have implemented the GVM manager of Liguori as a virtual machine, described in ARON. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, as this is a substitution of one known implementation for another to obtain predictable results. As both teach some sort of user virtual machine manager on top of a hypervisor, one of ordinary skill in the art could have implemented the hypervisor with such substitution and the results would have been similar.
8. Regarding claim 2, wherein the combination, Liguori teaches “The system of claim 1, further comprising: a processing apparatus for the management and control virtual machine (Liguori [Fig. 2]), deployed on the side of the virtual machine management and control board card and configured for constructing the management and control virtual machine and determining resource use situation data of the management and control board card ([Col 8, lines 9-54] teaches the offloaded virtualization manager component query memory inventory and device state information of GVMs in order to allocate offloaded component resource to them such that it relays the card’s available resources. Also see [Col 11 lines 4-65); and, in a case where the resource use situation data of the management and control board card does not meet a board card management and control condition, deploying the management and control virtual machine on the side of the host machine, to use a host machine resource to perform management and control.([Col 9, lines 13-35] teaches that the hypervisor operates on the primary CPU as well as offload processors, [Col 3, line 63 – Col 5, line 22] teaches that under most operating conditions may the hypervisor utilize a physical CPU when a GVM relinquishes a pCPU such that the current load conditions allow for the hypervisor to execute on the main processor instead of the offload).”
9. Regarding claim 3, wherein the combination Liguori teaches “The system of claim 2, wherein, the processing apparatus is further configured for, in a case where the resource use situation data of the management and control board card meets the board card management and control condition, deploying the management and control virtual machine on the side of the management and control board card, to use a board card resource to perform the management and control. ([Col 1, lines 44-67] teach the inventive concept of needing a method of offloading the virtualization manager and [Col 9, line 36 - Col 10, line 4] implicitly teaches that the PVM approach allows for more GVMs to operate without interruption wherein the hypervisor would be operating at the OVMCs at the offload card).”
10. Regarding claim 4 wherein the combination, Liguori teaches “The system of claim 3, wherein, the management and control comprises application level management and control the application level management and control comprises a plurality of management and control tasks, and different management and control tasks correspond to different management and control virtual machines ([Col 12, lines 22-44] teaches the GVM manager responsible for various tasks related to respective GVMs); and the processing apparatus is further configured for deploying some of the management and control virtual machines on the side of the host machine and deploying some of the management and control virtual machines on the side of the management and control board card, through a management and control virtual machine deployment strategy. ([Col 10, line 51 – Col 13, line 45, and Fig. 2] teaches the deployment of the partially-offloaded virtualization manager (PVM) with the hypervisor and its components (GVM) deployed on the main host and partially on the offload card).”
11. Regarding claim 5, wherein the combination, Liguori teaches “The system of claim 3, wherein, the processing apparatus is further configured for, in a case where an application load of the user virtual machine causes the resource use situation data of the management and control board card to not meet the board card management and control condition switching the management and control virtual machine from deployment on the side of the management and control board card to deployment on the side of the host machine. ([Col. 3, line 63 – Col. 4, line 23] implicitly teaches that when a GVM relinquishes a pCPU by doing I/O operations or the listed examples, the GVM’s load would cause the PVM to not meet a condition such that the hypervisor is now able to utilize a pCPU on the host, effectively ‘deploying’ it on the side of the host machine).”
12. Regarding claim 6, wherein the combination, Liguori teaches “The system of claim 3, wherein, the side of the host machine comprises: a user virtual machine whose application load does not cause the resource use situation data of the management and control board card to not meet the board card management and control condition. ([Col. 27, lines 36-56] teaches an opportunistic hypervisor where it will use the physical CPU’s whenever it has the opportunity to do so, such that the GVM’s load may not be the only factor for the condition).”
13. Regarding claim 11, wherein the combination, Liguori teaches “The system of claim 1, wherein, the host machine resource used by the management and control virtual machine deployed on the side of the host machine is isolated, in a control group manner, from the host machine resource used by the user virtual machine deployed on the side of the host machine. ([Fig. 3 & Col. 9, line 13 – Col. 10, line 4] teaches that loads may be entirely offloaded to the offload processors such that the main CPU usage is not interrupted by the hypervisor, effectively isolating the two).”
14. Regarding claim 14, wherein the combination, Liguori teaches “The system of claim 1, wherein, the managing and controlling the use of the host machine resource by the user virtual machine, comprises: performing quality of service QoS flow limiting management and control on the user virtual machine; performing log management on the user virtual machine; and performing status monitoring on the user virtual machine. ([Col. 12, lines 22 – 44] teaches the GVM manager trapping GVM I/O requests and translating them such that it is performing QoS flow limiting for the GVM, and it does the monitoring of metrics and logs on the GVM).”
15. Regarding claim 15, wherein the combination. Liguori teaches “The system of claim 1, wherein, the management and control board card comprises a management and control board card based on a field programmable logic gate array FPGA chip. (Fig. 3 and [Col. 12, line 58 – Col. 13, line 45] teaches a SoC based card such that it is based on a FPGA chip).”
16. Regarding claim 17, it is similar to that of claims 1 and 2, and is rejected for similar reasons. Claim 17 is directed towards a “virtualization processing method. ([Col. 3, line 43])”
17. Regarding clam 18, it is similar to that of claim 3, and is rejected for similar reasons.
18. Regarding claim 20, it is similar to that of claim 11, and is rejected for similar reasons.
19. Regarding claim 21, wherein the combination, Liguori teaches “An electronic device, comprising: a processor and a memory; wherein the memory is configured for storing a program that implements the method of claim[[s]] 17; and the device is powered on, and runs through the processor, the program for the method. (Fig. 24, [Col. 33, line 21 – Col. 35, line 8)”
20. Claims 7 and 8 are rejected under 35 U.S.C. 103 as being unpatentable over Liguori and ARON as applied in claims 1-6 above, and in further view of Molloy et al. Pub. No. US 2003/0115244 A1 (hereafter Molloy).
21. Regarding claim 7, the combination does not explicitly teach the resource use situation data is a threshold value.
However, in analogous art, Molloy teaches collecting workload data to determine metrics associated with CPU usage and threshold values to determine additional measures such that it teaches the limitation “The system of claim 2, wherein, the board card management and control condition comprises that: the resource use situation data of the management and control board card is less than or equal to a data threshold value. ([0023-0025])”
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to have implemented the resource threshold features of Molloy to the card of Liguori and ARON resulting in a management card capable of measuring load and determine thresholds and steps thereafter. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of determining whether to redeploy the control VM based on threshold values of the hardware on the control board.
22. Regarding claim 8, the combination teaches “The system of claim 7, wherein, a board card resource comprises: a customized hardware resource, a processor resource, a memory resource, and a network resource (Liguori - Fig.3, [Col 12, line 58 – Col 13, line 45] teaches an offload card consisting of: System-On-Chip hardware, an offload processor, Flash/SSD devices, network interfaces); and the data threshold value comprises: a customized hardware resource threshold value, a processor resource threshold value, a memory resource threshold value, and a network resource threshold value. (Molloy, [0023-0025] teaches CPU usage, storage capacity, hardware resource, network nodes, management such that they may implicitly represent a value).”
23. Claims 9, and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Liguori and ARON as applied in claims 1-6 above, and in further view of Lu et al. Pub. No. US 2021/0089471 A1 (hereafter Lu).
24. Regarding claim 9, wherein the combination, Liguori teaches “The system of claim 1, wherein, the management and control virtual machine deployed on the side of the host machine communicates, … with the user virtual machine (Fig. 2, [Col. 20, lines 25 - 47] teaches client to VCS to virtualization controller to hypervisor (with GVM manager) to user VM); and the management and control virtual machine deployed on the side of the host machine communicates, in a pass-through vifo manner, with a first virtual machine monitor deployed on the side of the virtual machine management and control board card (Fig. 9, [Col. 20, lines 48 – Col. 21, line 4] teaches using PCI-E queue-based protocol to communicate from offload card to hypervisor).”
Liguori does not explicitly teach communicating in a front and back end vhost manner with the user virtual machine.
Lu teaches a front-end driver and a back-end driver model such that it teaches the limitation “in a front and back end drive vHost manner ([Fig. 2 & [0076-0077]).”
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to have implemented the front-end and back-end communication method of Lu to the combination of Liguori and ARON. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of reducing latency and having higher throughput.
25. Regarding claim 10, wherein the combination, Lu teaches “The system of claim 9, wherein, the management and control virtual machine deployed on the side of the host machine communicating, in the front and back end drive vHost manner, with the user virtual machine, comprises: deploying front-end drive on the side of the user virtual machine, and deploying back-end drive on the side of the management and control virtual machine. (Fig. 2 & [0077] teaches a front end driver deployed on the virtual machine and a back end driver (QEMU) deployed in communication with the VMM such that it is on the side).”
26. Claims 12 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Liguori and ARON as applied in claims 1-6, 11, 14, 15, 17, 18, 20, and 21 above, Lu as applied in claims 9 & 10 above, and in further view of BARRY et al. Pub. No. US 2022/0206832 A1 (hereafter BERRY).
27. Regarding claim 12, the combination teaches “The system of claim 1, wherein, the virtualization infrastructure comprises: an elastic computing service ECS management and control apparatus (Liguori, Fig. 1 – VCS),
a first virtual machine monitor (Liguori, Fig. 2 – hypervisor), a storage client (Liguori, Fig. 1 – storage devices 160 & 170), a network client (Liguori, Fig. 3 – network interface), and a customized hardware resource (Liguori, Fig. 3 – SoC/offload processors);
the ECS management and control apparatus is configured for receiving an ECS service request and calling the first virtual machine monitor (Liguori, Fig. 9, [Col. 20, line 25 – Col. 21, line 4]);
the first virtual machine monitor is configured for performing device simulation processing (Lu, [0077] teaches simulation of virtual disk),
communicating with the host machine through the customized hardware resource (Liguori [Figures 3, 9, & Col. 11, lines 4 – 36] teach the SOC implemented virtualization controller responsible for orchestrating work at the host such that it communicates with the host machine), and communicating with a remote end through the storage client and the network client (Liguori, Figures 1, 2, and 9; [Col. 8, line 56- Col. 10, line 50, Col. 13 lines 22-27] teaches the remote end of a client communicating through the VCS to the hypervisor; there are also storage services and network interfaces such that the hypervisor would be in communication with via the VCS through OVMC (offloaded virtualization manager components) to the hypervisor coordinator [Liguori Col. 12, lines 13-21]);
the first virtual machine monitor communicates with another side through the network client (Liguori - Fig. 2 & 3, [Col. 11, lines 31-36] teaches the network processing offloader acting as the intermediary between networking endpoints outside of the host);
and the management and control virtual machine communicates with the first virtual machine monitor through the customized hardware resource. (Liguori - Fig. 2 & 3, [Col. 11, lines 23-31] teaches the virtualization controller performing work at the host from the offload card such that it communicates with the hypervisor on the host).”
In the combination, Liguori mentions that in some embodiments that the virtualization manager may be implemented at a VCS of a network that may provide cloud-based storage services ([Col. 5, lines 23-35].
However, the combination does not explicitly teach communicating with a storage master deployed on a cloud storage.
BERRY teaches a storage controller that runs above the hypervisor such that it teaches the limitation “the first virtual machine monitor communicates, through the storage client, with a storage master deployed on a cloud storage device, to facilitate performing cloud storage virtualization processing; ([0129]).”
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to have implemented the storage controller of BERRY to the to the combination of Liguori, ARON, and Lu to facilitate communication between the hypervisor and a storage master. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of adding more flexible and convenient storage options for users in a virtualized environment.
28. Regarding claim 13, wherein the combination, Liguori does not explicitly teach of a second VMM.
Lu teaches a plurality of virtual machine monitors such that it teaches the limitation “The system of claim 1, further comprising: a second virtual machine monitor, deployed on the side of the host machine and configured for performing virtualization simulation of the management and control virtual machine and the user virtual machine. ([0076-0077])”
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to have implemented a second virtual machine monitor to the combination of Liguori, ARON, and BERRY. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of adding allowing for more isolation and flexibility when managing the low-level operations within the front-end user virtual machines.
Conclusion
29. Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRANDON A NGUYEN whose telephone number is (571)272-6074. The examiner can normally be reached Mon-Fri (10am-6pm).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Aimee Li can be reached at (571) 272-4169. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/BRANDON NGUYEN/Examiner, Art Unit 2195
/Aimee Li/Supervisory Patent Examiner, Art Unit 2195