-
公开(公告)号:US10735339B1
公开(公告)日:2020-08-04
申请号:US15407159
申请日:2017-01-16
申请人: Innovium, Inc.
IPC分类号: H04L12/875
摘要: 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.
-
公开(公告)号:US11637786B1
公开(公告)日:2023-04-25
申请号:US17121404
申请日:2020-12-14
申请人: Innovium, Inc.
IPC分类号: H04L12/26 , H04L47/41 , H04L47/22 , H04L49/9047 , H04L49/9015 , H04L49/90 , H04L47/6275 , H04L45/16 , H04L45/24 , H04L47/30 , H04L47/625 , H04L47/32
摘要: When a measure of buffer space queued for garbage collection in a network device grows beyond a certain threshold, one or more actions are taken to decreasing an enqueue rate of certain classes of traffic, such as of multicast traffic, whose reception may have caused and/or be likely to exacerbate garbage-collection-related performance issues. When the amount of buffer space queued for garbage collection shrinks to an acceptable level, these one or more actions may be reversed. In an embodiment, to more optimally handle multi-destination traffic, queue admission control logic for high-priority multi-destination data units, such as mirrored traffic, may be performed for each destination of the data units prior to linking the data units to a replication queue. If a high-priority multi-destination data unit is admitted to any queue, the high-priority multi-destination data unit can no longer be dropped, and is linked to a replication queue for replication.
-
公开(公告)号:US10673770B1
公开(公告)日:2020-06-02
申请号:US16288165
申请日:2019-02-28
申请人: Innovium, Inc.
IPC分类号: H04L12/863 , H04L12/801 , H04L12/26
摘要: 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.
-
公开(公告)号:US11481350B1
公开(公告)日:2022-10-25
申请号:US16940003
申请日:2020-07-27
申请人: Innovium, Inc.
发明人: Srinivas Gangam , Ajit Kumar Jain , Anurag Kumar Jain , Avinash Gyanendra Mani , Mohammad Kamel Issa
摘要: Network chip utility is improved using multi-core architectures with auxiliary wiring between cores to permit cores to utilize components from otherwise inactive cores. The architectures permit, among other advantages, the re-purposing of functional components that reside in defective or otherwise non-functional cores. For instance, a four-core network chip with certain defects in three or even four cores could still, through operation of the techniques described herein, be utilized in a two or even three-core capacity. In an embodiment, the auxiliary wiring may be used to redirect data from a Serializer/Deserializer (“SerDes”) block of a first core to packet-switching logic on a second core, and vice-versa. In an embodiment, the auxiliary wiring may be utilized to circumvent defective components in the packet-switching logic itself. In an embodiment, a core may utilize buffer memories, forwarding tables, or other resources from other cores instead of or in addition to its own.
-
公开(公告)号:US11470016B1
公开(公告)日:2022-10-11
申请号:US16924340
申请日:2020-07-09
申请人: Innovium, Inc.
IPC分类号: H04L47/785 , H04L45/74 , H04L47/30 , H04L47/41
摘要: Approaches, techniques, and mechanisms are disclosed for efficiently buffering data units within a network device. A traffic manager or other network device component receives Transport Data Units (“TDUs”), which are sub-portions of Protocol Data Units (“PDUs”). Rather than buffer an entire TDU together, the component divides the TDU into multiple Storage Data Units (“SDUs”) that can fit in SDU buffer entries within physical memory banks. A TDU-to-SDU Mapping (“TSM”) memory stores TSM lists that indicate which SDU entries store SDUs for a given TDU. Physical memory banks in which the SDUs are stored may be grouped together into logical SDU banks that are accessed together as if a single bank. The TSM memory may include a number of distinct TSM banks, with each logical SDU bank having a corresponding TSM bank. Techniques for maintaining inter-packet and intra-packet linking data compatible with such buffers are also disclosed.
-
公开(公告)号:US10999223B1
公开(公告)日:2021-05-04
申请号:US16378220
申请日:2019-04-08
申请人: Innovium, Inc.
IPC分类号: H04L12/883 , G06F12/02
摘要: Approaches, techniques, and mechanisms are disclosed for reutilizing discarded link data in a buffer space for buffering data units in a network device. Rather than wasting resources on garbage collection of such link data when a data unit is dropped, the link data is used as a free list that indicates buffer entries in which new data may be stored. In an embodiment, operations of the buffer may further be enhanced by re-using the discarded link data as link data for a new data unit. The link data for a formerly buffered data unit may be assigned exclusively to a new data unit, which uses the discarded link data to determine where to store its constituent data. As a consequence, the discarded link data actually serves as valid link data for the new data unit, and new link data need not be generated for the new data unit.
-
公开(公告)号:US10938739B1
公开(公告)日:2021-03-02
申请号:US16186349
申请日:2018-11-09
申请人: Innovium, Inc.
IPC分类号: H04L12/915 , H04L12/741 , H04L12/891 , H04L12/835
摘要: Approaches, techniques, and mechanisms are disclosed for efficiently buffering data units within a network device. A traffic manager or other network device component receives Transport Data Units (“TDUs”), which are sub-portions of Protocol Data Units (“PDUs”). Rather than buffer an entire TDU together, the component divides the TDU into multiple Storage Data Units (“SDUs”) that can fit in SDU buffer entries within physical memory banks. A TDU-to-SDU Mapping (“TSM”) memory stores TSM lists that indicate which SDU entries store SDUs for a given TDU. Physical memory banks in which the SDUs are stored may be grouped together into logical SDU banks that are accessed together as if a single bank. The TSM memory may include a number of distinct TSM banks, with each logical SDU bank having a corresponding TSM bank. Techniques for maintaining inter-packet and intra-packet linking data compatible with such buffers are also disclosed.
-
公开(公告)号:US11201831B1
公开(公告)日:2021-12-14
申请号:US16933268
申请日:2020-07-20
申请人: Innovium, Inc.
发明人: Ajit Kumar Jain
IPC分类号: H04L12/863 , H04L12/935
摘要: Multiple ports of a network device are muxed together to form a single packed ingress interface into a buffer. A multiplexor alternates between the ports in alternating input clock cycles. Extra logic and wiring to provide a separate writer for each port is avoided, since the packed interface and buffer writers operate at higher speeds and/or have more bandwidth than the ports, and are thus able to handle incoming data for all of the ports coupled to the packed ingress interface. A packed ingress interface may also or instead support receiving data for multiple data units (e.g. multiple packets) from a single port in a single clock cycle, thereby reducing the potential to waste bandwidth at the end of data units. The interface may send the ending segments of the first data unit to the buffer. However, the interface may hold back the starting segments of the second data unit in a cache. In an embodiment, a gear shift merges the first part of each subsequent portion of the second data unit with the cached data to form a full-sized data unit portion to send downstream, while the second part of the portion replaces the cached data. When the end of the second data unit is detected, if any segments of the second data unit remain after the merger process, the remainder is sent downstream as a separate portion at the same time.
-
公开(公告)号:US10523576B1
公开(公告)日:2019-12-31
申请号:US16029441
申请日:2018-07-06
申请人: Innovium, Inc.
IPC分类号: H04L12/50 , H04L12/891 , H04L12/815 , H04L12/861 , H04L12/883 , H04L12/823
摘要: Efficient garbage collection techniques for network packets and other units of data are described. Constituent portions of a data unit are stored in buffer entries spread out across multiple distinct banks. Linking data is generated and stored on a per-bank basis. The linking data defines, for each bank in which data for the data unit is stored, a chain of all entries in that bank that store data for the data unit. When the data unit is dropped or otherwise disposed of, a chain's head entry address may be placed in a garbage collection list for the corresponding bank. A garbage collector uses the linking data to gradually follow the chain of entries for the given bank, and frees each entry in the chain along the way. Optionally, certain addresses in the chain, including each chain's tail address, are immediately freed for the corresponding bank, without waiting to follow the chain.
-
公开(公告)号:US10313255B1
公开(公告)日:2019-06-04
申请号:US15407156
申请日:2017-01-16
申请人: Innovium, Inc.
IPC分类号: H04L12/833 , H04L12/26
摘要: 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.
-
-
-
-
-
-
-
-
-