Current networks typically include devices, such as routers, switches or gateways, which transfer or switch data from one or more sources to one or more destinations. A packet is one format of data in which encapsulated data can be transmitted through a network. A router is a switching device that receives packets containing a data payload and control information at input ports and, based on destination or other information included in the packets, may forward the packets through output ports to the destinations or intermediary destinations. Routers determine the proper output port for a particular packet by evaluating header information included in the packet.
Existing routers include forwarding engines for receiving and forwarding incoming packets to their intended destinations. To forward incoming packets from input port to an appropriate output port, routers may perform complex data manipulation actions. Such data manipulation actions may include storing and retrieving encapsulation data required for constructing outgoing packet headers and forwarding outgoing packets based on routing data accumulated using network routing protocols.
In network devices, such as, for example, routers, switches or integrated security service gateway systems, packets travel through multiple line cards (e.g., security service cards or input/output (I/O) line cards) while being processed during the packet forwarding process. Ingress I/O cards of the multiple line cards are typically the first service cards in the network device and egress I/O cards of the multiple line cards are typically the last service cards in the network device.
In accordance with one embodiment, a bandwidth management card may include a switch control unit and a plurality of ports connected to one or more line cards that are separate from the bandwidth management card. The bandwidth management line card may further include at least one switch and a plurality of network ports, where each of the plurality of network ports is connected to a respective link to at least one external network. The first switch of the at least one switch may receive first instructions from the switch control unit, switch a first subset of the plurality of network ports through to a first port of the plurality of ports based on the received first instructions, and switch a second subset of the plurality of network ports through to a second port of the plurality of ports based on the received first instructions.
In another implementation, a method may include selecting, via a switch control unit, a first subset of a plurality of network ports of a bandwidth management card that is connected to one or more separate line cards; and selecting, via the switch control unit, a second subset of the plurality of network ports of the bandwidth management card, where the second subset of the plurality of network ports is different than the first subset of the plurality of network ports. The method may further include switching, via a switch, the selected first subset of the plurality of network ports through to a first port of the bandwidth management card, where the first port is connected to a first line card of the one or more separate line cards, and where the first subset of the plurality of network ports share available bandwidth associated with the first port. The method may also include switching, via the switch, the selected second subset of the plurality of network ports through to a second port of the bandwidth management card that is connected to a second line card of the one or more separate line cards, where the second subset of the plurality of network ports share available bandwidth associated with the second port.
In yet another implementation, a system that includes a bandwidth management card may further include means for selecting a first subset of a plurality of network ports of the bandwidth management card, where the bandwidth management card is connected to one or more separate line cards, and where each of the plurality of network ports connects to a respective link to at least one external network. The system may also include means for selecting a second subset of the plurality of network ports of the bandwidth management card, where the second subset of the plurality of network ports is different than the first subset of the plurality of network ports, and means for switching the first subset of the plurality of network ports through to a first port of the bandwidth management card, where the first port is connected to a first line card of the one or more separate line cards, and where the first subset of the plurality of network ports share available bandwidth associated with the first port. The system may additionally include means for switching the second subset of the plurality of network ports through to a second port of the bandwidth management card that is connected to a second line card of the one or more separate line cards, where the second subset of the plurality of network ports share available bandwidth associated with the second port.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments described herein and, together with the description, explain the invention. In the drawings,
The following detailed description refers to the accompanying drawings. The same reference numbers may be used in different drawings to identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims and equivalents.
Exemplary embodiments described herein implement a bandwidth management line card that may be connected between network links, connected to an external network(s), and other line cards within a network device that may, for example, perform packet forwarding. The bandwidth management line card may permit selective allocation of channel bandwidth to the network links. In the bandwidth management line card described herein, one or more switches may selectively switch a set of network ports through to a port, of multiple ports, that connect to other line cards. By this switching, bandwidth may be selectively allocated to the network links connected to the network ports via the bandwidth management line card.
Each of bandwidth management line cards 110-1 through 110-M may operate to switch certain ones of network ports 105 through to certain ports 125 connected to other line cards based on a specified switching configuration. For example, in one switching configuration, four of network ports 105 may be switched through to a single port 125 to another line card. In another exemplary switching configuration, ten of network ports 105 may be switched through to a single one of ports 125 that connect to another line card. Bandwidth management line cards 110-1 through 110-M may include switches (not shown) that permit selective switching of network ports 105 to ports 125 to control the bandwidth allocated to each of network ports 105. Bandwidth management line cards 110-1 through 110-M may receive data units via links 115-1 through 115-M and network ports 105 and may switch the data units through respective ones of ports 125 to line cards 120-1 through 120-N based on a currently implemented switching configuration.
Each line card 120-1 through 120-N, acting as an ingress line card, may receive data units from a respective bandwidth management line card 110 and may forward the received data units through switch fabric 130 to a respective line card 120, acting as an egress line card. Each line card 120-1 through 120-N may forward the received data units through switch fabric 130 using forwarding tables received from a routing engine. The routing engine may communicate with other of nodes in the external network(s) to exchange information regarding network topology. The routing engine may create routing tables based on the network topology information and forward the routing tables to each line card 120-1 through 120-N. The routing engine may also perform other general control and monitoring functions for network device 100.
Each line card 120-1 through 120-N, acting as an ingress line card, may receive data units from a respective bandwidth management line card 110 and may forward the received data units through switch fabric 130 to a respective line card 120, acting as an egress line card. Each line card 120-1 through 120-N may forward the received data units through switch fabric 130 using forwarding tables received from a routing engine. The routing engine may communicate with other of nodes in the external network(s) to exchange information regarding network topology. The routing engine may create routing tables based on the network topology information and forward the routing tables to each line card 120-1 through 120-N. The routing engine may also perform other general control and monitoring functions for network device 100.
Switch fabric 130 may include one or more switching planes to facilitate communication between ingress line cards 120 and egress line cards 120. In one exemplary implementation, each of the switching planes may include a three-stage switch of crossbar elements. Other types of switching planes may, however, be used in switch fabric 130. Egress line cards 120 may receive data units from switch fabric 130 and may forward the data units towards destinations in the network (e.g., a next hop destination) via a respective bandwidth management line card 110 and an outgoing one of links 115.
The components depicted in
Each of switching units 210 may include a switch (not shown) that may selectively connect one or more subsets of network ports 105 through to a respective port of ports 125. Switch control unit 200 may issue instructions to switching units 210-1 through 210-X to control the selective switching of the connections between network ports 105 and ports to other line cards 125 so as to control a current switching configuration of switching units 210-1 through 210-X.
The components depicted in
Switch 300 may include a switching Application Specific Integrated Circuit (ASIC) that may selectively switch one or more subsets of network ports 105 through to a respective one of ports 125 to other line cards. In the exemplary implementation depicted in
Optical transceivers 320-1 through 320-P and optical transceivers 340-1 through 340-Q may each include circuitry for generating optical pulses for transmission over links 115 or for receiving optical pulses transmitted over links 115, where the optical pulses may be encoded with data corresponding to data units (i.e., by PHY layer ICs 310-1 through 310-P and 330-1 through 330-Q in the case of outgoing data).
PHY layer ICs 310-1 through 310-P may each include circuitry for decoding optical pulses received via optical transceivers 320-1 and for converting the optical pulses to digital data that may be sent to switch 300 for switching through to a respective port 125 to another line card. PHY layer ICS 310-1 through 310-P may also each include circuitry for receiving digital data from switch 300 and for encoding the digital data for transmission by optical transceivers 320-1 through 320-P as optical pulses. PHY layer ICs 310-1 through 310-P may each process data at one of multiple different rates. In one implementation, for example, PHY layer ICs 310-1 through 310-P may each process data at a 1 Gb/s rate. In another implementation, for example, PHY layer ICs 310-1 through 310-P may each process data at a 10 Gb/s rate.
PHY layer ICs 330-1 through 330-Q may include circuitry for decoding optical pulses received via optical transceivers 340-1 through 340-Q and for converting the optical pulses to digital data that may be sent to switch 300 for switching through to a respective network port 105. PHY layer ICs 330-1 through 330-Q may also include circuitry for receiving digital data from switch 300 and for encoding the digital data for transmission by optical transceivers 340-1 through 340-Q. In one implementation, for example, PHY layer ICs 330-1 through 330-Q may each process data at a 1 Gb/s rate. In another implementation, for example, PHY layer ICs 330-1 through 330-Q may each process data at a 10 Gb/s rate.
The components depicted in
In the example of
Additionally, network ports 105-2 and 105-4 may use the 10 Gb/s maximum bandwidth of the respective ports 125-2 and 125-4. The 10 Gb/s bandwidth of the respective ports 125-2 and 125-4 may, therefore, be considered to be “fully subscribed” by network ports 105-2 and 105-4, and each of network ports 105-2 and 105-4 may operate at their maximum 1 Gb/s bandwidth.
The exemplary process may include obtaining a switching configuration (block 800). A specific switching configuration may be identified by switch control unit 200. The identified switching configuration may, for example, be identified from external input (e.g., user input). Switching instructions may be determined based on the obtained switching configuration (block 805). Switch control unit 200 may determine the necessary switching instructions to issue to switching units 210-1 through 210-X based on the identified switching configuration. The switching instructions may be sent to switch(es) 300 to selectively switch network ports 105 through to respective line card ports 125 (block 810). For example, referring to the example of
It may be determined whether there is a new switching configuration (block 815). Switch control unit 200 may identify a new switching configuration (e.g, from external input) for bandwidth management line card 110. If there is a new switching configuration (block 815—YES), then the exemplary process may return to block 805 with the determination of new switching instructions to implement the new switching configuration. If there is no new switching configuration (block 815—NO), then the exemplary process may end.
As described herein, a bandwidth management line card, which may be connected between network links (i.e., connected to an external network(s)) and other line cards within a network device, may permit selective allocation of channel bandwidth to the network links. One or more switches of the bandwidth management line card may selectively switch a set of network ports through to a port, of multiple ports, that connect to other line cards. By this switching, bandwidth may be selectively allocated to the network links connected to the network ports.
The foregoing description of embodiments described herein provides illustration and description, but is not intended to be exhaustive or to limit the embodiments described herein to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention.
While a series of blocks has been described in
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. The scope of the invention is defined by the claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
6631134 | Zadikian et al. | Oct 2003 | B1 |
6954463 | Ma et al. | Oct 2005 | B1 |
7233567 | Li | Jun 2007 | B1 |
7283517 | Yan et al. | Oct 2007 | B2 |
7293090 | Saleh et al. | Nov 2007 | B1 |
7336604 | Dong et al. | Feb 2008 | B2 |
7529186 | Smethurst et al. | May 2009 | B2 |
7599285 | Zhou et al. | Oct 2009 | B2 |
7602807 | Zadikian et al. | Oct 2009 | B2 |
7606245 | Ma et al. | Oct 2009 | B2 |
7697525 | Zelig et al. | Apr 2010 | B2 |
7757033 | Mehrotra et al. | Jul 2010 | B1 |
7760859 | Matityahu et al. | Jul 2010 | B2 |
7792027 | Tatar et al. | Sep 2010 | B2 |
7809009 | Tatar et al. | Oct 2010 | B2 |
7864791 | Tatar et al. | Jan 2011 | B2 |
20040160945 | Dong et al. | Aug 2004 | A1 |
20040210688 | Becker | Oct 2004 | A1 |
20060013133 | Peng et al. | Jan 2006 | A1 |
20080240104 | Villait et al. | Oct 2008 | A1 |
20100165877 | Shukla et al. | Jul 2010 | A1 |
Number | Date | Country | |
---|---|---|---|
20110142065 A1 | Jun 2011 | US |