Sliding windows
    61.
    发明授权

    公开(公告)号:US10355981B1

    公开(公告)日:2019-07-16

    申请号:US15446894

    申请日:2017-03-01

    申请人: Innovium, Inc.

    摘要: Approaches, techniques, and mechanisms are disclosed for assigning paths to network packets. The path assignment techniques utilize path state information and/or other criteria to determine whether to route a packet along a primary candidate path selected for the packet, or one or more alternative candidate paths selected for the packet. According to an embodiment, network traffic is at least partially balanced by redistributing only a portion of the traffic that would have been assigned to a given primary path. Move-eligibility criteria are applied to traffic to determine whether a given packet is eligible for reassignment from a primary path to an alternative path. The move-eligibility criteria determine which portion of the network traffic to move and which portion to allow to proceed as normal. In an embodiment, the criteria and functions used to determine whether a packet is redistributable are adjusted over time based on path state information.

    Efficient resource status reporting apparatuses

    公开(公告)号:US10218589B1

    公开(公告)日:2019-02-26

    申请号:US14973541

    申请日:2015-12-17

    申请人: Innovium, Inc.

    摘要: Described techniques enable the tracking and reporting of resource utilization at multiple levels of granularity, the highest of which involves tracking resource usage by a particular object in aggregate. When aggregate usage for the particular object is within certain parameters, actual resource usage is not reported at the lower level of granularity, but is replaced by placeholder values. When aggregate usage for the particular object exceeds a threshold, the particular object is considered to be a “hot spot.” Resource usage for the particular object can then be reported (and tracked, if not already) at the lower level of granularity until the particular object is no longer a “hot spot.” The efficiency of the tracking may be further enhanced by leveraging a bifurcated counting mechanism in which a full count is updated only at selected sample times, with intermediate counters used to store changes in between sample times.

    Automatic flow management
    65.
    发明授权

    公开(公告)号:US12081444B2

    公开(公告)日:2024-09-03

    申请号:US18141285

    申请日:2023-04-28

    申请人: Innovium, Inc.

    摘要: Packet-switching operations in a network device are managed based on the detection of excessive-rate traffic flows. A network device receives a data unit, determines the traffic flow to which the data unit belongs, and updates flow tracking information for that flow. The network device utilizes the tracking information to determine when a rate at which the network device is receiving data belonging to the flow exceeds an excessive-rate threshold and is thus an excessive-rate flow. The network device may enable one or more excessive-rate policies on an excessive-rate traffic flow. Such a policy may include any number of features that affect how the device handles data units belonging to the flow, such as excessive-rate notification, differentiated discard, differentiated congestion notification, and reprioritization. Memory and other resource optimizations for such flow tracking and management are also described.

    Reflected packets
    66.
    发明授权

    公开(公告)号:US11863458B1

    公开(公告)日:2024-01-02

    申请号:US17352583

    申请日:2021-06-21

    申请人: Innovium, Inc.

    摘要: 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.

    Traffic analyzer for network device

    公开(公告)号:US11750487B1

    公开(公告)日:2023-09-05

    申请号:US17239873

    申请日:2021-04-26

    申请人: Innovium, Inc.

    摘要: Approaches, techniques, and mechanisms facilitate actionable reporting of network state information and real-time, autonomous network engineering directly in-network at a switch or other network device. A data collector within the network device collects state information and/or data unit information from various device components, such as traffic managers and packet processors. The data collector, which may optionally generate additional state information by performing various calculations on the information it receives, is configured to then provide at least some of the state information to an analyzer device connected to an analyzer interface. The analyzer device, which may be a separate device, performs various analyses on the state information, depending on how it is configured. The analyzer device outputs reports that identify statuses, errors, misconfigurations, and/or suggested actions to take to improve operation of the network device. In an embodiment, some or all actions that may be suggested therein ae executed automatically.

    Load balancing path assignments techniques

    公开(公告)号:US11736388B1

    公开(公告)日:2023-08-22

    申请号:US17367330

    申请日:2021-07-03

    申请人: Innovium, Inc.

    摘要: Approaches, techniques, and mechanisms are disclosed for assigning paths to network packets. The path assignment techniques utilize path state information and/or other criteria to determine whether to route a packet along a primary candidate path selected for the packet, or one or more alternative candidate paths selected for the packet. According to an embodiment, network traffic is at least partially balanced by redistributing only a portion of the traffic that would have been assigned to a given primary path. Move-eligibility criteria are applied to traffic to determine whether a given packet is eligible for reassignment from a primary path to an alternative path. The move-eligibility criteria determine which portion of the network traffic to move and which portion to allow to proceed as normal. In an embodiment, the criteria and functions used to determine whether a packet is redistributable are adjusted over time based on path state information.

    Automatic flow management
    69.
    发明授权

    公开(公告)号:US11652750B2

    公开(公告)日:2023-05-16

    申请号:US17580562

    申请日:2022-01-20

    申请人: Innovium, Inc.

    摘要: Packet-switching operations in a network device are managed based on the detection of excessive-rate traffic flows. A network device receives a data unit, determines the traffic flow to which the data unit belongs, and updates flow tracking information for that flow. The network device utilizes the tracking information to determine when a rate at which the network device is receiving data belonging to the flow exceeds an excessive-rate threshold and is thus an excessive-rate flow. The network device may enable one or more excessive-rate policies on an excessive-rate traffic flow. Such a policy may include any number of features that affect how the device handles data units belonging to the flow, such as excessive-rate notification, differentiated discard, differentiated congestion notification, and reprioritization. Memory and other resource optimizations for such flow tracking and management are also described.

    Programmable delay-based power stabilization

    公开(公告)号:US11567560B1

    公开(公告)日:2023-01-31

    申请号:US16399652

    申请日:2019-04-30

    申请人: Innovium, Inc.

    摘要: Power demands of a computing system, such as a network device and/or a component thereof, are stabilized by introducing a programmable delay into identical or substantially similar subsystems within an integrated circuit. Each subsystem reads a potentially different delay value from an associated storage, memory, or input, and waits for some time indicated by the delay value before beginning execution. For example, in a group of identical subsystems that process data concurrently, some or all of the subsystems begin processing their respective data after a different amount of delay, thus staggering their respective executions and lowering the risk of aligned edges when some or all of the subsystems concurrently step their power demands up or down. This, in turn, reduces peak power and voltage. In an embodiment, rather than being fixed at the design stage, each subsystem's delay value is programmable at some point after fabrication.