-
公开(公告)号:US20220279055A1
公开(公告)日:2022-09-01
申请号:US17570994
申请日:2022-01-07
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L69/22 , H04L45/745 , H04L49/00
Abstract: A method for generating configuration data for configuring a hardware switch is described. The method receives a description of functionality for the hardware switch. Based on the description, the method generates sets of match and action entries to configure the hardware switch to process packets. The method then determines, for each packet header field in a parse graph that specifies instructions for a parser of the switch to extract packet header fields from packets, whether the packet header field is used or modified by at least one match or action entry. The method generates for the parser of the hardware switch configuration data that instructs the parser to extract (i) packet header fields used or modified by at least one match or action entry to a first set of registers and (ii) packet header fields not used by any match or action entries to a second set of registers.
-
公开(公告)号:US20200099619A1
公开(公告)日:2020-03-26
申请号:US16695053
申请日:2019-11-25
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L12/743 , H04L12/933 , H04L12/721 , H04L12/741 , H04L29/06 , H04L12/715
Abstract: Some embodiments provide a method for processing a packet for a pipeline of a hardware switch. The pipeline, in some embodiments, includes several different stages that match against packet header fields and modify packet header fields. The method receives a packet that includes a set of packet headers. The method then populates, for each packet header in the set of packet headers, (i) a first set of registers with packet header field values of the packet header that are used in the pipeline, and (ii) a second set of registers with packet header field values of the packet header that are not used in the pipeline.
-
公开(公告)号:US20210176194A1
公开(公告)日:2021-06-10
申请号:US17255984
申请日:2019-03-08
Applicant: Barefoot Networks, Inc.
Inventor: Masoud Moshref JAVADI , Changhoon KIM , Patrick BOSSHART , Anurag AGRAWAL
IPC: H04L12/935 , G06N3/08 , G06F9/455
Abstract: Some embodiments provide a network forwarding element with a data-plane forwarding circuit that has a parameter collecting circuit to store and distribute parameter values computed by several machines in a network. In some embodiments, the machines perform distributed computing operations, and the parameter values that compute are parameter values associated with the distributed computing operations. The parameter collecting circuit of the data-plane forwarding circuit (data plane) in some embodiments (1) stores a set of parameter values computed and sent by a first set of machines, and (2) distributes the collected parameter values to a second set of machines once it has collected the set of parameter values from all the machines in the first set. The first and second sets of machines are the same set of machines in some embodiments, while they are different sets of machines (e.g., one set has at least one machine that is not in the other set) in other embodiments. In some embodiments, the parameter collecting circuit performs computations on the parameter values that it collects and distributes the result of the computations once it has processed all the parameter values distributed by the first set of machines. The computations are aggregating operations (e.g., adding, averaging, etc.) that combine corresponding subset of parameter values distributed by the first set of machines.
-
公开(公告)号:US20200259765A1
公开(公告)日:2020-08-13
申请号:US16789339
申请日:2020-02-12
Applicant: Barefoot Networks, Inc.
IPC: H04L12/935 , H04L29/06 , H04L12/933 , H04L12/851 , H04L12/741
Abstract: Some embodiments provide a network forwarding IC with packet processing pipelines, at least one of which includes a parser, a set of match-action stages, and a deparser. The parser is configured to receive a packet and generate a PHV including a first number of data containers storing data for the packet. A first match-action stage is configured to receive the PHV from the parser and expand the PHV to a second, larger number of data containers storing data for the packet. Each of a set of intermediate match-action stage is configured to receive the expanded PHV from a previous stage and provide the expanded PHV to a subsequent stage. A final match-action stage is configured to receive the expanded PHV and reduce the PHV to the first number of data containers. The deparser is configured to receive the reduced PHV from the final match-action stage and reconstruct the packet.
-
公开(公告)号:US20200162372A1
公开(公告)日:2020-05-21
申请号:US16687278
申请日:2019-11-18
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART , Michael G. FERRARA , Jay E. S. PETERSON
IPC: H04L12/721 , H04L12/26 , H04L12/935 , H04L12/851 , H04L12/741 , H04L29/06 , G06F9/448
Abstract: A forwarding element includes data plane forwarding circuitry for forwarding data messages received by the forwarding element to other network elements in a network. The data-plane forwarding circuitry includes several snapshot-match circuitry units. Each snapshot-match circuitry unit compares a set of header fields of incoming data messages with a corresponding matching data. The data-plane forwarding circuitry also includes several snapshot-capture circuitry units. Each snapshot-capture circuitry units stores a set of header fields of data messages that matches a corresponding matching data
-
公开(公告)号:US20250097325A1
公开(公告)日:2025-03-20
申请号:US18967234
申请日:2024-12-03
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L69/22 , H04L45/745 , H04L49/00
Abstract: A method for generating configuration data for configuring a hardware switch is described. The method receives a description of functionality for the hardware switch. Based on the description, the method generates sets of match and action entries to configure the hardware switch to process packets. The method then determines, for each packet header field in a parse graph that specifies instructions for a parser of the switch to extract packet header fields from packets, whether the packet header field is used or modified by at least one match or action entry. The method generates for the parser of the hardware switch configuration data that instructs the parser to extract (i) packet header fields used or modified by at least one match or action entry to a first set of registers and (ii) packet header fields not used by any match or action entries to a second set of registers.
-
公开(公告)号:US20200099618A1
公开(公告)日:2020-03-26
申请号:US16695049
申请日:2019-11-25
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L12/743 , H04L12/933 , H04L12/721 , H04L12/741 , H04L29/06 , H04L12/715
Abstract: Some embodiments provide a method for processing a packet for a pipeline of a hardware switch. The pipeline, in some embodiments, includes several different stages that match against packet header fields and modify packet header fields. The method receives a packet that includes a set of packet headers. The method then populates, for each packet header in the set of packet headers, (i) a first set of registers with packet header field values of the packet header that are used in the pipeline, and (ii) a second set of registers with packet header field values of the packet header that are not used in the pipeline.
-
公开(公告)号:US20200099617A1
公开(公告)日:2020-03-26
申请号:US16695044
申请日:2019-11-25
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L12/743 , H04L12/933 , H04L12/721 , H04L12/741 , H04L29/06 , H04L12/715
Abstract: Some embodiments provide a method for processing a packet for a pipeline of a hardware switch. The pipeline, in some embodiments, includes several different stages that match against packet header fields and modify packet header fields. The method receives a packet that includes a set of packet headers. The method then populates, for each packet header in the set of packet headers, (i) a first set of registers with packet header field values of the packet header that are used in the pipeline, and (ii) a second set of registers with packet header field values of the packet header that are not used in the pipeline.
-
公开(公告)号:US20230344922A1
公开(公告)日:2023-10-26
申请号:US18212546
申请日:2023-06-21
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L69/22 , H04L45/745 , H04L49/00
CPC classification number: H04L69/22 , H04L45/745 , H04L49/3009
Abstract: A method for generating configuration data for configuring a hardware switch is described. The method receives a description of functionality for the hardware switch. Based on the description, the method generates sets of match and action entries to configure the hardware switch to process packets. The method then determines, for each packet header field in a parse graph that specifies instructions for a parser of the switch to extract packet header fields from packets, whether the packet header field is used or modified by at least one match or action entry. The method generates for the parser of the hardware switch configuration data that instructs the parser to extract (i) packet header fields used or modified by at least one match or action entry to a first set of registers and (ii) packet header fields not used by any match or action entries to a second set of registers.
-
公开(公告)号:US20210194800A1
公开(公告)日:2021-06-24
申请号:US17152658
申请日:2021-01-19
Applicant: Barefoot Networks, Inc.
Inventor: Patrick BOSSHART
IPC: H04L12/721 , H04L29/08
Abstract: A method of identifying a path for forwarding a packet by a packet forwarding element. The method receives a packet that includes a plurality of fields that identify a particular packet flow. The method computes a plurality of hash values from the plurality of fields that identify the particular packet flow. Each hash value computed using a different hash algorithm. Based on the plurality of hash values, the method identifies a plurality of paths configured to forward the packets of the particular flow. The method identifies the status of each of the plurality of paths. Each path status identifies whether or not the corresponding path is operational. The method selects an operational path in the plurality of paths to forward the packet based on a priority scheme using said plurality of identified status bits.
-
-
-
-
-
-
-
-
-