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 .
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.
Drawings
The drawings are objected to because the unlabeled rectangular box(es) shown in the drawings should be provided with descriptive text labels, as the empty boxes fail to show every feature of the invention specified in the claims.
Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in
reply to the Office action to avoid abandonment of the application. Any amended
replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as "amended." If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either "Replacement Sheet" or "New Sheet" pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action.
The objection to the drawings will not be held in abeyance.
In addition to Replacement Sheets containing the corrected drawing figure(s),
applicant is required to submit a marked-up copy of each Replacement Sheet including annotations indicating the changes made to the previous version. The marked-up copy must be clearly labeled as "Annotated Sheets" and must be presented in the amendment or remarks section that explains the change(s) to the drawings. See 37 CFR 1.121(d)(1). Failure to timely submit the proposed drawing and marked-up copy will result in the abandonment of the application.
Amendment
The preliminary amendment filed 11/21/24 has been entered.
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-11 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 applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 1, 6, recite “at least one physical Ethernet gateway configured to transmit data between the each cluster and the IP network storing at least one first routing table comprising at least, for each other cluster of the plurality of clusters, an association of a gateway address with a destination IP address comprised in the each cluster comprising the at least one physical Ethernet gateway”, which renders the claim indefinite as it is unclear as to exactly what is being claimed.
As the claim indicates that the gateway performs for each other cluster of the plurality of clusters, an association of a gateway address with a destination IP address comprised in the each cluster, it is unclear what exactly is contained within the “first routing table” and whether it is meant to include data for each other cluster or each cluster, as “each other cluster” would appear to reference the clusters that do not include the current gateway, while “each cluster” would appear to reference all of the clusters including the current cluster and gateway.
Further, as the current claim language recites that each cluster of the plurality of clusters comprises “at least one physical Ethernet gateway”, it is unclear what is meant by the language of “an association of a gateway address with a destination IP address comprised in the each cluster comprising the at least one physical Ethernet gateway”. The limitation of “the at least one physical Ethernet gateway” would appear to reference the at least one gateway of the current cluster, as each cluster would not include the same “the at least one physical Ethernet gateway”, and would instead include their own corresponding gateways.
Claim 1, 6, recite “storing at least one third routing table comprising at least, for said each other cluster of the plurality of clusters, an association of an identifier of an application instance with an identifier of the each cluster comprising the each node running the application instance, with a unique network identifier of the application instance, and with an IP address of the at least one network card of the each node running the application instance”, which renders the claim indefinite as it is unclear as to exactly what is being claimed.
As the language of “each node” references the current cluster and current nodes within that cluster, it is unclear what is being referenced by “the each cluster comprising the each node running the application instance”. While it appears to be intended to reference “other” each nodes corresponding to “other clusters”, the current claim language instead references the each node of the current cluster.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-2, 4-5 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Brar et al. (Brar) (WO 2022/146585) (submitted by applicant).
As to claim 1, Brar discloses a high-performance computer (paragraph 33-34) comprising:
a plurality of clusters interconnected by an IP network (Fig. 1-2; local subnet clusters of hosts running VM instances interconnected via NVD; paragraph 67-70, 90-92, 102), wherein each cluster of the plurality of clusters comprises
at least one physical Ethernet gateway configured to transmit data between the each cluster and the IP network (NVDs transmitting between each other over network 218; Fig. 2, 4; 210, 412; paragraph 99-101, 106, 108, 123) storing at least one first routing table comprising at least, for each other cluster of the plurality of clusters, an association of a gateway address with a destination IP address comprised in the each cluster comprising the at least one physical Ethernet gateway (VNIC routing table mapping packet addresses to different VNDs; Fig. 2, paragraph 51, 59, 86, 120-121),
a plurality of physical computing and/or storage nodes (“many to one configuration” with plural host machines executing application instances for one NVD; Fig. 2, paragraph 91-94, 102), wherein each node the plurality of physical computing and/or storage nodes
being configured to run at least one instance of a high-performance computing and/or storage application (executing virtual machine compute instance; paragraph 90-97),
comprising at least one network card implementing an Ethernet-based high-performance interconnection protocol and being configured to implement an address resolution protocol (Fig. 2, 232, 244, 250; paragraph 98-99, 119-123, 126-127),
wherein the at least one network card stores at least one second routing table comprising at least, for said each other cluster of the plurality of clusters an association of an address of a gateway of the at least one physical Ethernet gateway of a first cluster with an identifier of the each other cluster accessible from the gateway of the first cluster (host/compute Instance storing mapping information for destination VCN/VLANs/subset; paragraph 67-68, 71-73, 119-123, 126-127, 164, 191, 206-208),
storing at least one third routing table comprising at least, for said each other cluster of the plurality of clusters, an association of an identifier of an application instance with an identifier of the each cluster comprising the each node running the application instance, with a unique network identifier of the application instance, and with an IP address of the at least one network card of the each node running the application instance (storing mapping information for destination compute instances; paragraph 71-73, 119-123, 126-127, 191, 206-208),
at least one physical intra-cluster interconnection switch configured to connect said each node and the at least one physical Ethernet gateway (paragraph 99-100, 108, 151, 154).
As to claim 2, Brar discloses wherein the Ethernet-based high-performance interconnection protocol (Fig. 2, 232, 244, 250; paragraph 98-99, 119-123, 126-127) implements a high-performance network library (paragraph 30-33, 35, 38, 41, 65, 254-258).
As to claim 4, Brar discloses wherein a network identifier and a process identifier are assigned to each instance of the at least one instance of the high-performance computing and/or storage application (mapping information for compute instances/VMs; paragraph 71-73, 119-123, 126-127, 191, 206-208), the network identifier being formed from an identifier of the each cluster wherein the each node running the each instance is located (paragraph 71-74, 119-123, 126-127, 191, 206-208), an identifier of the each node running the each instance or of a virtual machine running the each instance (virtual machine compute instance address/identifier; paragraph 71-73, 119-123, 126-127, 191, 206-208), and a physical identifier of the network card of the each node running the each instance (paragraph 53, 125-127),
As to claim 5, Brar discloses wherein at least one node of the plurality of physical computing and/or storage compute nodes comprises the virtual machine running the each instance (paragraph 36, 39, 48, 92-94).
Claims 1-2, 4-8 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Wilkinson et al. (Wilkinson) (US 2017/0180271).
As to claim 1, Wilkinson discloses a high-performance computer (paragraph 22) comprising:
a plurality of clusters interconnected by an IP network (Fig. 8, plural clusters 100 connected via ethernet networks; paragraph 70), wherein each cluster of the plurality of clusters comprises
at least one physical Ethernet gateway configured to transmit data between the each cluster and the IP network (Fig. 1, 8; gateway 114 with cluster 100; paragraph 46, 69-70) storing at least one first routing table comprising at least, for each other cluster of the plurality of clusters, an association of a gateway address with a destination IP address comprised in the each cluster comprising the at least one physical Ethernet gateway (address translation to route packet to remote fabric gateway across the internet; paragraph 46, 69-70),
a plurality of physical computing and/or storage nodes (Fig. 1, nodes 102; paragraph 31), wherein each node the plurality of physical computing and/or storage nodes
being configured to run at least one instance of a high-performance computing and/or storage application (paragraph 22, 47),
comprising at least one network card implementing an Ethernet-based high-performance interconnection protocol and being configured to implement an address resolution protocol (204 to transmit ethernet packets over fabric network 101; paragraph 26, 31-32, 36-38),
wherein the at least one network card stores at least one second routing table comprising at least, for said each other cluster of the plurality of clusters an association of an address of a gateway of the at least one physical Ethernet gateway of a first cluster with an identifier of the each other cluster accessible from the gateway of the first cluster (mapping to destination fabrics; Fig. 4A, 4F, paragraph 42, 44-46, 54-55, 59-60, 69-70),
storing at least one third routing table comprising at least, for said each other cluster of the plurality of clusters, an association of an identifier of an application instance (paragraph 47) with an identifier of the each cluster comprising the each node running the application instance, with a unique network identifier of the application instance, and with an IP address of the at least one network card of the each node running the application instance (table of remote destination addresses and remote fabric; Fig. 4A, 4F, paragraph 42, 47, 53-55, 65-68),
at least one physical intra-cluster interconnection switch configured to connect said each node and the at least one physical Ethernet gateway (paragraph 31-32).
As to claim 2, Wilkinson discloses wherein the Ethernet-based high-performance interconnection protocol (paragraph 32) implements a high-performance network library (paragraph 47).
As to claim 4, Wilkinson discloses wherein a network identifier and a process identifier are assigned to each instance of the at least one instance of the high-performance computing and/or storage application (mapping information for compute processes; paragraph 47, 53, 56), the network identifier being formed from an identifier of the each cluster wherein the each node running the each instance is located (fabricID; paragraph 42), an identifier of the each node running the each instance or of a virtual machine running the each instance (paragraph 42-44), and a physical identifier of the network card of the each node running the each instance (paragraph 42).
As to claim 5, Wilkinson discloses wherein at least one node of the plurality of physical computing and/or storage compute nodes comprises the virtual machine running the each instance (paragraph 42-44).
As to claim 6, Wilkinson discloses a method for inter-cluster communication in a high-performance computer (Fig. 1; paragraph 22), the high performance computer comprising
a plurality of clusters interconnected by an IP network (Fig. 8, plural clusters 100 connected via ethernet networks; paragraph 70), wherein each cluster of the plurality of clusters comprises
at least one physical Ethernet gateway configured to transmit data between the each cluster and the IP network (Fig. 1, 8; gateway 114 with cluster 100; paragraph 46, 69-70) storing at least one first routing table comprising at least, for each other cluster of the plurality of clusters, an association of a gateway address with a destination IP address comprised in the each cluster comprising the at least one physical Ethernet gateway (address translation to route packet to remote fabric gateway across the internet; paragraph 46, 69-70),
a plurality of physical computing and/or storage nodes (Fig. 1, nodes 102; paragraph 31), wherein each node the plurality of physical computing and/or storage nodes
being configured to run at least one instance of a high-performance computing and/or storage application (paragraph 22, 47),
comprising at least one network card implementing an Ethernet-based high-performance interconnection protocol and being configured to implement an address resolution protocol (204 to transmit ethernet packets over fabric network 101; paragraph 26, 31-32, 36-38),
wherein the at least one network card stores at least one second routing table comprising at least, for said each other cluster of the plurality of clusters an association of an address of a gateway of the at least one physical Ethernet gateway of a first cluster with an identifier of the each other cluster accessible from the gateway of the first cluster (mapping to destination fabrics; Fig. 4A, 4F, paragraph 42, 44-46, 54-55, 59-60, 69-70),
storing at least one third routing table comprising at least, for said each other cluster of the plurality of clusters, an association of an identifier of an application instance (paragraph 47) with an identifier of the each cluster comprising the each node running the application instance, with a unique network identifier of the application instance, and with an IP address of the at least one network card of the each node running the application instance (table of remote destination addresses and remote fabric; Fig. 4A-4H, paragraph 42, 47, 53-55, 65-68),
at least one physical intra-cluster interconnection switch configured to connect said each node and the at least one physical Ethernet gateway (paragraph 31-32),
receipt, by the at least one network card of a sending node of the plurality of physical computing and/or storage nodes of the first cluster, of a request to send data to at least one destination instance executed by a destination node of the plurality of physical computing and/or storage nodes of a second cluster of the plurality of clusters, the request coming from an instance of a high-performance computing application (paragraph 42-44, 47, 59-60) and comprising an identifier of the at least one destination instance and at least one data item (paragraph 42-44, 47, 59-60),
transcription, by the at least one network card of the sending node, of the request that is received into a request from a network library of the Ethernet-based high-performance interconnection protocol, the transcription of the request comprising a transcription of the identifier of the at least one destination instance into a unique identifier in a format of the network library (paragraph 47),
encapsulation, by the at least one network card of the sending node, of the transcribed request that is transcribed in an IP packet containing the IP address of a destination network card (paragraph 59-62),
encapsulation of the IP packet in an Ethernet frame comprising the address of the gateway of the first cluster (paragraph 63-66),
transmission of the Ethernet frame via the at least one physical intra-cluster interconnection switch and the gateway of the first cluster to the gateway of the second cluster (paragraph 68-70),
transmission, by the gateway of the second cluster, of the Ethernet frame to the destination network card of the each node running the at least one destination instance (gateway 114-2 of fabric 100-2 receiving and distributing packet to destination node; paragraph 68-70),
decapsulation, by the destination network card, of the Ethernet frame and IP packet to obtain the request comprising the at least one data item (paragraph 71-72),
transmission, of the at least one data item, by the destination network card, to the at least one destination instance (paragraph 40-42, 47, 72).
As to claim 7, Wilkinson discloses after the transcription step and before the step of encapsulation in the IP packet, a step of comparison, by the at least one network card of the sending node, of a cluster identifier of the unique network identifier of the at least one destination instance with a cluster identifier of the network card of the sending node, the method being continued only if the cluster identifier of the unique network identifier of the at least one destination instance is different from the cluster identifier of the at least one network card of the sending node (only routing to the gateway if the fabricID is not the same for the source and destination; paragraph 69).
As to claim 8, Wilkinson discloses between the encapsulation of the request in the IP packet and the encapsulation of the IP packet in the Ethernet frame, sending, by the at least one network card of the sending node, of an address resolution request from an IP address of the gateway of the first cluster to obtain a physical address of the gateway of the first cluster (paragraph 44), the IP address of the gateway of the first cluster being stored in the at least one second routing table associated with the identifier of the second cluster (address resolution protocol request to determine destination addresses and clusters; paragraph 44-46).
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 3, 9-11 are rejected under 35 U.S.C. 103 as being unpatentable over Wilkinson.
As to claim 3, while Wilkinson discloses wherein the Ethernet-based high-performance interconnection protocol is BXI® or Infiniband® respectively (paragraph 32), Wilkinson fails to specifically disclose the high-performance network library is Portals® or Verbs® respectively.
The examiner takes Official Notice that it was notoriously well known in the art to utilize Portals® or Verbs® so as to utilize already known and existing networking protocol APIs designed for high performance computing applications dependent upon the particular desired communication and performance computing requirements.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Wilkinson’s system to include wherein the high-performance network library is Portals® or Verbs® respectively, for the typical benefit of conforming to a standard which provides already known and existing networking APIs designed for high performance computing applications.
As to claim 9, Wilkinson fails to specifically disclose sending an acknowledgment of receipt of the at least one data item, by the receiving network card, to the at least one network card of the sending node.
The examiner takes Official Notice that it was notoriously well known in the art for receiving devices to send an acknowledgment of receipt of the at least one data item so as to enable the identification of lost data packets and the determination network values, such as transmission latency.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Wilkinson’s system to include sending an acknowledgment of receipt of the at least one data item, by the receiving network card, to the at least one network card of the sending node for the typical benefit of allowing the identification of lost data packets and the determination of network values, such as transmission latency.
As to claim 10, while Wilkinson discloses wherein the format of the network library is an identifier comprising the unique network identifier of the at least one destination instance and a process identifier of the at least one destination instance (paragraph 40-42, 47-48), Wilkinson fails to specifically disclose wherein the network library used is a Portals® network library.
The examiner takes Official Notice that it was notoriously well known in the art to utilize Portals® or Verbs® so as to utilize already known and existing networking protocol APIs designed for high performance computing applications dependent upon the particular desired communication and performance computing requirements.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Wilkinson’s system to include wherein the high-performance network library is Portals® or Verbs® respectively, for the typical benefit of conforming to a standard which provides already known and existing networking APIs designed for high performance computing applications.
As to claim 11, while Wilkinson discloses wherein the IP packet comprises a header indicating that the request that is encapsulated (paragraph 53, 58-62, Fig. 4D-E) is a parallel processing/memory request (paragraph 47), Wilkinson fails to specifically disclose a Portals® request.
The examiner takes Official Notice that it was notoriously well known in the art to utilize Portals® or Verbs® so as to utilize already known and existing networking protocol APIs designed for high performance computing applications dependent upon the particular desired communication and performance computing requirements.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Wilkinson’s system to include a Portals® request for the typical benefit of conforming to a standard which provides already known and existing networking APIs designed for high performance computing applications.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Dinan et al. (US 2018/0234347) discloses high performance computing across a network fabric including the use of the Portals 4.0 Network Programming Interface and the transmission of acknowledgments of receipt data items.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to James R Sheleheda whose telephone number is (571)272-7357. The examiner can normally be reached M-F 8 am-5 pm CST.
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, Benjamin Bruckart can be reached at (571) 272-3982. 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.
/James R Sheleheda/ Primary Examiner, Art Unit 2424