Hi, On Sun, Nov 27, 2022 at 12:18:45PM +0100, Kristof Provost via Openvpn-devel wrote: > From: Kristof Provost <[email protected]> > > When DCO is active userspace doesn't see all of the traffic, so when we > access these stats we must update them. > > Retrieve kernel statistics every time we access the > link_(read|write)_bytes values. > > Introduce a dco_(read|write)_bytes so that we don't clobber the existing > statistics, which still count control packets, sent or received directly > through the socket.
To briefly summarize our discussion just now
- the general approach "pull data when needed" seems to be good for us
- nvlists have no general size limits (so we won't run into issues when
there are "MANY CLIENTS" active")
- but kernel side DCO today has 128 peers limit on FreeBSD "to be done"
- this patch can not be merged "as is" as it breaks Linux and Windows
(because the neeed DCO handling functions are not there yet) - but
having empty stub functions would be trivial
- there is a racy caveat on "peer timeout"
- kernel sends message "peer went away, because timeout"
- we go to the "run --client-disconnect etc." function handling
- we ask the kernel for the DCO read/write stats
- the client that *just ended* is no longer there, so, no stats
--> we want a notification for all "peer has exited" even for
"userland has told the kernel to" reasons (what Linux does today),
and that notification should contain the counters *for this peer*
- we want lots of feedback from Antonio :-)
Arne, anything I forgot?
gert
--
"If was one thing all people took for granted, was conviction that if you
feed honest figures into a computer, honest figures come out. Never doubted
it myself till I met a computer with a sense of humor."
Robert A. Heinlein, The Moon is a Harsh Mistress
Gert Doering - Munich, Germany [email protected]
signature.asc
Description: PGP signature
_______________________________________________ Openvpn-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openvpn-devel
