-
公开(公告)号:US20170017419A1
公开(公告)日:2017-01-19
申请号:US14975585
申请日:2015-12-18
申请人: Innovium, Inc.
发明人: William Brad Matthews , Bruce H. Kwan , Mohammad K. Issa , Neil Barrett , Avinash Gyanendra Mani
IPC分类号: G06F3/06
CPC分类号: G06F3/0619 , G06F3/0629 , G06F3/067 , G06F12/023 , G06F12/0246 , G06F12/0253 , G06F12/0623 , G06F13/1668 , G06F2212/1044 , Y02D10/13 , Y02D10/14
摘要: A memory system for a network device is described. The memory system includes a main memory configured to store one or more data elements. Further, the memory system includes a link memory that is configured to maintain one or more pointers to interconnect the one or more data elements stored in the main memory. The memory system also includes a free-entry manager that is configured to generate an available bank set including one or more locations in the link memory. In addition, the memory system includes a context manager that is configured to maintain metadata for a list of the one or more data elements.
-
公开(公告)号:US12019606B1
公开(公告)日:2024-06-25
申请号:US17061104
申请日:2020-10-01
申请人: Innovium, Inc.
IPC分类号: G06F16/22 , G06F16/23 , G06F16/2455
CPC分类号: G06F16/2255 , G06F16/2379 , G06F16/2455
摘要: 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.
-
公开(公告)号:US11784932B2
公开(公告)日:2023-10-10
申请号:US17091916
申请日:2020-11-06
申请人: Innovium, Inc.
IPC分类号: H04L47/20 , H04L43/0852 , H04L47/56 , H04L47/32
CPC分类号: H04L47/20 , H04L43/0858 , H04L47/32 , H04L47/568
摘要: Approaches, techniques, and mechanisms are disclosed for improving operations of a network switching device and/or network-at-large by utilizing queue delay as a basis for measuring congestion for the purposes of Automated Queue Management (“AQM”) and/or other congestion-based policies. Queue delay is an exact or approximate measure of the amount of time a data unit waits at a network device as a consequence of queuing, such as the amount of time the data unit spends in an egress queue while the data unit is being buffered by a traffic manager. Queue delay may be used as a substitute for queue size in existing AQM, Weighted Random Early Detection (“WRED”), Tail Drop, Explicit Congestion Notification (“ECN”), reflection, and/or other congestion management or notification algorithms. Or, a congestion score calculated based on the queue delay and one or more other metrics, such as queue size, may be used as a substitute.
-
公开(公告)号:US11671281B1
公开(公告)日:2023-06-06
申请号:US17224081
申请日:2021-04-06
申请人: Innovium, Inc.
IPC分类号: H04L12/46 , H04L69/324 , H04L43/0852 , H04L47/36
CPC分类号: H04L12/4633 , H04L43/0852 , H04L47/365 , H04L69/324
摘要: The performance of a switch or other network device is improved by adjusting the number of idle bytes transmitted between data units—that is, the size of the interpacket gap—to increase the bandwidth of a network interface. In some embodiments, the adjustments may be made in a manner designed to compensate for potential mismatches between the clock rate of the network interface and clock rates of interfaces of other network devices when retransmitting data received from those other network devices. In yet other embodiments, the adjustments may be designed to increase available bandwidth for other purposes. In an embodiment, the idle reduction logic is in a Media Access Control (“MAC”) layer of a network interface. The idle reduction logic may be enabled or disabled based on user preference, or programmatically based on factors such as a transmission utilization level for the MAC layer, buffer fill level, and so forth.
-
公开(公告)号:US11483232B1
公开(公告)日:2022-10-25
申请号:US17192819
申请日:2021-03-04
申请人: Innovium, Inc.
IPC分类号: H04L45/24 , H04L43/0882 , H04L45/00 , H04L47/125 , H04L47/625
摘要: Automatic load-balancing techniques in a network device are used to select, from a multipath group, a path to assign to a flow based on observed state attributes such as path state(s), device state(s), port state(s), or queue state(s) of the paths. A mapping of the path previously assigned to a flow or group of flows (e.g., on account of having then been optimal in view of the observed state attributes) is maintained, for example, in a table. So long as the flow(s) are active and the path is still valid, the mapped path is selected for subsequent data units belonging to the flow(s), which may, among other effects, avoid or reduce packet re-ordering. However, if the flow(s) go idle, or if the mapped path fails, a new optimal path may be assigned to the flow(s) from the multipath group.
-
公开(公告)号:US11328222B1
公开(公告)日:2022-05-10
申请号:US16409703
申请日:2019-05-10
申请人: Innovium, Inc.
摘要: Distributed machine learning systems and other distributed computing systems are improved by embedding compute logic at the network switch level to perform collective actions, such as reduction operations, on gradients or other data processed by the nodes of the system. The switch is configured to recognize data units that carry data associated with a collective action that needs to be performed by the distributed system, referred to herein as “compute data,” and process that data using a compute subsystem within the switch. The compute subsystem includes a compute engine that is configured to perform various operations on the compute data, such as “reduction” operations, and forward the results back to the compute nodes. The reduction operations may include, for instance, summation, averaging, bitwise operations, and so forth. In this manner, the network switch may take over some or all of the processing of the distributed system during the collective phase.
-
公开(公告)号:US11245632B2
公开(公告)日:2022-02-08
申请号:US16927683
申请日:2020-07-13
申请人: Innovium, Inc.
IPC分类号: H04L12/28 , H04L12/851 , H04L12/26 , H04L12/801
摘要: 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.
-
公开(公告)号:US20220014473A1
公开(公告)日:2022-01-13
申请号:US16927683
申请日:2020-07-13
申请人: Innovium, Inc.
IPC分类号: H04L12/851 , H04L12/801 , H04L12/26
摘要: 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.
-
公开(公告)号:US11128561B1
公开(公告)日:2021-09-21
申请号:US16524575
申请日:2019-07-29
申请人: Innovium, Inc.
IPC分类号: H04L12/709 , H04L12/803 , H04L12/863 , H04L12/721 , H04L12/26
摘要: Automatic load-balancing techniques in a network device are used to select, from a multipath group, a path to assign to a flow based on observed state attributes such as path state(s), device state(s), port state(s), or queue state(s) of the paths. A mapping of the path previously assigned to a flow or group of flows (e.g., on account of having then been optimal in view of the observed state attributes) is maintained, for example, in a table. So long as the flow(s) are active and the path is still valid, the mapped path is selected for subsequent data units belonging to the flow(s), which may, among other effects, avoid or reduce packet re-ordering. However, if the flow(s) go idle, or if the mapped path fails, a new optimal path may be assigned to the flow(s) from the multipath group.
-
公开(公告)号:US10931588B1
公开(公告)日:2021-02-23
申请号:US16409695
申请日:2019-05-10
申请人: Innovium, Inc.
IPC分类号: H04L12/24 , H04L12/825 , H04L12/721 , G06N20/00 , H04L12/861
摘要: Distributed machine learning systems and other distributed computing systems are improved by embedding compute logic at the network switch level to perform collective actions, such as reduction operations, on gradients or other data processed by the nodes of the system. The switch is configured to recognize data units that carry data associated with a collective action that needs to be performed by the distributed system, referred to herein as “compute data,” and process that data using a compute subsystem within the switch. The compute subsystem includes a compute engine that is configured to perform various operations on the compute data, such as “reduction” operations, and forward the results back to the compute nodes. The reduction operations may include, for instance, summation, averaging, bitwise operations, and so forth. In this manner, the network switch may take over some or all of the processing of the distributed system during the collective phase.
-
-
-
-
-
-
-
-
-