Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ECN counters #960

Merged
merged 5 commits into from
Sep 19, 2023
Merged

ECN counters #960

merged 5 commits into from
Sep 19, 2023

Conversation

rszarecki
Copy link
Contributor

@rszarecki rszarecki commented Sep 16, 2023

Change Scope

Adds per queue packets, octets counters for traffic that:

  • has ECN field remarked form ECT(0), ECT(2) to CE dodepoint.
  • has beed enqueued while selected by AQN (such WRED)
module: openconfig-qos
  +--rw qos
     +--rw interfaces
        +--rw interface* [interface-id]
           +--rw output
              +--rw queues
                 +--rw queue* [name]
                    +--ro state
                       +--ro name?                       string
                       +--ro queue-management-profile?   -> ../../../../../../../queue-management-profiles/queue-management-profile/config/name
                       +--ro max-queue-len?              oc-yang:counter64
                       +--ro avg-queue-len?              oc-yang:counter64
                       +--ro transmit-pkts?              oc-yang:counter64
                       +--ro transmit-octets?            oc-yang:counter64
                       +--ro dropped-pkts?               oc-yang:counter64
                       +--ro dropped-octets?             oc-yang:counter64
                       +--ro ecn-marked-pkts?            oc-yang:counter64
                       +--ro ecn-marked-octets?          oc-yang:counter64
                       +--ro ecn-selected-pkts?          oc-yang:counter64
                       +--ro ecn-selected-octets?        oc-yang:counter64

Table below shows counter's behaviour:

ingressing packets ECN bits queue utilization ecn-selected-pkts, ecn-selected-octets ecn-marked-pkts , ecn-marked-octets
non-ECN (00) below RED min-treshold not increments not increments
non-ECN (00) between RED min-treshold and max-threshold increments w/ probability rate derived form RED slope not increments
non-ECN (00) above RED max-treshold increments not increments
ECT (01) below RED min-treshold not increments not increments
ECT (01) between RED min-treshold and max-threshold increments w/ probability rate derived form RED slope increments w/ probability rate derived form RED slope
ECT (01) above RED max-treshold increments increments
ECT (10) below RED min-treshold not increments not increments
ECT (10) between RED min-treshold and max-threshold increments w/ probability rate derived form RED slope increments w/ probability rate derived form RED slope
ECT (10) above RED max-treshold increments increments
CE (11) below RED min-treshold not increments not increments
CE (11) between RED min-treshold and max-threshold increments w/ probability rate derived form RED slope not increments
CE (11) above RED max-treshold increments not increments

Change is backward compatible

Platform Implementations

Arista: link to documentation

show qos interface et25/3 ecn counters queue
Ethernet25/3:
  Tx-Queue             Marked Packets
-----------    -----------------------
0                                   -
2                                   -
3                                   0
4                                   0
5                            10000000
6                                   0
7                                   0

Arista implements ecn-selected-pkts, ecn-selected-octets

IExtreme Networks: link to documentation

device# show qos red statistics interface eth 0/1

Statistics for interface: Eth 0/1
       Port Statistics:
           Packets Dropped: 147, Queue Full Drops: 222, ECN Marked: 234

Dell/EMC link to documentation


DellEMC#show qos statistics wred-ecn

--------------------ECN Packet Counter Details------------------------
Interface MarkedTxPkts TotalDropPkts(ECN Enabled Queues)
----------------------------------------------------------------------
Fo 1/32/1 122226925 122178941
Fo 1/1/1 340808237 169105794
Fo 1/17/1 0 0

Cisco IOS XR example:

Router# show policy-map int hu 0/0/0/35 output 
TenGigE0/0/0/6 output: pm-out-queue

HundredGigE0/0/0/35 output: egress_qosgrp_ecn
 
Class tc7
  Classification statistics          (packets/bytes)     (rate - kbps)
    Matched             :           195987503/200691203072         0
    Transmitted         :           188830570/193362503680         0
    Total Dropped       :             7156933/7328699392           0
  Queueing statistics
    Queue ID                             : 18183
    Taildropped(packets/bytes)           : 7156933/7328699392
 
    WRED profile for
    RED Transmitted (packets/bytes)            : N/A
    RED random drops(packets/bytes)            : N/A
    RED maxthreshold drops(packets/bytes)      : N/A
    RED ecn marked & transmitted(packets/bytes): 188696802/193225525248

Cisco implements ecn-marked-pkts, ecn-marked-octets

@rszarecki rszarecki requested a review from a team as a code owner September 16, 2023 04:38
@OpenConfigBot
Copy link

OpenConfigBot commented Sep 16, 2023

Major YANG version changes in commit 1a751ce:

@OpenConfigBot
Copy link

OpenConfigBot commented Sep 16, 2023

Compatibility Report for commit 1a751ce:
pyangbind@6b85c2b

@dplore
Copy link
Member

dplore commented Sep 19, 2023

Reviewed on OC Operators call September 19, 2023 without objection. Thanks for the contribution

@dplore
Copy link
Member

dplore commented Sep 19, 2023

/gcbrun

@dplore dplore merged commit 5d38d85 into openconfig:master Sep 19, 2023
5 checks passed
@rszarecki rszarecki deleted the ECN-counters branch October 16, 2023 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants