Data packet switch using a primary processing unit to designate one of a plurality of data stream control circuits to selectively handle the header processing of incoming packets in one data packet stream
First Claim
1. A high speed data packet switching circuit comprising:
- a software controlled primary processing units,a plurality of network interface units for receiving incoming data packet streams and for transmitting outgoing data packet streams, each of said data packet streams having a selected protocol and all of the data packets in a said stream having the identical protocol,a plurality of data stream control circuits for concurrently receiving at least a portion of a header of the data packets and selectively processing the received packets only wherein each said data stream control circuit processes the data packets of one data stream having one of said selected protocol in response to previously generated electrical signals from the primary processing unit based upon header identification information in the at least first data packet of the new data packet stream for designating and initializing one of said data stream control circuits to process a remainder of the data packets of the new data packet stream,means for interconnecting said primary processing unit, said plurality of interface units and said plurality of data stream control circuits,said primary processing unit receiving from said network interface units, and for processing, at least a first one of the data packets of a new data packet stream and having means for generating said electrical signals means in each said designated and initialized data stream control circuit for receiving and processing only those data packets which include said header identification information upon which said designated and initializing is based.
0 Assignments
0 Petitions
Accused Products
Abstract
A high speed data packet switching circuit has a software controlled primary processing unit, a plurality of network interface units connected to a plurality of networks for receiving incoming data packet streams and for transmitting outgoing data packet streams, a plurality of high speed data stream hardware control circuits for processing data packets in response to instructions from the primary processing unit and circuitry for interconnecting the primary processing unit, the interface units, and the data stream control circuits. The primary processing unit receives from the network interface unit at least a first one of the data packets of each new data packet stream and assigns that stream to be processed by one of the data stream control circuits without further processing by the primary processing unit. The apparatus and method thus perform routine, repetitive processing steps on the further packets of the data stream using the high speed hardware circuitry, while the initial processing and other non-repetitive or special processing of the data packets are performed in software. Particular hardware is described for effecting the high speed hardware processing of the data packets.
-
Citations
17 Claims
-
1. A high speed data packet switching circuit comprising:
-
a software controlled primary processing units, a plurality of network interface units for receiving incoming data packet streams and for transmitting outgoing data packet streams, each of said data packet streams having a selected protocol and all of the data packets in a said stream having the identical protocol, a plurality of data stream control circuits for concurrently receiving at least a portion of a header of the data packets and selectively processing the received packets only wherein each said data stream control circuit processes the data packets of one data stream having one of said selected protocol in response to previously generated electrical signals from the primary processing unit based upon header identification information in the at least first data packet of the new data packet stream for designating and initializing one of said data stream control circuits to process a remainder of the data packets of the new data packet stream, means for interconnecting said primary processing unit, said plurality of interface units and said plurality of data stream control circuits, said primary processing unit receiving from said network interface units, and for processing, at least a first one of the data packets of a new data packet stream and having means for generating said electrical signals means in each said designated and initialized data stream control circuit for receiving and processing only those data packets which include said header identification information upon which said designated and initializing is based. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15)
-
-
14. A high speed data packet switching method for switching data packet stream among communication paths comprising the steps of
receiving each packet stream from one of a plurality of networks, processing at least a first packet of each received data packet stream using a software controlled, primary processing unit, designating that performance of routine, repetitive header processing of the further packets of one of said received packet steams, said processing including packet forwarding processing to effect routing of said packet, receiving and examining by each said high speed hardware circuitry at least a portion of each packet of each said received data packet stream, determining based on said examination of said at least a portion of each packet by each of said high speed hardware circuitry, which said high speed hardware circuitry has been designated to process each further packet of each received data packet stream, receiving in said designated high speed hardware circuitry said each further packet.
-
16. A high speed data packet switching method comprising the steps of
receiving incoming packet streams from network interface units; -
processing ones of the received data packets in response to a software controlled primary processing unit using a plurality of hardware data stream control circuits, interconnecting the primary processsing unit, the interface units, and the data stream control circuits for communications therebetween, processing at least a first one of the data packets from the receiving step for each new data packet stream in the primary processing unit, identifying, using the primary processing unit, one of the data stream control circuits for processing the incoming data packet stream, determining by each said data stream control circuit the one data stream control circuit which will process each packet of that portion of said incoming data packet stream which is not processed by said primary processing unit, processing that portion of a said data packet stream which is not processed by said primary processing unit by said identified data stream control circuit, and outputting the results of the data stream control circuit processing and the primary processing unit processing to form an output data stream for transmission along a communications path.
-
-
17. A high speed data packet switching circuit for receiving data packet streams from a plurality of input communication paths and for transmitting data packet streams to a plurality of output communication paths, said circuit comprising
a plurality of network interface units for receiving the incoming data packet streams and for transmitting outgoing data packet streams, a software controlled primary processing unit, having a bus means, a central processing unit, a plurality of input storage units for receiving respectively each of said plurality of data streams from the network interface units and each input storage unit having its output connected to said bus means, means for connecting the central processing unit to said bus means, and a plurality of output storage units for receiving data from said central processing unit over said bus means, and for providing said data to said network interface units, a plurality of data stream control circuits for manipulating data packet stream in response to the primary processing unit, said data stream control circuits comprising a pattern matching circuit responsive to pattern setting signals from the central processing unit and to incoming streams of data packets from said network interface units for identifying a data packet to be processed by said control circuit, means for transferring identified data packets to said control circuit, a processor responsive control circuit for controlling, in response to control signals sent by the primary processing unit, means for congestion control, and means for header stripping and prepending functions for the data stream control circuit, and a data buffer responsive to said pattern matching circuit and the processor responsive control circuit for storing an incoming data packet stream from said control circuit and for outputting a stored data packet stream to be forwarded to a network interface unit, means for interconnecting said primary processing unit, said plurality of network interface units and said plurality of data stream control circuits, and said primary processing unit receiving from said network interface units at least a first one of the data packets of each new data packet stream and having means for designating those data packets of the stream which are not processing by the primary processing unit to be processed by a said data stream control circuit without further processing by said primary processing unit.
Specification