Network controller system that uses directed heartbeat packets
First Claim
1. A network controller system for a computer, comprising:
- a plurality of network ports, each having a unique receive address and coupled to a network;
a driver system that operates the plurality of network ports as a team;
the driver system periodically determining and updating the status of each of the plurality of network ports, the status of each based at least on whether at least one directed packet has been received and transferred to the driver system by a respective network port; and
if any one of the plurality of network ports has not received a directed packet within a predetermined time period, the driver system commanding any other one of the plurality of network ports to transmit a directed heartbeat packet to the any one of the plurality of network ports.
3 Assignments
0 Petitions
Accused Products
Abstract
A network controller system including a plurality of network ports and a driver system that operates the network ports as a team. The team is operated to simulate a single logical device in one of several team modes, such as fault tolerance or load balancing modes, to enhance performance of communication of the computer in a network. The driver system periodically determines and updates the status of each of the network ports, where the status of each is based at least on whether at least one directed packet has been received and transferred to the driver system by a respective network port. If any one of the network ports has not received a directed packet within a predetermined time period, the driver system commands another network port to transmit a directed heartbeat packet to the network port that has not received a directed packet. The team may include a primary and one or more secondary ports. The primary port sends a directed packet to any secondary port that has not received a directed packet within the predetermined time period. One or more of the secondary ports may each send a directed heartbeat packet to the primary port if the primary port has not received a directed packet within the predetermined time period.
160 Citations
20 Claims
-
1. A network controller system for a computer, comprising:
-
a plurality of network ports, each having a unique receive address and coupled to a network;
a driver system that operates the plurality of network ports as a team;
the driver system periodically determining and updating the status of each of the plurality of network ports, the status of each based at least on whether at least one directed packet has been received and transferred to the driver system by a respective network port; and
if any one of the plurality of network ports has not received a directed packet within a predetermined time period, the driver system commanding any other one of the plurality of network ports to transmit a directed heartbeat packet to the any one of the plurality of network ports. - View Dependent Claims (2, 3, 4, 5, 6)
the plurality of network ports including a primary network port and at least one secondary network port;
if the primary network port has not received a directed packet within a predetermined time period, the driver system commanding at least one of the secondary network ports to transmit a directed heartbeat packet to the primary network port; and
if any one secondary network port has not received a packet within a predetermined time period, the driver system commanding the primary network port to transmit a directed heartbeat packet to the any one secondary network port.
-
-
3. The network controller system of claim 2, further comprising:
if the primary network port has not received a directed packet within a predetermined time period, the driver system commanding each of the at least one secondary network ports to transmit a directed heartbeat packet to the primary network port.
-
4. The network controller system of claim 1, further comprising:
-
the status of each of the plurality of network ports including a plurality of states; and
the driver system updating the status of each of the plurality of network ports after each of a predetermined timing interval by changing the state based on whether a directed packet has been received.
-
-
5. The network controller system of claim 4, further comprising:
-
the plurality of states including an ok state, a failed state and at least one intermediate state between the ok and failed states;
the driver system updating the status from the ok state to the at least one intermediate state if a directed packet has not been received with the predetermined timing interval and from the at least one intermediate state to the failed state if a directed packet has not been received with the predetermined timing interval; and
the driver system updating the status to the ok state from any other state upon reception of a directed packet.
-
-
6. The network controller system of claim 4, further comprising:
-
the plurality of states including a first state; and
the driver system causing a directed heartbeat packet to be sent to any of the plurality of network controllers that has a state other than the first state.
-
-
7. A packet-switched network, comprising:
-
a network device that maintains communication in the network by transferring packets in the network; and
a computer system, comprising;
a processor;
a main memory;
a bus system coupled to the processor and the main memory;
at least one network controller coupled to the bus system to implement a plurality of network ports, each port having a unique receive address and each coupled to the network device via a corresponding one of a plurality of network links;
a driver system, executed by the processor from the main memory, that operates the plurality of network ports as a team and that periodically determines and updates the status of each of the plurality of network ports, wherein the status of each of the plurality of network ports is based at least on whether at least one directed packet has been received; and
if any one of the plurality of network ports has not received a directed packet within a predetermined time period, the driver system commanding any other one of the plurality of network ports to transmit a directed heartbeat packet to the any one of the plurality of network ports. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
the plurality of network ports including a primary port and at least one secondary port;
if the primary port has not received a directed packet within a predetermined time period, the driver system commanding at least one of the secondary port to transmit a directed heartbeat packet to the primary port; and
if any one secondary port has not received a packet within a predetermined time period, the driver system commanding the primary port to transmit a directed heartbeat packet to the any one secondary port.
-
-
9. The packet-switched network of claim 8, further comprising:
if the primary port has not received a directed packet within a predetermined time period, the driver system commanding each of the at least one secondary port to transmit a directed heartbeat packet to the primary network controller.
-
10. The packet-switched network of claim 7, further comprising:
-
the status of each of the plurality of network ports including a plurality of states; and
the driver system updating the status of each of the plurality of network ports after each of a predetermined timing interval by changing the state based on whether a directed packet has been received.
-
-
11. The packet-switched network of claim 10, further comprising:
-
the plurality of states including an ok state, a failed state and at least one intermediate state between the ok and failed states;
the driver system updating the status from the ok state to the at least one intermediate state if a directed packet has not been received with the predetermined timing interval and from the at least one intermediate state to the failed state if a directed packet has not been received with the predetermined timing interval; and
the driver system updating the status to the ok state from any other state upon reception of a directed packet.
-
-
12. The packet-switched network of claim 10, further comprising:
-
the plurality of states including a first state; and
the driver system causing a directed heartbeat packet to be sent to any of the plurality of network ports that has a state other than the first state.
-
-
13. The packet-switched network of claim 7, wherein the network device comprises a switch.
-
14. The packet-switched network of claim 7, wherein the network device comprises a repeater.
-
15. A method of testing a plurality of network ports of a computer system, comprising:
-
operating the plurality of network ports as a team;
determining the status of each of the plurality of network ports based on reception of directed packets including directed heartbeat packets within a predetermined time period; and
if any one of the plurality of network ports has not received a directed packet within the predetermined time period, commanding any other one of the plurality of network ports to transmit a directed heartbeat packet to the any one of the plurality of network ports. - View Dependent Claims (16, 17, 18, 19, 20)
commanding at least one secondary port to transmit a directed heartbeat packet to the primary port if the primary port has not received a directed packet within the predetermined time period; and
commanding the primary port to transmit a directed heartbeat packet to the any one secondary port if any one secondary port has not received a packet within a predetermined time period.
-
-
17. The network controller system of claim 16, further comprising:
commanding each of the at least one secondary port to transmit a directed heartbeat packet to the primary port if the primary port has not received a directed packet within a predetermined time period.
-
18. The method of claim 15, wherein the status of each of the plurality of network ports includes a plurality of states, further comprising:
updating the status of each of the plurality of network ports after each of a predetermined timing interval by changing the state based on whether a directed packet has been received.
-
19. The network controller system of claim 18, the plurality of states including an ok state, a failed state and at least one intermediate state between the ok and failed states, further comprising:
-
updating the status from the ok state to the at least one intermediate state if a directed packet has not been received with the predetermined timing interval;
updating the status from the at least one intermediate state to the failed state if a directed packet has not been received with the predetermined timing interval; and
updating the status to the ok state from any other state upon reception of a directed packet.
-
-
20. The network controller system of claim 18, the plurality of states including a first state, further comprising:
sending a directed heartbeat packet to any of the plurality of network ports that has a state other than the first state.
Specification