DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Priority
Receipt is acknowledged of certified copies of papers required by 37 CFR 1.55.
Information Disclosure Statement
The information disclosure statements (IDS) submitted on 15 April, 2024 and 6 August, 2025 are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements are being considered by the examiner.
Specification
Applicant’s cooperation is requested in correcting any errors of which applicant may become aware in the specification.
The title of the invention is not descriptive. A new title is required that is clearly indicative of the invention to which the claims are directed. The following title is suggested: Virtual Machine Storage Access Processing Method and Computer Device.
Claim Objections
Claim 14 is objected to under 37 CFR 1.75(c) as being in improper form because a multiple dependent claim may only depend from claims in the alternative. See MPEP § 608.01(n). In the interest of compact prosecution, the additional limitations of the claim not extant in its referenced claims have been addressed.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 4-5, 8-9, and 23 are rejected under 35 U.S.C. 103 as being unpatentable over Chang et al (U.S. Patent Pub. No. 2012/0179874), hereinafter referred to as Chang, in view of Ho et al (U.S. Patent Pub. No. 2018/0139208), hereinafter referred to as Ho.
In regard to claim 1, Chang teaches an access processing method (Figs. 4A-B access process flows), comprising: determining a corresponding storage node from a network storage system according to a file directory that a virtual machine requests to access (¶ 0018 hypervisor interface with storage servers may consist of mounting a remote file directory structure, ¶ 0019 directory server provides storage server holding specified virtual disk); creating a first virtual drive device in a physical host and controlling the first virtual drive device to connect with the storage node (¶ 0016, vStore runs locally in hypervisor under the host domain (see Fig. 1) as cache and provides illusion of unlimited storage space to VMs, e.g. acts an infinite size virtual drive device; Fig. 5 vStore module in host domain creates tapdisk process connected to blktap virtual device); wherein the file directory is configured to be mounted to the virtual machine through a second virtual drive device (Fig. 5 block front 504 in guest domain (virtual machine) mounts to block tap 506 for tapdisk process access; ¶ 0069, lines 10-11 block front 504 is a virtual device), so that the virtual machine accesses the file directory from the storage node through the target directory based on the first virtual drive device and the second virtual drive device (¶ 0069 lines 10-14 VM directs reads and writes to blkfront device which directs to blktap, ¶ 0070 vStore handles block I/O; access is therefore performed via block front device and blktap device); and the second virtual drive device corresponding to the first virtual drive device is created in the virtual machine and synchronously obtains the file directory from the first virtual drive device (Fig. 5 block front (second) device is in guest domain i.e. VM; ¶ 0070, lines 14-15 vStore may be implemented using synchronous I/O, therefore the file directory would be obtained synchronously).
Chang does not explicitly teach file directory mounting to a target directory, however Ho teaches a method wherein a file directory is configured to be mounted to a target directory of the virtual machine through a second virtual drive device (¶ 0029, a virtual sandbox is created for remote storage access by a user; ¶ 0030 virtual filesystem (e.g. virtual drive device) may be mounted in sandbox; ¶ 0031 virtual filesystems are home directories; ¶ 0033 virtual filesystem is mounted to a specified virtual root directory). It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the disclosure of Ho in order to mount virtual drives by directory and benefit from improvements in security, scalability, and/or ease of deployment (¶ 0022, lines 1-5).
As for claim 4, the previously cited references teach the method of claim 1. Additionally, Chang teaches that the vStore module containing the first virtual drive device is executed on a hypervisor running on one or more processors (¶ 0016, lines 8-14; processors would form some data processing unit as known in the art), achieving the claimed limitation.
As for claim 5, Applicant is directed to the rejection of claim 1, as the majority of the limitations are the same and the claims are therefore rejected on the same rationale. Additionally, Chang teaches the limitation of accessing the file directory from the storage node based on an access request generated by the second virtual drive device (¶ 0027, lines 6-7 front-end device driver forwards requests to backend i.e. driver generates some access request for backend); wherein the access request is generated when the second virtual drive device receives an access instruction of the virtual machine (¶ 0027, lines 3-6 requests are generated and sent to front end driver by virtual machine); the access instruction is generated by the virtual machine based on an access operation on the target directory (Fig. 5, read/write from VM triggers block front to communicate with block tap; combination would mean normal directory operations cause this result), achieving the claimed limitation.
As for claim 8, Applicant is directed to the rejection of claim 5, as the claims are directed to the same limitations and therefore rejected on the same rationale. Additionally, Chang teaches that all access operations are handled by vStore i.e. detected (Fig. 5) and Ho teaches VMs that are mounted with only a target directory (¶ 0029, a virtual sandbox is created for remote storage access by a user; ¶ 0030 virtual filesystem (e.g. virtual drive device) may be mounted in sandbox; ¶ 0031 virtual filesystems are home directories; ¶ 0033 virtual filesystem is mounted to a specified virtual root directory), which in combination would result in detecting operations on the target directory, achieving the claimed limitation.
As for claim 9, the previously cited references teach the method of claim 8. Additionally, Ho teaches an embodiment including in response to a startup instruction (¶ 0028 lines 1-3 connection request; ¶ 0029 sandbox is created), creating the corresponding second virtual drive device (¶ 0030 virtual filesystem is mounted) when the first virtual drive device is detected in the physical host (¶ 0029, lines 1-6 sandbox initializes remote resource; ¶ 0030, lines 1-6 sandbox communicates with remote data store to mount data; in the disclosure of Chang, remote drives can only be accessed via block tap (first virtual) device, so startup will not complete if first device is not connected), achieving the claimed limitation.
As for claim 23, the previously cited references teach the method of claim 1. Additionally, Chang discloses a computer-readable medium storing instructions for disclosed methods (¶ 0006).
Claim 2 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho and Mainali et al (U.S. Patent Pub. No. 2019/0370360), hereinafter referred to as Mainali. The previously cited references teach the method of claim 1. Additionally, Ho teaches virtual machine creation requests including file directories (¶ 0028 a user connection request locates a virtual user; ¶ 0029 a sandbox (i.e. VM) is created according to the virtual user; ¶ 0030 lines 1-3 sandbox may mount a virtual filesystem (i.e. drive device); ¶ 0031 filesystems are determined by a virtual user home directory i.e. virtual user identifiers in a connection request act as file directory identifiers).
Ho does not teach determining a storage node according to a file directory, however Mainali teaches a path resolver which identifies a storage node based on a file directory in a command (¶ 0161 lines 1-4). A person of ordinary skill in the art would be able to utilize the path resolver of Mainali to determine a storage node containing a user home directory in response to a connection request in the disclosure of Ho. It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the disclosure of Mainali in order to benefit from increased flexibility in allocating storage resources (¶ 0039-0040).
Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho, Mainali, and Mimatsu (U.S. Patent Pub. No. 2010/0306500).
As for claim 3, the previously cited references teach the method of claim 1. Additionally, Mainali teaches a path resolver which identifies a storage node based on a file directory in a command (¶ 0161 lines 1-4) and sends commands to the node via an identifier (¶ 0161 lines 18-22; sending the command to the node would require some kind of node address). In combination with the vStore module of Chang, the storage address would be used to connect commands from the blktap (first virtual drive) device to remote storage nodes.
The previously cited references do not teach the remaining limitations of claim 3. However, Mimatsu teaches a method for storage access including automatically selecting a filesystem according to capacity and creating a directory when it does not exist in a filesystem (¶ 0067, lines 17-25). In combination with the disclosure of Chang for directing commands to remote drives, the claimed limitation is achieved. It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the disclosure of Mimatsu in order to automatically create directories as desired and to benefit from thin provisioning methods which use a small amount of memory (¶ 0005, lines 14-16)
Claims 6, 14, 17-19, and 21-22 are rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho and Venkataramani et al (U.S. Patent Pub. No. 2022/0179809), hereinafter referred to as Venkataramani.
As for claim 6, the previously cited references teach the method of claim 5. They do not explicitly teach the remaining limitations of claim 6. However, Venkataramani teaches a storage controller VM in a user space (Fig. 1A) which communicates with storage devices (i.e. storage nodes) using RDMA (¶ 0040, lines 17-19 storage controller can communicate with nodes (second path) using RDMA). If implemented in the disclosure of Chang in computing Domain 0 with the vStore module, the blktap device would utilize RDMA for connections, achieving the claimed limitation. It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the disclosure of Venkataramani in order to benefit from the optimized RDMA performance (¶ 0008, lines 1-3).
As for claim 14, the previously cited references teach devices for carrying out the method of claim 1. Additionally, Venkataramani teaches an embodiment wherein the processing component comprises at least one CPU and at least one DPU (Fig. 6A several CPUs, according to instant specification ¶ 0046 a DPU is a chip used to accelerate a CPU and provide offloading, which can be accomplished by an additional CPU acting as the claimed DPU as is practiced in the art (¶ 0143, lines 1-5 CPUs may instead be data processors)); the at least one CPU is specifically configured to create and run the virtual machine, and create and run the second drive device (¶ 0154 lines 1-10 an executable container may act as a virtual machine and may be run by a processor e.g. one CPU, combination with Chang and Ho would include creation of second virtual device); the at least one DPU is specifically configured to run a storage client end (Fig. 6B storage controller may be executed as a container, therefore may be executed on a processor).
As for claim 17, the previously cited references teach the device of claim 14. Additionally, Applicant is directed to the rejection of claim 4, as the claims are directed to the same limitations and therefore rejected on the same rationale.
As for claim 18, the previously cited references teach the method of claim 5. Additionally, Applicant is directed to the rejection of claim 14, as the claims are directed to the same limitations and therefore rejected on the same rationale.
As for claim 19, the previously cited references teach the device of claim 18. Additionally, Applicant is directed to the rejection of claim 6, as the claims are directed to the same limitations and therefore rejected on the same rationale.
As for claim 21, the previously cited references teach the method of claim 8. Additionally, Applicant is directed to the rejection of claim 14, as the claims are directed to the same limitations and therefore rejected on the same rationale.
As for claim 22, the previously cited references teach the device of claim 21. Additionally, Applicant is directed to the rejection of claim 9, as the claims are directed to the same limitations and therefore rejected on the same rationale.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho and Lu et al (U.S. Patent Pub. No. 2021/0117330), hereinafter referred to as Lu. The previously cited references teach the method of claim 5. Additionally, Chang teaches the limitation of sending an access message to the storage node to access the file directory based on an access request generated by the second virtual drive device (¶ 0027, lines 6-7 front-end device driver forwards requests to backend i.e. driver generates some access request for backend). They do not teach the remaining limitations of claim 7. However, Lu teaches a method for accessing storage in a virtual machine including expanding a virtual filesystem size to use additional memory (i.e. shared memory from storage) as cache (¶ 0029 details the process of expanding a virtual disk (i.e. second virtual drive device) to include a cache portion). It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the disclosure of Lu in order to utilize virtual cache and improve scalability to allow for hosting more VMs (¶ 0017).
Claim 15 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho, Mainali, and Venkataramani. The previously cited references teach the device of claim 14. Additionally, Applicant is directed to the rejection of claim 2, as the claims are directed to the same limitations and therefore rejected on the same rationale.
Claim 16 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho, Mainali, Mimatsu, and Venkataramani. The previously cited references teach the device of claim 14. Additionally, Applicant is directed to the rejection of claim 3, as the claims are directed to the same limitations and therefore rejected on the same rationale.
Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Chang in view of Ho, Venkataramani, and Lu. The previously cited references teach the device of claim 18. Additionally, Applicant is directed to the rejection of claim 7, as the claims are directed to the same limitations and therefore rejected on the same rationale.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Starks et al (U.S. Patent Pub. No. 2012/0233434) discloses techniques for optimizing virtual machine disks.
“A Hybrid Storage Access Framework for Virtual Machines” discloses more detail and advantages related to a system like the one disclosed in the reference Chang.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZAKARIA MOHAMMED BELKHAYAT whose telephone number is (571)270-0472. The examiner can normally be reached Monday thru Thursday 7:30AM-5:30PM EST.
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, Reginald Bragdon can be reached at (571)272-4204. 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.
/ZAKARIA MOHAMMED BELKHAYAT/Examiner, Art Unit 2139
/REGINALD G BRAGDON/Supervisory Patent Examiner, Art Unit 2139