Claims
- 1. A network switch, said network switch comprising:
at least one data port interface for receiving data; at least one link interface configured to transmit said data between said network switch and other network switches; and a data processor, connected to said at least one data port interface and said at least one link interface, said data processor including,
a segmented ring configured to connect to a plurality of dedicated modules designed to process said data; a programmable ring dispatcher for dispatching at least a portion of said data along said segmented ring to at least one of said plurality of dedicated modules; and a command processor for processing commands received from said dedicated modules; wherein said programmable ring dispatcher determines a first dedicated module of said plurality of dedicated modules to receive said portion of said data and said first dedicated module determines a next destination for said portion of said data selected from said plurality of dedicated modules and said command processor.
- 2. A network switch according to claim 1 wherein said at least one data port interface is configured to receive data which includes a packet having headers, said portion of said data comprises a parsed field derived from said headers.
- 3. A network switch according to claim 2 wherein said programmable ring dispatcher includes a set of rules for determining which of said plurality of dedicated modules receives said parsed field based on values contained in said parsed field and dispatches said parsed field to said determined dedicated module.
- 4. A network switch according to claim 1 wherein said segmented ring is configured to connect to a variable plurality of dedicated modules which varies in number and type based on the networking environment of said network switch.
- 5. A method of processing data by a network switch, said method comprising the steps of:
receiving data by said network switch; parsing said data to obtain a portion of said data; first dispatching at least said portion of said data, along a segmented ring having a plurality of dedicated modules designed to process said data, to a first dedicated module of said plurality of dedicated modules based on content of said portion of said data; processing said portion of said data by said first dedicated module; second dispatching at least said portion of said data along said segmented ring by said first dedicated module to additional dedicated modules of said plurality of dedicated modules or to a command processor of said network switch; and forwarding data from said network switch based on processing performed by at least one of said dedicated modules.
- 6. A method of processing data by a network switch according to claim 5 wherein said step of parsing said data to obtain a portion of said data comprises parsing packets having headers to obtain a parsed field derived from said headers.
- 7. A method of processing data by a network switch according to claim 6 wherein said step of first dispatching at least a portion of said data is performed according to a set of rules for determining which of said plurality of dedicated modules receives said parsed field based on values contained in said parsed field.
- 8. A method of processing data by a network switch according to claim 5 wherein said step of first dispatching at least a portion of said data comprises dispatching to a specified plurality of dedicated modules, which is varied in number and type, based on the networking environment of said network switch.
REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. provisional patent application Ser. No. 60/185,271, filed on Feb. 28, 2000. The contents of this patent application is hereby incorporated by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60185271 |
Feb 2000 |
US |