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 .
This action is responsive to the communication filed 9/4/2023.
Claims 1-18 are presented for examination.
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in entirely 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.
Priority
Applicant’s claim for the benefit of a prior-filed application under 35 U.S.C. 119(e) or under 35 U.S.C. 120, 121, or 365(c) is acknowledged.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 2/4/2024. The submissions are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Objections
Claims 1-10 are objected to because of the following informalities:
“the system” at line 2 and lines 2-3 of claim 1 should be: the spot life cycle manager system
“the cloud API” at line 3 of claim 3 should be: a cloud API.
“the cloud events” at line 4 of claim 3 should be: one or more cloud events.
Claims 2-10 are object for failing to cure the deficiency from their respective parent claim by dependency.
Appropriate correction is required.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are:
“an instance monitor to determine” in claim 1, “an instance manager to … terminate” in claim 1, “an instance manager to … use” in claim 1, “an environment manager to update” in claim 1, “an instance state inspector to proactively monitor” in claim 3, “a machine image creator to create” in claim 4, “an instance terminator to terminate” in claim 4, “an instance allocator to create” in claim 4, “an environment analyzer to identify” in claim 6, “an environment updater to replace” in claim 6.
Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
This application includes one or more claim limitations that use the word “means” or “step” but are nonetheless not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph because the claim limitation(s) recite(s) sufficient structure, materials, or acts to entirely perform the recited function. Such claim limitation(s) is/are:
“an instance manager to store” in claim 1 and “an instance event handler to receive” in claim 3.
Note: these two functions, i.e., “store” and “receive” are coextensive functions with a microprocessor itself. See “For a computer-implemented means-plus-function claim limitation invoking 35 U.S.C. 112(f) the Federal Circuit has stated that "a microprocessor can serve as structure for a computer-implemented function only where the claimed function is ‘coextensive’ with a microprocessor itself." EON Corp. IP Holdings LLC v. AT&T Mobility LLC, 785 F.3d 616, 622, 114 USPQ2d 1711, 1714 (Fed. Cir. 2015), citing In re Katz Interactive Call Processing Patent Litigation, 639 F.3d 1303, 1316, 97 USPQ2d 1737, 1747 (Fed. Cir. 2011). "‘It is only in the rare circumstances where any general-purpose computer without any special programming can perform the function that an algorithm need not be disclosed.’" EON Corp., 785 F.3d at 621, 114 USPQ2 at 1714, quoting Ergo Licensing, LLC v. CareFusion 303, Inc., 673 F.3d 1361, 1365, 102 USPQ2d 1122, 1125 (Fed. Cir. 2012). "‘[S]pecial programming’ includes any functionality that is not ‘coextensive’ with a microprocessor or general purpose computer." EON Corp., 785 F.3d at 623, 114 USPQ2d at 1715 (citations omitted). "Examples of such coextensive functions are ‘receiving’ data, ‘storing’ data, and ‘processing’ data—the only three functions on which the Katz court vacated the district court’s decision and remanded for the district court to determine whether disclosure of a microprocessor was sufficient." 785 F.3d at 622, 114 USPQ2d at 1714. Thus, "[a] microprocessor or general purpose computer lends sufficient structure only to basic functions of a microprocessor. All other computer-implemented functions require disclosure of an algorithm." Id., 114 USPQ2d at 1714” from MEPE 2181 Identifying and Interpreting a 35 U.S.C. 112(f) or Pre-AIA 35 U.S.C. 112, Sixth Paragraph Limitation.
Because this/these claim limitation(s) is/are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are not being interpreted to cover only the corresponding structure, material, or acts described in the specification as performing the claimed function, and equivalents thereof.
If applicant intends to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to remove the structure, materials, or acts that performs the claimed function; or (2) present a sufficient showing that the claim limitation(s) does/do not recite sufficient structure, materials, or acts to perform the claimed function.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-10 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor, or for pre-AIA the applicant regards as the invention.
Regarding to Claim 1, each of claim limitations “an instance monitor to determine”, “an instance manager to … terminate”, “an instance manager to … use”, “an environment manager to update” invokes 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. However, the written description fails to disclose the corresponding structure, material, or acts for performing the entire claimed function and to clearly link the structure, material, or acts to the function. Such as, [0084] from the specification only recites certain functions as “the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulates and/or transforms data represented as physical, such as electronic, quantities within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices” without further specifying the corresponding structure, material, or acts for performing each of the claimed functions above.
Therefore, the claim is indefinite and is rejected under 35 U.S.C. 112(b) or pre-AIA 35 U.S.C. 112, second paragraph.
Applicant may:
(a) Amend the claim so that the claim limitation will no longer be interpreted as a limitation under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph;
(b) Amend the written description of the specification such that it expressly recites what structure, material, or acts perform the entire claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(c) Amend the written description of the specification such that it clearly links the structure, material, or acts disclosed therein to the function recited in the claim, without introducing any new matter (35 U.S.C. 132(a)).
If applicant is of the opinion that the written description of the specification already implicitly or inherently discloses the corresponding structure, material, or acts and clearly links them to the function so that one of ordinary skill in the art would recognize what structure, material, or acts perform the claimed function, applicant should clarify the record by either:
(a) Amending the written description of the specification such that it expressly recites the corresponding structure, material, or acts for performing the claimed function and clearly links or associates the structure, material, or acts to the claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(b) Stating on the record what the corresponding structure, material, or acts, which are implicitly or inherently set forth in the written description of the specification, perform the claimed function. For more information, see 37 CFR 1.75(d) and MPEP §§ 608.01(o) and 2181.
Claims 2-10 are rejected for failing to cure the deficiency from their respective parent claim by dependency.
In addition to claim 3, the limitation “an instance state inspector to proactively monitor” is rejected under similar reason explained at the rejection of claim 1 above.
In addition to claim 4, each limitation of “a machine image creator to create”, “an instance terminator to terminate” and “an instance allocator to create” is rejected under similar reason explained at the rejection of claim 1 above.
In addition to claim 6, each limitation of “an environment analyzer to identify” and “an environment updater to replace” is rejected under similar reason explained at the rejection of claim 1 above.
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 1-10 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for pre-AIA the inventor(s), at the time the application was filed, had possession of the claimed invention.
Regarding to Claim 1, according to the statement of “A claim limitation expressed in means- (or step-) plus-function language "shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof." 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. If the specification fails to disclose sufficient corresponding structure, materials, or acts that perform the entire claimed function, then the claim limitation is indefinite because the applicant has in effect failed to particularly point out and distinctly claim the invention as required by 35 U.S.C. 112(b) or pre-AIA 35 U.S.C. 112, second paragraph. In re Donaldson Co., 16 F.3d 1189, 1195, 29 USPQ2d 1845, 1850 (Fed. Cir. 1994) (en banc). Such a limitation also lacks an adequate written description as required by 35 U.S.C. 112(a) or pre-AIA 35 U.S.C. 112, first paragraph, because an indefinite, unbounded functional limitation would cover all ways of performing a function and indicate that the inventor has not provided sufficient disclosure to show possession of the invention” from MPEP (see subsection VI of MPEP § 2163.03), the limitations “an instance monitor to determine”, “an instance manager to … terminate”, “an instance manager to … use”, “an environment manager to update” are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement.
Claims 2-10 are rejected for failing to cure the deficiency from their respective parent claim by dependency.
In addition to claim 3, the limitation “an instance state inspector to proactively monitor” is rejected under similar reason explained at the rejection of claim 1 above.
In addition to claim 4, each limitation of “a machine image creator to create”, “an instance terminator to terminate” and “an instance allocator to create” is rejected under similar reason explained at the rejection of claim 1 above.
In addition to claim 6, each limitation of “an environment analyzer to identify” and “an environment updater to replace” is rejected under similar reason explained at the rejection of claim 1 above.
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 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 of this title, 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-2, 4 and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. (US 10528367 B1, hereafter Liu) in view of Li et al. (US 20200117478 A1, hereafter Li).
Regarding to claim 1, Liu discloses: 1. A spot life cycle manager system to manage instances in a virtual networking environment in a cloud (see lines 4-15 of col. 9; “A master manager (246) monitors the health of the container orchestration/Kubernetes master, terminates an unhealthy master, and starts a new orchestration/Kubernetes master in the event of a terminated master … The node manager (248) may also monitor “spot” pricing of cloud instances, submit bids, and/or switch to “on-demand” instances when prices are high. The node manager (248) may also switch back to spot instances when prices drop”, emphasis added), the system implemented on at least one processor and memory (see lines 55-61 of col. 1; “The invention can be implemented in numerous ways, including as a process; an apparatus; a system … such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor”), the system comprising:
an instance monitor to determine a status of a first instance (see lines 4-15 of col. 9; “A master manager (246) monitors the health of the container orchestration/Kubernetes master … a node manager (248) monitors health of all nodes and/or minions … monitor “spot” pricing of cloud instances … when prices drop. The node manager (248) may regularly monitor and report spot prices for each instance”, emphasis added);
an instance manager to terminate the first instance, and create a second instance, if a status of the first instance is to-be-replaced (see lines 4-15 of col. 9; “terminates an unhealthy master, and starts a new orchestration/Kubernetes master in the event of a terminated master … terminate/restart unhealthy nodes and/or minions … monitor “spot” pricing of cloud instances, submit bids, and/or switch to “on-demand” instances when prices are high. The node manager (248) may also switch back to spot instances when prices drop”, emphasis added); and
an environment manager to update a plurality of entities with details of the second instance, replacing details of the first instance (see lines 4-15 of col. 9; “terminates an unhealthy master, and starts a new orchestration/Kubernetes master in the event of a terminated master … switch to “on-demand” instances when prices are high. The node manager (248) may also switch back to spot instances when prices drop”, emphasis added. In the event of corresponding Kubernetes master or container node fails or the prince of spot container node or on-demand container node changes, the system would create a new instance to replace the original one. Also see lines 21-33 of col. 6, lines 36-51 of col. 28; “Workflows (202) associated with a distributed application are run on a plurality of containers (204). One or more containers (204) are virtualized within a single “minion” or node (206) worker machine, wherein each node is a physical machine and/or VM. There may be a plurality of nodes (206) of which a master node (208) is used to manage and/or coordinate as per a container orchestration service (210) such as Kubernetes, Mesos, and/or Docker Swarm” and “The workflow executor (228) may restart steps interrupted by failure such as a node/minion restart”. No matter which of master, minion, spot instance or on-demand instance discussed at lines 4-15 of col. 9, they are instances of container or Kubernetes to perform their own functionalities and execute operations of the distributed application, and thus the replacement of old/terminated instance to new instance discussed lines 4-15 of col. 9 would inherently include update entities with details or configurations of the new instance to replace the old/terminated instance; otherwise the new instance would be created with total new instance that cannot be used to replace with the old/terminated instance. For example, the new container instance to be used to replace the old/terminate master instance would be updated with at least functionality “manage and/or coordinate as per a container orchestration service (210)” discussed at lines 36-51 of col. 28).
Liu does not disclose: the instance manager to store relevant information related to the first instance and use the relevant information to create the second instance;
However, Li discloses: a container life cycle manager system to manage instances in a virtual networking environment (see [0049]-[0051]), the system implemented on at least one processor and memory (see [0076]), the system comprising:
an instance monitor to determine a status of a first instance (see [0049]; “when it is detected a given service container in a group of service containers fails … monitor the operation status of the group of service containers … receive a monitoring result from a monitor”);
an instance manager to store relevant information related to the first instance, and use the relevant information to create a second instance, if a status of the first instance is to-be-replaced (see [0049]; “when it is detected a given service container in a group of service containers fails … besides restoring the container on the basis of backup data in the backup server, the deployer 150 may generate a new service container to replace the failed service container … the image file 154 is loaded to a node where the failed service container resides, to form a basic running environment”. Also see [0025]; “an image file (e.g. a docker image for creating a basic running environment of a container) and a Docker file (e.g. a script file for installing a service associated with a to-be-generated container)”. The image file 154 as claimed relevant information related to the first instance to create a second instance); and
an environment manager to update a plurality of entities with details of the second instance, replacing details of the first instance (see [0049]; “the deployer 150 may generate a new service container to replace the failed service container. Specifically, the image file 154 is loaded to a node where the failed service container resides, to form a basic running environment. Then, a configuration file may be deployed to the basic running environment to form a new service container, so that a backup agency comprised in the generated new service container performs a backup operation to the generated new service container”. After the new basic running environment of the new service instance is generate, an environment manager would update such new service instance according to the configuration file to update entities of such new service instance to replace the failed service container).
It would have been obvious to one with ordinary skill, in the art before the effective filing date of the claim invention, to modify the creation of the new container instance to replace failed container instance from Liu by including creating a new container instance to replace failed container instance via image file of the failed container instance from Li, and thus the combination of Liu and Li would disclose the missing limitations from Liu, since it would create a similar running environment for the new container instance to replace the failed container instance via the image file of the failed container instance (see [0025] and [0049] from Li. Note: lines 46-49 of col. 7 from Liu also discusses using container image to create a container instance; however, Liu does not expressly describes that the new container instance is created via the image file of the failed container instance or not) .
Regarding to Claim 2, the rejection of Claim 1 is incorporated and further the combination of Liu and Li discloses: wherein the first instance is one of: on-demand instance and spot instance and the second instance is one of: on-demand instance and spot instance (see lines 4-15 of col. 9 from Liu; “monitor “spot” pricing of cloud instances, submit bids, and/or switch to “on-demand” instances when prices are high. The node manager (248) may also switch back to spot instances when prices drop. The node manager (248) may regularly monitor and report spot prices for each instance”).
Regarding to Claim 4, the rejection of Claim 1 is incorporated and further the combination of Liu and Li discloses: wherein the instance manager comprises:
a machine image creator to create an image of the first instance, the image comprises information enabling creating the second instance similar to the first instance (see [0025] and [0049] from Li; “an image file (e.g. a docker image for creating a basic running environment of a container) and a Docker file (e.g. a script file for installing a service associated with a to-be-generated container)” and “generate a new service container to replace the failed service container … the image file 154 is loaded to a node where the failed service container resides, to form a basic running environment”. Also see [0027]-[0028] from Li; “a configuration file 220 for generating the container 132 may be created, here the configuration file 220 comprising scripts for installing a backup agency 230 that performs a backup operation to the to-be-generated container 132”);
an instance terminator to terminate the first instance (see lines 4-15 of col. 9 from Liu; “terminates an unhealthy master … terminate/restart unhealthy nodes and/or minions”); and
an instance allocator to create the second instance using the image of the first instance (see [0049] from Li; “generate a new service container to replace the failed service container … the image file 154 is loaded to a node where the failed service container resides, to form a basic running environment”).
Regarding to Claim 10, the rejection of Claim 1 is incorporated and further the combination of Liu and Li discloses: the spot life cycle manager system of claim 1 configured to operate on a subset of instances of the virtual networking environment (see Fig. 2B, lines 34-38 of col. 6 and lines 4-15 of col. 9 from Liu; “FIG. 2B is a block diagram illustrating an embodiment of a system for application management with control flows. In one embodiment, the system of FIG. 2B is the application management service (212) of FIG. 2A. The control flows are depicted by arrowed lines”. The master manager 2246 or the node manager 248 as claimed spot life cycle manager system is operated as one of the services of the application management service 212, i.e., a subset of instances of the virtual networking environment).
Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. (US 10528367 B1, hereafter Liu) in view of Li et al. (US 20200117478 A1, hereafter Li) and further in view of Bath et al. (US 20180089328 A1, hereafter Bath).
Regarding to Claim 3, the rejection of Claim 1 is incorporated and further the combination of Liu and Li discloses: wherein the instance monitor comprises: an instance event handler to receive from the cloud events related to the first instance (see lines 4-15 of col. 9 from Liu; “monitors the health of the container orchestration/Kubernetes master, terminates an unhealthy master, and starts a new orchestration/Kubernetes master in the event of a terminated master … monitors health of all nodes and/or minions. The node manager (248) may terminate/restart unhealthy nodes and/or minions … monitor “spot” pricing of cloud instances, submit bids, and/or switch to “on-demand” instances when prices are high. The node manager (248) may also switch back to spot instances when prices drop. The node manager (248) may regularly monitor and report spot prices for each instance”. According to the different events monitored/detected, there is at least one instance event handler to determine what kind of steps/actions should be performed in response to these different events).
The combination of Liu and Li does not disclose: wherein the instance monitor comprises: an instance state inspector to proactively monitor the status of the first instance using the cloud API.
However, Bath discloses: wherein the instance monitor comprises: an instance state inspector to proactively monitor the status of the first instance using the cloud API (see [0279]; “Google Cloud Platform (GCP) StackDriver Monitoring API can be adopted to collect metrics and metadata from, for example, AWS, hosted uptime probes, application instrumentation, and a variety of application components including Cassandra, Nginx, and Apache Web Server”. Also see [0004]; “measuring the health … is important to enable organizations to proactively monitor, diagnose, and analyze the infrastructure, application, and business metrics of the datacenter”).
It would have been obvious to one with ordinary skill, in the art before the effective filing date of the claim invention, to modify the monitoring process from the combination of Liu and Li by including Google Cloud Platform (GCP) StackDriver Monitoring API from Bath, and thus the combination of Liu, Li and Bath would disclose the missing limitations from the combination of Liu and Li, since API is well-known and understood interaction mechanism to be used between two software systems.
Claim 5 is rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. (US 10528367 B1, hereafter Liu) in view of Li et al. (US 20200117478 A1, hereafter Li) and further in view of Lagerholm et al. (US 20210049027 A1, hereafter Lagerholm).
Regarding to Claim 5, the rejection of Claim 4 is incorporated, the combination of Liu and Li does not disclose: wherein information in the image comprises a type, a list of volumes, a list of network interfaces and a list of security groups.
However, Lagerholm discloses: wherein information in the image comprises a type, a list of volumes, a list of network interfaces and a list of security groups (see [0026]; “Virtual machine images may be stored in virtual storage that can be provisioned to create a virtual machine. As will be understood, each of the virtual machine images is a set of files that are used to run one or more instances of the virtual machine. Each of the virtual machine images includes files that act as disk storage, a virtual machine definition, and various other files. The virtual machine definition is a template file that includes a set of attributes that defines a particular virtual machine. The attributes can include, for example, any name or identifying description assigned to the virtual machine, an amount of memory requested by the virtual machine, and a number of virtual processor units required by the virtual machine. Additionally, the virtual machine definition can include disks of a virtual machine, network interfaces of a virtual machine, input/output interfaces, any placement constraints, and preferences for the virtual machine, as well as any context of the virtual machine including files, disk images, or variables utilized by the virtual machine”. The information related to name or identifying description assigned to the virtual machine from [0026] above can be considered as claimed a type under BRI; the information related to disk of a virtual machine from [0026] above can be considered as claimed a list of volumes; the information related to network interfaces of a virtual machine can be considered as claimed a list of network interfaces; the information related to placement constraints can be considered as claimed a list of security groups under BRI. Note: none of claimed “a type” or claimed “a list of security groups” is further described or defined, and thus the identification information is still reasonable to be considered as claimed type under BRI, and the placement constraints are still reasonable to be considered as claimed security groups under BRI).
It would have been obvious to one with ordinary skill, in the art before the effective filing date of the claim invention, to modify the image content of the container from the combination of Liu and Li by including definition information of a virtual machine image from Lagerholm, and thus the combination of Liu, Li and Lagerholm would disclose the missing limitations from the combination of Liu and Li, since it would provide further useful information to instantiate a virtualized instance (see [0026] from Lagerholm).
Claims 6-9, 11-16 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. (US 10528367 B1, hereafter Liu) in view of Li et al. (US 20200117478 A1, hereafter Li) and further in view of Rangasamy et al. (US 20210211408 A1, hereafter Rangasamy).
Regarding to Claim 6, the rejection of Claim 1 is incorporated, the combination of Liu and Li does not disclose: wherein the environment manager comprising:
an environment analyzer to identify relevant entities which are in communication with the first instance; and
an environment updater to replace information related to the first instance with information related to the second instance in the relevant entities
However, Rangasamy discloses: wherein the environment manager comprising:
an environment analyzer to identify relevant entities which are in communication with the first instance; and an environment updater to replace information related to the first instance with information related to the second instance in the relevant entities (see [0053]; “to redirect workloads from enterprise 116, previously directed to primary container 126D, to secondary container 126A. Enterprise 116 may direct requests, via virtual circuit 127A configured in networking platform 108 (as shown in FIG. 1), to containers to execute a workload. Container hot swap manager 140 may configure routing information in routers 110 or network address translation (NAT) mapping in a NAT device (not shown) to cause requests directed for primary container 126A to be forwarded by network platform 108 to secondary container 126”. Also see [0037] and [0051]; “Networking platform 108 may use routers 110 to transfer data between and among enterprise 116 and cloud services 124A-124B. Orchestration engine 106 may administer the operations of networking platform 108 to facilitate the dynamic creation of private connections between enterprise 116 and cloud services 124A-124B” and “A hot swap or hot scaling event may include a request from enterprise 116, a message from container 126D indicating failure or overloading of the container 126D”. To determine or identify entities having workloads or connecting with the original container, and then updating the new/second container to changing the workload destination or connection destination from the original container to the new/second container).
It would have been obvious to one with ordinary skill, in the art before the effective filing date of the claim invention, to modify the updating processes during replacing the old instance with new instance from the combination of Liu and Li by including updating communication information among the network for new container from Rangasamy, and thus the combination of Liu, Li and Rangasamy would disclose the missing limitations from the combination of Liu and Li, since it would provide correct communication destination after replacing the old instance with new instance (see [0053] from Rangasamy).
Regarding to Claim 7, the rejection of Claim 6 is incorporated and further the combination of Liu, Li and Rangasamy discloses: wherein the entities comprise external elements which are in communication with the virtual networking environment (see lines 55-58 of col. 7, lines 14-16 of col. 8 and lines 12-22 of col. 24 from Liu; “prevents overloading the container orchestrator (210) with too much work that cannot be schedule”, “The workflow executor (228) may schedule dynamic fixtures, reserve static fixtures, and/or schedules deployments” and “two parallel steps in a workflow communicate heavily with each other, they may be scheduled on the same node or “nearby” nodes to optimize communication performance and overheads”. According to these descriptions, there must be at least an external scheduler or scheduling component that is external to and communicates with the container instances discussed at lines 4-15 of col. 9 of Liu, i.e., claimed virtual networking environment. Also see lines 35-66 of col. 15 from Liu;
“external:
- name: “mygo”
dns_prefix: mygo
target_port: 8080
ip_white_list:
- 0.0.0.0/0” and “The services section defines exposed ports. The external services are exposed on the Internet. A DNS name and load balancer may be configured automatically for the deployment”).
Regarding to Claim 8, the rejection of Claim 7 is incorporated and further the combination of Liu, Li and Rangasamy discloses: wherein the external elements comprise a scheduler (see lines 55-58 of col. 7, lines 14-16 of col. 8 and lines 12-22 of col. 24 from Liu; “prevents overloading the container orchestrator (210) with too much work that cannot be schedule”, “The workflow executor (228) may schedule dynamic fixtures, reserve static fixtures, and/or schedules deployments” and “two parallel steps in a workflow communicate heavily with each other, they may be scheduled on the same node or “nearby” nodes to optimize communication performance and overheads”. According to these descriptions, there must be at least an external scheduler or scheduling component that is external to and communicates with the container instances discussed at lines 4-15 of col. 9 of Liu, i.e., claimed virtual networking environment).
Regarding to Claim 9, the rejection of Claim 6 is incorporated and further the combination of Liu, Li and Rangasamy discloses: wherein the entities comprise any combination of: load balancer, cloud domain name system, web service, network element, volume, database, and database cluster (see lines 35-66 of col. 15 from Liu;
“external:
- name: “mygo”
dns_prefix: mygo
target_port: 8080
ip_white_list:
- 0.0.0.0/0” and “The services section defines exposed ports. The external services are exposed on the Internet. A DNS name and load balancer may be configured automatically for the deployment”, emphasis added).
Regarding to Claim 11, Claim 11 is a method claim corresponds to system Claims 6 and is rejected for the same reason set forth in the rejection of Claim 6 above.
Regarding to Claim 12, the rejection of Claim 11 is incorporated and further Claim 12 is rejected for the same reason set forth in the rejection of Claim 2 above.
Regarding to Claim 13, the rejection of Claim 11 is incorporated and further Claim 13 is rejected for the same reason set forth in the rejection of Claim 4 above.
Regarding to Claim 14, the rejection of Claim 13 is incorporated and further Claim 14 is rejected for the same reason set forth in the rejection of Claim 7 above.
Regarding to Claim 15, the rejection of Claim 14 is incorporated and further Claim 15 is rejected for the same reason set forth in the rejection of Claim 8 above.
Regarding to Claim 16, the rejection of Claim 11 is incorporated and further Claim 16 is rejected for the same reason set forth in the rejection of Claim 9 above.
Regarding to Claim 18, the rejection of Claim 11 is incorporated and further Claim 18 is rejected for the same reason set forth in the rejection of Claim 10 above.
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. (US 10528367 B1, hereafter Liu) in view of Li et al. (US 20200117478 A1, hereafter Li) and Rangasamy et al. (US 20210211408 A1, hereafter Rangasamy) and further in view of Lagerholm et al. (US 20210049027 A1, hereafter Lagerholm).
Regarding to Claim 17, the rejection of Claim 13 is incorporated and further Claim 17 is rejected for the same reason set forth in the rejection of Claim 5 above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Schwartz et al. (US 20220129322 A1) discloses: each application that would be impacted may be transitioned to new, replacement instances (whether using other spare cloud resources such as other spot instances, or on-demand instances, or some other combination) (see [0018]).
Ghodsi et al. (US 20180048536 A1) discloses: the cloud computing provider will deactivate one spot instance (e.g., the youngest spot instance, the oldest spot instance, the spot instance rented for the lowest amount of money, a random spot instance, etc.) and rent the instance instead as an on-demand instance (e.g., in order to make more money from the instance) (see [0013]).
Burgin et al. (US 10325231 B1) discloses: a convert-to-on-demand instance option will, if selected, convert the purchasing mode of the spot block resource instance to an on-demand instance purchasing plan once the current spot block expires (see lines 37-40 of 9).
JHA et al. (US 20200326982 A1) a recommendation is made to convert the compute instance to a spot instance, which is a compute instance that can be instantiated on-demand (see [0055]).
Ward, Jr. (US 9479382 B1) discloses: change an execution plan to use resource instances at a different location or of a different type (e.g., replace an on-demand instance in the plan with a spot instance) if that results in a lower cost to the client, or in a quicker execution of the task (see lines 54-58 of col. 20).
Xu et al. (US 10552268 B1) discloses: A snapshot of a VM can include the power state (on, off, suspended), data (virtual disks, memory) and hardware configuration (virtual network interface cards) of the VM at the time the snapshot was generated (see lines 32-40 of col. 1).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZHI CHEN whose telephone number is (571)272-0805. The examiner can normally be reached on M-F from 9:30AM to 5:30PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, April Y Blair can be reached on 571-270-1014. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center and the Private Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from Patent Center or Private PAIR. Status information for unpublished applications is available through Patent Center and Private PAIR to authorized users only. Should you have questions about access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/Zhi Chen/
Patent Examiner, AU2196
/APRIL Y BLAIR/Supervisory Patent Examiner, Art Unit 2196