Skip to content

PFC Watchdog Test Plan#2205

Open
SubhajitPalKeysight wants to merge 11 commits intosonic-net:masterfrom
SubhajitPalKeysight:PFC-WD
Open

PFC Watchdog Test Plan#2205
SubhajitPalKeysight wants to merge 11 commits intosonic-net:masterfrom
SubhajitPalKeysight:PFC-WD

Conversation

@SubhajitPalKeysight
Copy link
Contributor

Description of PR

Added test plan of PFC Watchdog. High Level description of technology and test strategy. Also included the documentation of the test cases ( Initial list ) and on subsequent version more tests to be appended. This test plan contains detailed :
Documentation of Test Case
Test Case - Objective
Test Case - Configuration
Test Steps

SuvenduMozumdar added a commit to SuvenduMozumdar/sonic-mgmt that referenced this pull request Sep 23, 2020
## 1.2 Setup configuration

### 1.2.1 DUT Configuration
•PFC watchdog must be enabled in the DUT.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PFC watchdog and PFC must be abled at the DUT by default.

Copy link
Contributor Author

@SubhajitPalKeysight SubhajitPalKeysight Oct 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for suggestion and added into "PFC watchdog and PFC must be enabled at the DUT by default "

### PFC Storm Restoration

The watchdog should continue count the PFC frames received on the queue. If there is no PFC frame received over T1 period. Then, re-enable the PFC on the queue and stop dropping packets if the previous mitigation was drop. T1 is port level parameter. T1 should be on the scale of hundred milliseconds.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a subsection of PFC watchdog implementation to introduce polling interval

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added Polling Interval Documentation

- On SONiC DUT configure the following:
1. Enable watchdog with default storm detection time (400ms) and restoration time (2sec).
2. Configure a single lossless priority value Pi (0 <= i <= 7).
3. To minimize configuration complexity, it is recommended that the SONiC DUT be configured as either Top of Rack (ToR) or Tier 0 (T0) switch with three VLAN interfaces.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Top of Rack (ToR) / Tier 0 (T0)

Copy link
Contributor Author

@SubhajitPalKeysight SubhajitPalKeysight Oct 5, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks , added the notation "Top of Rack (ToR) / Tier 0 (T0)"

#### 1.3.1.3 Test Configuration

- On SONiC DUT configure the following:
1. Enable watchdog with default storm detection time (400ms) and restoration time (2sec). Please note that different switches have different detection times and restoration times, e.g., 200ms and 400ms.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not specify any concrete values here! Different platforms use different detection time, restoration time and polling interval

Copy link
Contributor Author

@SubhajitPalKeysight SubhajitPalKeysight Oct 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your comment. I've removed the specific values.

2. Traffic 2<->3 : Bi-directional traffic between Keysight port 2 and port 3, with DSCP value mapped to lossless priority Pi configured in the DUT. Traffic Tx rate should be configured as 50% of line rate.
3. PFC pause storm: Persistent PFC pause frames from Keysight
port 3 to et3 of DUT. Priority of the PFC pause
frames should be same as that configured in DUT and the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as the lossless priority configured at DUT

Copy link
Contributor Author

@SubhajitPalKeysight SubhajitPalKeysight Oct 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added "same as the lossless priority configured at DUT" in test plan documentation.


1. At time **_T<sub>startTraffic</sub>_** , start all the bi-directional lossless traffic items.
2. At time **_T<sub>startPause</sub>_** , start PFC pause storm.
3. At time **_T<sub>stopPause</sub>_** , stop PFC pause storm. (**_T<sub>stopPause</sub> - T<sub>startPause</sub>_**) should be larger than PFC storm detection time to trigger PFC watchdog.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

larger than PFC storm detection time + PFC watchdog polling interval

Copy link
Contributor Author

@SubhajitPalKeysight SubhajitPalKeysight Oct 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks , changed the documentation to incorporate "larger than PFC storm detection time + PFC watchdog polling interval"

* PFC watchdog is triggered on the corresponding lossless priorities at DUT interface et3.
* 'Traffic 1<->2' must not experience any packet loss in both directions. Its throughput should be close to 50% of the line rate.
* For 'Traffic 2<->3', between **_T<sub>startPause</sub>_** and **_T<sub>stopPause</sub>_** , there should be some packet loss in both directions.
* After **_T<sub>stopPause</sub>_** , the traffic throughput should gradually increase and become 50% of line rate in both directions.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is totally wrong. You mix two test cases

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Modification as per suggestion in meeting. We will add new test which you will be sending out in new revision of test plan.

@yxieca
Copy link
Collaborator

yxieca commented Mar 8, 2022

@baiwei0427 any further comments?

kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…rm-common] advance submodule head (sonic-net#11578)

linkmgrd:
* e0fe1d4 2022-07-27 | TSA enhancement (sonic-net#98) (HEAD -> 202205) [Jing Zhang]

utilities:
* 7d7e15e 2022-07-18 | [vnet_route_check] Align DB data parse logic with format used by swsscommon API (sonic-net#2268) (HEAD -> 202205) [Volodymyr Samotiy]
* b3d5d18 2022-07-20 | [MultiAsic] sudo reboot command doesn't gracefully stop Asic syncd# on multiasic platform (sonic-net#2258) [Marty Y. Lok]
* 504ebe6 2022-07-08 | Add 'traffic_shift_away' option to config load_minigraph (sonic-net#2240) [tjchadaga]
* 4079e4a 2022-06-20 | Gives cisco-8000 more flexibility to easily add subcommnads under show platform (sonic-net#2213) [Nathan Cohen]
* 46443c6 2022-07-27 | Update db_migrator to support `PORT_QOS_MAP|global` (sonic-net#2205) [bingwang-ms]
* d7fbdd6 2022-05-26 | fix for non-coherent cmis modules (sonic-net#2163) [qinchuanares]
* 79b4439 2022-06-24 | [sfpshow/sfputil] Enhance sfpshow and sfputil to behavior correctly on RJ45 ports (sonic-net#2111) [Kebo Liu]

swss:
* 275f311 2022-07-26 | [DualToR] Handle race condition between tunnel_decap and mux orchestrator (sonic-net#2397) (HEAD -> 202205) [Devesh Pathak]
* 47586e8 2022-07-22 | [EVPN]Fix missing Vlan member update notification in P2MP scenario (sonic-net#2388) [Sudharsan Dhamal Gopalarathnam]
* 7d5c73f 2022-07-19 | [macsecmgr]: Fix cleanup macsec objs if container stop (sonic-net#2376) [Ze Gan]
* c03996f 2022-07-17 | [orchagent]: Enhance initSaiPhyApi (sonic-net#2367) [andywongarista]
* 57890d7 2022-07-27 | Fix for remote system interface not getting created (sonic-net#2364) [skeesara-nokia]
* 1a93ec9 2022-07-13 | Orchagent changes for synchronizing npu/phy device Tx in the data path before enabling transceiver<CMIS compliant> Tx. (sonic-net#2277) [jaganbal-a]

sairedis:
* a4903be 2022-07-20 | Update PN with XPN support (sonic-net#1081) (HEAD -> 202205, github/202205) [Ze Gan]
* 2cb5671 2022-07-27 | Add SAI_OBJECT_TYPE_TUNNEL object to break-before-make list (sonic-net#1075) [Vaibhav Hemant Dixit]

platform-daemon:
* 901c6a1 2022-06-28 | [CMIS]Improved 400G link bring up sequence (sonic-net#254) (HEAD -> 202205) [Prince George]

platform-common:
* f223b3f 2022-07-09 | Support get_port_or_cage_type (sonic-net#288) (HEAD -> 202205) [Stephen Sun]

Signed-off-by: Ying Xie <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants