Project

General

Profile

Actions

Bug #10211

closed

Limiters ECN input validation problem

Added by Greg M about 4 years ago. Updated almost 4 years ago.

Status:
Resolved
Priority:
Very Low
Category:
Traffic Shaper (Limiters)
Target version:
Start date:
01/27/2020
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
Release Notes:
Affected Version:
2.4.5
Affected Architecture:

Description

Hi.

You create limiters with ECN.
Then you decide to remove ECN and so remove ECN checkbox.

Limiter should be updated but its not.
Syslog error:
/rc.filter_configure_sync: The command '/sbin/ipfw /tmp/rules.limiter' returned exit code '65', the output was 'Line 4: unrecognised option ``noecn'''

So coding error somwhere, but it would be great if this was fixed before 2.4.5 hits the release.

Actions #1

Updated by Jim Pingle about 4 years ago

  • Subject changed from Limiters ECN problem to Limiters ECN input validation problem
  • Status changed from New to Feedback
  • Priority changed from High to Very Low

I can't reproduce that error here.

It works fine if your selected QMA and scheduler support it from what I can tell.

For example, a quick test:

: cat /tmp/rules.limiter
pipe 1 config  bw 1000Kb codel target 5ms interval 100ms noecn
sched 1 config pipe 1 type fq_codel target 5ms interval 100ms quantum 1514 limit 10240 flows 1024 noecn
: ipfw /tmp/rules.limiter
: 

(No errors in output)

If anything it looks like you found a combination of settings that input validation should reject, but it isn't.

We'll need to know exactly what is set in the GUI when it works/doesn't work and see the contents of your /tmp/rules.limiter.

Too late for 2.4.5.

Actions #2

Updated by Viktor Gurov about 4 years ago

RED/GRED limiters do not have noecn option, https://www.freebsd.org/cgi/man.cgi?ipfw(8):

red | gred w_q/min_th/max_th/max_p
 [ecn] Make use of the RED (Random Early Detection) queue management
 algorithm. w_q and max_p are floating point numbers between 0 and
 1 (inclusive), while min_th and max_th are integer numbers specify-
 ing thresholds for queue management (thresholds are computed in
 bytes if the queue has been defined in bytes, in slots otherwise).
 The two parameters can also be of the same value if needed. The
 dummynet also supports the gentle RED variant (gred) and ECN (Ex-
 plicit Congestion Notification) as optional. Three sysctl(8) vari-
 ables can be used to control the RED behaviour...

https://github.com/pfsense/pfsense/pull/4287

Actions #3

Updated by Jim Pingle about 4 years ago

  • Status changed from Feedback to Pull Request Review
Actions #4

Updated by Renato Botelho about 4 years ago

  • Status changed from Pull Request Review to Feedback
  • Assignee set to Renato Botelho
  • Target version set to 2.5.0
  • % Done changed from 0 to 100

PR has been merged. Thanks!

Actions #5

Updated by Viktor Gurov about 4 years ago

  • Status changed from Feedback to Resolved

tested on 2.5.0.a.20200424.1759

now it correctly sets/unsets ecn option for RED/GRED limiters

Actions #6

Updated by Jim Pingle almost 4 years ago

  • Status changed from Resolved to Feedback
  • Target version changed from 2.5.0 to 2.4.5-p1
Actions #7

Updated by Jim Pingle almost 4 years ago

  • Status changed from Feedback to Resolved

No errors with this configuration now. When ECN is checked, a RED limiter has ecn in the rule. When unchecked, it is omitted. No errors loading ruleset.

Actions

Also available in: Atom PDF