DETAILED ACTION
This Office Actions is in response to communication filed on 06/14/2023. Claims 1 – 20 are pending. Claim 1, 19, and 20 are in independent form.
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 .
Claim Objections
Claims 2 and 6 objected to because of the following informalities: “wherein the layer relationship data”. It should be “wherein the layer dependency relationship data”, as recited in claim 1.
Appropriate correction is required.
Claim 16 is objected to under 37 CFR 1.75 as being a substantial duplicate of claim 13. When two claims in an application are duplicates or else are so close in content that they both cover the same thing, despite a slight difference in wording, it is proper after allowing one claim to object to the other as being a substantial duplicate of the allowed claim. See MPEP § 608.01(m).
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claim 1 – 20, are rejected under 35 U.S.C. 101 because the claimed invention recites a judicial exception, is directed to that judicial exception, an abstract idea, as it has not been integrated into practical application and the claims further do not recite significantly more than the judicial exception.
With regard to claims 1, 19, and 20, these claims are within at least one of the four categories of patent eligible subject matter as it is directing to:
Step 1:
Claim 1 is directed to a computer implemented method and fall within the statutory category of process;
Claim 19 is directed to a computer program product and falls within the statutory category of manufacture;
Claim 20 is directed to a system and falls within the statutory category of machines;
Therefore, “Are the claims to a process, machine, manufacture or composition of matter?” Yes, under Step 1.
In order to evaluate the Step 2A inquiry “Is the claim directed to a law of nature, a natural phenomenon or an abstract idea?” we must determine, at Step 2A Prong 1, whether the claim recites a law of nature, a natural phenomenon or an abstract idea and further whether the claim recites additional elements that integrate the judicial exception into a practical application.
Step 2A Prong 1:
However, the limitations
Claims 1, 19, and 20: “examining image layers of a container image and generating, in dependence on the examining, layer dependency relationship data that specifies layer dependency relationships of the container image; ........ analyzing relationship data of the layer dependency relationship data; in dependence on the analyzing, identifying a subset of image layers of the container image preceding the targeted layer;”
as drafted, recite functions that, under its broadest reasonable interpretation, covers functions that could reasonably be performed in the mind, including with the aid of pen and paper, but for the recitation of generic computer components. The limitations encompass a human mind carrying out the function through observation, evaluation judgment and /or opinion, or even with the aid of pen and paper. For example, a person can perform the examining/identifying/observing image layer of a computer image, and generating/observing, the relationship between the layers, in their mind, and/or including with the aid of pen and paper. (See MPEP § 2106.04(a)(2)(III)).
That is, the above limitations in the claims 1, 19, and 20 as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitations encompass a human mind carrying out the functions through observation, evaluation, judgment and /or opinion, or even with the aid of pen and paper. Thus, these limitations recite and fall within the “Mental Processes” grouping of abstract ideas under Step 2A Prong 1.
Step 2A Prong 2:
Under Prong 2 Step 2A, this judicial exception is not integrated into a practical application. The claims recite the following additional elements:
Claim 1: “A computer implemented method comprising”
Claim 19: “A computer program product comprising: a computer readable storage medium readable by one or more processing circuit and storing instructions for execution by one or more processor for performing a method comprising”
Claim 20: “A system comprising: a memory; at least one processor in communication with the memory; and program instructions executable by one or more processor via the memory to perform a method comprising”
are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component, or merely a generic computer or generic computer components to perform the judicial exception.
Further, the claims recite the following additional element:
Claims 1, 19, and 20: storing in a container repository the layer dependency relationship data that specifies layer dependency relationships of the container image; in response to receipt of a download request that specifies a targeted layer of the container image, ........; establishing a deployment container image in dependence on the identified subset of image layers.
which is the limitation merely a recitation of limit the use of the abstract idea amounts to necessary data transmitting or transferring - Insignificant Extra-Solution Activity - pre-solution and post-solution activity - mere receiving or transmitting data over a network. Extra-solution activity includes both pre-solution and post-solution activity. An example of pre-solution activity is a step of mere receiving or transmitting data over a network for use in a claimed process. As explained by the Supreme Court, the addition of insignificant extra-solution activity does not amount to an inventive concept, particularly when the activity is well-understood or conventional, which does not integrate a judicial exception into practical application. (See MPEP § 2106.05(d)).
Therefore, these additional elements do not integrate the abstract idea into a practical application and they do not impose any meaningful limits on practicing the abstract idea. The claims are directed to an abstract idea.
After having evaluating the inquires set forth in Steps 2A Prong 1 and 2, it has been concluded that the claims 1, 19, and 20 do not only recites a judicial exception but that the claims are directed to the judicial exception as the judicial exception has not been integrated into practical application.
Step 2B:
Under Step 2B, the claims do not include additional elements, alone or in combination, that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements amount to no more than generic computing components and invoking computers and other machinery merely as a tool to perform an existing process, which do not amount to significantly more than the abstract idea. The claims that amount to nothing more than an instruction to apply the abstract idea using a generic computer do not render an abstract idea eligible.
The claims recite the following additional elements:
Claims 1, 19, and 20: storing in a container repository the layer dependency relationship data that specifies layer dependency relationships of the container image; in response to receipt of a download request that specifies a targeted layer of the container image, ........; establishing a deployment container image in dependence on the identified subset of image layers.
which is the limitation merely a recitation of limit the use of the abstract idea amounts to necessary data transmitting or transferring - Insignificant Extra-Solution Activity - pre-solution and post-solution activity - mere receiving or transmitting data over a network. Extra-solution activity includes both pre-solution and post-solution activity. The courts have recognized the “sending and receiving data” are insignificant extra-solution data gathering activity which do not amount to significantly more than the abstract idea, and are limitations computer functions as well-understood, routine, conventional (WURC) functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. (See TLI Communications LLC v. AV Auto. LLC, 823 F.3d 607, 614, 118 USPQ2d 1744, 1748 (Fed. Cir. 2016) (Specification described additional elements as “either performing basic computer functions such as sending and receiving data, or performing functions ‘known’ in the art.”) and MPEP § 2106.05(d)).
Therefore, “Do the claims recite additional elements that amount to significantly more than the judicial exception? No, these additional elements, alone or in combination, do not amount to significantly more than the judicial exception.
Having concluded analysis within the provided framework, claims 1, 19, and 20 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Apply the same analysis to the dependent claims 2 – 18, according to the above analysis, are mental processes, groupings of abstract ideas. Thus claims 2 – 18 are ineligible.
With regard to claim 2, the claim has limitation to further indicate the wherein the layer relationship data specifies file dependencies of first image layers of the container image, and abstraction layer dependencies of second image layers of the container image. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 3, the claim further includes the limitation of “includes selecting for deployment image layers that are in abstraction layer dependency with the targeted layer” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the establishing a deployment container image in dependence on the identified subset of image layers. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 4, the claim further includes the limitation of “includes selecting for deployment image layers that are in file dependency with the targeted layer, ........., includes selecting for deployment image layers that are in abstraction layer dependency with the targeted layer.” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the establishing a deployment container image in dependence on the identified subset of image layers.........., wherein the establishing a deployment container image in dependence on the identified subset of image layers includes. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 5, the claim further includes the limitation of “selecting for deployment image layers that are in file dependency with the targeted layer, ........., includes selecting for deployment image layers that are in abstraction layer dependency with the targeted layer.” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the establishing a deployment container image in dependence on the identified subset of image layers includes, .......... wherein the establishing a deployment container image in dependence on the identified subset of image layers includes........., and wherein a layer order for downloading of layer images of the subset of image layers from the container image is dependent on time of submission of the subset of image layers. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 6, the claim has limitation to further indicate the wherein the layer relationship data specifies abstraction layer dependencies of image layers of the container image. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 7, the claim further includes the limitation of “wherein examining includes identifying one or more abstraction layer dependency of the container image.” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 8, the claim further includes the limitation of “wherein examining includes identifying one or more abstraction layer dependency of the container image, wherein the identifying the one or more abstraction layer dependency of the container image includes reading administrator developer user defined data that predetermines the one or more abstraction layer dependency of the container image.” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 9, the claim further includes the limitation of “wherein examining includes identifying one or more abstraction layer dependency of the container image, ........ wherein the identifying the one or more abstraction layer dependency of the container image” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations includes processing container data of the container image. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 10, the claim further includes the limitation of “wherein examining includes identifying layers of the container image that are in abstraction layer dependency” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the layers of the container image that are in abstraction layer dependency include each of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (c) complementary layers of the container image that are complementary such that runtime production advantages are yielded when the complementary layers of the container image operate together. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 11, the claim further includes the limitation of “wherein the examining includes identifying one or more file dependency of the container image, ......., wherein the examining includes identifying one or more abstraction layer dependency of the container image” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations further indicate the wherein the identifying the one or more file dependency of the container image includes processing container data of the container image, ......., wherein the identifying the one or more abstraction layer dependency of the container image includes processing container data of the container image to ascertain one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (c) complementary layers of the container image that are complementary such that runtime production advantages are yielded when the complementary layers of the container image operate together. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 12, the claim further includes the limitation of “wherein the generating, in dependence on the examining, layer dependency relationship data includes generating a relationship graph having nodes associated to layers of the container image and edges referencing dependencies between layers of the container image, wherein the analyzing relationship data includes producing a reduced relationship graph having a reduced number of the nodes preceding the targeted layer relative to the relationship graph, and using the reduced relationship graph for performing the establishing the deployment container.” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claims 13 and 16, these claims have limitations to further indicate the wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claims do not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claims also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 14, the claim has limitations to further indicate the wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, wherein the stored relationship data for the container image specifies one or more of the following selected from the group consisting of dependent layers of the container image in file dependency relation to one another and dependent layers of the container image in abstraction layer dependency with one another, wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image based on an administrator developer user submitting different download selections through a user interface, wherein the user interface is configured so that the administrator developer user can specify for download container image layers of the container image in abstraction layer dependency relation independent of container image layers of the container image in file dependency relation. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 15, the claim has limitations to further indicate the wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, wherein the stored relationship data for the container image specifies one or more of the following selected from the group consisting of dependent layers of the container image in file dependency relation to one another and dependent layers of the container image in abstraction layer dependency with one another, wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image based on an administrator developer user submitting different download selections through a user interface configured to permit administrator developer user selection of dependent layers for download, wherein the user interface presents representations of layers of the container image in abstraction layer dependency with a different visualization relative to layers of the container image in file dependency, and wherein the user interface is configured so that the administrator developer user can specify for download container image layers of the container image in abstraction layer dependency relation independent of container image layers of the container image in file dependency relation. The limitations are the additional element analyzed under Prong 2 Step 2A, which are merely a recitation of limit the use of the abstract idea to insignificant extra-solution data gathering activity or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 17, the claim further includes the limitation of “wherein examining includes identifying layers of the container image that are in abstraction layer dependency” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (c) complementary layers of the container image that are complementary such that runtime production advantages are yielded when the complementary layers of the container image operate together. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
With regard to claim 18, the claim further includes the limitation of “wherein examining includes identifying layers of the container image that are in abstraction layer dependency” that fall with the “Mental Processes” grouping of abstract ideas, which is analyzed under Prong 1 Step 2A. Further, the claim has limitations wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers. The limitation is the additional element analyzed under Prong 2 Step 2A, which merely recites "apply it" (or an equivalent) or are no more than mere instructions to implement an abstract idea or other exception on a computer. Further, the claim does not recite any further additional elements and for the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, the claim also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, the claim does not recite patent eligible subject matter under 35 U.S.C. § 101.
Claim Rejections - 35 USC § 103
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.
Claims 1, 19, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Featonby et al. US Pat. No. US 12190144 B1 (hereafter Featonby44), in further view of Featonby et al. US Pat. No. US 11892418 B1 (hereafter Featonby18).
Regarding claim 1, Featonby44 teaches the invention substantially as claimed: A computer implemented method comprising: ......... and generating, in dependence on the examining, layer dependency relationship data that specifies layer dependency relationships of the container image; (e.g. FIG. 11 and 114 - Col 21, lines 26 – 31: “At block 1104, the container registry service 130 generates, based at least in part on the plurality of container images, layer dependency data (e.g., layer dependency data 137) indicating a number of appearances of each container image layer of the plurality of container image layers in the plurality of container images.”) The citation discloses the generation of the layer dependency data/dependency relationship data, of the container images.
storing in a container repository the layer dependency relationship data that specifies layer dependency relationships of the container image; 41 – Col 9, lines 1 – 7: “Additionally, the container registry service 130 and/or the container service 140 may utilize the services provided by the object storage service 110 to perform one or more of the techniques described herein (e.g., to provide the repositories 132, to store the image METADATA 135, image analytics data 136, and layer dependency data 137, and to store the cache performance data 144).” and 26 – Col 4, lines 45 – 52: “The layer dependency data 137 may indicate the dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image (e.g., in the form of a directed graph, as shown in FIG. 3) and/or an aggregation of such dependencies across some or all of the container images stored in the repositories 132 (e.g., in the form of an aggregated directed graph, as shown in FIG. 4).”) The citation discloses the object storage service/container repository, that stores the layer dependency data/dependency relationship data. At Col 4, lines 45 – 52 shows the layer dependency data indicate the dependencies among the layers of a single container image.
in response to receipt of a download request that specifies a targeted layer of the container image, (e.g. FIG. 11 and 115 – Col 21, lines 32 – 45: “At block 1106, the container registry service 130 receives from another service or device, a request to prefetch one or more container image layers likely to be used by future task executions. For example, the request may come from the container service 140, to prefetch one or more container image layers likely to be used by a future task execution on a virtual machine assigned to a user. As another example, the request may come from one of the additional services 170, to prefetch one or more container image layers likely to be requested at the storage device 172 (e.g., residing in one of the edge locations remotely located from the location in which the one or more container image layers are stored) by one or more user compute resources or devices configured to access the storage device 172.”) The citation discloses the container service receives a request about the container image layers that likely to be used for future task execution. Because the layers are for specific purposes (future task execution), it would imply that the request is for a specifies targeted layer. In addition, since the container image layers could locate remotely, it would imply that the request also a download request.
analyzing relationship data of the layer dependency relationship data; (e.g. FIG. 11 and 116 – Col 21, lines 46 – 51: “At block 1108, the container registry service 130 determines, based at least in part on the image analytics data and the layer dependency data, one or more of a plurality of layers used by the plurality of container images to be delivered onto a storage device accessible by a compute resource.”) The citation discloses the determination of a plurality of layers are based at least in part of the layer dependency data/dependency relationship data.
in dependence on the analyzing, identifying a subset of image layers of the container image preceding the targeted layer; (e.g. FIG. 11 and 116 – Col 21, lines 46 – 56: “At block 1108, the container registry service 130 determines, based at least in part on the image analytics data and the layer dependency data, one or more of a plurality of layers used by the plurality of container images to be delivered onto a storage device accessible by a compute resource. For example, the container registry service 130 may identify a set of container image layers to be predelivered, based at least in part on (i) the access pattern indicated by the image analytics data and (ii) the number of appearances of each container image layer in the plurality of container images indicated by the layer dependency data.” and FIG. 3 and 52 – Col 11, lines 66 – 67 and Col 12, lines 1 – 3: “FIG. 3 is a diagram illustrating example layer dependency graphs of the container images 202-206 in accordance with aspects of the present disclosure. Each layer of container images 202-206 builds on top of a previous layer, resulting in the layer dependency graphs shown in FIG. 3.”) the citation discloses the identifying a set of container images, so it would imply that the target layer, and the subset of image layers of the container image are within the set of container image being identified. FIG. 3 discloses the layer dependency graphs that show each layer of the container image builds on top of a previous layer /preceding the targeted layer.
and establishing a deployment container image in dependence on the identified subset of image layers. (e.g. FIG. 11 and 119 – Col 22, lines 19 – 25: “At block 1110, the container registry service 130 delivers the one or more layers identified at block 1108 onto the storage device accessible by the compute resource. For example, the container registry service 130 may do so before execution of a container image including the one or more layers identified at block 1108 is requested at the compute resource.” and 115 – Col 21, lines 38 – 45: “As another example, the request may come from one of the additional services 170, to prefetch one or more container image layers likely to be requested at the storage device 172 (e.g., residing in one of the edge locations remotely located from the location in which the one or more container image layers are stored) by one or more user compute resources or devices configured to access the storage device 172.”) The citation discloses the delivery, of the container image layer before the execution/deployment, of the container image.
Featonby44 fails to teach examining image layers of a container image.
However, Featonby18 teaches examining image layers of a container image. (e.g. FIG. 3A and 46 – Col 12, lines 27 – 33: “FIG. 3A depicts an illustrative routine 300A for inspecting a container image in accordance with aspects of the present disclosure. The routine 300A may be carried out, for example, by the container service 140 (or a component thereof such as the image optimization manager 142) or one or more other components of the cloud provider network 120 described herein.” and FIG. 2 and 43 – Col 12, lines 5 – 8: “FIG. 2 is a block diagram illustrating the contents of a container image 202. As shown in FIG. 2, the container image 202 includes Layer A, Layer B, and Layer C, each including one or more directories and files.” and 14 – Col 2, lines 46 – 51: “In contrast, embodiments of the present disclosure enable inspection and optimization of container images to remove any files and/or layers that may have previously been relied on but no longer used, and/or to replace any files and/or layers that are currently used but can be replaced with files and/or layers with superior performance.”) The citation discloses the inspecting/examining of container image, and at FIG. 2 discloses the container images comprises different layers, and at Col 2, lines 46 – 51 discloses the inspection for removing layers, so it would imply that this system performs the inspecting on layers of the container image.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the examining image layers of a container image, as taught in Featonby18’s invention into Featonby44’s invention because the addition features would help the system to understand how layers depend on one another, so the system can more efficiently select the necessary layers for the request, which helps to reduce redundant data transfer and faster container deployment.
Regarding claim 19, it is a computer program product claim having similar limitations cited in claim 1, so it is also rejected under the same rational.
Regarding claim 20, it is a system claim having similar limitations cited in claim 1, so it is also rejected under the same rational.
Claims 2 – 4, 6, 7, and 9 are rejected under 35 U.S.C. 103 as being unpatentable over Featonby44 and Featonby18, in further view of LEE et al. US Pub. No. US 20240427625 A1 (hereafter LEE).
Regarding claim 2, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein the layer relationship data specifies file dependencies of first image layers of the container image, ......... second image layers of the container image (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach and abstraction layer dependencies.
However, LEE teaches and abstraction layer dependencies (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the abstraction layer dependencies, as taught in LEE’s invention into Featonby44 and Featonby18’s invention because the newly added limitation would help the system a clear structure and more organized view of how layers are related, which improves efficiency and accuracy of building the deployment container image.
Regarding claim 3, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby44 further teaches wherein the establishing a deployment container image in dependence on the identified subset of image layers includes selecting for deployment image layers that are in layer dependency with the targeted layer. (e.g. 21 – Col 3, lines 14 – 26: “The presently disclosed embodiments therefore address technical problems inherent within computing systems, such as the latency associated with on-demand code execution on a cloud provider network, especially on compute capacity newly added to a cluster or compute capacity that is used for the first time. These technical problems are addressed by the various technical solutions described herein, including analyzing the dependencies among the individual layers within the container images stored and/or executed on the cloud provider network, and prefetching or predelivering layers that are likely to be used into the caches of the compute instances of the cloud provider network before execution of the container images including such layers is requested.”) The citation discloses the concept of identifying the layers that are likely to be used/deployment image layers, within the layers of the container images, which includes the layers is requested/targeted layers. However, the teaching of Featonby44 does not clearly indicate that there are abstract layers within the layers of the container image. The abstraction layer is taught by LEE, as discuss below.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches and abstraction layer dependencies (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Regarding claim 4, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein the establishing a deployment container image in dependence on the identified subset of image layers includes selecting for deployment image layers that are in file dependency with the targeted layer (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 6) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers. FIG. 6 discloses the optimizing layers in the container image using file dependencies and outputting new container image/deployment of container image.
Featonby44 further teaches wherein the establishing a deployment container image in dependence on the identified subset of image layers includes selecting for deployment image layers that are in layer dependency with the targeted layer. (e.g. 21 – Col 3, lines 14 – 26: “The presently disclosed embodiments therefore address technical problems inherent within computing systems, such as the latency associated with on-demand code execution on a cloud provider network, especially on compute capacity newly added to a cluster or compute capacity that is used for the first time. These technical problems are addressed by the various technical solutions described herein, including analyzing the dependencies among the individual layers within the container images stored and/or executed on the cloud provider network, and prefetching or predelivering layers that are likely to be used into the caches of the compute instances of the cloud provider network before execution of the container images including such layers is requested.”) The citation discloses the concept of identifying the layers that are likely to be used/deployment image layers, within the layers of the container images, which includes the layers is requested/targeted layers. However, the teaching of Featonby44 does not clearly indicate that there are abstract layers within the layers of the container image. The abstraction layer is taught by LEE, as discuss below.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Regarding claim 6, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein the layer relationship data specifies layer dependencies of image layers of the container image. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach the layer dependencies as abstraction layer dependencies.
However, LEE teaches abstraction layer dependencies (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Regarding claim 7, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein examining includes identifying one or more layer dependency of the container image. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Regarding claim 9, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein examining includes identifying one or more layer dependency of the container image. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
wherein the identifying the one or more layer dependency of the container image includes processing container data of the container image. (e.g. 27 – Col 4, lines 53 – 57: “In some embodiments, the image metadata 135, image analytics data 136, and/or the layer dependency data 137 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 11 and 116 – Col 21, lines 46 – 51: “At block 1108, the container registry service 130 determines, based at least in part on the image analytics data and the layer dependency data, one or more of a plurality of layers used by the plurality of container images to be delivered onto a storage device accessible by a compute resource.”) The citation discloses at Col 4, lines 53 – 57, the image analytics data includes information corresponding to container images, so it would imply that the image analytic data is the container data of the container image. At Col 21, lines 46 – 51 discloses the use/process of image analytics data/container data.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Featonby44 and Featonby18, in further view of LEE et al. US Pub. No. US 20240427625 A1 (hereafter LEE) and Chen US Pub. No. US 20190068706 A1.
Regarding claim 8, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein examining includes identifying one or more layer dependency of the container image. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the abstraction layer dependencies, as taught in LEE’s invention into Featonby44 and Featonby18’s invention because the newly added limitation would help the system a clear structure and more organized view of how layers are related, which improves efficiency and accuracy of building the deployment container image.
Featonby44 further teach data that predetermines the one or more layer dependency of the container image. (e.g. FIG. 4) The citation discloses at FIG. 4 the diagram of an example aggregated layer dependency graph of the layers of the container image, or the graphs at FIG. 4 would be considered as the data showing the dependency of each layer within the container image. The teaching of Featonby44 does not clearly indicate the layers would include the abstraction layer. By combine the teaching of Featonby44 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Featonby44, in view of Featonby18 fails to teach wherein the identifying the one or more abstraction layer dependency of the container image includes reading administrator developer user defined data.
However, Chen teaches wherein the identifying the one or more abstraction layer dependency of the container image includes reading administrator developer user defined data (e.g. [0034]: “Next, the service broker determines that data auditing is necessary (block 304). For example, after receiving the request from application 128, the service broker 132 reads the container image or the user/administrator information and determines whether or not the data to be stored is likely to include sensitive information.”) The citation discloses the concept of reading the user/administrator information/administrator developer user defined data. Chen does not clearly indicate the user/administrator information would be the “data that predetermines the one or more abstraction layer dependency of the container image.” By combining with the teaching of Featonby44 and LEE, to further indicate the user/administrator information would be the “data that predetermines the one or more abstraction layer dependency of the container image.”, one with ordinary skill in the art would be able to come up with the claim invention.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the wherein the identifying the one or more abstraction layer dependency of the container image includes reading administrator developer user defined data, as taught in Chen’s invention into Featonby44, Featonby18, and LEE’s invention because the additional feature would improve accuracy and consistency because it would help the system picks the right layers faster and build the deployment container image more efficiently.
Claim 12 is rejected under 35 U.S.C. 103 as being unpatentable over Featonby44 and Featonby18, in further view of LEYMANN et al. US Pub. No. US 20080216069 A1 (hereafter LEYMANN)
Regarding claim 12, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby44 further teaches wherein the generating, in dependence on the examining, layer dependency relationship data includes generating a relationship graph having nodes associated to layers of the container image and edges referencing dependencies between layers of the container image, (e.g. FIG. 3, FIG. 4, and 55 – Col 12, lines 24 – 36: “FIG. 4 is a diagram illustrating an example aggregated layer dependency graph 400 in accordance with aspects of the present disclosure. In the example of FIG. 4, the numbers in the parentheses indicate the number of instances a given dependency is observed across all container images stored on the cloud provider network 120 (e.g., including the container images 202-206 shown in FIG. 3). The aggregated layer dependency graph 400 indicates that image layer A1 appeared as a dependent base layer in 80 instances (50 times with image layer B1, 20 times with image layer B2, and 10 times with image layer B3), and that image layer A2 appeared as a dependent base layer in 20 instances (15 times with image layer B4 and 5 times with image layer B5).”) The citation discloses the aggregated layer dependency graph/relationship graph, having different image layer/node, that are linked together.
and using the reduced relationship graph for performing the establishing the deployment container. (e.g. FIG. 11 and 119 – Col 22, lines 19 – 25: “At block 1110, the container registry service 130 delivers the one or more layers identified at block 1108 onto the storage device accessible by the compute resource. For example, the container registry service 130 may do so before execution of a container image including the one or more layers identified at block 1108 is requested at the compute resource.” and 115 – Col 21, lines 38 – 45: “As another example, the request may come from one of the additional services 170, to prefetch one or more container image layers likely to be requested at the storage device 172 (e.g., residing in one of the edge locations remotely located from the location in which the one or more container image layers are stored) by one or more user compute resources or devices configured to access the storage device 172.” And 117 – Col 21, lines 57 – 62: “In one example, the container registry service 130 determines that a container image layer is likely to be used by a future task execution on a given service based at least in part on an indication provided by the layer dependency data that the container image layer is used by at least a threshold amount of the plurality of container images.”) The citation discloses the delivery, of the container image layer before the execution/deployment, of the container image. Col 21, lines 57 – 62 discloses that only container image layer is likely to be used by a future task would be select. The teaching of Featonby44 only discloses the layer dependency graph of the container image and select some of the layers for deployment. By combining with the teaching of LEYMANN about the concept of reducing relationship graphs, wherein the reduce graph is formed by selected layer for deployment, one with ordinary skill in the art would be able to come up with the claim invention.
Featonby44, in view of Featonby18 fails to teach wherein the analyzing relationship data includes producing a reduced relationship graph having a reduced number of the nodes preceding the targeted layer relative to the relationship graph.
However, LEYMANN teaches wherein the analyzing relationship data includes producing a reduced relationship graph having a reduced number of the nodes preceding the targeted layer relative to the relationship graph, (e.g. FIG. 5 and [0064]: “FIG. 5 illustrates how a provisioning process can be generated automatically as a process model of a workflow management system generated from a product dependency graph. In the specific case of the example of FIG. 5 is limited to a product dependency graph reduced to a product tree; of course, the current teaching can be applied to product dependency graphs of every type.”) The citation discloses the concept of producing a new product tree as the reducing of the product dependency graph. The teaching of LEYMANN does not clearly indicate the graph is the layer dependency graph of the container image. By combining with the teaching of Featonby44 about the layer dependency graph, with the method of reducing graph, one with ordinary skill in the art would be able to come up with the claim invention.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the wherein the analyzing relationship data includes producing a reduced relationship graph having a reduced number of the nodes preceding the targeted layer relative to the relationship graph, as taught in LEYMANN’s invention into Featonby44 and Featonby18’s invention because the additional feature would reduce processing overhead and speedup analysis, so the system can quickly focus only on the most relevant layer, and efficiently establish the deployment of the container image.
Claims 13 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Featonby44 and Featonby18, in further view of Isdal et al. US Pat. No. US 9524214 B1 (hereafter Isdal)
Regarding claim 13, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, but fails to teach wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image.
However, LEYMANN teaches wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, (e.g. 36 – Col 12, lines 25 – 30: “The fixed policy 424a specifies that when a software application 420a associated with the fixed policy 424a is redeployed subsequent to an initial deployment, the virtual machine 410a mounts the same image 416a that was mounted when the software application 420a was initially deployed.”) The citation discloses the redeployed subsequent to an initial deployment of the image of a VM.
wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image. (e.g. 17 – Col 3, lines 65 – 67, and Col 4, lines 1 – 16: “Yet another aspect of the disclosure provides a method for deploying a software application. The method includes, at an application server, receiving a selection of a policy from a plurality of policies and associating the selected policy with the software application. In response to the selected policy being a first policy, when the software application is first deployed, the method includes archiving the image mounted on the virtual machine in a non-transitory image repository and associating the mounted image with the software application. In response to receiving a command to redeploy the software application, if the policy associated with the software application is the first policy, the method includes retrieving the image associated with the software application from the non-transitory image repository. If the policy associated with the software application is a second policy, the method includes retrieving the most recent image stored in the non-transitory image repository, mounting the retrieved image on a virtual machine and redeploying the software application.”) The citation discloses the concept of deploying and redeploying a software application with the image of the VM. Because the image used in the deploying and the image (base on the second policy) used in the redeploying are different image, it would imply that the two images have different layers.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add wherein the method includes subsequent to the establishing the deployment container image, providing a subsequent deployment container image using the container image, wherein the deployment container image and the subsequent deployment container image download a different count of layers from the container image, as taught in LEYMANN’s invention into Featonby44 and Featonby18’s invention because the additional feature would allow the system to better match different usage by sending only the required layers for each deployment, which reduce unnecessary data transfer and improve overall efficiency.
Regarding claim 16, it is a computer implemented method claim having similar limitations cited in claim 13, so it is also rejected under the same rational.
Claims 17 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Featonby44 and Featonby18, in further view of LEE et al. US Pub. No. US 20240427625 A1 (hereafter LEE) and Jobi et al. US Pub. No. US 20240427625 A1 (hereafter Jobi)
Regarding claim 17, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein examining includes identifying layers of the container image that are in layer dependency. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the abstraction layer dependencies, as taught in LEE’s invention into Featonby44 and Featonby18’s invention because the newly added limitation would provide the system a clear structure and more organized view of how layers are related, which improves efficiency and accuracy of building the deployment container image.
Featonby44, in view of Featonby18 fails to teach wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (c) complementary layers of the container image that are complementary such that runtime production advantages are yielded when the complementary layers of the container image operate together.
However, Jobi teaches wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource,
(b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (e.g. [0058]: “In some implementations, the graph driver creates layers for images and read-write layers on top of those for containers. Each image will have a base layer, in which files of the image are populated initially. Additional layers may be created on top of the base layer and for each additional layer in the image being extracted. Each layer shares data from the previous layer.”) The citation discloses the concept of sharing data between the layer of the container image.
(c) complementary layers of the container image that are complementary such that runtime production advantages are yielded when the complementary layers of the container image operate together.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to add the wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of ......., (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, as taught in Jobi’s invention into Featonby44 and Featonby18’s invention because the newly added limitation would help the system to improves efficiency and accuracy of building the deployment container image, and reducing the total amount of resources usage, because the layers within the container image are sharing computing resources.
Regarding claim 18, Featonby44, in view of Featonby18, discloses the computer implemented method of claim 1, and Featonby18 further teaches wherein examining includes identifying layers of the container image that are in layer dependency. (e.g. 20 – Col 4, lines 8 – 14: “The image metadata 135 may also indicate dependencies (e.g., whether a layer depends on another layer, whether a layer builds on top of another layers, etc.) among the layers of a single container image. In some embodiments, the image metadata 135 may include information corresponding to container images and/or layers stored in another image repository different from the repositories 132.” and FIG. 2) The citation discloses the metadata/layer relationship data, that indicate the dependencies between the layer, and because at FIG. 2 discloses each layer includes one or more files, it would imply that the metadata would also indicate the dependencies of files, and the first and second image layer would be within the many layers.
Featonby44, in view of Featonby18 fails to teach the layer dependency as abstraction layer dependency.
However, LEE teaches abstraction layer dependency (e.g. [0037]: “Meanwhile, the processor may be configured to download a service container from a server, check dependency of a pre-installed first container, generate the abstraction layer based on the downloaded service container, and add the abstraction layer in the first container. and [0322]: “For example, if an existing container image includes only a base image layer and a writable layer, the processor 175 in the signal processing device adds the abstraction layer generated in operation 1625 (S1625), to regenerate a container image including the base image layer, the writable layer, and the abstraction layer.”) The citation discloses the container image includes the abstraction layer. By combine the teaching of Featonby18 about a container image includes multiple layers dependencies, with the teaching of LEE about the layer is an abstraction layer, one with ordinary skill in the art would be able to come up with the claim invention.
Featonby44, in view of Featonby18 fails to teach wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource, (b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers.
However, Jobi teaches wherein the layers of the container image that are in abstraction layer dependency include one or more of the following selected from the group consisting of (a) respective layers of the container image that use a common resource,
(b) different layers of the container image, wherein a first of the different layers shares data with a second of the different layers, (e.g. [0058]: “In some implementations, the graph driver creates layers for images and read-write layers on top of those for containers. Each image will have a base layer, in which files of the image are populated initially. Additional layers may be created on top of the base layer and for each additional layer in the image being extracted. Each layer shares data from the previous layer.”) The citation discloses the concept of sharing data between the layer of the container image.
Allowable Subject Matter
Claims 5, 10, 11, 14, and 15 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
US 20200082094 A1: a process that includes obtaining a container image; for each of a plurality of the constituent images of the container image, determining, with one or more processors, whether the respective constituent image contains a vulnerability by: selecting a respective subset of scanners from among a set of a plurality of scanners by comparing respective scanner criteria to at least part of the respective constituent image, causing at least part of the respective constituent image to be scanned with the selected respective subset of scanners, and identifying potential vulnerabilities in the respective constituent image based on output of the scanning; and storing results based on at least some identified potential vulnerabilities in memory.
US 20190310872 A1: Aspects of the present disclosure address the above and other deficiencies by providing technology to convert services from executing on a virtual machine using hardware level virtualization to executing within containers using operating system level virtualization. The technology may analyze the data received from the virtual machine and may configure one or more container images to execute the services provided by the virtual machine. The set of processes may be associated with data common to the virtual machine's operating system and data specific to the one or more services. The technology may determine in view of the virtual machine data and identified links the content of the virtual machine and corresponding processes that should be combined into the same container and content and processes that can be separated into different containers.
Examiner has cited particular columns/paragraphs/sections and line numbers in the references applied and not relied upon to the claims above for the convenience of the applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested from the applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner.
When responding to the Office action, applicant is advised to clearly point out the patentable novelty the claims present in view of the state of the art disclosed by the reference(s) cited or the objections made. A showing of how the amendments avoid such references or objections must also be present. See 37 C.F.R. 1.111(c).
When responding to this Office action, applicant is advised to provide the line and page numbers in the application and/or reference(s) cited to assist in locating the appropriate paragraphs
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TUAN M NGUYEN whose telephone number is (703)756-1599. The examiner can normally be reached Monday-Friday: 9:30am - 5:30PM ET.
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, Pierre Vital can be reached at (571) 272-4215. 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.
/TUAN M NGUYEN/Examiner, Art Unit 2198
/PIERRE VITAL/Supervisory Patent Examiner, Art Unit 2198