Claims Analysis
Total Claims: 27
Claim 1
Independent Claim
219 words
A network switch for network communications, said network switch comprising: a first data port interface, said first data port interface supporting a plurality of data ports transmitting and receiving data at a first data rate; a second data port interface, said second data port interface supporting a plurality of data ports transmitting and receiving data at a second data rate; a CPU interface, said CPU interface configured to communicate with a CPU; an internal memory, said internal memory communicating with said first data port interface and said second data port interface; a memory management unit, said memory management unit including an external memory interface for communicating data from at least one of said first data port interface and said second data port interface and an external memory; a communication channel, said communication channel for communicating data and messaging information between said first data port interface, said second data port interface, the CPU interface, said internal memory, and said memory management unit; wherein one data port interface of said first data port interface and said second data port interface comprises a fast filtering processor, said fast filtering processor configured to classify packets coming into the one data port interface based upon any bit of a selected field in the packet, and taking selective filter action based upon a filtering result.
Claim 2
Dependent Claim
219 words
A network switch for network communications, said network switch comprising: a first data port interface, said first data port interface supporting a plurality of data ports transmitting and receiving data at a first data rate; a second data port interface, said second data port interface supporting a plurality of data ports transmitting and receiving data at a second data rate; a CPU interface, said CPU interface configured to communicate with a CPU; an internal memory, said internal memory communicating with said first data port interface and said second data port interface; a memory management unit, said memory management unit including an external memory interface for communicating data from at least one of said first data port interface and said second data port interface and an external memory; a communication channel, said communication channel for communicating data and messaging information between said first data port interface, said second data port interface, the CPU interface, said internal memory, and said memory management unit; wherein one data port interface of said first data port interface and said second data port interface comprises a fast filtering processor, said fast filtering processor configured to classify packets coming into the one data port interface based upon any bit of a selected field in the packet, and taking selective filter action based upon a filtering result.
Claim 3
Dependent Claim
25 words
A network switch as recited in claim 1 , wherein said fast filtering processor is programmable by inputs from the CPU through the CPU interface.
Claim 4
Dependent Claim
70 words
A network switch as recited in claim 1 , wherein one data port interface includes a rules table interface and a rules table thereupon, and wherein said fast filtering processor applies a filter mask to a packet incoming thereto, providing a filter result, and wherein said filter result is applied to predetermined rules in said rules table, and wherein action is taken on the packet based upon the filtering result.
Claim 5
Dependent Claim
42 words
A network switch as recited in claim 3 , wherein said first data port interface, second data port interface, CPU interface, internal memory, memory management unit, communications channel, fast filtering processor, and said rules table are implemented on a common semiconductor substrate.
Claim 6
Dependent Claim
49 words
A network switch as recited in claim 4 , wherein said fast filtering processor includes a set of exclusive filter masks and inclusive filter masks therein, wherein said exclusive filter masks are configured to exclude all packets except packets with which there is a match with the filter result.
Claim 7
Dependent Claim
33 words
A network switch as recited in claim 4 , wherein said fast filtering processor includes filter masks which filter ingress port fields, egress port fields, and filter select fields of an incoming packet.
Claim 8
Dependent Claim
42 words
A network switch as recited in claim 6 , wherein the rules table includes filter value fields for filter result look-up, ingress port fields, egress port fields, filter select fields, action bit fields, priority bit fields, type-of-services fields, and output port fields.
Claim 9
Dependent Claim
41 words
A network switch as recited in claim 1 , said fast filtering processor comprising a priority assignment unit for assigning a weighted priority value to untagged packets entering one of the first data port interface and the second data port interface.
Claim 10
Dependent Claim
29 words
A network switch as recited in claim 1 , wherein the fast filtering processor filters the packets independent of the CPU interface, and therefore without communicating with the CPU.
Claim 11
Dependent Claim
34 words
A network switch as recited in claim 1 , wherein the fast filtering processor includes a tagging unit which applies an IEEE defined tag to incoming packets, said IEEE defined tag identifying packet parameters.
Claim 12
Dependent Claim
15 words
A network switch as recited in claim 10 , wherein said packet parameters include class-of-service.
Claim 13
Independent Claim
158 words
A method of handling data packets in a network switch, said method comprising: placing incoming packets into an input queue; applying the input data packets to an address resolution logic engine; performing a lookup to determine whether certain packet fields are stored in a lookup table; filtering the incoming packet through a fast filtering processor in order to determine what specific actions should be taken to modify the packet for further handling, said filtering comprising classifying the incoming packet based upon any bit of a selected field in the incoming packet; discarding, forwarding, or modifying the packet based upon the filtering; and if the packet is to be forwarded, applying a control message to the packet in order to control further packet forwarding, wherein the packet data is placed on a first communication channel, and wherein the control message is placed on a second communication channel, said first and second channels being separate but synchronized with each other.
Claim 14
Independent Claim
158 words
A method of handling data packets in a network switch, said method comprising: placing incoming packets into an input queue; applying the input data packets to an address resolution logic engine; performing a lookup to determine whether certain packet fields are stored in a lookup table; filtering the incoming packet through a fast filtering processor in order to determine what specific actions should be taken to modify the packet for further handling, said filtering comprising classifying the incoming packet based upon any bit of a selected field in the incoming packet; discarding, forwarding, or modifying the packet based upon the filtering; and if the packet is to be forwarded, applying a control message to the packet in order to control further packet forwarding, wherein the packet data is placed on a first communication channel, and wherein the control message is placed on a second communication channel, said first and second channels being separate but synchronized with each other.
Claim 15
Dependent Claim
26 words
A method as recited in claim 12 , wherein filtering the incoming packet includes a step of tagging the incoming packet with an IEEE defined tag.
Claim 16
Dependent Claim
19 words
A method as recited in claim 13 , wherein said IEEE defined tag defines packet parameters, including class-of-service priority.
Claim 17
Independent Claim
200 words
A method of creating a packet handling filter for a network switch, said method comprising: providing a processor for processing and entering filter parameters; providing a rules table to implement a filter mask; identifying protocol fields of interest for selected fields of a selected packet type, said protocol fields of interest comprising any bit in a packet of the selected packet type; determining filter conditions for the selected packet type; providing a series of digital values representing desired filter conditions for the selected packet type, thereby forming the filter mask, said filter mask comprising a bit map for logical comparison with any selected bit of an incoming data packet; determining whether the filter will be an inclusive or exclusive filter, and configuring filtering actions based thereupon; determining whether said filter will be applied to incoming data packets or outgoing data packets; if said filter is for incoming data packets, configuring said filter mask to be an ingress port filter mask, and if said filter is for outgoing packets, configuring said filter mask to be an egress filter mask; constructing rules table entries consistent with parameters of the configured filter mask; and inserting the rules table entries into the rules table.
Claim 18
Independent Claim
200 words
A method of creating a packet handling filter for a network switch, said method comprising: providing a processor for processing and entering filter parameters; providing a rules table to implement a filter mask; identifying protocol fields of interest for selected fields of a selected packet type, said protocol fields of interest comprising any bit in a packet of the selected packet type; determining filter conditions for the selected packet type; providing a series of digital values representing desired filter conditions for the selected packet type, thereby forming the filter mask, said filter mask comprising a bit map for logical comparison with any selected bit of an incoming data packet; determining whether the filter will be an inclusive or exclusive filter, and configuring filtering actions based thereupon; determining whether said filter will be applied to incoming data packets or outgoing data packets; if said filter is for incoming data packets, configuring said filter mask to be an ingress port filter mask, and if said filter is for outgoing packets, configuring said filter mask to be an egress filter mask; constructing rules table entries consistent with parameters of the configured filter mask; and inserting the rules table entries into the rules table.
Claim 19
Dependent Claim
24 words
A method as recited in claim 12 , wherein filtering the incoming packet includes filtering the packet independent of control from a remote processor.
Claim 20
Dependent Claim
31 words
A network switch as recited in claim 1 , wherein said fast filtering processor is configured to classify the packet based upon any bit in a payload field of the packet.
Claim 21
Dependent Claim
27 words
A method as recited in claim 12 , wherein said filtering step comprises classifying the packet based upon any bit of a payload field in the packet.
Claim 22
Dependent Claim
23 words
A method as recited in claim 15 , wherein said protocol fields of interest comprise a field in a payload of the packet.
Claim 23
Dependent Claim
30 words
A network switch as recited in claim 1 , wherein the FFP is configured to simultaneously perform multiple classifications based upon multiple bits of multiple selected fields in the packet.
Claim 24
Dependent Claim
29 words
A method as recited in claim 12 , wherein said filtering step comprises multiple classifications of the packet based upon multiple bits of multiple selected fields in the packet.
Claim 25
Dependent Claim
21 words
A method as recited in claim 15 , wherein multiple packet handling filters are created for application to a single packet.
Claim 26
Dependent Claim
45 words
A network switch as recited in claim 1 , further comprising an address lookup unit connected to at least one of said first data port interface and said second data port interface, said address unit containing address entries and performing address lookup on said packets.
Claim 27
Dependent Claim
43 words
A method as recited in claim 12 , further comprising a step of performing an address lookup on the incoming packet to determine at least one of a source address and destination address, and to store addressing information associated with said incoming packet.