Scalable network gateway processor architecture
First Claim
1. A network data processor system comprising a plurality of data packet processors coupled through a data switch fabric between network connection processors, wherein said data packet processors perform a data processing function over data contained within predetermined data packets, wherein said network connection processors include network interfaces coupleable to external data transmission networks and wherein said network connection processors provide for the selective routing of said predetermined data packets through said data switch fabric to load balance the processing of said predetermined data packets by said plurality of data packet processors.
2 Assignments
0 Petitions
Accused Products
Abstract
A network data processor system includes a plurality of data packet processors coupled through a data switch fabric between network connection processors. The data packet processors each include a data processing engine configured to perform a data processing function over data contained within predetermined data packets. The network connection processors include network interfaces coupleable to external data transmission networks and provide for the selective routing of said predetermined data packets through said data switch fabric to load balance the processing of the predetermined data packets by the plurality of data packet processors. A network control processor is provided to manage the other processors connected to the data switch fabric and to handle predetermined network connection processes. In the preferred embodiments of the present invention the data processing engine is preferably configured to perform hardware encryption and decryption algorithms called for by the IPsec protocol.
-
Citations
27 Claims
-
1. A network data processor system comprising a plurality of data packet processors coupled through a data switch fabric between network connection processors, wherein said data packet processors perform a data processing function over data contained within predetermined data packets, wherein said network connection processors include network interfaces coupleable to external data transmission networks and wherein said network connection processors provide for the selective routing of said predetermined data packets through said data switch fabric to load balance the processing of said predetermined data packets by said plurality of data packet processors.
-
2. A network data packet processor system providing for the transfer of packets between first and second networks, said network data packet processor system comprising:
-
a) a data packet switch including pluralities of first and second data ports coupled together to provide for the transfer of network data packets between respective first and second data ports;
b) a plurality of data protocol processors coupled to a like plurality of said first data ports of said data packet switch, each data protocol processor being coupled to a respective first data port through a bidirectional packet transfer interface and including a protocol processing engine providing for the selective conversion of data contained within a predetermined network data packet; and
b) input and output data transfer processors coupled to respective second data ports of said data packet switch, wherein said input data transfer processor selectively routes network data packets from said first network to said plurality of data protocol processors and said output data transfer processor routes network data packets from said plurality of protocol processors to said second network, and wherein said input data transfer processor balances the load of individual network data packets routed to said plurality of data protocol processors.
-
-
3. A network gateway processor comprising:
-
a) a switch providing data routing between input, output, and processing ports;
b) an array of protocol processors coupled to respective processing ports, each said protocol processor providing for the conversion of network data packets from a first form to a second form;
c) an input processor coupled between a first network and said input port, said input processor providing for the load balanced allocation of network data packets received from said first network to said array of protocol processors; and
d) an output processor coupled between a second network and said output port, wherein said array of protocol processors provide network data packets of said second form to said output processor for transfer to said second network. - View Dependent Claims (4, 5, 6, 7)
-
-
8. A method of operating a network gateway coupleable between first and second networks to implement a compute intensive data processing function on network data packets transferred between said first and second networks, said method comprising:
-
a) receiving, by a first processor coupleable to said first network, network data packets;
b) selecting, from said received network data packets, predetermined network packets for routing through said network gateway;
c) selectively distributing said predetermined network data packets to a plurality of second processors so as to enable utilization of the aggregate performance of said second processors in performing said compute intensive data processing function;
d) processing, asynchronously, said predetermined network data packets as distributed by said plurality of second processors to convert each of said predetermined network data packets in accordance with said compute intensive data processing function to provide converted network data packets;
e) collecting, by a third processor coupleable to said second network, said converted network data packets; and
f) transferring said converted network data packets to said second network. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of performing compute intensive protocol transformation functions on network data, said method comprising the steps of:
-
a) receiving, through a first network connection, select network data packets for protocol transformation;
b) distributing said select network data packets to a plurality of protocol transformation processors;
c) converting, by said plurality of protocol transformation processors, said select network data packets in accordance with said protocol transformation to provide converted network data packets;
d) collecting said converted network data packets from said plurality of protocol transformation processors; and
e) sending said converted network data packets through a second network connection. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A network gateway supporting a compute intensive protocol processing function for transferred data packets, said network gateway comprising:
-
a) a switch fabric implementing programmable channel transfer of data between first, second, and third fabric interface ports;
b) an ingress processor coupleable to a first network and coupled to said first fabric interface port to transfer data packets defined in accordance with a first protocol format from said first network to said switch fabric;
c) an egress processor coupleable to a second network and coupled to said second fabric interface port to transfer data packets defined in accordance with a second protocol format from said switch fabric to said second network; and
d) a parallel array of protocol processors coupled to respective instances of said third interface port of said switch fabric to receive data packets from said ingress processor and send data packets to said egress processor, said parallel array of protocol processors implementing a compute intensive network packet transformation function between said first and second protocol formats for data packets passed through said parallel array of protocol processors;
whereby the aggregate throughput performance of said parallel array of protocol processors directly supports the throughput performance of said ingress processor. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
Specification