DETAILED ACTION
Claims 1-19 are pending in the present application. Claims 1, 5, and 19 were amended in the response filed 16 December 2025.
Notice of Pre-AIA or AIA Status
The present application is being examined under the pre-AIA first to invent provisions. September 2025 has been entered.
Claim Rejections - 35 USC § 112
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-19 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 applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. “a second processor configured to detect a change made by a user in an application locality preference” (see claim 1 lines 8-12, note independent claims); but rather the specification appears to state a controller detects a change, see specification page 43 lines 13-22..
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis for all obviousness rejections set forth in this Office action:
(a) A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-19 are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Subhlok et al. Automatic Node Selection for High Performance Applications on Networks in view of Ashihara et al. US Patent Application Publication No. 2012/01856 A1 and Ramakrishnan et al. Live Data Center Migration across WANs: A Robust Cooperative Context Aware Approach.
Regarding claim 1, Subhlok et al. teaches the following:
A system for dynamic migration of applications between servers, [note: Abstract, “The node selection algorithm developed in this research are also applicable to dynamic migration”; page 167, “Dynamic migration” ] the system comprising:
a plurality of servers comprising at least a first server and a second server, and a plurality of applications executing on the first server, wherein each server comprises a first processor configured to receive requests for one or more applications, and the first server comprises logic configured to asynchronously replicate changes in application data hosted on the first server to maintain a version of the live application data on the second server [note: page 163, Introduction, “Client-server applications may have a choice of machines on which to run a client, or select from a distributed servers. Network conditions change continuously due to sharing of resources, and computation load, as well as congestion on network nodes and links, increase the application response time”, the goal is to enable parallel distributed applications to automatically select the best available computation nodes; page 167 Dynamic migration ]; and
a second processor configured to detect a change made by a user to an application locality preference indicating a user-selected region in which the one or more applications and dependent databases associated with the one or more applications are to be hosted, and initiate migration of the one or more applications and the dependent databases from the first server to the second server in the user-selected region based on determining the second server in the user-selected region is available [note: page 168, “Custom execution patterns”; also note sections Network with reservations, and Variable number of execution nodes ]
Although Subhlok et al. teach the invention as cited, they do not explicitly teach “detecting” a change to an application locality preference. They do teach selection means for locality or region. However, Ashihara et al. teaches detecting changes within the system with respect to migration [note: Abstract, “communication flow for migration destination”; see claim 7 “wherein the controller detects a change of connection destination of said virtual machine based on a difference between the switch which detects RARP (Reverse Address Resolution Protocol) transmission”]. It would have been obvious to one of ordinary skill at the time of the effective filing date to have combined the cited references since they are both directed toward optimized data migration. A detection mechanisms would provide for dynamic migration of the data enhancing system performance.
Although Subhlok et al. and Ashihara et al. teach the invention as cited above, they do not teach “asynchronously” replication for live data center migration. However, Ramakrishnan et al. teach asynchronously replicate changes [note: page 264, “Asynchronous replication”, For WAN live server migration we seek a more flexible replication system where the mode can be dictated by the migration semantics, a signal enables the network path to switchover, ; page 266, means for detecting unavailability of the primary site; migration to storage supports planned and unplanned protocols, various selection schemes may be implemented ]. It would have been obvious to one of ordinary skill at the time of the effective filing date to have combined the cited references since they are all directed toward migration of data and such functions are inherent of load balancing and/or dynamic migration.
Claim 2: The system according to claim 1, wherein the second processor is configured to maintain a record of a server on which an application is currently hosted, and the first processor is configured to inspect the record to determine a server to which an incoming application request is to be directed [note: Subhlok et al., page 163-164, section 1 Introduction, interface for applications include network status ].
Claim 3: The system according to claim 1, wherein the first processor is configured to pause incoming requests for an application and to terminate current requests for the application after a predetermined time period [note: Subhlok et al., page 168, Latency and other considerations through Custom execution patterns ].
Claim 4: The system according to claim 1, wherein the first processor is configured to pause incoming requests for an application for a predetermined time period and to release the paused requests if current requests for the application have not completed in the predetermined time period. [note page 168 Latency and other considerations, means for customization ].
Claim 5: A non-transitory computer readable medium storing instructions that, when executed by one or more processors for multi-region application migration, cause the one or more processors to: elect a server from a cluster as a first server, the first server hosting a plurality of applications and is located in a first region; asynchronously replicate changes in application data of the plurality of applications hosted on the first server to a second server in a second region; and transfer hosting of an application from among the plurality of applications hosted by the first server to the second server based on detecting a change to an application locality preference indicating a user-selected region in which the application and dependent databases associated with the application are to be hosted [note: Subhlok et al., Abstract, dynamic migration; page 163-165, 167-168 dynamic migration].. Although Subblocks et al. teach the invention as cited, they do not explicitly teach “detecting” a change to an application locality preference. They do teach selection means for locality or region. However, Ashihara et al. teaches detecting changes within the system [note: see claims 1 and 7 detecting changes]. It would have been obvious to one of ordinary skill at the time of the effective filing date to have combined the cited references since they are both directed toward optimized data migration. A detection mechanism would provide for automatic or dynamic migration of the data enhancing system performance.
Claim 6: The non-transitory computer readable medium of claim 5, wherein the instructions, when executed, further cause the one or more processors to detect an event in the cluster, wherein the event is detection of a preferred alternate first server based on locality of servers in the cluster [note: Tang et al., section 4.3.4 data migration, means for detecting a new host (i.e. change) ]. Subhlok et al. does not specifically use the term e scope of the reference allows for this function through the dynamic migration process and update operation, note page 168 “Client-server applications may have a choice of machines on which to run a client, or select from a distributed servers. Network conditions change continuously due to sharing of resources, and computation load”. However, Mraz et al. further describes replicating changes to another server [see: column 7 lines 26-56, the occurrence of any changes triggers the system to communicate those changes. The system replicates the changes to a remote database]. It would have been obvious to one of ordinary skill at the time of the effective filing date to have combined the cited references since they are all directed toward migration of data and such functions are inherent of load balancing and/or dynamic migration.
Claim 7: The non-transitory computer readable medium of claim 6, wherein the event is detection of a preferred alternate first server in the cluster based on a predefined user preference [note: Tang et al., section 3.2 Data Location Schemes ].
Claim 8: The non-transitory computer readable medium of claim 6, wherein the event is detected by exchanging messages between servers of the cluster [note: Subhlok et al., page 169 generating messages ].
Claim 9: The non-transitory computer readable medium of claim 6, wherein the event is addition of a server to the cluster [note: Subhlok et al., page 166-167 algorithms for adding and removing nodes ].
Claim 10: The non-transitory computer readable medium of claim 9, wherein the cluster comprises a single server prior to the addition of the server [note: Subhlok et al., page 168 customization; also see pages 166-167 ].
Claim 11: The non-transitory computer readable medium of claim 6, wherein the event is removal of a server from the cluster [note: Subhlok et al., pages 166-167 algorithms for adding and removing ].
Claim 12: The non-transitory computer readable medium of claim 6, wherein the event is failure of a server in the cluster [note: Tang et al., section 4.3.2, Handling Node Failure and Supporting Replication ].
Claim 13: The non-transitory computer readable medium of claim 12, wherein data for an application hosted by the failed server is recovered using versions of the application on other servers in the cluster which are continuing to operate [note: Tang et al., section 4.3.2, node failure ].
Claim 14: The non-transitory computer readable medium of claim 6, wherein the event is a partition of the cluster [note: Tang et al., section 3.2.2 Partitioned Mapping Table ].
Claim 15: The non-transitory computer readable medium of claim 14, wherein after the partition, a preferred alternate first server is selected from a number of potentially competing servers as a server with a version of application data which is more valuable [note: Tang et al., section 3.2.2 Partitioned Mapping Table ]
Claim 16: The non-transitory computer readable medium of claim 5, wherein transferring the hosting of the application further causes the one or more processors to determine the second server in the user-selected region is available [note: Subhlok et al., page 163 ].
Claim 17: The non-transitory computer readable medium of claim 5, wherein a leader function hosted on one of the servers determines a new first server for an application, wherein the leader function is on a different server from the first server [note: Subhlok et al., page 165 section 3.2 Fundamental Node Selection Algorithms ].
Claim 18: The non-transitory computer readable medium of claim 5, wherein a leader function hosted on the first server determines a new first server [note: Subhlok et al., section 3.2 ].
The limitations of claim 19 parallel claim 5; therefore it is rejected under the same rationale.
Response to Arguments
Applicant's arguments filed 18 March 2025 have been fully considered but they are not persuasive.
Applicant’s arguments with respect to claim(s) 1-19 have been considered but are moot in view of the new rejection. Note newly cited reference Ashihara et al. teach a controller detects changes with respect to migration of data, and Ramakrishnan et al. teach flexibility in live migration of data both asynchronous replication and synchronous.
ARGUMENT: The prior art does not teach detect a change made by a user to an application locality preference as claimed..
RESPONSE: In response to the argument note newly cited references Ashihara et al. and Ramakrishnan et al. combined with Subhlok et al..
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GRETA ROBINSON whose telephone number is (571)272-4118. The examiner can normally be reached Mon.-Fri. 9:30AM-6:00PM.
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, Hassan Mahmoudi can be reached at 571-272-4078. 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.
/GRETA L ROBINSON/Primary Examiner, Art Unit 2163