Method for facilitating forwarding of data packets through a node of a data transfer network using multiple types of forwarding tables
First Claim
1. A packet processing method for a node of a data transfer network, said method comprising:
- receiving a data packet at a node of the data transfer network;
selecting a forwarding table from a plurality of types of forwarding tables, said selecting being based on an attribute associated with the data packet and including determining whether a value of the attribute falls within a defined range of attribute values, the defined range of attribute values being defined by at least one changeable value-range parameter, and applying a transformation to the value of the attribute, the transformation mapping a plurality of values of the attribute to a table index value, wherein the plurality of values of the attribute are assigned to a same port and wherein the transformation is defined by a changeable value-transformation parameter;
mapping the data packet to an output port of the node, said mapping utilizing the forwarding table selected by said selecting; and
wherein the plurality of types of forwarding tables comprises the linear forwarding table and the random forwarding table, and wherein the linear forwarding table is located in a memory space by a linear-forwarding-table base address and a linear-forwarding-table mask, and a remaining portion of the memory space is assigned to the random forwarding table.
3 Assignments
0 Petitions
Accused Products
Abstract
A method is provided for reducing size of memory required for a switching node'"'"'s forwarding table by employing forwarding tables of different types to map received data packets addressed to downstream nodes and upstream nodes to appropriate output ports of the switching node. The method includes receiving a data packet at a data transfer node of a network and selecting a forwarding table from multiple types of forwarding tables accessible by the node based on an attribute associated with the received data packet, and mapping the data packet to an output port of the node utilizing the forwarding table selected from the multiple types of forwarding tables based on the attribute associated with the packet.
53 Citations
8 Claims
-
1. A packet processing method for a node of a data transfer network, said method comprising:
-
receiving a data packet at a node of the data transfer network; selecting a forwarding table from a plurality of types of forwarding tables, said selecting being based on an attribute associated with the data packet and including determining whether a value of the attribute falls within a defined range of attribute values, the defined range of attribute values being defined by at least one changeable value-range parameter, and applying a transformation to the value of the attribute, the transformation mapping a plurality of values of the attribute to a table index value, wherein the plurality of values of the attribute are assigned to a same port and wherein the transformation is defined by a changeable value-transformation parameter; mapping the data packet to an output port of the node, said mapping utilizing the forwarding table selected by said selecting; and wherein the plurality of types of forwarding tables comprises the linear forwarding table and the random forwarding table, and wherein the linear forwarding table is located in a memory space by a linear-forwarding-table base address and a linear-forwarding-table mask, and a remaining portion of the memory space is assigned to the random forwarding table. - View Dependent Claims (2, 3)
-
-
4. A method of configuring a node of a data transfer network comprising:
-
providing a plurality of types of forwarding tables, the forwarding tables being used in mapping received data packets to output ports of the node; dynamically selecting, by selection logic, a forwarding table from the plurality of types of forwarding tables for a data packet received by the node, the selection logic utilizing an attribute associated with the data packet in the selecting; mapping, by mapping logic, the received data packet to an output port of the node, the mapping utilizing the forwarding table dynamically selected by the selection logic for the received data packet; wherein the plurality of types of forwarding tables include a linear forwarding table and the mapping logic further comprises attribute-transformation logic, the attribute-transformation logic mapping a plurality of attribute values of received data packets to a linear forwarding table index of the linear forwarding table, thereby reducing required entries in the linear forwarding table; and wherein the plurality of types of forwarding tables comprises the linear forwarding table and the random forwarding table, and wherein the linear forwarding table is located in a memory space by a linear-forwarding-table base address and a linear-forwarding-table mask, and a remaining portion of the memory space is assigned to the random forwarding table. - View Dependent Claims (5, 6, 7, 8)
-
Specification