US6208616B1
Expired / Lapsed
US
⏱️ 0.0 years remaining
System for detecting errors in a network
Assignee: HP Inc
•
Filing: 1997-10-01
•
Granted: 2001-03-27
•
Expires: 2017-10-01
Abstract
Abstract A system is described for providing fault tolerance within a computer system. The system provides a method for allowing multiple network interface cards to reside within the same computer system. If the primary network interface card fails, a secondary network interface card automatically begins managing the network communications. In addition, a system that provides load-sharing of data transmissions between each network interface card installed in a server computer is described.
Inventors
- 👤 Mallikarjunan Mahalingam
- 👤 Walter August Wallach
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-24 13:45
CPC Classifications
G; G06; G06F; G06F1/00; G06F1/16; G06F1/20; G06F1/26; G06F11/00; G06F11/07; G06F11/0703; G06F11/0706; G06F11/0748; G06F11/0766; G06F11/0775; G06F11/14; G06F11/1479; G06F11/1482; G06F11/16; G06F11/20; G06F11/2002; G06F11/2005; G06F13/00; G06F13/38; G06F13/40; G06F13/4004; G06F13/4027; G06F13/4063; G06F13/4068; G06F13/4081; G06F21/00; G06F21/30; G06F21/305; G06F21/31; H; H04; H04L; H04L12/00; H04L12/02; H04L12/12; H04L41/00; H04L41/06; H04L41/0654; H04L41/0668; H04L41/12; H04L41/22; H04L43/00; H04L69/00; H04L69/40; G06F11/0751; G06F11/0793; G06F11/2053; G06F11/2089; G06F2201/00; G06F2201/85; G06F2201/86; G06F3/00; G06F3/06; G06F3/0601; G06F3/0668; G06F3/0671; G06F3/0673; H04L12/28; H04L12/40; H04L12/4013; H04L41/02; H04L41/0213; H04L41/08; H04L41/0866; H04L43/08; H04L43/0805; H04L43/0817; H04L43/10; H04L43/16; Y; Y02; Y02D; Y02D30/00; Y02D30/50
Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
199 words
A computer system comprising: a protocol stack; a plurality of network interface cards (NICs) and a second in communication with the protocol stack; and a program module in communication with said protocol stack, wherein said program module includes instructions for routing data packets from said protocol stack, wherein said routing comprises, designating one of the plurality of NICs as a primary NIC and designating the remainder of the NICs as secondary NICs; sending a probe packet to each of the NICs; attempting to receive a return packet in response to the probe packet from each of the NICs; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets that were originally addressed to the failed NIC to at least one other NIC through the protocol stack; if the failed NIC is the primary NIC, designating another NIC as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, designating the failed NIC as a secondary NIC.
Claim 2
Dependent Claim
199 words
A computer system comprising: a protocol stack; a plurality of network interface cards (NICs) and a second in communication with the protocol stack; and a program module in communication with said protocol stack, wherein said program module includes instructions for routing data packets from said protocol stack, wherein said routing comprises, designating one of the plurality of NICs as a primary NIC and designating the remainder of the NICs as secondary NICs; sending a probe packet to each of the NICs; attempting to receive a return packet in response to the probe packet from each of the NICs; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets that were originally addressed to the failed NIC to at least one other NIC through the protocol stack; if the failed NIC is the primary NIC, designating another NIC as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, designating the failed NIC as a secondary NIC.
Claim 3
Dependent Claim
22 words
The computer system of claim 1 , wherein said protocol stack is selected from the group consisting of TCP/IP, IPX/SPX and NETBEUI.
Claim 4
Dependent Claim
213 words
The computer system of claim 1 , wherein said routing further comprises; binding the plurality of NICs into a group, wherein a group is coupled to a network segment; designating one of the plurality of NICs in the group as a primary NIC and designating the remainder of the NICs in the group as secondary NICs, wherein the primary NIC is an only NIC visible to an operating system coupled to the network segment; attempting to receive a return packet in response to the probe packet from each of the NICs in the group; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets from the failed NIC to at least one other NIC in the group; if the failed NIC is the primary NIC, designating another NIC in the group as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; if a return packet is received from the failed NIC; binding the failed NIC into the group; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, binding the failed NIC into the group as a secondary NIC.
Claim 5
Dependent Claim
234 words
A programmed storage device for load balancing network traffic between a plurality of network interface cards, comprising instructions that when executed perform the method of: determining an address of a primary network interface card (NIC) and an address of a secondary NIC in a computer system; binding said primary NIC and said secondary NIC into a group; and routing a portion of a plurality of data packets sent to the address of said primary NIC to address of said secondary NIC, wherein routing comprises, sending a probe packet to each of the NICs in the group; attempting to receive a return packet in response to the probe packet from each of the NICs in group; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets from the failed NIC to at least one other NIC in the group; if the failed NIC is the primary NIC designating another NIC in the group as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; if a return packet is received from the failed NIC; binding the failed NIC into the group; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, binding the failed NIC into the group as a secondary NIC.
Claim 6
Dependent Claim
234 words
A programmed storage device for load balancing network traffic between a plurality of network interface cards, comprising instructions that when executed perform the method of: determining an address of a primary network interface card (NIC) and an address of a secondary NIC in a computer system; binding said primary NIC and said secondary NIC into a group; and routing a portion of a plurality of data packets sent to the address of said primary NIC to address of said secondary NIC, wherein routing comprises, sending a probe packet to each of the NICs in the group; attempting to receive a return packet in response to the probe packet from each of the NICs in group; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets from the failed NIC to at least one other NIC in the group; if the failed NIC is the primary NIC designating another NIC in the group as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; if a return packet is received from the failed NIC; binding the failed NIC into the group; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, binding the failed NIC into the group as a secondary NIC.
Claim 7
Dependent Claim
39 words
The programmed storage device of claim 4 , wherein said programmed storage device is selected from a group consisting of: a Random Access Memory, a Read Only Memory, a floppy disk drive, a hard disk drive and a CD-ROM.
Claim 8
Dependent Claim
17 words
The programmed storage device of claim 4 , wherein said address is a Media Access Control address.
Claim 9
Independent Claim
252 words
A method of rerouting network packets in a network, comprising: binding a plurality of network interface cards (NICs) into a group, wherein a group is coupled to a network segment, and wherein each of the plurality of network interface cards is in communication with a protocol stack; designating one of the plurality of NICs in the group as a primary NIC and designating the remainder of the NICs in the group as secondary NICs, wherein the primary NIC is an only NIC visible to an operating system coupled to the network segment; sending a probe packet to each of the NICs in the group; attempting to receive a return packet in response to the probe packet from each of the NICs in the group; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets from that were originally directed to the failed NIC to at least one other NIC in the group through the protocol stack; if the failed NIC is the primary NIC, designating another NIC in the group as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; if a return packet is received from the failed NIC; binding the failed NIC into the group; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, binding the failed NIC into the group as a secondary NIC.
Claim 10
Independent Claim
252 words
A method of rerouting network packets in a network, comprising: binding a plurality of network interface cards (NICs) into a group, wherein a group is coupled to a network segment, and wherein each of the plurality of network interface cards is in communication with a protocol stack; designating one of the plurality of NICs in the group as a primary NIC and designating the remainder of the NICs in the group as secondary NICs, wherein the primary NIC is an only NIC visible to an operating system coupled to the network segment; sending a probe packet to each of the NICs in the group; attempting to receive a return packet in response to the probe packet from each of the NICs in the group; if a return packet is not received from an NIC in the group, designating the NIC a failed NIC; redirecting packets from that were originally directed to the failed NIC to at least one other NIC in the group through the protocol stack; if the failed NIC is the primary NIC, designating another NIC in the group as a new primary NIC; sending a probe packet to the failed NIC; attempting to receive a return packet from the failed NIC; if a return packet is received from the failed NIC; binding the failed NIC into the group; and if the failed NIC is the primary NIC and a return packet is received from the failed primary NIC, binding the failed NIC into the group as a secondary NIC.
Claim 11
Dependent Claim
29 words
The method of claim 7 , wherein the group is one of a plurality of groups in the network, and wherein each group is coupled to a network segment.
Claim 12
Dependent Claim
72 words
The method of claim 8 , further comprising: receiving a packet from the network that is addresses to at least one of the NICs in the group; determining whether the packet is a probe packet; if the packet is a probe packet; if the packet is a probe packet, updating a state of the at least one NIC to indicate that the probe packet was correctly sent; and dismissing the probe packet.
Claim 13
Dependent Claim
83 words
The method of claim 9 , further comprising: if the packet is not a probe packet, determining whether the packet is from a primary NIC; if the packet is from a primary NIC, passing the packet to a protocol stack; if the packet is not from a primary NIC, determining whether the packet is a broadcast packet; if the packet is a broadcast packet, discarding the packet; and if the packet is not a broadcast packet, passing the packet to the protocol stack.
References Cited (Backward Citations)
US5210855A
Cited
US5123017A
Cited
US5379409A
Cited
US5272584A
Cited
US5261094A
Cited
US5539883A
Cited
US5337413A
Cited
US5444856A
Cited
US5500945A
Cited
US5485607A
Cited
US5491694A
Cited
US5809021A
Cited
US5579491A
Cited
US5564024A
Cited
US5613096A
Cited
US5592610A
Cited
US5604873A
Cited
US5930255A
Cited
US5608876A
Cited
US5644731A
Cited
US6032265A
Cited
US5699350A
Cited
US5732247A
Cited
US5923854A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2004-03-26 | 2004-09-25 | 2005-03-27 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2008-03-26 | 2008-09-25 | 2009-03-27 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2012-03-26 | 2012-09-25 | 2013-03-27 | $7700.00 | Window Closed / Lapsed |