Patents by Inventor Tal Mizrahi
Tal Mizrahi 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).
-
Patent number: 10673727Abstract: A first network device forwards a plurality of packets to the one or more network ports for transmission to a second network device, wherein ones of the packets include a field for indicating different, independent types of information. A field populator is configured to, for each of at least some packets among the plurality of packets: determine, from a set of different, independent types of information, a type of information to be included in the field of the packet according to a schedule known by the second network device, and populate the field in the packet only with data according to the type of information determined according to the schedule.Type: GrantFiled: May 23, 2017Date of Patent: June 2, 2020Assignee: Marvell Israel (M.I.S.L) Ltd.Inventor: Tal Mizrahi
-
Patent number: 10651974Abstract: A network device receives a packet having i) a first field that is to be updated by the network device, and ii) a second field that includes current error detection information corresponding to content of the packet, the content including the first field. The network device determines an update value that is to be added to a current value of the first field to generate a new value of the first field. The network device generates new error detection information using the current error detection information and the update value, and without using the current value of the first field. The network device modifies the second field to include the new error detection information, and modifies the first field to include the new value.Type: GrantFiled: February 20, 2018Date of Patent: May 12, 2020Assignee: Marvell Asia Pte, Ltd.Inventor: Tal Mizrahi
-
Patent number: 10616001Abstract: In a method for egress processing packets in a network device, a first stage engine, implemented in hardware, identifies a particular set of computer-readable instructions for a particular packet. The particular set of computer-readable instructions is identified from among a plurality of sets of computer-readable instructions stored in a memory, respective ones of the plurality of sets of computer-readable instructions being for performing different sets of egress processing operations with respect to different packets. A second stage processor, configured to execute computer-readable instructions stored in the memory, executes the particular set of computer-readable instructions, identified by the first stage engine, to perform the corresponding set of egress processing with respect to the particular packet.Type: GrantFiled: May 2, 2018Date of Patent: April 7, 2020Assignee: Marvell Asia Pte, Ltd.Inventors: Ilan Mayer-Wolf, Ilan Yerushalmi, David Melman, Tal Mizrahi
-
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
-
Publication number: 20200007448Abstract: A general load balancing value for a packet received by a network device is generated based at least in part on information in a header of the packet. The packet is directed to a network interface group comprising a set of network interfaces via which the packet can be transmitted towards a destination of the packet. A group-specific load balancing value for the packet is then determined based on group-specific load balancing configuration corresponding to the network interface group and is used to select a network interface, from among the set of network interfaces, and the packet is transmitted towards the destination of the packet via the selected network interface. The group-specific load balancing configuration corresponding to the network interface group is subsequently reconfigured to redistribute selection of network interfaces, among the set of network interfaces, for transmission of packets subsequently directed to the network interface group.Type: ApplicationFiled: May 3, 2019Publication date: January 2, 2020Inventors: Tal MIZRAHI, David MELMAN, Adar PEERY
-
Publication number: 20190394108Abstract: A network device comprises time measurement units configured to measure receipt times and transmit times of packets received/transmitted via network interfaces. One or more memories store configuration information that indicates certain network interface pairs and/or certain packet flows that are enabled for latency measurement. A packet processor includes a latency monitoring trigger unit configured to select, using the configuration information, packets that are forwarded between the certain network interface pairs and/or that belong to the certain packet flows for latency monitoring.Type: ApplicationFiled: September 9, 2019Publication date: December 26, 2019Inventors: Tal MIZRAHI, David MELMAN, Adar PEERY, Rami ZEMACH
-
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
-
Patent number: 10469382Abstract: A switching system comprises a controlling switch and multiple port extenders. The controlling switch includes: a plurality of controlling switch ports; and a first packet processor having a first forwarding engine. The first forwarding engine is configured to forward packets received at any controlling switch port to any other controlling switch port. Each of at least some multiple port extenders includes: at least one local upstream port coupled to the controlling switch directly or via another port extender; a plurality of local downstream ports; and a second packet processor having a second forwarding engine and a forwarding database. The second forwarding engine is configured to forward packets i) received at the downstream ports, and ii) for which the forwarding database does not include forwarding information, only to the at least one upstream port. The second packet processor has reduced functionality as compared to the first packet processor.Type: GrantFiled: January 24, 2018Date of Patent: November 5, 2019Assignee: Marvell World Trade Ltd.Inventors: Ilan Yerushalmi, David Melman, Tal Mizrahi, Donald Pannell
-
Patent number: 10439748Abstract: A network device receives a packet that conforms to a protocol that i) defines a time stamp field, ii) does not define a dedicated field for time correction information, and iii) defines a plurality of general purpose extension fields. The packet includes (i) a time stamp generated by a source node in the time stamp field, and (ii) a time correction value corresponding to multiple ones of the plurality of intermediate nodes, the time correction value being located in one of the general purpose extension fields. The network device identifies (i) a time specified by the time stamp, and (ii) time correction information specified in the one general purpose extension field, and uses the time correction information and the time specified by the time stamp to synchronize a clock maintained by the network device to a clock maintained by the source node.Type: GrantFiled: February 21, 2018Date of Patent: October 8, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventor: Tal Mizrahi
-
Patent number: 10411983Abstract: A network device comprises time measurement units configured to measure receipt times and transmit times of packets received/transmitted via network interfaces. One or more memories store configuration information that indicates certain network interface pairs and/or certain packet flows that are enabled for latency measurement. A packet processor includes a latency monitoring trigger unit configured to select, using the configuration information, packets that are forwarded between the certain network interface pairs and/or that belong to the certain packet flows for latency monitoring.Type: GrantFiled: May 17, 2017Date of Patent: September 10, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Tal Mizrahi, David Melman, Adar Peery, Rami Zemach
-
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
-
Publication number: 20190238469Abstract: Methods and systems are provided for processing a received packet based on associated state information. A packet processor of a network device receives a packet from a network. The received packet is classified as belonging to at least one respective identified flow from among a plurality of identified flows. For a respective received packet that belongs to an identified flow a current state value for the identified flow is ascertained based on a state table. The current state value is assigned to the respective received packet based on the current state value using the state table for the identified flow. A packet processing operation is subsequently performed on the respective received packet based in part on the state value of the identified flow to which the respective packet belongs.Type: ApplicationFiled: October 31, 2018Publication date: August 1, 2019Inventors: Tal Mizrahi, David Melman
-
Patent number: 10348626Abstract: A network device configured to store a plurality of network forwarding addresses as an encoded linked list of attributes of network values and forwarding addresses. The network device is configured to encode subsequent elements of the linked list such that a packet processor of the network device, in response to a data packet, processes only a difference between the elements without processing all of the respective attributes. The network device is further configured to forward the data packet as a result of reading the encoded elements of the linked list.Type: GrantFiled: June 17, 2014Date of Patent: July 9, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventor: Tal Mizrahi
-
Patent number: 10244047Abstract: A data unit is received at a first one of a plurality of network devices associated with a first one of the plurality of link aggregate groups. A hashing function is applied to the data unit to generate a first hash value, where the first hash value identifies a communication link in the first one of the plurality of link aggregate groups. The data unit is received at a second one of the plurality of network devices associated with a second one of the plurality of link aggregate groups. The hashing function is applied to the data unit to generate a second hash value that is distinct from the first value, where the second hash value identifies a communication link in a second one of the plurality of link aggregate groups along which the data unit is to be communicated.Type: GrantFiled: January 11, 2016Date of Patent: March 26, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Tal Mizrahi, Aviran Kadosh, Denis Krivitski
-
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
-
Patent number: 10216220Abstract: A first request signal that indicates a request for a time maintained by a clock implemented in first circuitry is sent from second circuitry. The first circuitry utilizes a first clock signal derived from a first oscillator and the second circuitry utilizes a second clock signal derived from a second oscillator. The first circuitry adjusts a first time value from the clock to compensate for a first latency or jitter caused by converting the first request signal to a second request signal synchronized to the first clock. The second circuitry further adjusts the adjusted first time value to generate a second time value that compensates for i) a second latency between sending the first request signal and receiving the adjusted first time value, and ii) a third latency or jitter caused by synchronizing the adjusted first time value to the second clock.Type: GrantFiled: January 15, 2017Date of Patent: February 26, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventor: Tal Mizrahi
-
Patent number: 10205658Abstract: Aspects of the disclosure provide a method for processing packets in a network device. The method can include populating a policy database with one or more bidirectional rules that are to be selectively applied in a packet processing operation. Ones of the bidirectional rules can include at least: a first address field populated with a first value corresponding to a source address for first packet flow that is traversing a network in a first direction and to a destination address for second packet flow that is traversing the network in a second direction different from the first direction, a second address field populated with a second value, and an action that is applicable to packet flow having a respective source address and destination address corresponding to the first values stored in the first address field and to the second values stored in the second address field.Type: GrantFiled: January 7, 2016Date of Patent: February 12, 2019Assignee: MARVELL ISRAEL (M.I.S.L) LTD.Inventors: Yoram Revah, Tal Mizrahi, David Melman
-
Patent number: 10205547Abstract: A network device includes one or more ports coupled to a network, a path determination module, and a clock synchronization module. The one or more ports receive a plurality of time synchronization packets from a master clock device. The path determination module identifies, based on respective path information included in each of at least some of the plurality of time synchronization packets, particular communication paths among two or more communication paths between the master clock device and the network device, via which the respective time synchronization packets traveled from the master clock device to the network device. The clock module determines a system time clock based on respective time information included in the at least some of the plurality of time synchronization packets and the identifications of the particular communication paths via which the respective time synchronization packets traveled from the master clock device to the network device.Type: GrantFiled: October 30, 2017Date of Patent: February 12, 2019Assignee: Marvell Israel (M.I.S.L) Ltd.Inventor: Tal Mizrahi
-
Publication number: 20180287820Abstract: In a method for egress processing packets in a network device, a first stage engine, implemented in hardware, identifies a particular set of computer-readable instructions for a particular packet. The particular set of computer-readable instructions is identified from among a plurality of sets of computer-readable instructions stored in a memory, respective ones of the plurality of sets of computer-readable instructions being for performing different sets of egress processing operations with respect to different packets. A second stage processor, configured to execute computer-readable instructions stored in the memory, executes the particular set of computer-readable instructions, identified by the first stage engine, to perform the corresponding set of egress processing with respect to the particular packet.Type: ApplicationFiled: May 2, 2018Publication date: October 4, 2018Inventors: Ilan MAYER-WOLF, Ilan YERUSHALMI, David MELMAN, Tal MIZRAHI
-
Publication number: 20180287819Abstract: A packet type corresponding to a packet received by a network device is determined. Based on the packet type, one or more header fields to be extracted from a header of the packet are identified. Identifying the one or more header fields includes extracting, from a memory based on the packet type, respective indicators of locations of the one or more header fields and respective indicators of sizes of the one or more header fields. The one or more identified header fields from the header of the packet, based on the respective indicators of locations of the one or more header fields and respective indicators of sizes of the one or more header fields. The packet is then processed based on the one or more header fields extracted from the header. The processing includes deter mining at least one port to which to forward the packet.Type: ApplicationFiled: March 28, 2018Publication date: October 4, 2018Inventors: Ilan MAYER-WOLF, Ilan YERUSHALMI, David MELMAN, Tal MIZRAHI