I want to add that these two also work for simple.qos three tier HTB+fq_codel setup. But essentially the idea is the same except that these options precede cake's existence and IIRC inspired cake's wash functionality (especially the fact that cake will wash only after using DSCPs to steer packets into the different priority tiers, because if you do not want to use priority tiers, configure besteffort...)
P.S.: when using cake I would manually add the wash keyword to iqdisc_opts and eqdisc_opts that way you have control about the directionality of the washing.
Some users report that their ISPs show that (some) egress DSCPs affect packet loss and/or latency and jitter and hence want to wash their internal DSCPs before sending packets to the ISP, but at the same time might want to use DSCPs internally both for cake and for WiFi AC selection...
squash_ingress: use if you do not want to use priritosation based on DSCPs for packets from the internet. Unless you have an agreement with your ISP it is very unlikely that DSCPs of incoming packets are according to your marking preferences. If you do not use anything that sets DSCPs for those packets according to your desires (e.g. one of the qosify, qosmate, DSCPclassify, cake-qos-simple OpenWrt projects) then this option might be for you...
That said, I personally use neither of the listed projects but do not set squash_ingress, but I do regularly check the tc -s qdisc output to see which priority tins my ISP services. Since the majority is inside the BestEffort tin, the side-effects from that small experiment are minimal.
squash_dscp: You use this if you do not want the internet DSCPs to be visible/active within your own network.
So squash_ingress makes DSCPs ineffective as all traffic shares a single priority tier, but it conserves the DSCP values. squash_dscp however re-marks all DSCP values to zero.
So, you check what the ISP provides and depending on the result and whether you want to set your own markings, you set these values.
I will check what my ISP does.
Thanks!
Not really, I just want a quick way to check whether my ISP zeros all DSCPs, as some grey beards i the IETF claim. Spoiler alert: no my ISP lets quite some DSCPs through my way.