-
公开(公告)号:US11005769B2
公开(公告)日:2021-05-11
申请号:US16725518
申请日:2019-12-23
发明人: Ilan Mayer-Wolf , Zvi Shmilovici Leib , Carmi Arad
IPC分类号: H04L12/801 , H04L12/823 , H04L12/835 , H04L12/861 , H04L12/851
摘要: A packet processor of a network device determines an amount of free buffer space in a buffer memory currently available for buffering packets, and dynamically determines a value of a threshold for triggering a particular traffic management operation with respect to a packet, to dynamically adjust the value of the threshold based at least in part on a changing amount of free buffer space available for buffering packets in the buffer memory. The packet processor determines, based on a comparison between i) a current fill level of a particular transmit queue in which the packet is to be enqueued and ii) the dynamically adjusted value of the threshold, whether the particular traffic management operation is to be triggered with respect to the packet. When the particular traffic management operation is to be triggered, the packet processor performs the particular traffic management operation with respect to the packet.
-
公开(公告)号:US10541947B2
公开(公告)日:2020-01-21
申请号:US15599199
申请日:2017-05-18
发明人: David Melman , Ilan Mayer-Wolf , Carmi Arad , Rami Zemach
IPC分类号: H04J1/16 , H04L12/861 , H04L12/851 , H04L12/823 , H04L29/06
摘要: A packet is received at a network device. The packet is processed by the network device to determine at least one egress port via which to transmit the packet, and to perform egress classification of the packet based at least in part on information determined for the packet during processing of the packet. Egress classification includes determining whether the packet should not be transmitted by the network device. When it is not determined that the packet should not be transmitted by the network device, a copy of the packet is generated for mirroring of the packet to a destination other than the determined at least one egress port, and the packet is enqueued in an egress queue corresponding to the determined at least one egress port. The packet is subsequently transferred to the determined at least one egress port for transmission of the packet.
-
公开(公告)号:US10764410B2
公开(公告)日:2020-09-01
申请号:US16694504
申请日:2019-11-25
发明人: Carmi Arad , Ilan Mayer-Wolf , Rami Zemach , David Melman , Ilan Yerushalmi , Tal Mizrahi , Lior Valency
IPC分类号: H04L29/06 , H04L12/937
摘要: A packet received by a network device via a network. A first portion of the packet is stored in a packet memory, the first portion including at least a payload of the packet. The packet is processed based on information from a header of the packet. After the packet is processed, a second portion of the packet is stored in the packet memory, the second portion including at least a portion of the header of the packet. When the packet is to be transmitted the first portion of the packet and the second portion of the packet are retrieved from the packet memory, and the first portion and the second portion are combined to generate a transmit packet. The transmit packet is forwarded to a port of the network device for transmission of the transmit packet via port of the network device.
-
公开(公告)号:US10516620B2
公开(公告)日:2019-12-24
申请号:US15599280
申请日:2017-05-18
发明人: Ilan Mayer-Wolf , Zvi Shmilovici Leib , Carmi Arad
IPC分类号: H04L12/801 , H04L12/823 , H04L12/861 , H04L12/851 , H04L12/835
摘要: A network device receives a packet is received from a network, and determines at least one port, among a plurality of ports of the network device, via which the packet is to be transmitted. The network device also determines an amount of free buffer space in a buffer memory of the network device, and dynamically determines, based at least in part on the amount of free buffer space, respective thresholds for triggering ones of multiple traffic management operations to be performed based on the packet. Using the respective thresholds, the network device determines whether or not to trigger ones of the multiple traffic management operations with respect to the packet. The network device performs one or more of the traffic management operations with respect to the packet determined to be triggered based on the corresponding one of the respective thresholds.
-
公开(公告)号:US11075859B2
公开(公告)日:2021-07-27
申请号:US16746355
申请日:2020-01-17
发明人: David Melman , Ilan Mayer-Wolf , Carmi Arad , Rami Zemach
IPC分类号: G01R31/08 , H04J1/16 , H04L1/00 , H04L12/861 , H04L12/851 , H04L12/823 , H04L29/06
摘要: At least a payload of a packet that is received by a network device is stored in a packet memory. The packet is processed at least to determine at least one egress port via which the packet is to be transmitted, modify a header of the packet to generate a modified header, and determine, based at least in part on the modified header, whether the packet is to be transmitted or to be discarded by the network device. In response to determining that the packet is to be transmitted, the at least the payload of the packet is retrieved from the packet memory, a transmit packet is generated at least by combining the at least the payload of the packet with the modified header, and the transmit packet is transmitted via the determined at least one egress port of the network device.
-
公开(公告)号:US11018978B1
公开(公告)日:2021-05-25
申请号:US16560816
申请日:2019-09-04
发明人: Ido Grinberg , Ilan Mayer-Wolf , Itzik Abudi
IPC分类号: H04L12/743 , G06F1/3234 , H04L29/06
摘要: In a network device, a hash-based lookup system includes a hash generator configured to apply respective hash functions to a lookup key to generate respective hash values. Each hash function corresponds to a respective logical hash bank in a hash table. A number of hash values generated by the hash generator corresponds to the number of logical hash banks in the hash table, and the number of hash values generated by the hash generator is configurable. The hash-based lookup system also includes an address generator that is configured to generate respective addresses to a memory that stores the hash table, the respective addresses within respective address spaces of respective logical hash banks of the hash table. The address generator uses i) a parameter N that specifies the number of logical hash banks in the hash table, and ii) N hash values generated by the hash generator, to generate the respective addresses.
-
公开(公告)号:US11824799B2
公开(公告)日:2023-11-21
申请号:US17383601
申请日:2021-07-23
发明人: David Melman , Ilan Mayer-Wolf , Carmi Arad , Rami Zemach
CPC分类号: H04L49/9084 , H04L47/2441 , H04L47/32 , H04L69/22
摘要: A network device includes a packet processor that: determines at least one egress port via which a received packet is to be transmitted by the network device; modifies one or more fields in a header of the packet to generate a modified header; determines, based at least in part on the modified header, whether the packet a) is to be transmitted or b) is to be discarded; and stores the modified header in a packet memory. In response to the determination that the packet is to be transmitted, a transmit processor of the network device: retrieves a payload of the packet from the packet memory; retrieves the modified header from the packet memory; generates a transmit packet at least by combining the payload of the packet with the modified header; and transmits the transmit packet via the determined at least one egress port of the network device.
-
公开(公告)号:US11178054B1
公开(公告)日:2021-11-16
申请号:US16548595
申请日:2019-08-22
发明人: Ziv Zamsky , Ilan Mayer-Wolf , Yakov Tokar
IPC分类号: H04L12/745 , G06F16/22
摘要: A network device includes a memory configured to store a plurality of entries in respective locations in the memory, the plurality of entries corresponding to a trie data structure for performing a longest prefix match search. The network device also includes: a memory access engine configured to retrieve from a location in the memory, in a single memory lookup operation, i) longest prefix match information for a node corresponding to a network address in a header of a packet, and ii) pointer information that indicates a child node in the trie data structure. The network device also includes: a child node address calculator configured to use i) the longest prefix match information, and ii) the pointer information, to calculate a memory address of another location in the memory corresponding to the child node.
-
-
-
-
-
-
-