Quality of service control mechanism and apparatus
Assignee3Com Corporation
InventorsThomas A. Lemaire, Paul J. Giacobbe, John A. Flanders, David Lipschutz, Leonard Schwartz, David C. Ready, William D. Townsend
Life of this patent
Estimating the term…
Abstract
Quality of Service (“QoS”) variables for predetermined protocol Type data units are stored in a cache memory. For data units that are associated with a flow, thirteen bytes selected out of the Internet Protocol (“IP”) header are employed as at least a portion of a key to perform a cache lookup to obtain at least one Quality of Service variable from the cache. Both routing and QoS information may be stored in the cache for retrieval upon a single lookup operation.
Claims24
A method for assigning at least one Quality of Service variable to an Ethernet frame in a telecommunications device, comprising the steps of:
- receiving said Ethernet frame at a network interface module of said device configured for Ethernet type traffic, said received Ethernet frame having a header;
- determining if said received Ethernet frame includes both positively identified source and destination addresses, wherein said determining if said received Ethernet frame includes both positively identified source and destination addresses includes comparing a unique identifier with a first portion of a destination address selected from the header, wherein said unique identifier is associated with the bridge/router, and comparing a second portion of the destination address with a predetermined range of values in the event that the unique identifier matches the first portion of the destination address;
- determining, in the event that the second portion of the destination address is within the predetermined range of values, whether a protocol type of said received Ethernet frame is an IP protocol type, wherein said determining whether said protocol type of said Ethernet frame is an IP protocol type includes comparing the protocol type with at least one predetermined value;
- associating said received Ethernet frame with a flow in the event said received Ethernet frame includes both positively identified source and destination addresses;
- and
- in the event said protocol type of said received Ethernet frame is an IP protocol type and said received Ethernet frame is associated with a flow, indexing into a memory within said device using selected portions of said header to obtain, via a single lookup, both said at least one quality of service variable and routing information associated with said received Ethernet frame.
Apparatus for determining a Quality of Service variable to be employed by a telecommunications device when processing a received Ethernet frame, comprising:
- a network interface module configured for Ethernet type traffic, said network interface module operative to receive said Ethernet frame, and wherein said Ethernet frame includes a header;
- a memory in which at least one Quality of Service variable is stored together with routing information;
- a filter operative to determine whether said received Ethernet frame is associated with a flow by ascertaining whether a protocol type of said received Ethernet frame is an IP protocol type and whether said header portion of the received Ethernet frame indicates a source address and a destination address that are both positively identified, wherein said filter is operative to ascertain whether said protocol type of said received Ethernet frame is an IP protocol type by
- comparing the protocol type field of the received Ethernet frame with at least one predetermined value to determine said protocol type of said received Ethernet frame, and
- wherein said filter is operative to ascertain whether said source address and said destination address are positively identified by
- comparing a unique identifier associated with the bridge/router with a first portion of the destination address, and
- comparing a second portion of the destination address with a predetermined range of values if the unique identifier matches the first portion of the destination address;
- and
- processor circuitry operative to select a flow identifier including at least a portion of said header to obtain, via a single lookup, both said at least one Quality of Service variable and routing information associated with said received Ethernet frame.
A method for assigning at least one Quality of Service variable to an Ethernet frame in a telecommunications device associated with a cache memory in which at least one Quality of Service variable is maintained, the cache memory further maintaining routing information, comprising the steps of:
- receiving said Ethernet frame at a network interface module of said device configured for Ethernet type traffic, said received Ethernet frame having a header;
- determining whether the received Ethernet frame is associated with a flow by determining whether a protocol type of said received Ethernet frame is an IP protocol type and whether a header portion of the data unit indicates both a positively identified source address and a positively identified destination address, wherein said determining if said received Ethernet frame includes both a positively identified source address and a positively identified destination addresses includes
- comparing a unique identifier with a first portion of a destination address selected from the header, wherein said unique identifier is associated with the bridge/router, and
- comparing a second portion of the destination address with a predetermined range of values in the event that the unique identifier matches the first portion of the destination address,
- and wherein said determining whether said protocol type of said Ethernet frame is an IP protocol type includes comparing the protocol type with at least one predetermined value;
- and
- in the event said received Ethernet frame is determined to be associated with a flow, indexing into said cache memory to obtain, via a single lookup, the at least one Quality of Service variable and routing information for the received Ethernet frame.
Apparatus for determining a Quality of Service variable to be employed by a telecommunications device when processing a received Ethernet frame, comprising:
- a network interface module configured for Ethernet type traffic, said network interface module operative to received said Ethernet frame, and wherein said received Ethernet frame includes a header;
- a cache memory in which at least one Quality of Service variable is stored, the cache memory further storing routing information;
- a filter operative to determine whether the data unit is associated with a flow by ascertaining whether a protocol type of said received Ethernet frame is an IP protocol type and whether a header portion of the data unit indicates both a positively identified source address and a positively identified destination address, wherein said filter is operative to ascertain whether said protocol type of said received Ethernet frame is an IP protocol type by
- comparing the protocol type field of the received Ethernet frame with at least one predetermined value to determine said protocol type of said received Ethernet frame, and
- wherein said filter is operative to ascertain whether said source address and said destination address are positively identified by
- comparing a unique identifier associated with the bridge/router with a first portion of the destination address, and
- comparing a second portion of the destination address with a predetermined range of values if the unique identifier matches the first portion of the destination address;
- and
- processor circuitry operative to perform a single look-up operation on said cache memory based on selected portions of said header to obtain both said at least one Quality of Service variable and routing information from the cache memory for application to the received Ethernet frame in the event that said received Ethernet frame is determined to be associated with a flow.
Dependencies are inferred from the claim text.