Three bus server architecture with a legacy PCI bus and mirrored I/O PCI buses
First Claim
1. A fault-tolerant computer system with a processor and a memory, connected to a system bus, and said fault-tolerant computer system comprising:
- a first input/output (IO) bus connected to the system bus;
a plurality of legacy devices connected to said first IO bus;
a second and a third IO bus each connected to the system bus;
at least two IO devices each connected to a corresponding one of said second and said third IO buses, said at least two IO devices providing redundant access to a common data and/or network; and
load balancing means for balancing data transfers between said processor and said at least two IO devices.
8 Assignments
0 Petitions
Accused Products
Abstract
A fault-tolerant computer system includes a processor and a memory, connected to a system bus. The system includes at least two mirrored circuits, at least two mirrored IO devices, a detection means and a re-route means. The two mirrored circuits each include an interface to the system bus, and an IO interface. The input/output interface of each of the mirrored circuits is connected to one of the two mirrored IO devices. Detection means detect a load imbalance in the data transfer between the system bus and either one of the two mirrored IO devices. In response to the detection of a load imbalance, the re-route means re-routes the data transfer between the system bus and the other one of the two mirrored IO devices. In another embodiment, a fault-tolerant computer system includes a first, second and third IO bus, legacy devices, and two IO devices. The first IO bus is connected to the system bus. The legacy devices are connected to the first IO bus. The second and third IO buses are each connected to the system bus. The IO devices are each connected to a corresponding one of the second and third IO buses. An other embodiment of the invention can be characterized as an apparatus for transferring data between at least one transport protocol stack and a plurality of network adapters coupled to a computer network that supports recovery from network adapter and a connection failure.
457 Citations
18 Claims
-
1. A fault-tolerant computer system with a processor and a memory, connected to a system bus, and said fault-tolerant computer system comprising:
-
a first input/output (IO) bus connected to the system bus;
a plurality of legacy devices connected to said first IO bus;
a second and a third IO bus each connected to the system bus;
at least two IO devices each connected to a corresponding one of said second and said third IO buses, said at least two IO devices providing redundant access to a common data and/or network; and
load balancing means for balancing data transfers between said processor and said at least two IO devices.- View Dependent Claims (2, 3, 4, 5, 6, 7)
re-routing means for re-routing data transfers between said processor and an inaccessible one of said at least two IO devices to an other of said at least two IO devices.
-
-
3. The fault-tolerant computer system of claim 1, further comprising:
at least two bridge interface units each connected between a corresponding one of said at least two IO buses and said system bus.
-
4. The fault-tolerant computer system of claim 1, wherein further:
the at least two IO devices are redundant storage devices for storage of mirrored data.
-
5. The fault-tolerant computer system of claim 1, wherein further:
the at least two IO devices are redundant network interface devices for transferring data between the computer system and a network.
-
6. The fault-tolerant computer system of claim 4, further comprising:
mirroring means for mirroring write data transfers from said processor to said redundant storage devices.
-
7. The fault-tolerant computer system of claim 5, further comprising:
- Load balancing means for balancing data transfers between said processor and said redundant network interface devices.
-
8. A fault-tolerant computer system with a processor and a memory, connected to a system bus, said fault-tolerant computer system comprising:
-
at least two mirrored circuits, each with a system bus interface and an input/output (IO) interface, and each system bus interface connected to the system bus;
at least two mirrored IO devices each connected to a corresponding one of the IO interfaces, said IO devices being redundant network interface devices for transferring data between the computer system and a network;
a detection system capable of detecting a load imbalance in a data transfer between the system bus and one of said at least two mirrored IO devices;
a router configured to re-work the data transfer between said system bus and another of the at least two mirrored IO devices responsive to said detection system;
at least two incoming data protocol stacks, and each of said at least two incoming data protocol stacks adapted to contain a plurality of data packets from the network for processing; and
the memory device containing instructions that when executed transfer an incoming data packet to a selected one of said at least two incoming data protocol stacks to balance the processing.
-
-
9. A fault-tolerant computer system with a processor and a memory, connected to a system bus, said fault-tolerant computer system comprising:
-
at least two mirrored circuits each with a system bus interface and an input/output (IO) interface and each system bus interface connected to the system bus;
at least two mirrored IO devices each connected to a corresponding one of the IO interfaces, said IO devices being redundant network interface devices for transferring data between the computer system and a network;
a detector configured to detect a load imbalance in a data transfer between the system bus and one of said at least two mirrored IO devices;
a router configured to re-route the data transfer between said system bus and another of the at least two mirrored IO devices responsive to said detector;
at least two outgoing data protocol stacks, each of said at least two outgoing data protocol stacks adapted to contain a plurality of data packets destined for the network for processing; and
the memory device containing instructions that when executed transfer an outgoing data packet to a selected one of said at least two outgoing data protocol stacks to balance the processing.
-
-
10. A fault-tolerant computer system with a processor and a memory, connected to a system bus, and said fault-tolerant computer system comprising:
-
at least two mirrored circuits, each with a system bus interface connected to the system bus and an input/output (IO) interface;
at least two mirrored input/output (IO) devices each connected to a corresponding one of the IO interfaces;
a detection means for detecting a load imbalance between protocol stack pairs in a data transfer between the system bus and a one of said at least two mirrored IO devices;
a re-route means for re-routing the data transfer between said system bus and another of the at least two mirrored IO devices responsive to said detection means;
wherein the at least two mirrored IO devices are redundant network interface devices for transferring data between the computer system and a network; and
a failure detection means for detecting a load imbalance in a data transfer between the system bus and an inaccessible one of said at least two mirrored IO devices.
-
-
11. An apparatus for transferring data between at least one transport protocol stack and a plurality of network adaptors coupled to a computer network that supports recovery from network adapter and connection failure, comprising:
-
a first interface bound to the at least one transport protocol stack; and
a second interface bound to the plurality of network adapters;
wherein the first interface is configured to receive a first MAC-level packet from a transport protocol stack and to forward the first packet through the second interface to a network adapter in the plurality of network adapters, and wherein the second interface is configured to receive a second packet from a network adapter in the plurality of network adapters and to forward the second packet through the first interface to a transport protocol; and
a failure managing means for detecting a failed network adapter in the plurality of network adapters and for rerouting packets to a different network adapter in the plurality of network adapters, wherein said failure managing means operates in an operating system-independant manner. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
load-sharing means for performing load sharing by selectively routing packets to network adapters in the plurality of network adapters.
-
-
14. The apparatus of claim 11, wherein the apparatus can function as an NDIS intermediate driver, wherein;
-
the first interface is configured to present a virtual adapter for binding to at least one protocol stack; and
the second interface is configured to present a virtual transport protocol stack for binding to a network adapter in the plurality of network adapters.
-
-
15. The apparatus of claim 11, wherein all adapters in the plurality of adapters bound to the second interface are configured to the same physical address.
-
16. The apparatus of claim 11, wherein the apparatus is implemented at the MAC layer and below.
-
17. The apparatus of claim 11, wherein the apparatus can function as a prescan protocol stack for examining packets flowing between protocol stacks and drivers.
-
18. The apparatus of claim 11, wherein said failure managing means operates in a manner that is independent of network adapter hardware.
Specification