Multicast buffered switch and method for operating a multicast buffered switch
First Claim
1. A multicast buffered switch comprising:
- plurality of separate buses;
a plurality of input modules each connected between a different one of a plurality of input lines, over which transmission cells including a payload are received;
a common controller coupled to the plurality of buses and managing the plurality of buses in such a way that control information and a received cell inserted by an input module is sequentially transmitted on different ones of the plurality of separate buses; and
a plurality of output modules each connected to a different output line and the plurality of separate buses for receiving a bus contents and comparing portions thereof to stored routing information to determine if the cell payload is to be retransmitted over its connected output line.
1 Assignment
0 Petitions
Accused Products
Abstract
In an NXN switch a plurality of buses interconnect the individual input modules to all of the output modules in a predetermined sequence. The input modules store the received cells and a unique ID. When selected the input module places a cell and its ID on selected ones of the buses along with a multicast vector which identities which of the output modules is to process the cell on a bus. The output modules examine the multicast vector and process the cell (table lookup) if selected In the multicast vector. If an output module is unable to process a required cell (successful table lockup) it sets a retry vector resident on the bus and the input module modifies the multicast vector to indicate only those output module(s) which failed to process a required cell. The cell, the ID and the modified multicast vector are placed on a bus in a subsequent selection of that input module.
43 Citations
36 Claims
-
1. A multicast buffered switch comprising:
-
plurality of separate buses;
a plurality of input modules each connected between a different one of a plurality of input lines, over which transmission cells including a payload are received;
a common controller coupled to the plurality of buses and managing the plurality of buses in such a way that control information and a received cell inserted by an input module is sequentially transmitted on different ones of the plurality of separate buses; and
a plurality of output modules each connected to a different output line and the plurality of separate buses for receiving a bus contents and comparing portions thereof to stored routing information to determine if the cell payload is to be retransmitted over its connected output line. - View Dependent Claims (2)
-
-
3. A multicast buffered switch comprising:
-
a multiconductor bus;
a plurality of input modules each connected between a different one of a plurality of input lines, over which transmission cells including a payload are received, and the multiconductor bus for sequentially transferring, a received cell and control information inserted by the input module, to the bus; and
,a plurality of output modules each connected to a different output line and the multiconductor bus for receiving the bus contents and comparing portions thereof to stored routing information to determine if the cell payload is to be retransmitted over its connected output line wherein said control information includes unique information identifying the input module which placed the cell and control information on the bus and a multicast vector identifying which of the output modules are required to process the cell on the bus. - View Dependent Claims (4, 5, 6)
-
-
7. A multicast buffered switch comprising:
-
a plurality of input modules each connected to an input line over which transmission cells including a payload are received;
a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be transmitted;
a multiconductor bus interconnecting the input and output modules;
each of the input modules including a first means for storing received cells, a second means for placing, in a predetermined sequence, a received transmission cell, an ID identifying the input module and a multicast vector which includes an indicia indicating to each of the outputs when a transmission cell requires processing on the multiconductor bus; and
,each of the output modules includes means for examining the multicast vector to determine if the output module is to process the cell on the bus and comparing selected portions of the bus contents including the ID placed on the multiconductor bus by the input modules to stored routing information for determining if the cell being processed is to be retransmitted by the output module over its connected output. - View Dependent Claims (8, 9, 10)
-
-
11. A multicast buffered switch comprising:
-
a plurality of input modules each connected to an input line over which transmission cells including data are received;
a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be transmitted;
a multiconductor bus interconnecting the input and output modules;
each of the input modules including first means responsive to a unique selection signal on the bus for placing on the bus a received transmission cell, an ID identifying the input module and a multicast vector which includes an indicia for indicating to each of the output modules when a transmission cell on the multiconductor bus requires processing;
each of the output modules including means responsive to the multicast vector for comparing selected portions of the transmission cell and the ID placed on the multiconductor bus by the input modules to stored routing information for determining if the cell is to be transmitted by the output module over its connected output, queuing the cell for transmission over the connected output and setting a unique assigned position in a retry vector resident on the bus for indicating the successful or unsuccessful processing of a cell received on the bus; and
,each selected input module including second means for examining the retry vector to determine if any output modules failed to successfully process a specific cell, for modifying the multicast vector to indicate only those output modules which failed to successfully process the specific cell and for retransmitting the specific cell, the input modules ID and the modified retry vector when the input module is selected at a subsequent time.
-
-
12. In a multicast buffered switch which includes a plurality of input modules each connected to a different one of a plurality of input lines over which transmission cells each including a payload are received, a plurality of output modules each connected to a different output line a method for operating the switch including:
-
providing a single stage switching system including a plurality of independent buses for interconnecting components of said switch;
at the input module, receiving cells and storing each of the received cells and periodically placing a stored cell on a selected one of the plurality of buses and control information on another of the plurality buses wherein the control information and the stored cell are being placed sequentially on respective buses; and
at each output module, receiving the control information, comparing portions of the control information to stored routing information and queuing the received cell for transmission over its connected output when there is a successful comparison. - View Dependent Claims (13)
-
-
14. In a multicast buffered switch which includes a plurality of input modules each connected to a different one of a plurality of input lines over which transmission cells each including a payload are received, a plurality of output modules each connected to a different output line and a multiconductor bus for interconnecting the input and output modules a method for operating the switch including the following steps;
-
at the input module receiving cells and storing each of the received cells and periodically placing a stored cell and control information on the bus; and
at each output module receiving the bus contents, comparing portions of the contents to stored routing information and queuing the received cell for transmission over its connected output when there is a successful comparison, wherein the control information includes unique information identifying the input module which placed the cell and control information on the bus and a multicast vector identifying which of the output modules are required to process the cell on the bus. - View Dependent Claims (15, 16, 17)
-
-
18. In a multicast buffered switch which includes a plurality of input modules each connected to an input line over which transmission cells including data are received, a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be retransmitted, and a multiconductor bus interconnecting the input and output modules a method of operating the switch including the following steps:
-
selecting each of the input modules in a predetermined sequence, placing a received transmission cell, an ID identifying the input module and a multicast vector which includes an indicia indicating to each of the outputs when a transmission cell on the multiconductor bus requires processing; and
,at each of the output modules examining the multicast vector to determine if the cell is to be processed, comparing selected portions of the transmission cell and the ID placed on the multiconductor bus by the input modules to stored routing information to determining if the cell is to be transmitted by the output module over its connected output. - View Dependent Claims (19, 20, 21)
-
-
22. In a multicast buffered switch including a plurality of input modules each connected to an input line over which transmission cells including data are received, a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be retransmitted and a multiconductor bus interconnecting the input and output modules a method of transferring transmission cells received at an input module to selected output modules including the following steps:
-
at each of the input modules in a predetermined sequence placing on the bus a received transmission cell, an ID identifying the input module and a multicast vector which includes an indicia indicating to each of the outputs when a transmission cell on the multiconductor bus requires processing;
at each of the output modules examining the multicast vector and in response thereto comparing selected portions of the transmission cell and the ID placed on the multiconductor bus by the input modules to stored routing information for determining if the cell is to be transmitted by the output module over its connected output, queuing the cell for transmission over the connected output if selected and setting a unique assigned bit in a retry vector resident on the bus for indicating the successful or unsuccessful processing of a cell received on the bus; and
,at each selected input module examining the retry vector to determine if any output modules failed to successfully process a specific cell, modifying the multicast vector to indicate only those output modules which failed to successfully process the specific cell and retransmitting the specific cell, the input modules ID and the modified retry vector when the input module is selected at a subsequent time and discarding the cell if no output modules indicate a failure to process the cell. - View Dependent Claims (23)
-
-
24. In a multicast buffered switch which includes a plurality of input modules each connected to a different one of a plurality of input lines over which transmission cells including a payload are received, a plurality of output modules each connected to a different output line and a multiconductor bus for interconnecting the input and output modules a method for operating the switch including the following steps:
-
at each said input module;
receiving transmission cells, adding a unique ID to the received cells and storing the updated received cells, sequentially selecting the input modules and at each selected input module placing a stored received cell and a multicast vector which includes a unique indicia indicating when a cell requires processing by an output module on the bus, At each said output module;
examining the multicast vector to determine if the output module is required to process the cell, if required comparing a portion of the cell to a locally stored routing table to determine if the cell is to be routed to the connected output line and entering a predetermined status indicia in a retry vector resident on the bus when the output module is unable to process a cell required to be transmitted on its connected output; and
,at said input module;
examining said retry vector, modifying the multicast vector to indicate only those output modules which set a predetermined status in the retry vector, and placing that cell and the modified multicast vector on the bus when selected at a later time and discarding the cell when no output modules have set the predetermined status in the retry vector.
-
-
25. In a multicast buffered switch including a plurality of input modules (IM'"'"'s) each connected to an input line over which transmission cells each including a header and a payload are received, a plurality of output modules (OM'"'"'s) each connected to an output line over which selected cells received at the input modules are to be re transmitted with a modified header, and a multiconductor bus interconnecting the IM and OM modules and having an arbitration means for periodically generating unique bus selection signals for sequentially selecting the IM'"'"'s a method for operating the switch including the following steps;
-
at each of the IMs receiving the cells, adding a unique ID identifying the input module to the header and storing the modified cells in a FIFO buffer, and responsive to a predetermined periodic selection signal from the arbitration means generating a multicast vector which includes an indicia indicating to each of the outputs when a transmission cell requires processing on the multiconductor bus and placing the multicast vector and the modified cell header of the oldest stored cell in the FIFO buffer on the bus when selected and the payload associated with that cell on the bus in the next subsequent bus period; and
,at each of the OM'"'"'s examining the multicast vector to determine if the OM is to process the cell on the bus and comparing selected portions of the header to stored routing information to determine if the cell being processed is to be retransmitted by the OM over its connected output and selecting and storing the payload on the bus in the next period and a new header for retransmission at a later time when the cell is selected for processing. - View Dependent Claims (26, 27, 28)
-
-
29. In a multicast buffered ATM switch including a plurality of input modules each connected to an input line over which transmission cells each including a header and a payload are received, a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be retransmitted a multiconductor bus interconnecting the input and output modules and a bus arbitration means for periodically generating unique bus selection signals for sequentially selecting the input modules a method for operating the switch including the following steps:
-
at each of the input modules storing received transmission cells in a FIFO buffer and replacing the header error correction (HEC) byte included in the received ATM cell header with a unique ID identifying the input module, generating a multicast vector which includes a unique indicia for indicating to each of the output modules when a transmission cell on the multiconductor bus requires processing, and responsive to a predetermined unique periodic bus selection signal placing the modified header and the multicast vector on predetermined positions in the multiconductor bus and the cell payload in predetermined positions in the bus in the very next bus period; and
,At each of the output modules examining the multicast vector in each bus period to determine if the output module is required to process the cell, comparing selected portions of the modified header on the multiconductor bus to stored routing information for determining if that cell is to be retransmitted by the output module over its connected output, swapping the cell header if the output module is required to retransmit the cell over the connected output, setting a unique assigned position in a retry vector resident on the bus for indicating the successful or unsuccessful processing of a cell received on the bus, and inserting the swapped header and the payload on the bus in the next bus period in a retransmission queue for subsequent transmission; and
at each selected input module examining the retry vector to determine if any output modules failed to successfully process a specific cell, modifying the multicast vector to indicate only those output modules which failed to successfully process the specific cell and resubmitting the specific cell with the modified multicast vector on the bus when the input module is next selected. - View Dependent Claims (30)
-
-
31. A multicast buffered switch comprising:
-
a plurality of input modules (IM'"'"'s) each connected to an input line over which transmission cells each including a header and a payload are received;
a plurality of output modules (OM'"'"'s) each connected to an output line over which selected cells received at the IM'"'"'s are to be re transmitted with a modified header;
a multiconductor bus interconnecting the IM and OM modules, said bus including an arbitration means for periodically generating unique bus selection signals for sequentially selecting the IM'"'"'s;
each of the IM'"'"'s including a first IM means for receiving the cells, adding a unique ID identifying the input module to the header and storing the modified cells in a FIFO buffer, and second IM means responsive to a predetermined periodic selection signal from the arbitration means for placing the modified cell header of the oldest stored cell in the FIFO buffer and a multicast vector which includes an indicia indicating to each of the outputs when a transmission cell on the multiconductor bus requires processing and the payload associated with that cell on the bus in the next subsequent bus period; and
,each of the OM'"'"'s includes first OM means for examining the multicast vector to determine if the OM is to process the cell on the bus and second OM means for comparing selected portions of the header to stored routing information for determining if the cell being processed is to be retransmitted by the OM over its connected output and third OM means responsive to the second OM means for selecting and storing the payload on the bus in the next period and a new header for retransmission at a later time. - View Dependent Claims (32, 33, 34)
-
-
35. A multicast buffered ATM switch comprising:
-
a plurality of input modules each connected to an input line over which transmission cells including data are received;
a plurality of output modules each connected to an output line over which selected cells received at the input modules are to be retransmitted;
a multiconductor bus interconnecting the input and output modules, said bus including an arbitration means for periodically generating unique bus selection signals for sequentially selecting the input modules;
each of the input modules including first means for storing received transmission cells each of which includes a header and a payload in a FIFO buffer and for replacing the header error correction (HEC) byte included in the received ATM cell header with a unique ID identifying the input module, second means for generating a multicast vector which includes an indicia for indicating to each of the output modules when a transmission cell on the multiconductor bus requires processing, and third means responsive to a predetermined unique bus selection signal for placing the modified header and the multicast vector on predetermined positions in the multiconductor bus when selected by the arbitration means arid the cell payload in predetermined positions in the bus in the very next bus period; and
,each of the output modules including first means responsive to the multicast vector in each bus period for comparing selected portions of the modified header on the multiconductor bus to stored routing information for determining if that cell is to be retransmitted by the output module over its connected output, second means for swapping the cell header if the output module is required to retransmit the cell over the connected output, third means for setting a unique assigned position in a retry vector resident on the bus for indicating the successful or unsuccessful processing of a cell received on the bus, and fourth means inserting the swapped header and the payload on the bus in the next bus period in a retransmission queue for subsequent transmission; and
,each selected input module second means examining the retry vector to determine if any output modules failed to successfully process a specific cell, modifying the multicast vector to indicate only those output modules which tailed to successfully process the specific cell and resubmitting the specific cell with the modified multicast vector on the bus when the input module is next selected. - View Dependent Claims (36)
-
Specification