Apparatus and method for forwarding packet data
First Claim
1. An apparatus for forwarding packet data, comprising:
- a plurality of output parts for outputting a packet, each of the plurality of output parts being defined as one of an output side interface unit and a trunk unit;
an input side interface unit configured to;
input a packet, andbuild a sequence of forwarding data blocks each having a header field and a packet data field, the header field including a forwarding destination field and a position indicator, the forwarding destination field storing a first forwarding destination identifier identifying a first output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in an active state indicating that the first output part is working, the position indicator indicating a relative position of a forwarding data block within the sequence of forwarding data blocks, the packet data field storing a portion of packet data extracted from the packet so that the packet data is restored by combining all of the packet data fields included in the sequence of forwarding data blocks in an order corresponding to the sequence of forwarding data blocks; and
a switch fabric configured to;
store a second forwarding destination identifier in association with the first forwarding destination identifier when the first output part is in an inactive state indicating that the first output part is not working, the second forwarding destination identifier identifying a second output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in the inactive state;
receive the sequence of forwarding data blocks from the input side interface unit;
perform forwarding destination conversion procedure on the received sequence of forwarding data blocks, the forwarding destination conversion procedure including;
determining whether the first output part is in the active state or not when the switch fabric receives a beginning block of the sequence of forwarding data blocks,converting, when it is determined that the first output part is in the inactive state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks into the second forwarding destination identifier so that all the forwarding destination fields of the sequence of forwarding data blocks store the second forwarding destination identifier, andkeeping, when it is determined that the first output part is in the active state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks so that all the forwarding destination fields of the sequence of forwarding data blocks store the first forwarding destination identifier; and
forward each of the sequence of forwarding data blocks to one of the first and second output parts that is identified by the converted forwarding destination identifier stored in the forwarding destination field of the each of the sequence of forwarding data blocks so that a whole sequence of forwarding data blocks is forwarded to the first output part when the first output part is in the active state at the time of receiving the beginning block of the sequence of forwarding data blocks, and forwarded to the second output part when the first output part is in the inactive state at the time of receiving the beginning block of the sequence of forwarding data blocks.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus includes an input part, a plurality of output parts, and a switching part. The input part inputs a packet and builds at least one forwarding data block including a predetermined destination identifier and packet data extracted from the inputted packet. The switching part includes a forwarding destination storing section for storing, in association with a predetermined destination identifier, a forwarding destination identifier identifying one of the plurality of output parts, and receives the at least one forwarding data block from the input part, and forwards it to one of the plurality of output parts on the basis of forwarding destination storing section which is updated in response to a change in the operating state of the plurality of output parts.
44 Citations
10 Claims
-
1. An apparatus for forwarding packet data, comprising:
-
a plurality of output parts for outputting a packet, each of the plurality of output parts being defined as one of an output side interface unit and a trunk unit; an input side interface unit configured to; input a packet, and build a sequence of forwarding data blocks each having a header field and a packet data field, the header field including a forwarding destination field and a position indicator, the forwarding destination field storing a first forwarding destination identifier identifying a first output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in an active state indicating that the first output part is working, the position indicator indicating a relative position of a forwarding data block within the sequence of forwarding data blocks, the packet data field storing a portion of packet data extracted from the packet so that the packet data is restored by combining all of the packet data fields included in the sequence of forwarding data blocks in an order corresponding to the sequence of forwarding data blocks; and a switch fabric configured to; store a second forwarding destination identifier in association with the first forwarding destination identifier when the first output part is in an inactive state indicating that the first output part is not working, the second forwarding destination identifier identifying a second output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in the inactive state; receive the sequence of forwarding data blocks from the input side interface unit; perform forwarding destination conversion procedure on the received sequence of forwarding data blocks, the forwarding destination conversion procedure including; determining whether the first output part is in the active state or not when the switch fabric receives a beginning block of the sequence of forwarding data blocks, converting, when it is determined that the first output part is in the inactive state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks into the second forwarding destination identifier so that all the forwarding destination fields of the sequence of forwarding data blocks store the second forwarding destination identifier, and keeping, when it is determined that the first output part is in the active state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks so that all the forwarding destination fields of the sequence of forwarding data blocks store the first forwarding destination identifier; and forward each of the sequence of forwarding data blocks to one of the first and second output parts that is identified by the converted forwarding destination identifier stored in the forwarding destination field of the each of the sequence of forwarding data blocks so that a whole sequence of forwarding data blocks is forwarded to the first output part when the first output part is in the active state at the time of receiving the beginning block of the sequence of forwarding data blocks, and forwarded to the second output part when the first output part is in the inactive state at the time of receiving the beginning block of the sequence of forwarding data blocks. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for forwarding packet data within an apparatus including an input side interface unit, a switch fabric, and a plurality of output parts each defined as one of an output side interface unit and a trunk unit, the method comprising:
-
inputting, by the input side interface unit, a packet; building, by the input side interface unit, from the inputted packet, a sequence of forwarding data blocks each having a header field and a packet data field, the header field including a forwarding destination field and a position indicator, the forwarding destination field storing a first forwarding destination identifier identifying a first output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in an active state indicating that the first output part is working, the position indicator indicating a relative position of a forwarding data block within the sequence of forwarding data blocks, the packet data field storing a portion of packet data extracted from the packet so that the packet data is restored by combining all of the packet data fields included in the sequence of forwarding data blocks in an order corresponding to the sequence of forwarding data blocks storing, by the switch fabric, a second forwarding destination identifier in association with the first forwarding destination identifier when the first output part is in an inactive state indicating that the first output part is not working, the second forwarding destination identifier identifying a second output part to which the sequence of forwarding data blocks are to be forwarded when the first output part is in the inactive state, receiving, by the switch fabric, the sequence of forwarding data blocks from the input side interface unit; performing, by the switch fabric, forwarding destination conversion procedure on the received sequence of forwarding data blocks, the forwarding destination conversion procedure including; determining whether the first output part is in the active state or not when the switch fabric receives a beginning block of the sequence of forwarding data blocks, converting, when it is determined that the first output part is in the inactive state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks into the second forwarding destination identifier so that all the forwarding destination fields of the sequence of forwarding data blocks store the second forwarding destination identifier, and keeping, when it is determined that the first output part is in the active state, the first forwarding destination identifier stored in the forwarding destination field of each of the sequence of forwarding data blocks so that all the forwarding destination fields of the sequence of forwarding data blocks store the first forwarding destination identifier; and forwarding, by the switch fabric, each of the sequence of forwarding data blocks to one of the first and second output parts that is identified by the converted forwarding destination identifier stored in the forwarding destination field of the each of the sequence of forwarding data blocks so that a whole sequence of forwarding data blocks is forwarded to the first output part when the first output part is in the active state at the time of receiving the beginning block of the sequence of forwarding blocks, and forwarded to the second output part being in the active state when the first output part is in the inactive state at the time of receiving the beginning block of the sequence of forwarding blocks. - View Dependent Claims (8, 9, 10)
-
Specification