Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Sep 2025 18:00:22 +0000
From:      bugzilla-noreply@freebsd.org
To:        net@FreeBSD.org
Subject:   [Bug 289333] [Feature Request] HFSC overhead calculation
Message-ID:  <bug-289333-7501-STfHqwu7O6@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-289333-7501@https.bugs.freebsd.org/bugzilla/>
References:  <bug-289333-7501@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D289333

--- Comment #4 from Daniel Engel <freebsd@danielengel.com> ---
(In reply to Oleksandr Kryvulia from comment #3)
I don't think this configuration would address the problem at all.=20=20

I'll leave aside the potential 'burst' issue with bufferbloat for now, sinc=
e I
don't actually know how big of a buffer my modem has internally.=20=20

The main problem is that not all 700 kbps traffic flows are created equal.=
=20
Consider the range of TCP/IP packet sizes:=20

* Large packet case (e.g. file upload):
  58 pkt/s * 1492 bytes/pkt * 8 =3D 692288 kbps (dummynet output)
  58 pkt/s * (1492+38) bytes/pkt * (53/48) * 8 =3D 783870 kbps (modem outpu=
t)

* Small packet case (e.g. ACK):=20
  2187 pkt/s * 40 bytes/pkt =3D 699840 kbps (dummynet output)
  2187 pkt/s * (40+38) bytes/pkt * (53/48) * 8 =3D 1506843 kbps (modem outp=
ut)

In the latter case, the modem would have to drop almost 50% of packets even
though dummynet is shaping the link to the same throughput in both cases.=20

NOTE 1: I'm not 100% sure on the specific framing differences between ADSL =
and
ADSL2, or exactly what layers are present on my ADSL2 connection.  I'm basi=
ng
my calculations on the summary linked below.  It seems consistent with my
real-world experience:=20=20

https://blog.ipspace.net/2009/03/adsl-overhead/

NOTE 2: Throughput for ACKs is even worse than the calculation above.  ATM =
will
add padding if necessary to fill out the last cell.  So, a 78 byte ACK(20 T=
CP +
20 IP + 38 ADSL) actually wastes  an additional 18 bytes to fill out 2 ATM
frames before encoding (106 bytes on the wire).=20=20

Regarding "stateless rules", I use PFsense floating rules and haven't seen =
any
issues with queuing inbound or outbound traffic correctly.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-289333-7501-STfHqwu7O6>