System and method for providing switch redundancy between two server systems
Summary by NHIP
Server Switch Redundancy System
The system connects two servers via a bridging device to allow each server's switch to handle traffic if the other fails. A first node board links to a second switch, while a second node board links to a first switch, enabling cross-server switching services.
Claim Score by NHIP
Abstract
A system and method for providing switch redundancy in a computer network comprises two or more separate servers that are connected together to allow the servers to operate as one complete system that may continue to operate even in the event that one server becomes unable to provide switching functions. In one exemplary embodiment, the computer network includes two or more servers and a server bridging assembly. Two or more servers are interconnected via the server bridging assembly such that, in the event that a switch located in one of the servers fails, the switch located in the other server can be used to provide switching functions for both servers. As a result, the servers are interconnected to provide redundancy.

Term
Term ended
Expired 29 December 2024, 1.7 years ago.
- Priority and filed
- Granted
- Expired
- Today
21 claims: 2 independent, 19 dependent
- 1Broadest claimClaim Score 55, average(NHIP)A computer system network, comprising:a first server, comprising: a first node board operable to provide a first node associated with the first server;a first switch operable to communicatively couple a plurality of node boards and provide switching services for the first server;a second server, comprising: a second node board operable to provide a second node associated with the second server;a second switch operable to communicatively couple a plurality of node boards and provide switching services for the second server;and a bridging device operable to communicatively couple the first node board to the second switch and communicatively couple the second node board to the first switch such that the first switch is operable to provide switching function for the second server in the event the second switch fails and the second switch is operable to provide switching functions for the first server if the first switch fails.
- 14A method for providing switch redundancy between a first server and a second server, the method comprising:communicatively coupling the first server to the second server through a bridging device;detecting a failure of a component located in the first server that reduces the ability of the first server to provide switching functions;and assuming the switching functions for the first server by the second server via the bridging device;wherein the first server comprises a first switch and a first node board, and the second server comprises a second switch and a second node board, wherein the first node board further comprises first and second node link ports, wherein the first switch further comprises first and second switch link ports, wherein the second node board further comprises third and fourth node link ports, wherein the second switch further comprises third and fourth switch link ports, wherein the method further comprises: communicatively coupling the first node link port to the first switch link port;communicatively coupling the third node link port to the first switch link port;communicatively coupling the second node link port to the fourth switch link port;and communicatively coupling the fourth node link port to the second switch link port to thereby allow the first server and the second server to operate in a redundant manner.
Independent claims2
22 paragraphs in 4 sections, as filed
BACKGROUND OF THE INVENTION
00011. Field of the Invention
0002The present invention relates to computer systems and, more specifically, to providing switch redundancy between two servers.
00032. Background
0004Generally, a server is a computer or device on a network that manages network resources. For example, a file server is a computer and storage device dedicated to storing files. Any user on the network can store files on the server. Other common examples include a print server, i.e., a computer that manages one or more printers, and a network server, i.e., a computer that manages network traffic. Another example of a server is a database server, i.e., a computer system that processes database queries.
0005Thus, servers may provide many different functions. For instance, servers may be utilized in internet services or applications, voice applications and storage applications, among other examples. Servers may be implemented by a wide variety of architectures that may be defined within existing standards, such as, for example, a PICMG (PCI Industrial Computer Manufacturers Group) standard, or a custom architecture.
0006Typically, several servers are interconnected to form a computer network, such as, for example, a LAN (local area network). Bridges, routers or switches may be used to divide the network into segments. For instance, dividing an Ethernet network into multiple segments is one of the most common ways of increasing available bandwidth on the LAN. Switches are used to filter and forward data between the servers and may support different communications protocols. Switches may also be used to join different segments. For example, switches may support the Ethernet protocol to provide, for example, a switched Ethernet LAN.
0007Because computer networks generally provide critical functions or services, system administrators strive to provide a network that is as robust as possible within the given technical and economic constraints. For example, providing redundant components is a common technique for improving the reliability of a computer network. In particular, a computer network may use redundant switches to ensure that that network continues to operate without a significant loss in performance in the event that a switch fails. Unfortunately, implementing redundant components invariably requires additional hardware and software and, as a result, additional expenses. In addition, existing hardware or software may be incompatible with additional devices or otherwise render redundant components infeasible. Accordingly, there is a need to provide redundancy in a switched computer network that avoids the problems associated with providing additional redundant components.
SUMMARY OF THE INVENTION
0008The present invention is directed to a system and method for providing switch redundancy in a computer network. In one exemplary embodiment, the computer network includes two or more servers and a server bridging assembly. The two servers are interconnected via the server bridging assembly such that, in the event that a switch located in one of the servers fails, the switch located in the other server can be used to provide switching functions for both servers. As a result, the servers are interconnected to provide redundancy.
0009In another exemplary embodiment, each server includes one or more node boards. Each node board comprises at least two node link ports, including a link port A and a link port B. Each server also contains a switch fabric card that includes several link ports to receive connections from the node cards. The link ports of the switch fabric card are grouped into several pairs of switch link port A and switch link port B network ports. The link port A for each node board is connected to an associated switch link port A of the switch fabric card located in the same server. The link port B for each node board is connected to an associated switch link port B of a switch fabric card located in a separate server via the server bridging assembly. Accordingly, each node board in the system is connected, via the node board's two link ports, to two separate switch boards, located in two separate servers. As a result, in the event of a failure of the node board's primary switch fabric card, e.g., the switch fabric card connected to the node board's link port A, the node board is still connected to a second switch fabric card located in the second server via the node board's link port B and the server bridging assembly. Therefore, the node board may still rely on the second switch fabric card to provide switching connectivity to other network components.
0010A more complete understanding of the system and method of the present invention will be afforded to those skilled in the art, as well as a realization of additional advantages and objects thereof, by a consideration of the following detailed description of the preferred embodiment. Reference will be made to the appended sheet of drawings which will first be described briefly.
BRIEF DESCRIPTION OF THE DRAWING
0011<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram of an exemplary embodiment of the computer network system of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
0012<figref idref="DRAWINGS">FIG. 1</figref> shows an exemplary embodiment of the computer network system, shown generally at <b>10</b>. Computer network system <b>10</b> may include two or more servers or drawers. In the exemplary embodiment shown in <figref idref="DRAWINGS">FIG. 1</figref>, computer network system includes two servers <b>15</b> and <b>55</b>. It should be understood that the system and method of the present invention may include computer network systems that utilize more than two servers. Server <b>15</b> or <b>22</b> may be a computer, thin server, workstation, mainframe, or any other similar device suitable for managing network resources. In addition, server <b>15</b> may run client or server applications or programs. Server <b>15</b> may be implemented with any suitable server architecture or standard, e.g., an existing standard or a custom architecture. In one exemplary embodiment, server <b>15</b> utilizes a PICMG standard.
0013Server <b>15</b> includes one or more node boards, indicated at <b>20</b>. Each node board <b>20</b> may provide a node or point of interconnection to the computer network system <b>10</b>. Accordingly, each node board <b>20</b> may provide a terminal point at which data is transmitted, received, or repeated over network <b>10</b>. Generally, a node may be considered as a stand-alone processor board and in the context of a server, a node board may be considered as a stand-alone server that coexists with other node boards inside a server. Each node board <b>20</b> includes two link ports <b>25</b> and <b>30</b>, node link port An and node link port Bn, respectively, to provide communicative connections between node board <b>20</b> and other network devices.
0014Server <b>15</b> includes at least one switching card X, shown at <b>35</b>, to perform switching functions for network <b>10</b> in accordance with a selected network or switching protocol. In a preferred exemplary embodiment, switching card X is a switch fabric card <b>35</b>. In another preferred exemplary embodiment, switching card X provides switching functions pursuant to an Ethernet communications protocol. Accordingly, in this exemplary embodiment, network <b>10</b> includes two or more switch fabric cards, e.g., switch fabric card X <b>35</b> and Y <b>80</b>, to implement a switching fabric. Generally, the switching fabric is the combination of hardware and software that moves data coming in to a network node, such as, for example, node <b>20</b>, out by the correct port to the next node in the network. Typically, the switching fabric includes the switching units in a node, the integrated circuits that they contain, and the programming that allows switching paths to be controlled.
0015Switch fabric card X contains several pairs of network ports, <b>45</b> and <b>50</b>, referred herein as switch link ports An and Bn, respectively, to provide for communication in accordance with a selected network protocol. In the exemplary embodiment shown in <figref idref="DRAWINGS">FIG. 1</figref>, An and Bn refer to link ports A and B, where n corresponds to the maximum number of node boards <b>20</b> supported by server <b>15</b>. In a preferred exemplary embodiment, network ports <b>45</b> and <b>50</b> are Ethernet ports to allow data transmission in accordance with an Ethernet communications standard, as discussed above. For example, server <b>20</b> may implement an Ethernet based architecture compliant with the PICMG standard. In another preferred exemplary embodiment, switch link port An <b>45</b> is an Ethernet port and switch link port Bn serves as a redundant or backup port. In addition to providing a switching function, switch fabric card X may also contain other boards or components to provide additional functionality. For example, switch fabric card X may include a management controller to manage the operation of server <b>15</b>.
0016Server <b>15</b> also includes midplane or backplane X, shown at <b>40</b>. Midplane X <b>40</b> is a circuit board that includes slots or sockets to receive other circuit boards, expansion cards, or similar devices. Midplane X <b>40</b> may be either active or passive. For example, an active midplane <b>15</b> may contain, in addition to slots, logical circuitry that performs computing functions. Alternatively, midplane X <b>40</b> may be passive and contain almost no computing circuitry. Midplane X <b>40</b> allows node boards <b>20</b> and switch fabric card X <b>35</b> to be connected to server <b>15</b> and communicate with other devices connected to midplane X <b>40</b>. As discussed above, each node board <b>20</b> includes node link port An <b>25</b> and node link port Bn <b>30</b>, respectively, to provide communicative connections between node board <b>20</b> and other network devices. In particular, link port An of node boards <b>20</b> may be connected to switch link ports An of switch fabric card X <b>35</b> via midplane X <b>40</b>. Node boards <b>20</b> may communicate by transferring or receiving packets via the switch fabric cards in network <b>10</b>, including switch fabric card X <b>35</b>. As a result, Node boards <b>20</b> may communicate with other node boards in network <b>10</b> and thereby form a switching fabric.
0017As discussed above, network <b>10</b> includes two or more servers. Accordingly, as shown in <figref idref="DRAWINGS">FIG. 1</figref>, network <b>10</b> also includes server <b>55</b>. Server <b>55</b> includes node boards <b>65</b>, midplane Y <b>85</b> and switch fabric card Y <b>80</b>. Node boards <b>65</b> include node link port Am <b>70</b> and node link port Bm <b>75</b>, respectively, to provide communicative connections between node board <b>65</b> and other network devices. In particular, link port Am of node boards <b>20</b> may be connected to switch link ports Am of switch fabric card Y <b>80</b> via midplane Y <b>85</b>. In the exemplary embodiment of <figref idref="DRAWINGS">FIG. 1</figref>, Am and Bm refer to link ports A and B, respectively, and m corresponds to the maximum number of node boards <b>65</b> supported by server <b>55</b>.
0018Network <b>10</b> also includes server bridging device or assembly <b>60</b>. Server bridging assembly <b>60</b> may be any interconnect or device suitable for providing a communications connection between servers <b>15</b> and <b>55</b>. For example, server bridging assembly <b>60</b> may be a cable, a PCB (printed circuit board), a flex cable or any other suitable interconnect device. Moreover, because network <b>10</b> may include more than two servers, server bridging assembly <b>60</b> may be able to interconnect more than two servers. As discussed above, each node board <b>20</b> located in server <b>15</b> includes a node link port Bn <b>30</b>. As shown in <figref idref="DRAWINGS">FIG. 1</figref>, each node link port Bn <b>30</b> is connected to switch fabric card Y <b>80</b>, located in the second server <b>55</b>, via a corresponding switch link port B through drawer bridging assembly <b>60</b>. Similarly, each node link port Bm <b>75</b> of the node boards <b>65</b> located in server <b>55</b> is connected to switch fabric card X <b>35</b>, located in server <b>15</b>, via a corresponding switch link port B <b>50</b>, through bridging assembly <b>60</b>. As a result, in the preferred exemplary embodiment described above, one Ethernet port of each node board is connected to the switch fabric card located in its server, and the other port (e.g., the redundant port) is connected, via the server bridging assembly <b>60</b>, to the switch fabric card located in the other server. In this manner, the second port of each node board can connect to the spare Ethernet ports of the switch card located in the second server.
0019Accordingly, each node board in the network <b>10</b> is connected to two switch fabric cards, i.e., both switch fabric card X <b>35</b> and Y <b>80</b>. In particular, each node board has one port, e.g., node link ports An <b>25</b> (for the first server <b>15</b>) and Am <b>70</b> (for the second server <b>55</b>), connected to the switch fabric card located in the node board's server and a redundant port, e.g., node link ports Bn <b>30</b> (for the first server <b>15</b>) and Bm <b>75</b> (for the second server <b>55</b>), connected to a switch fabric card located in a separate server. Therefore, the switch card in one server may connect to the node boards installed within the same server and, in addition, to the node boards in the second server.
0020Thus, in the event that a link port fails (e.g., link port A), the affected node board can communicate with the redundant switch card, e.g., the switch card located in the second server, through the other link port (e.g., link port B) that is connected to the redundant switch card via the server bridging assembly <b>60</b>. Consequently, system operation can be maintained. Similarly, if one of the switch cards, e.g., Ethernet switch fabric card <b>35</b> or <b>80</b>, were to fail, then the switch installed in the other server could be used to take over the failed switch's functions via the server bridging assembly <b>60</b> to allow network <b>10</b> to operate without a loss in performance.
0021For example, the node boards will determine that the link ports associated with the failing card are inoperative and will use the second link ports to communicate with the switch card in the second server and accordingly maintain system operation. Therefore, in the exemplary embodiment described above, the interconnection of the Ethernet ports allows for Ethernet redundancy between the two servers <b>15</b> and <b>55</b>. As a result, server bridging assembly <b>60</b> communicatively connects servers <b>15</b> and <b>55</b> in order to allow the servers to operate in a redundant manner.
0022Having thus described a preferred embodiment of the computer network system of the present invention, it should be apparent to those skilled in the art that certain advantages of the present system have been achieved. It should also be appreciated that various modifications, adaptations, and alternative embodiments thereof may be made within the scope and spirit of the present invention. For example, a computer network system including two servers has been illustrated, but it should be apparent that the inventive concepts described above would be equally applicable to computer network systems with more than two servers. Moreover, although computer systems utilizing an Ethernet switch fabric and PICMG architecture has been illustrated, the present invention is equally applicable to other network protocols and server architectures or standards. The invention is further defined by the following claims.
Contents4
2 sheets
Sheet 1 Sheet 2
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| CN108108254A | Cited by | China | Search report |
| TWI601013B | Cited by | Taiwan Province of China | Examiner |
| US2005091212A1 | Cited by | United States of America | Pre-grant |
| US7539722B2 | Cited by | United States of America | Search report |
| US2002124114A1 | Cites | United States of America | Search report |
| US2003065861A1 | Cites | United States of America | Search report |
| US2003147375A1 | Cites | United States of America | Search report |
| US2003179741A1 | Cites | United States of America | Search report |
| US2004073833A1 | Cites | United States of America | Search report |
| US2004073834A1 | Cites | United States of America | Search report |
| US5971804A | Cites | United States of America | Search report |
| US6112271A | Cites | United States of America | Search report |
| US6138247A | Cites | United States of America | Search report |
| US6161197A | Cites | United States of America | Search report |
| US6209051B1 | Cites | United States of America | Search report |
| US6418504B2 | Cites | United States of America | Applicant |
| US6425027B1 | Cites | United States of America | Applicant |
| US6490152B1 | Cites | United States of America | Search report |
| US6496940B1 | Cites | United States of America | Search report |
| US6526465B1 | Cites | United States of America | Search report |
| US6581125B1 | Cites | United States of America | Search report |
| US6608761B2 | Cites | United States of America | Applicant |
| US6854072B1 | Cites | United States of America | Search report |
2 priority claims, no other members on record
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 45988203 | United States of America | A | |
| US20030459882 | – | – | – |
38 transactions on the USPTO file
Allowed after 2 non-final rejections.
- Non-final rejections
- 2
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Payment of Maintenance Fee, 12th Year, Large EntityM1553 | M1553 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Correspondence Address ChangeC.AD | C.AD | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Correspondence Address ChangeC.ADB | C.ADB | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Transfer Inquiry to GAUTI1050 | TI1050 | |
| Application Is Now CompleteCOMP | COMP | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Cleared by OIPE CSRL194 | L194 | |
| Oath or Declaration Filed (Including Supplemental)C602 | C602 | |
| New or Additional Drawing FiledC614 | C614 | |
| Initial Exam Team nnIEXX | IEXX |
6 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication
- 07206963
- Publication, DOCDB
- 7206963
- Publication, EPODOC
- US7206963
- Application
- 10459882
- Application, DOCDB
- 45988203
- Application, EPODOC
- US20030459882
Titles
- English
- System and method for providing switch redundancy between two server systems
Patent term adjustment
- A delay
- +575 daysthe office missed an examination deadline
- Applicant delay
- −9 days
- Net adjustment
- 566 days
Classification
- CPC, 1
- H04L1/22
- IPC, 2
- G06F11 00
- H04L1 22
- USPC, 1
- 714005110