Hash output manipulation
    61.
    发明授权

    公开(公告)号:US10795873B1

    公开(公告)日:2020-10-06

    申请号:US15359616

    申请日:2016-11-22

    Applicant: Innovium, Inc.

    Abstract: Certain hash-based operations in network devices and other devices, such as mapping and/or lookup operations, are improved by manipulating a hash key prior to executing a hash function on the hash key and/or by manipulating outputs of a hash function. A device may be configured to manipulate hash keys and/or outputs using manipulation logic based on one or more predefined manipulation values. A similar hash-based operation may be performed by multiple devices within a network of computing devices. Different devices may utilize different predefined manipulation values for their respective implementations of the manipulation logic. For instance, each device may assign itself a random mask value for key transformation logic as part of an initialization process when the device powers up and/or each time the device reboots. In an embodiment, described techniques may increase the entropy of hashing function outputs in certain contexts, thereby increasing the effectiveness of certain hashing functions.

    Traffic manager resource sharing
    62.
    发明授权

    公开(公告)号:US10742558B1

    公开(公告)日:2020-08-11

    申请号:US16057354

    申请日:2018-08-07

    Applicant: Innovium, Inc.

    Abstract: A traffic manager is shared amongst two or more egress blocks of a network device, thereby allowing traffic management resources to be shared between the egress blocks. Among other aspects, this may reduce power demands and allow a larger amount of buffer memory to be available to a given egress block that may be experiencing high traffic loads. Optionally, the shared traffic manager may be leveraged to reduce the resources required to handle data units on ingress. Rather than buffer the entire unit in the ingress buffers, an arbiter may be configured to buffer only the control portion of the data unit. The payload of the data unit, by contrast, is forwarded directly to the shared traffic manager, where it is placed in the egress buffers. Because the payload is not being buffered in the ingress buffers, the ingress buffer memory may be greatly reduced.

    Intelligent packet queues with efficient delay tracking

    公开(公告)号:US10735339B1

    公开(公告)日:2020-08-04

    申请号:US15407159

    申请日:2017-01-16

    Applicant: Innovium, Inc.

    Abstract: A network device organizes packets into various queues, in which the packets await processing. Queue management logic tracks how long certain packet(s), such as a designated marker packet, remain in a queue. Based thereon, the logic produces a measure of delay for the queue, referred to herein as the “queue delay.” Based on a comparison of the current queue delay to one or more thresholds, various associated delay-based actions may be performed, such as tagging and/or dropping packets departing from the queue, or preventing addition enqueues to the queue. In an embodiment, a queue may be expired based on the queue delay, and all packets dropped. In other embodiments, when a packet is dropped prior to enqueue into an assigned queue, copies of some or all of the packets already within the queue at the time the packet was dropped may be forwarded to a visibility component for analysis.

    Buffer assignment balancing in a network device

    公开(公告)号:US10587536B1

    公开(公告)日:2020-03-10

    申请号:US15996378

    申请日:2018-06-01

    Applicant: Innovium, Inc.

    Abstract: Techniques for improved handling of queues of data units are described, such as queues of buffered data units of differing types and/or sources within a switch or other network device. When the size of a queue surpasses the state entry threshold for a certain state, the queue is said to be in the certain state. While in the certain state, data units assigned to the queue may be handled differently in some respect, such as being marked or being dropped without further processing. The queue remains in this certain state until its size falls below the state release threshold for the state. The state release threshold is adjusted over time in, for example, a random or pseudo-random manner. Among other aspects, in some embodiments, this adjustment of the state release threshold addresses fairness issues that may arise with respect to the treatment of different types or sources of data units.

    Programmable visibility engines
    65.
    发明授权

    公开(公告)号:US10541946B1

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

    申请号:US15410651

    申请日:2017-01-19

    Applicant: Innovium, Inc.

    Abstract: Nodes within a network are configured to adapt to changing path states, due to congestion, node failures, and/or other factors. A node may selectively convey path information and/or other state information to another node by annotating the information into packets it receives from the other node. A node may selectively reflect these annotated packets back to the other node, or other nodes that subsequently receive these annotated packets may reflect them. A weighted cost multipathing selection technique is improved by dynamically adjusting weights of paths in response to feedback indicating the current state of the network topology, such as collected through these reflected packets. In an embodiment, certain packets that would have been dropped may instead be transformed into “special visibility” packets that may be stored and/or sent for analysis. In an embodiment, insight into the performance of a network device is enhanced through the use of programmable visibility engines.

    Hardware-assisted monitoring and reporting

    公开(公告)号:US10540867B1

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

    申请号:US15729386

    申请日:2017-10-10

    Applicant: Innovium, Inc.

    Abstract: Approaches, techniques, and mechanisms are disclosed for monitoring and reporting status information in a computing device. According to one embodiment, status messages are generated with respect to a subsystem of a computing system, such as a computer chip configured to perform network switching and routing functions in a network device. The status messages convey status information, such as configuration and/or operational states, metrics, or other statistics. A message decoder within the system may be configured to receive and analyze the status messages. Based thereon, the message decoder generates output data in a specific format that controls an output device, such as an LED array. The message decoder then sends the output data to the output device. Enabling the reporting of status information through LED indicators and other typically custom and proprietary output devices is thus greatly simplified. A status chain for collecting and reporting status information is also described.

    Visibility packets
    67.
    发明授权

    公开(公告)号:US10320691B1

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

    申请号:US15410644

    申请日:2017-01-19

    Applicant: Innovium, Inc.

    Abstract: Nodes within a network are configured to adapt to changing path states, due to congestion, node failures, and/or other factors. A node may selectively convey path information and/or other state information to another node by annotating the information into packets it receives from the other node. A node may selectively reflect these annotated packets back to the other node, or other nodes that subsequently receive these annotated packets may reflect them. A weighted cost multipathing selection technique is improved by dynamically adjusting weights of paths in response to feedback indicating the current state of the network topology, such as collected through these reflected packets. In an embodiment, certain packets that would have been dropped may instead be transformed into “special visibility” packets that may be stored and/or sent for analysis. In an embodiment, insight into the performance of a network device is enhanced through the use of programmable visibility engines.

    Elastic data packer
    68.
    发明授权

    公开(公告)号:US09941899B1

    公开(公告)日:2018-04-10

    申请号:US15681249

    申请日:2017-08-18

    Applicant: Innovium, Inc.

    CPC classification number: H03M7/3082 H03M7/30 H04B7/2606

    Abstract: This disclosure relates to compressing and/or decompressing a group of similar data units, such as a table or queue of data units processed by a networking device or other computing apparatus. Each data unit in the group may only have values for fields in a master set. The described systems are particularly suited for hardware-level processing of groups of sparsely-populated data units, in which a large number of the data units have values for only a small number of the fields. In an embodiment, non-value carrying fields in a data unit are compressed based on a compression profile selected for the data unit. The compression profile indicates, for each master field, whether the compressed data unit includes a value for that field. Non-value carrying fields are omitted from the compressed data unit. The compression profile also permits compression of value-carrying fields using variable-width field lengths specified in the profile.

    Efficient resource tracking
    69.
    发明授权

    公开(公告)号:US09929970B1

    公开(公告)日:2018-03-27

    申请号:US14958830

    申请日:2015-12-03

    Applicant: Innovium, Inc.

    CPC classification number: H04L47/70 H04L43/04 H04L43/0817

    Abstract: Described techniques enable resource accounting and tracking in high access rate systems using low cost memories. A first set of counters is maintained in relatively lower cost memory. The first counters generally indicate the amount of resources used for each object in a set of objects, but on a potentially delayed basis. A second set of counters of smaller size is stored in a relatively higher cost memory that supports high arrival and departure rates for accurate accounting. Each second counter indicates the amount of resources assigned (or unassigned) to an object since the object's first counter was last updated, and is incremented or decremented whenever this amount changes. A background process is configured to update individual first counters from the corresponding second counters on a recurring basis. The exact times at which a given first counter is updated may vary in accordance with a variety of approaches.

Patent Agency Ranking