p4-apps@lists.p4.org

P4 Applications Working Group

View all threads

1/12 meeting notes

LJ
Lee, Jeongkeun
Wed, Jan 13, 2021 1:28 AM

Attendees: Rajshekhar B. (Arista), Ramesh S. (Cisco), Mukesh H. (VMware), Jonathan S. (Intel, Deep Insight), Mickey S. (Intel, Barefoot),  JK L. (Intel, E2E App).

Three topics were discussed today.

  • Drop reason code
  • Domain ID mgmt (cont'd)
  • Report traffic load balancing
  1. Drop reason
    We agreed to use the SAI drop reasons as basis.
    https://github.com/opencomputeproject/SAI/blob/master/inc/saidebugcounter.h

It has two enums, one for ingress and the other for egress. Around 100 reasons in total.
It assumes a 32b or larger field to carry the reason code. INT and Report spec has 8 bits.

AIs:

  • Raj will propose a structure to fit the drop reasons into 8 bits while keeping simple hierarchy and reserved space for future extension.
  • Ramesh, Mukesh, Mickey to check with engineering for any potential issue in using SAI drop reasons.
  1. Metadata library and instruction bitmap
    Agreed to create a pool/library of metadata definitions (format and semantics). The library will be open for everyone in the WG to add a new definition.

For INT standard instructions, the INT spec will continue to define the bitmap for the set of standard metadata.
Each domain can do the same for domain-specific instruction.

AI:

  • Mickey will propose a change to the Yang model to use it as the metadata library.
  1. Report traffic load balancing
    Problem: Report pkt carries SEQ number assigned to report pkts originated from each reporting HW entity (switch ID + HW ID combo).
    For network load-balancing of the report traffic, some use case wants to add entropy into UDP src port of Report pkts. While this allows multi-path load balancing, the collector NIC RSS (Receiver Side Scaling) may spread the stream of report pkts to different threads, complicating the tracking of report SEQ number and detecting loss/reorder.

The WG agreed for the spec to recommend static UDP src port number by default, while allowing entropy or randomization in case the collector infra can handle varying UDP src port number. For example, some NICs can be configured to ignore UDP src port in RSS hash inputs.

AI:

  • Jonathan will create a PR with necessary spec text change.

Meanwhile, there is a progress in hosting P4 open-source projects under P4.org. We will share updates via email or in the next WG meeting.

Thanks,
JK
Mukesh

Attendees: Rajshekhar B. (Arista), Ramesh S. (Cisco), Mukesh H. (VMware), Jonathan S. (Intel, Deep Insight), Mickey S. (Intel, Barefoot), JK L. (Intel, E2E App). Three topics were discussed today. * Drop reason code * Domain ID mgmt (cont'd) * Report traffic load balancing 1. Drop reason We agreed to use the SAI drop reasons as basis. https://github.com/opencomputeproject/SAI/blob/master/inc/saidebugcounter.h It has two enums, one for ingress and the other for egress. Around 100 reasons in total. It assumes a 32b or larger field to carry the reason code. INT and Report spec has 8 bits. AIs: - Raj will propose a structure to fit the drop reasons into 8 bits while keeping simple hierarchy and reserved space for future extension. - Ramesh, Mukesh, Mickey to check with engineering for any potential issue in using SAI drop reasons. 2. Metadata library and instruction bitmap Agreed to create a pool/library of metadata definitions (format and semantics). The library will be open for everyone in the WG to add a new definition. For INT standard instructions, the INT spec will continue to define the bitmap for the set of standard metadata. Each domain can do the same for domain-specific instruction. AI: - Mickey will propose a change to the Yang model to use it as the metadata library. 3. Report traffic load balancing Problem: Report pkt carries SEQ number assigned to report pkts originated from each reporting HW entity (switch ID + HW ID combo). For network load-balancing of the report traffic, some use case wants to add entropy into UDP src port of Report pkts. While this allows multi-path load balancing, the collector NIC RSS (Receiver Side Scaling) may spread the stream of report pkts to different threads, complicating the tracking of report SEQ number and detecting loss/reorder. The WG agreed for the spec to recommend static UDP src port number by default, while allowing entropy or randomization in case the collector infra can handle varying UDP src port number. For example, some NICs can be configured to ignore UDP src port in RSS hash inputs. AI: - Jonathan will create a PR with necessary spec text change. Meanwhile, there is a progress in hosting P4 open-source projects under P4.org. We will share updates via email or in the next WG meeting. Thanks, JK Mukesh
RB
Rajshekhar Biradar
Mon, Feb 8, 2021 10:59 AM

Hi Team,

Please find below attached the proposal for P4 drop reason codes. Feel free
to add/delete/modify the list.
https://docs.google.com/document/d/1u-9ra4fL592MEzxJHD_z9uSLZfoBT5mIaoCy5rWIglg/edit?usp=sharing

Drop reasons are divided into 6 categories:

L2 reasons
2.

L3 reasons
3.

Tunnel reasons
4.

Policy reasons
5.

Congestion related reasons
6.

Vendor specific reasons

Reason codes will be allotted once the drop reasons are finalized.

Let me know if you have any questions.

On Wed, Jan 13, 2021 at 6:59 AM Lee, Jeongkeun jk.lee@intel.com wrote:

Attendees: Rajshekhar B. (Arista), Ramesh S. (Cisco), Mukesh H. (VMware),
Jonathan S. (Intel, Deep Insight), Mickey S. (Intel, Barefoot),  JK L.
(Intel, E2E App).

Three topics were discussed today.

  • Drop reason code
  • Domain ID mgmt (cont'd)
  • Report traffic load balancing
  1. Drop reason
    We agreed to use the SAI drop reasons as basis.
    https://github.com/opencomputeproject/SAI/blob/master/inc/saidebugcounter.h

It has two enums, one for ingress and the other for egress. Around 100
reasons in total.
It assumes a 32b or larger field to carry the reason code. INT and Report
spec has 8 bits.

AIs:

  • Raj will propose a structure to fit the drop reasons into 8 bits while
    keeping simple hierarchy and reserved space for future extension.
  • Ramesh, Mukesh, Mickey to check with engineering for any potential issue
    in using SAI drop reasons.
  1. Metadata library and instruction bitmap
    Agreed to create a pool/library of metadata definitions (format and
    semantics). The library will be open for everyone in the WG to add a new
    definition.

For INT standard instructions, the INT spec will continue to define the
bitmap for the set of standard metadata.
Each domain can do the same for domain-specific instruction.

AI:

  • Mickey will propose a change to the Yang model to use it as the metadata
    library.
  1. Report traffic load balancing
    Problem: Report pkt carries SEQ number assigned to report pkts originated
    from each reporting HW entity (switch ID + HW ID combo).
    For network load-balancing of the report traffic, some use case wants to
    add entropy into UDP src port of Report pkts. While this allows multi-path
    load balancing, the collector NIC RSS (Receiver Side Scaling) may spread
    the stream of report pkts to different threads, complicating the tracking
    of report SEQ number and detecting loss/reorder.

The WG agreed for the spec to recommend static UDP src port number by
default, while allowing entropy or randomization in case the collector
infra can handle varying UDP src port number. For example, some NICs can be
configured to ignore UDP src port in RSS hash inputs.

AI:

  • Jonathan will create a PR with necessary spec text change.

Meanwhile, there is a progress in hosting P4 open-source projects under
P4.org. We will share updates via email or in the next WG meeting.

Thanks,
JK
Mukesh


P4-apps mailing list
P4-apps@lists.p4.org
http://lists.p4.org/mailman/listinfo/p4-apps_lists.p4.org

--
Thanks,
Raj

Hi Team, Please find below attached the proposal for P4 drop reason codes. Feel free to add/delete/modify the list. https://docs.google.com/document/d/1u-9ra4fL592MEzxJHD_z9uSLZfoBT5mIaoCy5rWIglg/edit?usp=sharing Drop reasons are divided into 6 categories: 1. L2 reasons 2. L3 reasons 3. Tunnel reasons 4. Policy reasons 5. Congestion related reasons 6. Vendor specific reasons Reason codes will be allotted once the drop reasons are finalized. Let me know if you have any questions. On Wed, Jan 13, 2021 at 6:59 AM Lee, Jeongkeun <jk.lee@intel.com> wrote: > Attendees: Rajshekhar B. (Arista), Ramesh S. (Cisco), Mukesh H. (VMware), > Jonathan S. (Intel, Deep Insight), Mickey S. (Intel, Barefoot), JK L. > (Intel, E2E App). > > Three topics were discussed today. > > * Drop reason code > * Domain ID mgmt (cont'd) > * Report traffic load balancing > > 1. Drop reason > We agreed to use the SAI drop reasons as basis. > https://github.com/opencomputeproject/SAI/blob/master/inc/saidebugcounter.h > > It has two enums, one for ingress and the other for egress. Around 100 > reasons in total. > It assumes a 32b or larger field to carry the reason code. INT and Report > spec has 8 bits. > > AIs: > - Raj will propose a structure to fit the drop reasons into 8 bits while > keeping simple hierarchy and reserved space for future extension. > - Ramesh, Mukesh, Mickey to check with engineering for any potential issue > in using SAI drop reasons. > > 2. Metadata library and instruction bitmap > Agreed to create a pool/library of metadata definitions (format and > semantics). The library will be open for everyone in the WG to add a new > definition. > > For INT standard instructions, the INT spec will continue to define the > bitmap for the set of standard metadata. > Each domain can do the same for domain-specific instruction. > > AI: > - Mickey will propose a change to the Yang model to use it as the metadata > library. > > 3. Report traffic load balancing > Problem: Report pkt carries SEQ number assigned to report pkts originated > from each reporting HW entity (switch ID + HW ID combo). > For network load-balancing of the report traffic, some use case wants to > add entropy into UDP src port of Report pkts. While this allows multi-path > load balancing, the collector NIC RSS (Receiver Side Scaling) may spread > the stream of report pkts to different threads, complicating the tracking > of report SEQ number and detecting loss/reorder. > > The WG agreed for the spec to recommend static UDP src port number by > default, while allowing entropy or randomization in case the collector > infra can handle varying UDP src port number. For example, some NICs can be > configured to ignore UDP src port in RSS hash inputs. > > AI: > - Jonathan will create a PR with necessary spec text change. > > Meanwhile, there is a progress in hosting P4 open-source projects under > P4.org. We will share updates via email or in the next WG meeting. > > Thanks, > JK > Mukesh > > > _______________________________________________ > P4-apps mailing list > P4-apps@lists.p4.org > http://lists.p4.org/mailman/listinfo/p4-apps_lists.p4.org > -- Thanks, Raj