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 in response to the application filed on 03/20/2024.
Examiner Notes
Examiner cites particular paragraphs, figures, and line number 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 their 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.
As a disclaimer, the use of underlining in direct quotes is done by the examiner for emphasis. Direct quotes are not originally underlined in the published references cited.
Claim Objections
Claims 5-7, 12-14, 19, and 20 are objected to because of the following informalities:
Claim 5, line 1, before “second” --the-- appears to be missing. Claims 12 and 19 have the same issue.
Claim 6, line 1, before “primary” --the-- appears to be missing. Claims 13 and 20 have the same issue.
Claims 7 and 14 depend on the objected claims and inherit the same issues.
Appropriate correction is required.
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, 8, and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Dubal et al. (U.S. Publication No. 2016/0188313 A1, hereinafter Dubal) in view of Szabo et al. (U.S. Publication No. 2010/0042869 A1, hereinafter Szabo).
Regarding Claim 1:
Dubal discloses,
A method, comprising: (Paragraph [0032] teaches, “may execute a method 400 for accessing and/or updating aNVM firmware”.);
receiving a signal to update firmware of a second network interface card in a multi-host storage system (Paragraph [0082] teaches the signal received, “… wherein the means for providing access to the NVM firmware image comprises means for receiving a signal provided from a firmware routine that is executed by the computer node”. Paragraph [0079] further teaches the signal may be used to update, “providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network”. Paragraph [0031] teaches the firmware update is associated with the NICs, “a plurality of firmware images 306-312 for reading/writing to NICs associated with each suitable computer node”. The multi-host storage system is taught by the elements in Figure 1: where the Computer Node 104 contains Data Storage 126 and can communicate to Server Node 114 through the Network 112, as shown by the directed arrow. Figure 1 additionally shows that the Server Node 114 has Data Storage 156, and may also communicate with Computer Node 104 through Network 112, as shown by the directed arrow.);(Examiner’s Note 1: The “second interface card” in the examined case is mapped with Dubal in Figure 1, where there are numerous computer nodes (elements 104-110), with each computer node containing a NIC (element 130). Although Figure 1 does not explicitly show the NICs in the other computer nodes (elements 106-110), paragraph [0015] supports, “The computer nodes 2-n (106-110) may be similarly configured to the arrangement illustrated in computer node 104”.);
in which a first host and a second host are memory-mirrored pairs (In paragraph [0036], “Accordingly, NICs for all computer nodes in large-scale computer systems (e.g. data center) can run the same NVM and firmware”.); (Examiner’s Note 2: The “first host” in the examined case is mapped to Dubal’s reference to the compute node104 in Figure 1. The “second host” in the examined case is mapped to Dubal’s reference to a secondary node (i.e., element 106) in Figure 1. Additionally, note that Dubal, paragraph [0003], specifies the acronym, “non-volatile memory (NVM)”.);
a first network interface card is mounted to the first host and connected to an inter-nodal fabric, the second network interface card is mounted to the second host and connected to the inter-nodal fabric (In Figure 1, the NIC 130 is mounted onto the first host, Computer Node 104. Paragraph [0024] teaches the NIC 130 is connected to an inter-nodal fabric, “NIC 130 in any of computer nodes 104-110 utilizing NVM over Ethernet (NVMoE), which is also referred to in the art as “NVM Express over Fabrics” and/or “NVM Express over Fiber”. Paragraph [0023] emphasizes the physical connection, “Generally, the communication circuitry 132 of the computer node 104 and the communication circuitry 162 of server node 114 may be configured to use … communication protocols to communicate with each other such as, for example, a wired network communication protocol (e.g., TCP/IP)”. Paragraph [0015] teaches the second host may have a similar configuration, “The computer nodes 2-n (106-110) may be similarly configured to the arrangement illustrated in computer node 104”.);
the first host is connected to the second network interface card by a first bus, and the second host is connected to the first network interface card by a second bus (Paragraph [0018] teaches that the first host connects to a bus, “an I/O subsystem 122, which may be embodied as circuitry and/or components to facilitate input/output operations with … components of the computer node 104. For example, the I/O subsystem 122 may be embodied as … communication links (i.e., point-to-point links, bus links, wires, cables, light guides, printed circuit board traces, etc.)”. Paragraph [0019] teaches the connection between the first host and second network interface card, “Communication circuitry of the computer node 104 may include NIC 130 and any number of other devices and circuitry for enabling communications between computer node 104 and one or more other external electronic devices and/or systems”. Recall the second examiner’s note, where the second host may be similarly configured as the first host. Therefore, a second I/O subsystem being embodied as ‘bus links’, may also be included in the second host.);
updating the firmware of the second network interface card (Paragraph [0079] teaches the updating of firmware, “… providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network.” Where the firmware update is retrieved by the NIC in paragraph [0032], “firmware management module 302 writes the updated NVM image in block 412 so that the updated NVM image may be accessed by NIC 130, resulting in updated firmware in block 414”. The second NIC being updated is outlined in paragraph [0036], “numerous NICs on computer nodes may be managed and updated substantially simultaneously”.).
Dubal does not disclose, however Szabo discloses,
invoking multi-host failover to the first network interface card in response to the signal (Paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switch boot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster … the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover … By maintaining failover connectivity, a cluster may be upgraded with little or no downtime or loss of data”. Paragraph [0048] supports that the failover may be used for hardware upgrades, “Control Process 452 includes any component configured to perform a seamless software or hardware upgrade of a cluster of network devices.” A hardware upgrade may include a NIC upgrade, where the network device is specified to include NIC hardware in paragraph [0042], “network device 400 also can communicate with … some other communications network via one or more network interface units 410 … Network interface unit 410 is sometimes known as a … network interface card (NIC); and where the device 400 includes more than one processing unit 412 (or a unit 412 has more than one core), each unit 412 (and/or core) may use the same single network interface unit 410 or a plurality of units 410”.); (Examiner’s Note 3: The “first host” and “second host” in the examined case is mapped to Szabo’s reference to clusters. Additionally, note the mapping from Szabo for clarity in paragraph [0024], “the term "cluster," refers to loosely coupled network devices that cooperate to integrate services, resources, or the like, to provide a device external to the cluster with access to the service, resource, and the like, the cluster appearing to the external device as a single entity on the network. Each network device within the cluster is referred to as a member of the cluster. The members of the cluster may be blades, or "Blade Servers" as discussed above, or any other network enabled device”. Referring to Figure 7C of Szabo, the element ‘Member #4’ connections in the ‘Standby Cluster’ may be mapped to the examined case second NIC. The Standby Cluster in Szabo is mapped as the second host. The ‘Active Cluster’ in Szabo is mapped to the examined case first host. The Active Cluster in Szabo contains Members #1-3 in Figure 7C but will be treated as a single entity, allowed by Szabo, paragraph [0024], “the cluster appearing to the external device as a single entity”, and paragraph [0054], “a cluster may include virtually any number of members”. Thus, The first NIC is mapped to the connections of a member in the Active Cluster.), causing the first host and the second host to use the first network interface card and cease using the second network interface card (In Figure 7A-7H, The members begin as one cluster “running an existing software version” (Paragraph [0069]). In Figure 7C, the cluster of members splits into a standby ‘Cluster #2’ and active ‘Cluster #1’. The standby cluster drains the connection in member 4 and are now directed to the active cluster, “For instance, Member #4 may be disabled. In one embodiment, connections being processed by Member #4 are drained before Member #4 is removed from Cluster #1. Subsequent connections that would have been processed by Member #4 are instead directed to Members #1-3”. As mentioned in the third examiner’s note above, the Active Cluster will be treated as having one member while mapping. The NIC in the Active Cluster member now takes over in the first host after the drained connections were redirected from the Standby Cluster. The second NIC in the Standby Cluster ceases use once the connections are drained.); and
configuring the first host and the second host to use the second network interface card (In paragraph [0080], “FIG. 7F … State mirroring may transfer configuration, session, connection, persistence, and other state from the active cluster (Cluster #1) to the standby cluster (Cluster #2)”. The use of the second NIC is restored after concluding the failover process in the reference once an upgrade is complete as shown in Figure 7G-7H, “Once failover occurs, the Cluster #2 (now the `active cluster` for managing network connections) may switch back to intra-cluster state mirroring mode. As depicted, FIGS. 7G and 7H illustrate regrouping member #2 and then member #1 into the new cluster” (Paragraph [0081]).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting the teaching in Szabo to invoke a failover between network interface cards to prevent further disruptions; motivated by the common goal of an improved efficiency when implementing firmware updates-- such as allowing for network connections to still be operative while an update is in progress.
Regarding Claim 8:
Dubal discloses,
An apparatus comprising: (In paragraph [0016], “computer node 104 may include other or additional components, such as those commonly found in a digital apparatus and/or computer”.);
a first host; (The “first host” in the examined case is mapped to Dubal’s reference to the compute node 104 in Figure 1.);
a first network interface card mounted to the first host; (In Figure 1, the NIC 130 is mounted onto the first host, Computer Node 104. Paragraph [0024] further teaches the mounting of NIC 130, “NIC 130 in any of computer nodes 104-110”.)
a second host; (The “second host” in the examined case is mapped to Dubal’s reference of a secondary computer node (i.e., element 106) in Figure 1.);
a second network interface card mounted the second host; (In Figure 1, the NIC 130 is mounted onto the first host, Computer Node 104. Paragraph [0024] further teaches the mounting of NIC 130, “NIC 130 in any of computer nodes 104-110”. Paragraph [0015] teaches the second host may have a similar configuration to the first host, “The computer nodes 2-n (106-110) may be similarly configured to the arrangement illustrated in computer node 104”.); (Refer to Examiner’s Note 1 on the second host’s mapping with a NIC.);
a first bus connecting the first host with the second network interface card; a second bus connecting the second host with the first network interface card; (Paragraph [0018] teaches that the first host connects to a bus, “an I/O subsystem 122, which may be embodied as circuitry and/or components to facilitate input/output operations with … components of the computer node 104. For example, the I/O subsystem 122 may be embodied as … communication links (i.e., point-to-point links, bus links, wires, cables, light guides, printed circuit board traces, etc.)”. Paragraph [0019] teaches the connection between the first host and second network interface card, “Communication circuitry of the computer node 104 may include NIC 130 and any number of other devices and circuitry for enabling communications between computer node 104 and one or more other external electronic devices and/or systems”. Recall the second examiner’s note, where the second host may be similarly configured as the first host. Therefore, a second I/O subsystem being embodied as ‘bus links’, may also be included in the second host.);
at least one controller configured to: (The Abstract teaches, “Communications are provided in the NIC for communicating data to and from a network from a computer node, along with a controller operatively coupled to the communications for controlling the communication of data”.);
receive a signal to update firmware of the second network interface card; (Paragraph [0082] teaches the signal received, “… wherein the means for providing access to the NVM firmware image comprises means for receiving a signal provided from a firmware routine that is executed by the computer node”. Paragraph [0079] further teaches the signal may be used to update, “providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network”.)
updating the firmware of the second network interface card (Paragraph [0079] teaches the updating of firmware, “… providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network.” Where the firmware update is retrieved by the NIC in paragraph [0032], “firmware management module 302 writes the updated NVM image in block 412 so that the updated NVM image may be accessed by NIC 130, resulting in updated firmware in block 414”.).
Dubal does not disclose, however Szabo discloses,
invoke multi-host failover to the first network interface card in response to the signal (Paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switch boot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster … the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover … By maintaining failover connectivity, a cluster may be upgraded with little or no downtime or loss of data”. Paragraph [0048] supports that the failover may be used for hardware upgrades, “Control Process 452 includes any component configured to perform a seamless software or hardware upgrade of a cluster of network devices.” A hardware upgrade may include a NIC upgrade, where the network device is specified to include NIC hardware in paragraph [0042], “network device 400 also can communicate with … some other communications network via one or more network interface units 410 … Network interface unit 410 is sometimes known as a … network interface card (NIC); and where the device 400 includes more than one processing unit 412 (or a unit 412 has more than one core), each unit 412 (and/or core) may use the same single network interface unit 410 or a plurality of units 410”.); (Refer to Examiner’s Note 3 for linking between members, clusters, blade servers, and network devices in the Szabo reference.);
causing the first host and the second host to use the first network interface card and cease using the second network interface card (In Figure 7A-7H, The members begin as one cluster “running an existing software version” (Paragraph [0069]). In Figure 7C, the cluster of members splits into a standby ‘Cluster #2’ and active ‘Cluster #1’. The standby cluster drains the connection in member 4 and are now directed to the active cluster, “For instance, Member #4 may be disabled. In one embodiment, connections being processed by Member #4 are drained before Member #4 is removed from Cluster #1. Subsequent connections that would have been processed by Member #4 are instead directed to Members #1-3”. As mentioned in the third examiner’s note above, the Active Cluster will be treated as having one member while mapping. The NIC in the Active Cluster member now takes over in the first host after the drained connections were redirected from the Standby Cluster. The second NIC in the Standby Cluster ceases use once the connections are drained.);
configure the first host and the second host to use the second network interface card (In paragraph [0080], “FIG. 7F … State mirroring may transfer configuration, session, connection, persistence, and other state from the active cluster (Cluster #1) to the standby cluster (Cluster #2)”. The use of the second NIC is restored after concluding the failover process in the reference once an upgrade is complete as shown in Figure 7G-7H, “Once failover occurs, the Cluster #2 (now the `active cluster` for managing network connections) may switch back to intra-cluster state mirroring mode. As depicted, FIGS. 7G and 7H illustrate regrouping member #2 and then member #1 into the new cluster” (Paragraph [0081]).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting the teaching in Szabo to invoke a failover between network interface cards to prevent further disruptions; motivated by the common goal of an improved efficiency when implementing firmware updates-- such as allowing for network connections to still be operative while an update is in progress.
Regarding Claim 15:
Dubal discloses,
A non-transitory computer-readable storage medium storing instructions that are executed by a storage system to perform a method comprising: (Paragraph [0012] teaches, “The disclosed embodiments may also be implemented as instructions carried by or stored on one or more non-transitory machine-readable (e.g., computer-readable) storage medium, which may be read and executed by one or more processors.”.);
Dubal discloses,
A method, comprising: (Paragraph [0032] teaches, “may execute a method 400 for accessing and/or updating a NVM firmware”.);
receiving a signal to update firmware of a second network interface card in a multi-host storage system (Paragraph [0082] teaches the signal received, “… wherein the means for providing access to the NVM firmware image comprises means for receiving a signal provided from a firmware routine that is executed by the computer node”. Paragraph [0079] further teaches the signal may be used to update, “providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network”. The multi-host storage system is taught by the elements in Figure 1: where the Computer Node 104 contains Data Storage 126 and can communicate to Server Node 114 through the Network 112, as shown by the directed arrow. Figure 1 additionally shows that the Server Node 114 has Data Storage 156, and may also communicate with Computer Node 104 through Network 112, as shown by the directed arrow.); (Refer to Examiner’s Note 1 for second NIC mapping.);
in which a first host and a second host are memory-mirrored pairs (In paragraph [0036], “Accordingly, NICs for all computer nodes in large-scale computer systems (e.g. data center) can run the same NVM and firmware”.); (Refer to Examiner’s Note 2 for first and second host mapping.);
a first network interface card is mounted to the first host and connected to an inter-nodal fabric, the second network interface card is mounted to the second host and connected to the inter-nodal fabric (In Figure 1, the NIC 130 is mounted onto the first host, Computer Node 104. Paragraph [0024] teaches the NIC 130 is connected to an inter-nodal fabric, “NIC 130 in any of computer nodes 104-110 utilizing NVM over Ethernet (NVMoE), which is also referred to in the art as “NVM Express over Fabrics” and/or “NVM Express over Fiber”. Paragraph [0023] emphasizes the physical connection, “Generally, the communication circuitry 132 of the computer node 104 and the communication circuitry 162 of server node 114 may be configured to use … communication protocols to communicate with each other such as, for example, a wired network communication protocol (e.g., TCP/IP)”. Paragraph [0015] teaches the second host may have a similar configuration, “The computer nodes 2-n (106-110) may be similarly configured to the arrangement illustrated in computer node 104”.);
the first host is connected to the second network interface card by a first bus, and the second host is connected to the first network interface card by a second bus (Paragraph [0018] teaches that the first host connects to a bus, “an I/O subsystem 122, which may be embodied as circuitry and/or components to facilitate input/output operations with … components of the computer node 104. For example, the I/O subsystem 122 may be embodied as … communication links (i.e., point-to-point links, bus links, wires, cables, light guides, printed circuit board traces, etc.)”. Paragraph [0019] teaches the connection between the first host and second network interface card, “Communication circuitry of the computer node 104 may include NIC 130 and any number of other devices and circuitry for enabling communications between computer node 104 and one or more other external electronic devices and/or systems”. Recall the second examiner’s note, where the second host may be similarly configured as the first host. Therefore, a second I/O subsystem being embodied as ‘bus links’, may also be included in the second host.);
updating the firmware of the second network interface card; (Paragraph [0079] teaches the updating of firmware, “… providing access, via the server node firmware manager module, to the selected NVM firmware image for the computer node to update computer node firmware for the computing device over the computer network.” Where the firmware update is retrieved by the NIC in paragraph [0032], “firmware management module 302 writes the updated NVM image in block 412 so that the updated NVM image may be accessed by NIC 130, resulting in updated firmware in block 414”. The second NIC being updated is outlined in paragraph [0036], “numerous NICs on computer nodes may be managed and updated substantially simultaneously”.);
Dubal does not disclose, however Szabo discloses,
invoking multi-host failover to the first network interface card in response to the signal (Paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switch boot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster … the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover … By maintaining failover connectivity, a cluster may be upgraded with little or no downtime or loss of data”. Paragraph [0048] supports that the failover may be used for hardware upgrades, “Control Process 452 includes any component configured to perform a seamless software or hardware upgrade of a cluster of network devices.” A hardware upgrade may include a NIC upgrade, where the network device is specified to include NIC hardware in paragraph [0042], “network device 400 also can communicate with … some other communications network via one or more network interface units 410 … Network interface unit 410 is sometimes known as a … network interface card (NIC); and where the device 400 includes more than one processing unit 412 (or a unit 412 has more than one core), each unit 412 (and/or core) may use the same single network interface unit 410 or a plurality of units 410”.); (Refer to Examiner’s Note 3 for linking between members, clusters, blade servers, and network devices in the Szabo reference.);
causing the first host and the second host to use the first network interface card and cease using the second network interface card (In Figure 7A-7H, The members begin as one cluster “running an existing software version” (Paragraph [0069]). In Figure 7C, the cluster of members splits into a standby ‘Cluster #2’ and active ‘Cluster #1’. The standby cluster drains the connection in member 4 and are now directed to the active cluster, “For instance, Member #4 may be disabled. In one embodiment, connections being processed by Member #4 are drained before Member #4 is removed from Cluster #1. Subsequent connections that would have been processed by Member #4 are instead directed
to Members #1-3”. As mentioned in the third examiner’s note above, the Active Cluster will be treated as having one member while mapping. The NIC in the Active Cluster member now takes over in the first host after the drained connections were redirected from the Standby Cluster. The second NIC in the Standby Cluster ceases use once the connections are drained.);
configuring the first host and the second host to use the second network interface card (In paragraph [0080], “FIG. 7F … State mirroring may transfer configuration, session, connection, persistence, and other state from the active cluster (Cluster #1) to the standby cluster (Cluster #2)”. The use of the second NIC is restored after concluding the failover process in the reference once an upgrade is complete as shown in Figure 7G-7H, “Once failover occurs, the Cluster #2 (now the `active cluster` for managing network connections) may switch back to intra-cluster state mirroring mode. As depicted, FIGS. 7G and 7H illustrate regrouping member #2 and then member #1 into the new cluster” (Paragraph [0081]).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting the teaching in Szabo to invoke a failover between network interface cards to prevent further disruptions; motivated by the common goal of an improved efficiency when implementing firmware updates-- such as allowing for network connections to still be operative while an update is in progress.
Claims 2, 9, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Dubal in view of Szabo as applied to claims 1, 8, and 15 above, and further in view of Eiriksson et al. (U.S. Patent No. 8346919 B1, hereinafter Eiriksson).
Regarding Claim 2:
Dubal further discloses,
[second host [first host (Refer to the second Examiner’s Note in claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [further comprising deleting primary transport resources on the [and deleting secondary transport resources on the [
606 to quiesce the connection, i.e. to stop transmitting to Ethernet wire and stop transmitting to the host”. The technique in deleting transport resources is further discussed in Col. 14, lines 10-21, “utilizing these endpoints 602 and 604 is to move buffered transmit and receive data in NIC1 606 to the NIC2 607 for continued operation of the connection, and these endpoints are also used to derive the values for snd_una and rcv_nxt by using CPL connection teardown messages … this cleans up any state allocated to the connection on the first NIC so that the same procedure can be used for failover and for migration of the connection from the first NIC to the second NIC, and for use with the migration of the virtual machine where the application is migrated to run on another Host”. The active deletion of transport resources in the reference is demonstrated in Col. 13, lines 65-67, “a drop filter is created in first NIC such that any packet with 4-tuple matching the connection and that arrives from peer 611 is dropped”.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Dubal and Szabo into the method disclosed by Eiriksson. Furthermore, it would have been obvious to add a second host onto a virtual machine into the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Regarding Claim 9:
Dubal further discloses,
[second host [first host (Refer to the second Examiner’s Note in claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [being configured to delete primary transport resources on the [and delete secondary transport resources on the [quiesce the connection, i.e. to stop transmitting to Ethernet wire and stop transmitting to the host”. The technique in deleting transport resources is further discussed in Col. 14, lines 10-21, “utilizing these endpoints 602 and 604 is to move buffered transmit and receive data in NIC1 606 to the NIC2 607 for continued operation of the connection, and these endpoints are also used to derive the values for snd_una and rcv_nxt by using CPL connection teardown messages … this cleans up any state allocated to the connection on the first NIC so that the same procedure can be used for failover and for migration of the connection from the first NIC to the second NIC, and for use with the migration of the virtual machine where the application is migrated to run on another Host”. The active deletion of transport resources in the reference is demonstrated in Col. 13, lines 65-67, “a drop filter is created in first NIC such that any packet with 4-tuple matching the connection and that arrives from peer 611 is dropped”.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Dubal and Szabo into the apparatus disclosed by Eiriksson. Furthermore, it would have been obvious to add a second host onto a virtual machine into the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Regarding Claim 16:
Dubal further discloses,
[second host [first host (Refer to the second Examiner’s Note in claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [in which the method further comprises deleting primary transport resources on the [and deleting secondary transport resources on the [quiesce the connection, i.e. to stop transmitting to Ethernet wire and stop transmitting to the host”. The technique in deleting transport resources is further discussed in Col. 14, lines 10-21, “utilizing these endpoints 602 and 604 is to move buffered transmit and receive data in NIC1 606 to the NIC2 607 for continued operation of the connection, and these endpoints are also used to derive the values for snd_una and rcv_nxt by using CPL connection teardown messages … this cleans up any state allocated to the connection on the first NIC so that the same procedure can be used for failover and for migration of the connection from the first NIC to the second NIC, and for use with the migration of the virtual machine where the application is migrated to run on another Host”. The active deletion of transport resources in the reference is demonstrated in Col. 13, lines 65-67, “a drop filter is created in first NIC such that any packet with 4-tuple matching the connection and that arrives from peer 611 is dropped”.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Dubal and Szabo into the method disclosed by Eiriksson. Furthermore, it would have been obvious to add a second host onto a virtual machine into the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Claims 3, 10, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Dubal in view of Szabo and Eiriksson as applied to claims 2, 9, and 16 above, and further in view of Tsirkin (U.S. Publication No. 2015/0089101 A1, hereinafter Tsirkin).
Regarding Claim 3:
Dubal further discloses,
[second network interface card [
Dubal does not disclose however Szabo discloses, [further comprising freeing memory resources and disabling [on the first host and the second host (In paragraph [0022], “The term "upgrade" refers to software upgrades, including … configuration changes to running software (e.g., hot fixes, patches, etc.), re-programming or re-purposing a device to perform altogether different functionalities, or any change that might otherwise interrupt a device's normal operations (e.g., traffic management related operations); the term should also be interpreted to include hardware upgrades”. In paragraph [0076], “At least one cluster member that is a member of the link aggregation group (or other spanning tree technology) may be disabled, forcing traffic to the remaining cluster members. In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting a second NIC into the teaching of Szabo, motivated by the common goal to obtain improved efficiency when managing firmware changes, such as resource allocation during a firmware upgrade.
Dubal in view of Eiriksson and Szabo does not disclose however Tsirkin discloses,
PNG
media_image1.png
1
3
media_image1.png
Greyscale
[disabling [interrupts [disabling the NIC-generated interrupts signaling the completion of packet transmission, and releasing the transmit buffers responsive to detecting a memory pressure condition in the computer system”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Eiriksson and Szabo by adapting the teaching in Tsirkin to disable NIC interrupts, to obtain an efficiency improvement when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Regarding Claim 10:
Dubal further discloses, [second network interface card [
Dubal does not disclose however Szabo discloses, [being configured to free memory resources and disable [on the first host and the second host (In paragraph [0022], “The term "upgrade" refers to software upgrades, including … configuration changes to running software (e.g., hot fixes, patches, etc.), re-programming or re-purposing a device to perform altogether different functionalities, or any change that might otherwise interrupt a device's normal operations (e.g., traffic management related operations); the term should also be interpreted to include hardware upgrades”. In paragraph [0076], “At least one cluster member that is a member of the link aggregation group (or other spanning tree technology) may be disabled, forcing traffic to the remaining cluster members. In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting a second NIC into the teaching of Szabo, motivated by the common goal to obtain improved efficiency when managing firmware changes, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo and Eiriksson does not disclose however Tsirkin discloses, [disable [interrupts [disabling the NIC-generated interrupts signaling the completion of packet transmission, and releasing the transmit buffers responsive to detecting a memory pressure condition in the computer system”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Szabo and Eiriksson by adapting the teaching in Tsirkin to disable NIC interrupts, to obtain an efficiency improvement when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Regarding Claim 17:
Dubal further discloses, [second network interface card [
Dubal does not disclose however Szabo discloses, [in which the method further comprises freeing memory resources and disabling [on the first host and the second host (In paragraph [0022], “The term "upgrade" refers to software upgrades, including … configuration changes to running software (e.g., hot fixes, patches, etc.), re-programming or re-purposing a device to perform altogether different functionalities, or any change that might otherwise interrupt a device's normal operations (e.g., traffic management related operations); the term should also be interpreted to include hardware upgrades”. In paragraph [0076], “At least one cluster member that is a member of the link aggregation group (or other spanning tree technology) may be disabled, forcing traffic to the remaining cluster members. In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting a second NIC into the teaching of Szabo, motivated by the common goal to obtain improved efficiency when managing firmware changes, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo and Eiriksson does not disclose however Tsirkin discloses,
PNG
media_image1.png
1
3
media_image1.png
Greyscale
[disabling [interrupts [disabling the NIC-generated interrupts signaling the completion of packet transmission, and releasing the transmit buffers responsive to detecting a memory pressure condition in the computer system”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Szabo and Eiriksson by adapting the teaching in Tsirkin to disable NIC interrupts, to obtain an efficiency improvement when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Claims 4-7, 11-14, and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Dubal in view of Szabo, Eiriksson, and Tsirkin as applied to claims 3, 10, and 17 above, and further in view of Mendonça, M., Neves, N. (2013). Intercept: Profiling Windows Network Device Drivers. In: Vieira, M., Cunha, J.C. (eds) Dependable Computing. EWDC 2013. Lecture Notes in Computer Science, vol 7869. Springer, Berlin, Heidelberg. (pp. 61-75), hereinafter referred to as Mendonça.
Regarding Claim 4:
Dubal further discloses,[the first host and the second host. (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses,[second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting a second NIC driver from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses,[further comprising uninstalling second network interface card drivers [driver is loaded and ending when it is uninstalled”. Where the driver may be a NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver that has two basic functions: manage the NIC hardware, including the transmission and reception of data; interface with higher-level drivers, such as protocol drivers through the NDIS library.” (pg. 64, Paragraph 8). The connection between the NIC driver and the host being handled by a specification, “For network drivers, the Network Driver Interface Specification (NDIS) defines the standard interface between the layered network drivers, thereby abstracting lower-level drivers that manage hardware from upper-level drivers implementing standard network transports” (pg. 64, Paragraph 7). The specification helps with hardware interrupts as discussed in Claim 3, “when a NIC receives a packet, it can post a hardware interrupt that is handled by NDIS or the NIC's miniport driver” (pg. 65, Paragraph 4).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 5:
Dubal further discloses, [the first host and the second host (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.).
Dubal in view of Szabo does not disclose however Eiriksson discloses, [second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting a second NIC drivers from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses,[installing second network interface card drivers [installation to match devices with drivers”. The driver being an NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver” (pg. 64, Paragraph 8).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 6:
Dubal further discloses, [second host [first host (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [further comprising rebuilding primary transport resources on the [and secondary transport resources on the [connection quiesce may then be cleared, which enables the NIC1 606 to forward the data in the NIC1 606 transmit buffer to the host end point 604”. Recall in Claim 2, where connection was originally quiesced to, “stop transmitting to the host” (Col. 13, line 56), therefore a clearance on the connection quiesce allows for transmission to recontinue. Additionally, note the connection in the reference is specified to include transport resources in Col. 11, lines 59-62, “the first NIC 104 interoperates with the peer 105, including establishing a connection (such as a transport layer connection, which may include a TCP connection) with the peer 105”.).
Therefore, it would have been obvious to one of ordinary skill in the art before effective filing date of the claimed invention to combine the teachings of Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the method disclosed. Furthermore, it would have been obvious to incorporate Dubal’s teaching of a second host onto a virtual machine within the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One
of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Regarding Claim 7:
Dubal does not disclose however Szabo discloses, [further comprising resynchronizing multi-host virtual ports of the first and second buses to support multi-hosting (In paragraph [0067], “the network identity may include an IP address, a combination of an IP address and a port”. In paragraph [0057], “a synchronization program such as rsync 540 may be used to perform the software synchronization”. In paragraph [0058], “A user Configuration Set (UCS) may be synchronized between an existing Member (such as Member #1) and Member #4. In one embodiment, rsync 540 is used to perform the configuration synchronization”. Where the members communicate through bus, as describe in paragraph [0023] “Typically, rows of individual Blade Servers … are in communication with each other over a commonly shared and relatively high-speed bus”. Recall from the third Examiner’s Note that members refer to Blade Servers in the reference as stated in paragraph [0024], “The members of the cluster may be blades, or "Blade Servers”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the method disclosed, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 11:
Dubal further discloses, [the first host and the second host. (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting second NIC drivers from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses, [uninstall second network interface card drivers [driver is loaded and ending when it is uninstalled”. Where the driver may be a NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver that has two basic functions: manage the NIC hardware, including the transmission and reception of data; interface with higher-level drivers, such as protocol drivers through the NDIS library.” (pg. 64, Paragraph 8). The connection between the NIC driver and the host being handled by a specification, “For network drivers, the Network Driver Interface Specification (NDIS) defines the standard interface between the layered network drivers, thereby abstracting lower-level drivers that manage hardware from upper-level drivers implementing standard network transports” (pg. 64, Paragraph 7). The specification helps with hardware interrupts as discussed in Claim 3, “when a NIC receives a packet, it can post a hardware interrupt that is handled by NDIS or the NIC's miniport driver” (pg. 65, Paragraph 4).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 12:
Dubal further discloses, [the first host and the second host (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting second NIC drivers from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses, [install second network interface card drivers [installation to match devices with drivers”. The driver being an NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver” (pg. 64, Paragraph 8).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 13:
Dubal further discloses, [second host [first host (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal does not disclose however Eiriksson discloses, [being configured to rebuild primary transport resources on the [and secondary transport resources on the [connection quiesce may then be cleared, which enables the NIC1 606 to forward the data in the NIC1 606 transmit buffer to the host end point 604”. Recall in Claim 2, where connection was originally quiesced to, “stop transmitting to the host” (Col. 13, line 56), therefore a clearance on the connection quiesce allows for transmission to recontinue. Additionally, note the connection in the reference is specified to include transport resources in Col. 11, lines 59-62, “the first NIC 104 interoperates with the peer 105, including establishing a connection (such as a transport layer connection, which may include a TCP connection) with the peer 105”.).
Therefore, it would have been obvious to one of ordinary skill in the art before effective filing date of the claimed invention to combine the teachings of Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the apparatus disclosed. Furthermore, it would have been obvious to incorporate Dubal’s teaching of a second host onto a virtual machine within the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Regarding Claim 14:
Dubal does not disclose however Szabo discloses, [being configured to resynchronize multi-host virtual ports of the first and second buses to support multi-hosting (In paragraph [0067], “the network identity may include an IP address, a combination of an IP address and a port”. In paragraph [0057], “a synchronization program such as rsync 540 may be used to perform the software synchronization”. In paragraph [0058], “A user Configuration Set (UCS) may be synchronized between an existing Member (such as Member #1) and Member #4. In one embodiment, rsync 540 is used to perform the configuration synchronization”. Where the members communicate through bus, as describe in paragraph [0023] “Typically, rows of individual Blade Servers … are in communication with each other over a commonly shared and relatively high-speed bus”. Recall from the fifth Examiner’s Note that members refer to Blade Servers in the reference as stated in paragraph [0024], “The members of the cluster may be blades, or "Blade Servers”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the apparatus disclosed, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 18:
Dubal further discloses,[the first host and the second host. (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting second NIC drivers from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses, [comprises uninstalling second network interface card drivers [driver is loaded and ending when it is uninstalled”. Where the driver may be a NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver that has two basic functions: manage the NIC hardware, including the transmission and reception of data; interface with higher-level drivers, such as protocol drivers through the NDIS library.” (pg. 64, Paragraph 8). The connection between the NIC driver and the host being handled by a specification, “For network drivers, the Network Driver Interface Specification (NDIS) defines the standard interface between the layered network drivers, thereby abstracting lower-level drivers that manage hardware from upper-level drivers implementing standard network transports” (pg. 64, Paragraph 7). The specification helps with hardware interrupts as discussed in Claim 3, “when a NIC receives a packet, it can post a hardware interrupt that is handled by NDIS or the NIC's miniport driver” (pg. 65, Paragraph 4).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 19:
Dubal further discloses, [the first host and the second host (Refer to the second Examiner’s Note in Claim 1 above, outlining the mapping of the first and second host in Dubal.);
Dubal in view of Szabo does not disclose however Eiriksson discloses, [second network interface card drivers [including a driver program specially configured to interface the host 102 to one or more NIC' s. Much of the underlying functionality of the socket 110 is performed by a network interface device driver”.);
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal by adapting second NIC drivers from the teaching of Eiriksson, to obtain improved efficiency when managing firmware changes that occur on a network interface card, such as resource allocation during a firmware upgrade.
Dubal in view of Szabo, Eiriksson, and Tsirkin does not disclose, however Mendonça discloses,[installing second network interface card drivers [installation to match devices with drivers”. The driver being an NIC driver, “A Network Interface Card (NIC) is normally supported by a miniport driver” (pg. 64, Paragraph 8).).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Dubal by adapting the teaching at the hardware level in Mendonça, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Regarding Claim 20:
Dubal further discloses, [second host [first host [
Dubal does not disclose however Szabo discloses, [and resynchronizing multi-host virtual ports of the first and second buses to support multi-hosting (In paragraph [0067], “the network identity may include an IP address, a combination of an IP address and a port”. In paragraph [0057], “a synchronization program such as rsync 540 may be used to perform the software synchronization”. In paragraph [0058], “A user Configuration Set (UCS) may be synchronized between an existing Member (such as Member #1) and Member #4. In one embodiment, rsync 540 is used to perform the configuration synchronization”. Where the members communicate through bus, as describe in paragraph [0023] “Typically, rows of individual Blade Servers … are in communication with each other over a commonly shared and relatively high-speed bus”. Recall from the fifth Examiner’s
Note that members refer to Blade Servers in the reference as stated in paragraph [0024], “The members of the cluster may be blades, or "Blade Servers”.).
Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the method disclosed, to obtain greater efficiency when managing firmware changes that occur on a network interface card, such as during an update.
Dubal in view of Szabo does not disclose however Eiriksson discloses, [in which the method further comprises rebuilding primary transport resources on the [and secondary transport resources on the [14, lines 49-51, “The connection quiesce may then be cleared, which enables the NIC1 606 to forward the data in the NIC1 606 transmit buffer to the host end point 604”. Recall in Claim 2, where connection was originally quiesced to, “stop transmitting to the host” (Col. 13, line 56), therefore a clearance on the connection quiesce allows for transmission to recontinue. Additionally, note the connection in the reference is specified to include transport resources in Col. 11, lines 59-62, “the first NIC 104 interoperates with the peer 105, including establishing a connection (such as a transport layer connection, which may include a TCP connection) with the peer 105”.).
Therefore, it would have been obvious to one of ordinary skill in the art before effective filing date of the claimed invention to combine the teachings of Dubal in view of Szabo, Eiriksson, Tsirkin, and Mendonça into the method disclosed. Furthermore, it would have been obvious to incorporate Dubal’s teaching of a second host onto a virtual machine within the teaching of Eiriksson (Eiriksson, Col. 2, lines 58-62). Because the examined case’s second host is memory mirrored, it is possible to accomplish the same outcome using a virtual machine that allocates a part of memory for a second host to be mirrored—rather than the second host having a physically separate hardware for memory. One of ordinary skill in the art would be motivated to combine the teachings to improve the efficiency of resource allocation during firmware upgrade of an NIC.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Beza D Nigatu whose telephone number is (571)272-9643. The examiner can normally be reached Monday - Friday 7:30am-3:30pm.
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, Hyung Sough can be reached at (571) 272-6799. 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.
/B.D.N/
Examiner, Art Unit 2192
/S. Sough/SPE, Art Unit 2192