Patents by Inventor Carmi Arad
Carmi Arad has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20200153759Abstract: 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.Type: ApplicationFiled: January 17, 2020Publication date: May 14, 2020Inventors: David MELMAN, Ilan MAYER-WOLF, Carmi ARAD, Rami ZEMACH
-
Publication number: 20200136982Abstract: 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.Type: ApplicationFiled: December 23, 2019Publication date: April 30, 2020Inventors: Ilan MAYER-WOLF, Zvi Shmilovici LEIB, Carmi ARAD
-
Publication number: 20200106866Abstract: 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.Type: ApplicationFiled: November 25, 2019Publication date: April 2, 2020Inventors: Carmi ARAD, Ilan MAYER-WOLF, Rami ZEMACH, David MELMAN, Ilan YERUSHALMI, Tal MIZRAHI, Lior VALENCY
-
Patent number: 10587516Abstract: In a method for managing a network device a current hash value is determined for a current key to be inserted into a lookup table. The current hash value associated with a current set of memory locations in the lookup table, wherein the current set of memory locations includes a memory location corresponding to the current hash value and one or more other memory locations. In response to determining that each memory location in the current set of memory location is occupied, one or multiple previously stored keys in the lookup table are iteratively moved to other memory locations in the lookup table to free up a memory location in the current set of memory locations, the current key is inserted into the freed up memory location.Type: GrantFiled: July 15, 2015Date of Patent: March 10, 2020Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Carmi Arad, Gil Levy
-
Patent number: 10541947Abstract: 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.Type: GrantFiled: May 18, 2017Date of Patent: January 21, 2020Assignee: Marvell Israel (M.I.S.L.) Ltd.Inventors: David Melman, Ilan Mayer-Wolf, Carmi Arad, Rami Zemach
-
Patent number: 10516620Abstract: 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.Type: GrantFiled: May 18, 2017Date of Patent: December 24, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Ilan Mayer-Wolf, Zvi Shmilovici Leib, Carmi Arad
-
Patent number: 10491718Abstract: 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.Type: GrantFiled: May 17, 2017Date of Patent: November 26, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Carmi Arad, Ilan Mayer-Wolf, Rami Zemach, David Melman, Ilan Yerushalmi, Tal Mizrahi, Lior Valency
-
Publication number: 20190268272Abstract: In a network device, a flow classification hardware engine is configured to: store flow state information regarding known flows of packets in a flow information table in association with respective assigned flow identifiers (IDs). The assigned flow IDs are from an ordered set of M flow IDs, where M is a positive integer. In response to detecting new flows of packets, the flow classification hardware engine: i) assigns respective flow IDs, from the ordered set of M flow IDs, to the new flows, and ii) creates respective entries in the flow information table for the new flows. An embedded processor periodically, as part of a background process: i) identifies an oldest assigned flow ID, from the ordered set of M flow IDs, and ii) makes storage space in the flow information table corresponding to the oldest assigned flow ID available for a new flow.Type: ApplicationFiled: January 29, 2019Publication date: August 29, 2019Inventors: Tal MIZRAHI, Rami ZEMACH, Carmi ARAD, David MELMAN, Yosef KATAN
-
Patent number: 10333802Abstract: A meter module for use in a network device comprises conformance circuitry configured to: access a first memory device storing a conformance indicator that indicates whether a permitted rate of packet traffic has been exceeded, and classify packets received at the network device based at least in part on the conformance indicator. Sampling circuitry is configured to, responsively to the conformance circuitry classifying the packets: sample events associated with at least some of the received packets, and generate indicators of the sampled events. Update circuitry is configured to: access a second memory device, slower than the first memory, to update a number of tokens stored in the second memory device, and access the first memory device to update the conformance indicator when the updated number of tokens indicates that the permitted rate of packet traffic has been exceeded.Type: GrantFiled: October 2, 2017Date of Patent: June 25, 2019Assignee: Marvell World Trade Ltd.Inventors: Carmi Arad, Kurt Thomas Boden, Gil Levy, Jakob Carlstrom
-
Publication number: 20190158414Abstract: A network device processes received packets at least to determine port or ports of the network device via which to transmit the packet. The network device also classifies the packets into packet flows, the packet flows being further categorized into traffic pattern categories characteristic of traffic pattern characteristics of the packet flows. The network device buffers, according to the traffic pattern categories of the packet flows, packets that belong to the packet flows in a first packet memory or in a second packet memory, the first packet memory having a memory access bandwidth different from a memory access bandwidth of the second packet memory. After processing the packets, the network device retrieves the packets from the first packet memory or the second packet memory in which the packets are buffered, and forwards the packets to the determined one or more ports for transmission of the packets.Type: ApplicationFiled: November 20, 2018Publication date: May 23, 2019Inventors: Gideon NAVON, Zvi SHMILOVICI LEIB, Carmi ARAD
-
Patent number: 10243857Abstract: A method for updating multipath groups of a network device is described. A first table defining a first multipath group of multiple egress interfaces is created. A change in network path availability at one or more egress interface members of the first multipath group is identified. The first multipath group includes at least some egress interfaces that remain available and that support at least some active packet sessions. A second table defining a second multipath group is created and coexists with the first multipath group. The second multipath group includes the remaining network paths that remain available. The first multipath group and the first table are selected for forwarding a packet from the active packet sessions. The second multipath group and the second table are selected for forwarding a packet from new packet sessions that are established after the change in the path availability.Type: GrantFiled: September 11, 2017Date of Patent: March 26, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Tal Mizrahi, Carmi Arad
-
Publication number: 20190058661Abstract: A network device determines, based on a size of a lookup value, that the lookup value is to be stored across a set of two or more memory banks including a first memory bank and a second memory bank of a database. A first hash function is for determining locations for storing lookup values entirely in the first memory bank, whereas a second hash function is for determining locations for storing lookup values entirely in the second memory bank. A hash operation is performed on the lookup value using the first hash function to determine a memory location for storing the lookup value. A first segment of the lookup value is stored in the first memory bank at the memory location determined using the first hash function, and a second segment of the lookup value is stored in the second memory bank at the memory location determined using the first hash function.Type: ApplicationFiled: October 22, 2018Publication date: February 21, 2019Inventors: Gil LEVY, Carmi ARAD
-
Patent number: 10177997Abstract: A network device and a method for maintaining a count of network events in a network device are provided. A first memory is configured as a first counter, where the first counter is configured to store a least significant bit (LSb) portion of a count value. A second memory is configured as a second counter, where the second counter is configured to store a most significant bit (MSb) portion of the count value. Update circuitry is configured to (i) selectively increment or decrement the LSb portion of the count value stored in the first memory upon occurrence of an event, and (ii) selectively increment or decrement the MSb portion of the count value stored in the second memory upon occurrence of a wrap-around event in the first memory.Type: GrantFiled: November 5, 2015Date of Patent: January 8, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Dror Bromberg, Carmi Arad
-
Patent number: 10110492Abstract: In a method for populating an exact match lookup table in a network device, a lookup key to be stored in a database of the network device is determined. The database is distributed among two or more memory banks. At least based on a size of the lookup key, (i) a first memory bank from among the two or more memory banks, and (ii) a hash function from among a plurality of possible hash functions, are selected. A hash operation is performed on the lookup key using the selected hash function to compute a first hashed lookup key segment. The first hashed lookup key segment is stored in the selected first memory bank, and one or more hashed lookup key segments corresponding to the lookup key are stored in one or more subsequent memory banks of the two or more memory banks.Type: GrantFiled: April 11, 2014Date of Patent: October 23, 2018Assignee: Marvell Israel (M.I.S.L.) Ltd.Inventors: Gil Levy, Carmi Arad
-
Patent number: 9997245Abstract: Aspects of the disclosure provide an electronic device that includes an exact match engine, a ternary content addressable memory (TCAM) engine, a search key generator and an output module. The exact match engine is configured to store a first set of entries. The TCAM engine is configured to store a second set of entries including at least some entries that are different from entries of the first set of entries. The search key generator is configured to generate a search key and provide the search key to the exact match engine and to the TCAM engine. The output module is configured to select one of a first output from the exact match engine and a second output from the TCAM engine in response to a signal that indicates whether the search key exactly matches one of the first set of entries.Type: GrantFiled: February 8, 2016Date of Patent: June 12, 2018Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Gil Levy, Carmi Arad
-
Patent number: 9967187Abstract: In a method for performing an exact match lookup in a network device, a network packet is received at the network device. A lookup key for the network packet is determined at least based on data included in a header of the received network packet. A hash function is selected, from among a plurality of possible hash functions, at least based on a size of the lookup key, and a hash operation is performed on the lookup key using the selected hash function to compute a hashed lookup key segment. A database is queried using the hashed lookup key segment to extract a value exactly corresponding to the lookup key.Type: GrantFiled: April 11, 2014Date of Patent: May 8, 2018Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Gil Levy, Carmi Arad
-
Publication number: 20180026860Abstract: A meter module for use in a network device comprises conformance circuitry configured to: access a first memory device storing a conformance indicator that indicates whether a permitted rate of packet traffic has been exceeded, and classify packets received at the network device based at least in part on the conformance indicator. Sampling circuitry is configured to, responsively to the conformance circuitry classifying the packets: sample events associated with at least some of the received packets, and generate indicators of the sampled events. Update circuitry is configured to: access a second memory device, slower than the first memory, to update a number of tokens stored in the second memory device, and access the first memory device to update the conformance indicator when the updated number of tokens indicates that the permitted rate of packet traffic has been exceeded.Type: ApplicationFiled: October 2, 2017Publication date: January 25, 2018Inventors: Carmi ARAD, Kurt Thomas BODEN, Gil LEVY, Jakob CARLSTROM
-
Patent number: 9876719Abstract: A forwarding engine in a network device selects one or more groups of multiple egress interfaces of the network device for forwarding packets received by the network device. An egress interface selector in the network device selects individual egress interfaces within the one or more groups selected by the forwarding engine. The egress interface selector includes a table associated with a first group of multiple egress interfaces, wherein elements in the table include values indicate individual egress interfaces in the first group. When the forwarding engine selects the first group, a table element selector of selects an element in the table to identify the individual egress interface for forwarding the packet.Type: GrantFiled: March 4, 2016Date of Patent: January 23, 2018Assignee: Marvell World Trade Ltd.Inventors: Yoram Revah, David Melman, Tal Mizrahi, Rami Zemach, Carmi Arad
-
Patent number: 9871728Abstract: In a method for forwarding packets in a network device a plurality of hash values is generated based on a lookup key. The plurality of hash values includes at least a first hash value generated using a first hash function, a second hash value generated using a second hash function and a third hash value generated using a third hash function. The third hash function is different from the first hash function and the second hash function. An entry in a lookup table is selected using the first hash value and the second hash value, wherein the selected entry includes an offset for the lookup key. A forwarding entry in a forwarding table is selected using the third hash value and the offset for the lookup key, wherein the forwarding entry corresponds to the lookup key. The packet is forwarded to one or more ports of the network device using the selected forwarding entry.Type: GrantFiled: November 29, 2016Date of Patent: January 16, 2018Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Carmi Arad, Gil Levy
-
Patent number: 9870319Abstract: Data items to be stored in a queue are received, where the queue is distributed among a plurality of memory banks. The data items are distributed among the plurality of memory banks, including selecting memory banks in which to store the data items based on pseudorandom numbers generated for the data items, where the pseudorandom numbers are generated using a first pseudorandom number generator initialized with a first seed. Subsequently the data items are retrieved from the plurality of memory banks, including selecting memory banks from which to retrieve the data items based on the pseudorandom numbers regenerated for the data items, where the pseudorandom numbers are regenerated using a second pseudorandom number generator initialized with the first seed.Type: GrantFiled: April 4, 2016Date of Patent: January 16, 2018Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Sharon Ulman, Roi Sherman, Dror Bromberg, Carmi Arad