Pipelined evaluations for algorithmic forwarding route lookup

    公开(公告)号:US10135734B1

    公开(公告)日:2018-11-20

    申请号:US14981664

    申请日:2015-12-28

    Abstract: Packet processors or other devices with packet processing pipelines may implement pipelined evaluations of algorithmic forwarding route lookups. As network packets are received, a destination address for the network packets may be divided into different possible prefix lengths and corresponding entries in a routing table for the different possible prefix lengths may be determined according to a hash scheme for the routing table. The entry values may be read from the routing table and evaluated at subsequent stages to identify the entry with a longest prefix match with respect to the destination address for the network packet. The routing table may include entries for different types of network packets and may be configured to include virtual routing and forwarding for network packets.

    Pipelined evaluations for algorithmic forwarding route lookup

    公开(公告)号:US10764181B2

    公开(公告)日:2020-09-01

    申请号:US16194085

    申请日:2018-11-16

    Abstract: Packet processors or other devices with packet processing pipelines may implement pipelined evaluations of algorithmic forwarding route lookups. As network packets are received, a destination address for the network packets may be divided into different possible prefix lengths and corresponding entries in a routing table for the different possible prefix lengths may be determined according to a hash scheme for the routing table. The entry values may be read from the routing table and evaluated at subsequent stages to identify the entry with a longest prefix match with respect to the destination address for the network packet. The routing table may include entries for different types of network packets and may be configured to include virtual routing and forwarding for network packets.

    Combined cache-overflow memory structure

    公开(公告)号:US10397362B1

    公开(公告)日:2019-08-27

    申请号:US14749168

    申请日:2015-06-24

    Abstract: A cache-and-overflow memory handles both cache and overflow data in a single hardware structure so as to increase speed and reduce supporting hardware structure needed to implement an effective memory system. A single hash value can be used to access either a cache data value or an overflow data value stored in the combined cache-and-overflow memory. If there are a small number of overflow entries, the combined cache-and-overflow memory provides more availability for cache entries. However, overflow entries are provided priority over cache entries. As a result, the combined cache-and-overflow memory dynamically reallocates its space to efficiently store as much as cache as possible until space is needed for overflow data. At that time, the cache data is evicted in a priority order to make space for the overflow data.

    Time-out tracking for high-throughput packet transmission

    公开(公告)号:US10333813B1

    公开(公告)日:2019-06-25

    申请号:US14750590

    申请日:2015-06-25

    Abstract: A timer scheduler is used to track timeout values for network connections. A single hardware timer generates timeout values that can be tracked per connection in a linked list that is processed at set time intervals. All tracked connections can have a future timeout scheduled. Future timeout values can be stored in both a linked list and a connection state table that cross-reference each other. The linked list is traversed at predetermined intervals to determine which entries have timed out. For each entry that timed out, a second check is made against a timeout value in the connection state table. If timeout value within the connection state table indicates that a timeout occurred, then the network connection is terminated.

    INCREASING ENTROPY ACROSS ROUTING TABLE SEGMENTS

    公开(公告)号:US20180270153A1

    公开(公告)日:2018-09-20

    申请号:US15983856

    申请日:2018-05-18

    CPC classification number: H04L45/7453

    Abstract: Entropy in routing tables may be increase to perform packet forwarding. Hash tables that store forwarding routes may be divided into multiple hash table segments. Forwarding routes may be stored across the hash table segments in different route segments. When looking up route segments to identify a forwarding route for a destination address of a network packet, digest values generated for previous route segments may be used to determine hash key values to identify hash table entries in a different hash table segment. The forwarding route may be identified according to the hash table entries located based on the digest values for previous route segments.

    Accessing a memory location using a two-stage hash scheme

    公开(公告)号:US10049078B1

    公开(公告)日:2018-08-14

    申请号:US14750015

    申请日:2015-06-25

    Abstract: A method for accessing a memory location may include receiving packet data associated with a network connection. A first hash value and a second hash value are generated using the packet data. The first hash value identifies a hash bucket with a plurality of connection state entries. An index entry of the hash bucket is accessed using the first hash value. The index entry includes a plurality of hash keys for the corresponding plurality of connection state entries. The second hash value is matched with one of the plurality of hash keys in the index entry to obtain an offset. One of the plurality of connection state entries for the network connection is identified based on the first hash value and the offset. The identified connection state entry is accessed.

Patent Agency Ranking