Forwarding packets using next-hop information
AssigneeJuniper Networks, Inc.
InventorsNitin Kumar, Fritz Budiyanto
Life of this patent
Estimating the term…
Abstract
A method may include receiving a packet associated with a flow of packets, the packet including a destination address; selecting one of a plurality of memory banks, the selected memory bank being associated with the flow of packets, wherein each of the plurality of memory banks stores the same next-hop information for forwarding the packet to the destination address; accessing, in the selected memory bank, the next-hop information for forwarding the packet to the destination address; and forwarding the packet to the destination address based on the next-hop information.
Claims17
A method comprising:
- receiving a packet associated with a flow of packets, the packet including a destination address;
- determining an algorithm associated with the destination address;
- selecting one of a plurality of memory banks based on a value indicative of the flow of the packet and a result of an execution of the algorithm, where each of the plurality of memory banks stores the same next-hop information for forwarding the packet to the destination address;
- accessing, in the selected memory bank, the next-hop information for forwarding the packet to the destination address;
- forwarding the packet to the destination address based on the next-hop information;
- and
- selecting the same memory bank for another packet associated with the same value indicative of the flow of the packet.
A network device comprising:
- a memory to store a router table;
- a receiving port to receive a packet including a destination address;
- a plurality of memory banks, where each of the plurality of memory banks includes the same information about a forwarding port for forwarding the packet to the destination address;
- processing logic to:
- determine an algorithm associated with the destination address,
- select one of the plurality of memory banks of the memory based on a value indicative of a flow of the packet and a result of an execution of the algorithm, where the processing logic is to select the same memory bank for the same value indicative of the flow of the packet, and
- access, in the selected memory bank, the information about the forwarding port.
An apparatus comprising:
- means for receiving a packet associated with a flow of packets, the packet including a destination address;
- means for determining an algorithm associated with the destination address;
- means for selecting one of a plurality of memory banks based on a value indicative of the flow of the packet and a result of an execution of the algorithm, where each of the plurality of memory banks stores the same port information for forwarding the packet to the destination address;
- means for accessing, in the selected memory bank, the port information for forwarding the packet to the destination address;
- means for forwarding the packet to the destination address based on the port information;
- and
- means for selecting the same memory bank for another packet associated with the flow of packets.
A method comprising:
- receiving a first packet associated with a flow of packets, the first packet including a destination address;
- determining an algorithm associated with the destination address;
- accessing in a memory bank, next-hop information for forwarding the first packet to the destination address, where the memory bank is associated with a value indicative of the flow of packets and a result of an execution of the algorithm;
- forwarding the first packet to the destination address based on the next-hop information;
- receiving a second packet associated with the flow of packets, the second packet including the destination address;
- accessing, in the same memory bank, next-hop information for forwarding the second packet to the destination address,
- where the first and second memory banks each store the same next-hop information for forwarding the packet to the destination address, and
- forwarding the second packet to the destination address based on the next-hop information.
Dependencies are inferred from the claim text.