The present invention relates to the field of network elements, and more particularly to a method and apparatus for optimization of redundant link usage in a multi-shelf network element.
An example of a multi-shelf network element with which the present invention may be used is multi-shelf switch system 100 shown in schematic block form in
In one embodiment of switch system 100 of
In one embodiment, two types of peripheral shelves 110a-n may be used in switching system 100. The first type, called a high speed peripheral shelf (HSPS), comprises high speed line processing cards (HLPC) each providing 10 Gbps throughput, high speed I/O cards (HIOC), high speed fabric interface cards (HFIC) and two high speed shelf controllers (HSC). The second type, called simply a peripheral shelf (PS), comprises lower speed line processing cards (LPC) each providing 2.5 Gbps throughput, I/O Cards (IOC) and dual or quad port fabric interface cards (DFIC/QFIC). Each of peripheral shelves 110a-n also typically includes a shelf control system which may comprise control complex 130 (in the case of peripheral shelf 110a) or one or preferably two redundant peripheral shelf controllers (PSC).
In one embodiment, switching shelves 120a-b connect to the peripheral shelves 110a-n in the system via fabric interface cards (FIC) to provide cell switching to the line processing cards (also referred to as “line cards”) in the peripheral shelves. Examples of these connections are illustrated in
In one embodiment, each switching shelf 120a-b comprises a switch core and up to 32 switching access cards (SAC). In the embodiment of
In one embodiment, the connections between the various components within a shelf are provided via one or more circuit boards in each shelf, referred to as “midplanes,” to which the respective components are mounted.
In the embodiment of
The switch cores 250a-b, SAC's 255a-h and 265a-h, HISL's 290a-p, and FIC's 270a-b, 275a-b and 280a-d comprise the system's “switching fabric.”
In the switch system of
In the embodiment of
Control complex 130 communicates with each shelf in the switch system via shelf controllers on the peripheral and switching shelves. In the embodiment of
ICON I/O cards 320a-b and ICON I/O Exp cards 330a-b provide interfaces for connecting control complex 130 to other shelves (such as peripheral I/O and switching shelves) in the switch system via physical connections. In one embodiment, these connections are referred to as Control Services Links (CSL) 370a-h. In the embodiment of
In one embodiment, a CSL link is physically embodied in a twelve-conductor cable comprising three separate, internal 4-conductor Cat-5-type cables. Each 4-conductor internal cable provides one of three different types of communications channels: a time division multiplexed (TDM) channel (providing E1-type capabilities), a full duplex (Ethernet) messaging channel, and a simplex differential channel.
The TDM channel (also sometimes referred to as the “E1 channel”) is used by the ICON infrastructure to transport time sensitive transport activity, shelf numbering control and system timing information throughout the system. In one embodiment, the TDM channel operates at a frequency of 8000 Hz, providing 32 time slots with 8-bits per slot at a 125 microsecond refresh rate resulting in a data rate of 2.048 Mbps. In this embodiment, the TDM channel provides a guaranteed point-to-point channel between the ICON cards on peripheral shelf 1 and any shelf connected to one of peripheral shelf 1's CSL ports.
The full duplex messaging channel (also sometimes referred to as the “Ethernet channel”) is used for general communications with any shelf in the system. In one embodiment, the Ethernet channel operates at 100 Mbps. Each Ethernet link to a shelf is shared among all components (cards) within the shelf. As a result, every element in the system is capable of communicating with the control complex via the Ethernet channel.
The Ethernet channel may be used for a large variety of communications, including connection information, software downloading to the individual components, debugging, alarm management, and configuration transfers. Communications between the control complex and the shelf controllers that does not travel over the TDM channel in general travels over the Ethernet channel.
The simplex differential channel (also sometimes referred to as the “RTS channel”) is used to distribute a real time stamp (RTS) from the controller to each of the shelves in the system. The simplex differential channel is used instead of the TDM channel or the Ethernet channel because the RTS is sensitive to time delays that result from the applications running on the TDM and Ethernet channels. The RTS is used to align all elements of the system to the same time stamp for purposes such as debugging and billing. The RTS signal is generated by the control complex and is provided to the ICON cards via a direct circuit board (mid-plane) connection. The ICON cards are responsible for extracting the signal and transmitting it via the differential channel to all shelves in the system.
The use of redundant pairs of control cards and icon cards in peripheral shelf 1 and redundant shelf controllers in other peripheral I/O shelves creates redundant pathways over which control traffic can flow between each control card of the control complex in peripheral shelf 1 and each line card of each peripheral I/O shelf. Examples of redundant pathways between control card 300a and a line card 550 of high speed peripheral shelf 110c are shown in
A first pathway, shown in
Microprocessor 405 exchanges time sensitive control data and normal control data with line card 420 on peripheral shelf 2110c. Time sensitive control data travels over a set of “n” direct links 420 to a field programmable gate array (FPGA) 450 on ICON card A 310a. FPGA 450 assembles the data for transmission via TDM, and transmits the time sensitive data via E1 channel 485 of CSL 370c to FPGA 470 of shelf controller A 350a on peripheral shelf 2110c. FPGA 470 extracts the time sensitive data for line card 420 from the TDM stream, and passes it via direct midplane links 495 to line card 420.
Normal control data, on the other hand, travels from microprocessor 405 to Ethernet port 410 of control card A 300a, and from there via midplane Ethernet link 425 to switch 445 of ICON card A 310a. Switch 445 passes the data via CSL Ethernet channel 490 to switch 465 on shelf controller A 350a of peripheral shelf 2110c. Switch 465 in turn transmits the data to Ethernet port 482 on line card 420. A microprocessor 466 of shelf controller A 350a on peripheral shelf 2110c is coupled to FPGA 470 via connection 467, switch 465 via connection 468, and Ethernet port 482 via connection 469, allowing microprocessor 466 access to the time sensitive data and the normal control data and/or allowing microprocessor 466 to exert control over the operations of FPGA 470, switch 465, and/or Ethernet port 482 (or, more generally, line card 420 via Ethernet port 482).
Real time stamp (RTS) source 415 may generate its own time signal, or may receive a time signal from an external source. RTS source 415 communicates its time signal via midplane link 430 to RTS transponder 455 on ICON card A 310a. RTS transponder 455 converts the time stamp into proper form for transmission over the differential channel of CLS 370a and sends it to RTS transponder 475 on shelf controller A 350a of peripheral shelf 2110c. RTS transponder 475 extracts the RTS signal from CSL 370c's RTS channel and distributes it to line card 420 via midplane link 497.
Even though
A common method used to prevent data communications interruptions is known as Automatic Protection Switching (APS) 1+1. In an APS 1+1 system, components are connected via redundant, mirrored links. Each transmitting component sends the identical data over both links, and each receiving component listens to both links. One of the links is the normal “work” link, while the other is the “protection” link. As long as the work link is operating properly, the receiving component processes the data received from that link and discards the data received via the protection link. However, if at any time the work link becomes inoperable or defective, the receiving component immediately begins processing the data received over the “protection” link. Both links must carry identical data so that no data loss occurs when such a switch is made.
APS is useful because it prevents communications failures resulting from a single link failure. However, it does so at the expense of bandwidth: because the same data is sent simultaneously over two separate links, the total bandwidth needed is twice the what is required by the data stream itself, even though the data transferred over the protection link is used only during the infrequent times when there is a failure of the work link, and is otherwise discarded.
The present invention comprises a method and apparatus for optimizing redundant link usage so as to allow a portion of the wasted bandwidth in a redundant link system to be utilized for additional data traffic without compromising the ability of the system to respond to and correct for a failure of a link. In one embodiment, two independent, individually addressable links are established between two endpoints. One of the links is selected as a nominal communication path, and the other as a standby communication path. Data traffic between the endpoints is divided into path independent traffic and path dependent traffic. The path independent traffic is sent via the nominal communication path, while the path dependent data is sent via the nominal communication path or the standby path, in accordance with the dependence of the traffic. In another embodiment, the nominal communication path and standby communication path each comprise a time sensitive path and a normal path. Critical time sensitive traffic is sent via the nominal and standby time sensitive paths, while normal traffic is sent via the nominal normal path, and non-critical traffic is sent via the standby normal path.
A method and apparatus for optimizing redundant link usage in a multi-shelf network element is disclosed. In the following description, numerous specific details are set forth to provide a thorough description of the invention. However, it will be apparent to one skilled in the art that the invention may be practiced without these specific details. In other instances, well-known features have not been described in detail so as not to obscure the invention.
As shown in
Each of intrashelf paths 670 and 675 and CSL links 370c and 370d comprise three separate data channels: an RTS channel, an Ethernet channel, and a time sensitive data channel. Intrashelf path 670 includes an RTS channel 425, an Ethernet channel 425, and a direct multi-line channel 420. Intershelf CSL link 370c includes an RTS channel 480, an Ethernet channel 490, and a TDM/E1 channel 485. RTS channel 425 is connected through ICON A 310a to RTS channel 480, Ethernet channel 425 is connected to Ethernet channel 490, and multi-line channel 420 is connected to E1 channel 485.
Similarly, intrashelf path 675 includes RTS channel 660, Ethernet channel 655, and multi-line channel 650, while intershelf CSL link 370d includes RTS channel 630, Ethernet channel 620, and TDM/E1 channel 610. RTS channel 660 is connected through ICON B 310b to RTS channel 630, Ethernet channel 655 is connected to Ethernet channel 620, and multi-line channel 650 is connected to E1 channel 610.
In other embodiments, time sensitive data channels, for example, indirect multi-line channels, may be provided between a dual or quad fabric interface card (DFIC/QFIC) and each of control card A 300a, ICON card A 310a, and ICON card B 310b. Such channels may be provided in addition to, or in lieu of, direct multi-line channel 420 and multi-line channel 650.
The combination of intrashelf link 670 and intershelf link 370c forms a first threechannel communication path between control card A 300a and peripheral 1/0 shelf 110c. This first communication path will be referred to as communication path A. The combination of intrashelf link 675 and intershelf link 370d forms a second, independent three-channel communication path between control card A 300a and peripheral I/O shelf 110c. This second communication path will be referred to as communication path B. Control card A 300a is configured to allow it to individually address each of communication paths A and B.
A concept that is relevant to the embodiment of
In the embodiment of
The relative health of two available communication paths or links between two endpoints (such as, for example, control card A 300a and peripheral I/O shelf 110c in
Various paradigms can be used for selection of the “nominal” and “standby” paths. In the embodiment of
The identity at any point in time of the “nominal” link constitutes critical, time sensitive information. For example, a control card such as control card A 330a uses the identity of the nominal link to determine which path to use for data traffic. In one embodiment, the data identifying the nominal link is simultaneously sent by both shelf controllers via the respective TDM/E1 channels of their respective CSL links to the control cards to ensure that the identity of the nominal link is known, preferably at all times, by the control cards. Sending data regarding the current nominal path via the TDM/E1 channels of both CSL links allows the control card to be instantly informed of a switch in the nominal link, even if the previous link, including its TDM/E1 channel is completely severed. The control card can instantly redirect the normal data traffic to the standby link with little to no loss of data. It should be noted that the normal data traffic is considered to be “path independent” between the endpoints (i.e. control card A 300a and peripheral I/O shelf 110c). That is, it does not matter whether communication path A or communication path B is used—all that matters is that the data is transferred between endpoints.
In the embodiment of
If it is found at step 720 that at least one of the links is currently usable, then one usable link is designated as the nominal link based on the relative health of the links at step 730. At step 740, path independent data, and data dependent on the nominal path (i.e. the path formed by the link that has been designated as the nominal link) is transferred between endpoints via the nominal link. At step 750, a determination is made as to whether the second link is currently usable. If the second link is found to be not usable, an alarm is set at step 755 and the process returns to step 710. If the second link is found to be usable, then data dependent on the second path (i.e. the path formed by the second link) is transferred between endpoints via the second link. Thereafter the process returns to step 710.
If it is determined at step 815 that at least one link is currently usable, then one link is designated as the nominal link based on the relative health of the links at step 825. The designation of that link as the nominal link is communicated between endpoints via the time sensitive channel of the nominal link at step 830, and normal data traffic is transferred between endpoints via the second channel of the nominal link at step 835.
At step 840, a determination is made as to whether the health of the second link is sufficient to render it currently usable. If the second link is not found to be usable, an alarm is set at step 845 and the process returns to monitoring the health of the links at step 810. If the second link is found to be usable, the designation of the nominal link (which is sent via the time sensitive channel of the nominal link at step 830) is also sent via the time sensitive channel of the second link at step 850. In addition, supplemental, non-critical traffic is transferred between endpoints via the second channel of the second link at step 860. Thereafter the process returns to step 810.
Thus, a method and apparatus of optimizing redundant link usage in a multi-shelf network element has been presented. Although the invention has been described using certain specific examples, it will be apparent to those skilled in the art that the invention is not limited to these few examples. For example, although the invention has been described with respect to use in a multi-shelf network element, the invention may be used for optimization of redundant link usage within and between other communicating devices. Other embodiments utilizing the inventive features of the invention will be apparent to those skilled in the art, and are encompassed herein.
This application claims the benefit of U.S. Provisional Application No. 60/325,368, filed Sep. 27, 2001.
Number | Name | Date | Kind |
---|---|---|---|
5130974 | Kawamura et al. | Jul 1992 | A |
5210680 | Scheibler | May 1993 | A |
5229925 | Spencer et al. | Jul 1993 | A |
5237484 | Ferchau et al. | Aug 1993 | A |
5276893 | Savaria | Jan 1994 | A |
5410536 | Shah et al. | Apr 1995 | A |
5497363 | Gingell | Mar 1996 | A |
5550802 | Worsley et al. | Aug 1996 | A |
5574718 | Eckhoff et al. | Nov 1996 | A |
5687063 | Chabert | Nov 1997 | A |
5822184 | Rabinovitz | Oct 1998 | A |
6289043 | Kumata | Sep 2001 | B1 |
6490289 | Zhang et al. | Dec 2002 | B1 |
6501768 | Marin et al. | Dec 2002 | B2 |
6542934 | Bader et al. | Apr 2003 | B1 |
6591374 | Christensen et al. | Jul 2003 | B1 |
6704302 | Einbinder et al. | Mar 2004 | B2 |
6724757 | Zadikian et al. | Apr 2004 | B1 |
6738818 | Shah | May 2004 | B1 |
6760339 | Noel et al. | Jul 2004 | B1 |
6768745 | Gorshe et al. | Jul 2004 | B1 |
6816590 | Pike et al. | Nov 2004 | B2 |
6823470 | Smith et al. | Nov 2004 | B2 |
6839361 | Marin et al. | Jan 2005 | B2 |
6850704 | Dave | Feb 2005 | B1 |
6861943 | Pike et al. | Mar 2005 | B2 |
6973229 | Tzathas et al. | Dec 2005 | B1 |
7085225 | Schaller et al. | Aug 2006 | B2 |
7095735 | Pike et al. | Aug 2006 | B2 |
7099271 | Friesen et al. | Aug 2006 | B2 |
7099979 | Soetemans et al. | Aug 2006 | B2 |
7209477 | Pike | Apr 2007 | B2 |
7233568 | Goodman et al. | Jun 2007 | B2 |
7289436 | Schaller et al. | Oct 2007 | B2 |
20020044525 | Czerwiec et al. | Apr 2002 | A1 |
20020059424 | Ferguson et al. | May 2002 | A1 |
20020099972 | Walsh et al. | Jul 2002 | A1 |
20030058618 | Soetemans et al. | Mar 2003 | A1 |
20030058800 | Goodman et al. | Mar 2003 | A1 |
20030061313 | Soetemans | Mar 2003 | A1 |
20030137934 | Schaller et al. | Jul 2003 | A1 |
20060274736 | Pike et al. | Dec 2006 | A1 |
Number | Date | Country |
---|---|---|
2273525 | May 2000 | CA |
2273525 | May 2000 | FR |
WO0161906 | Aug 2001 | WO |
WO 0161909 | Aug 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20030058791 A1 | Mar 2003 | US |
Number | Date | Country | |
---|---|---|---|
60325368 | Sep 2001 | US |