Packet processor with programmable application logic
Abstract
A data communication switch includes a backplane and multiple packet switching controllers. At least one packet switching controller includes programmable application logic for generating application data for a packet. The application logic is contained in key builder and lookup table of an application engine. The key builder contains one or more schema programs for generating keys and key controls using classification information and header data of inbound packets. The schema programs can be loaded onto the key builder during fabrication of the packet switching controller or in field. The keys and key controls are used to lookup the application data from the lookup table.
Claims
exact text as granted — not AI-modifiedI claim:
1 . A packet processing element for processing a packet, the packet processing element having a plurality of schemata programmed thereon, wherein classification information for the packet is used to select at least one schema, and wherein the selected schema is used to produce application data for the packet.
2 . The packet processing element according to claim 1 wherein at least one schema includes one or more key portions and one or more application data portions, and the classification information for the packet is applied to at least one key portion of a schema to produce application data for the packet from at least one application data portion of the schema.
3 . The packet processing element according to claim 2 wherein the key portions include at least one data selected from group consisting of source data and destination data.
4 . The packet processing element according to claim 2 wherein the application data portions include at least one data selected from group consisting of accounting data, policing data and routing data.
5 . The packet processing element according to claim 2 wherein the classification information includes one or more classification data portions, and wherein the classification data portions are compared against the key portions to select at least one schema for the packet.
6 . The packet processing element according to claim 1 wherein at least one schema includes one or more key portions, one or more key control portions and one or more application data portions, wherein the classification information for the packet is applied to at least one key portion of a schema in conjunction with at least one key control portion of the schema to produce application data for the packet from at least one application data portion of the schema.
7 . The packet processing element according to claim 1 wherein the plurality of schemata include a MAC bridging schema.
8 . The packet processing element according to claim 1 wherein the plurality of schemata include an IP routing schema.
9 . The packet processing element according to claim 1 wherein the plurality of schemata include an MPLS schema.
10 . A method of producing application data for a packet using a packet processing element having a plurality of schemata programmed thereon, the method comprising the steps of:
selecting at least one schema using classification information for the packet; and producing the application data for the packet using the selected schema.
11 . The method of producing application data according to claim 10 wherein at least one schema includes one or more key portions and one or more application data portions, wherein the step of producing the application data comprises the step of applying the classification information for the packet to at least one key portion of schema to produce application data for the packet from at least one application data portion of the schema.
12 . The method of producing application data according to claim 11 wherein the key portions include at least one data selected from group consisting of source data and destination data.
13 . The method of producing application data according to claim 11 wherein the application data portions include at least one data selected from group consisting of accounting data, policing data and routing data.
14 . The method of producing application data according to claim 11 wherein the classification information includes one or more classification data portions, and wherein the step of applying the classification information comprises the step of comparing the classification data portions against the key portions to select at least one schema for the packet.
15 . The method of producing application data according to claim 10 wherein at least one schema includes one or more key portions, one or more key control portions and one or more application data portions, wherein the step of producing the application data comprises the step of applying the classification information for the packet to at least one key portion of a schema in conjunction with at least one key control portion of the schema to produce application data for the packet from at least one application data portion of the schema.
16 . The method of producing application data according to claim 10 wherein the plurality of schemata include a MAC bridging schema.
17 . The method of producing application data according to claim 10 wherein the plurality of schemata include an IP routing schema.
18 . The method of producing application data according to claim 10 wherein the plurality of schemata include an MPLS schema.
19 . A packet switching controller comprising a processing engine, the processing engine comprising:
an element for building a key using classification information for a packet; and a lookup table containing one or more schemata; wherein the key is used to select one of the schemata for the packet, and the selected schema provides application data for the packet.
20 . The packet switching controller of claim 19 wherein at least one schema includes a key portion and an application data portion, and the key is compared against the key portion to lookup the application data portion.
21 . The packet switching controller of claim 19 wherein the key portion includes at least one data selected from group consisting of source data and destination data, and the application data portion includes at least one data selected from group consisting of accounting data, policing data and routing data.
22 . The packet switching controller of claim 20 wherein at least one schema includes a key control portion, and the key control portion is used in conjunction with the key to lookup the application data portion.
23 . The packet switching controller of claim 19 wherein the schemata include at least one schema selected from group consisting of a macro access control (MAC) bridging schema, an Internet Protocol (IP) routing schema and a multi-protocol label switching (MPLS) schema.
24 . A method of producing application data for a packet, the method comprising the steps of:
building a key using classification information for the packet; selecting a schema for the packet from a lookup table containing one or more schemata; and reading the application data from the selected schema.
25 . The method of producing application data of claim 24 wherein at least one schema includes a key portion and an application data portion, and the key is compared against the key portion to lookup the application data portion.
26 . The method of producing application data of claim 25 wherein the key portion includes at least one data selected from group consisting of source data and destination data, and the application data portion includes at least one data selected from group consisting of accounting data, policing data and routing data.
27 . The method of producing application data of claim 25 wherein at least one schema includes a key control portion, and the key control portion is used in conjunction with the key to lookup the application data portion.
28 . The method of producing application data of claim 24 wherein the schemata include at least one schema selected from group consisting of a macro access control (MAC) bridging schema, an Internet Protocol (IP) routing schema and a multi-protocol label switching (MPLS) schema.
29 . A data communication switch having a backplane and a plurality of packet switching controllers interconnected over the backplane, at least one packet switching controller comprising:
an application engine having a plurality of schemata programmed thereon, wherein classification information for the packet is used to select at least one schema, and wherein the selected schema is used to produce application data for the packet.
30 . The data communication switch of claim 29 wherein at least one schema includes one or more key portions and one or more application data portions, and the classification information for the packet is applied to at least one key portion of a schema to produce application data for the packet from at least one application data portion of the schema.Join the waitlist — get patent alerts
Track US2001053150A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.