====== Attendees ====== * glebius@ * gallatin@ * olivier@ * rscheff@ * thj@ * tuexen@ * Cheng C ====== Ongoing Short Term Projects ====== * tuexen@ wants to discuss the behaviour of ''%%recv(fd, NULL, 0, 0)%%'' for ''%%SOCK_DGRAM%%'' sockets. tuexen@ will bring this up on the net@ mailing list. * It was discussed whether the ''%%TCP_LOG%%'' socket option should be inherited from the listener. jtl@ said that this should be the case, but interaction with the ''%%sysctl%%''-variable ''%%net.inet.tcp.bb.log_auto_ratio%%'' should be taken into account. tuexen@ will look at it and add jtl@ as a reviewer. * ''%%netstat%%'' does not support reading connection information from a core file anymore. tuexen@ will document that in the man-page. * rscheff@ wants feedback on: [[https://reviews.freebsd.org/D21117|D21117]]. tuexen@ will review it. * gallatin@ asks whether RACK and BBR shouldn't be compiled always to get coverage by universe builds. tuexen@ raised concerns about the BBR stack, since it is not tested for a time and only implements BBRv1 (which has issues) and not the upcoming version BBRv2 (which fixes the issues known for BBRv1). It was agreed to build both BBR and RACK and let BBR issue a deprecation notice, when it is noted. gallatin@ is preparing a patch for this, tuexen@ will review it. tuexen@ will also improve the ''%%man%%''-pages for RACK and BBR to clarify what is known to be working and what needs testing. For example, the RACK stack has been tested with the newreno congestion module, but not with CUBIC and DCTCP. * glebius@ asks whether it makes sense to improve the TCP timer precision. tuexen@ states that this is very useful for testing purposes. glebius@ will provide a patch to tuexen@ for testing and tuexen@ will provide feedback, if such a patch us useful for %%FreeBSD%% in general. This applies to the default stack only, not the the RACK or BBR stack, which used HPTS for timers. * At least for testing purposes (packetdrill) it would be good to have LRO support for tun interfaces. tuexen@ suggested to generalize LRO to not depend on an Ethernet header being present. gallatin@ prefers to not make the LRO code more complex, since it most likely will impact the performance. tjh@ has [[https://reviews.freebsd.org/D37437|D37437]] under review, which allows the tun interface to add an Ethernet header. tuexen@ will test this to see if it can also be used to enable LRO for the tun interface. * tuexen@ asks how source address selection works. In particular for the case where you have a single global and a single private IPv4 address, the default route goes to a hop in the private network and you are sending a packet to a global address. It was suggested to contact melifaro@. ====== Ongoing Longer Term Projects ====== * rscheff@ is improving %%AccECN%% code: [[https://reviews.freebsd.org/D36303|D36303]]. * [[https://reviews.freebsd.org/D23230|D23230]] is implementing ECN++. * [[https://reviews.freebsd.org/D28822|D28822]] improves PRR, needs some cleanup. * tuexen@ wants to write a tool which dumps the BBLog information of a TCP endpoint from a life system or a core. Using ''%%kvm_read()%%'' has drawbacks as glebius@ pointed out, using a python kgdb script may be an alternative. An alternative is to write a python kgdb script which pumps data into ''%%tcplog_dumper%%''. This would allow to minimize code duplication. * jtl@ suggested to reduce the MSL value used to control the ''%%TIMEWAIT%%'' state. It was discussed to use a maximum RTT instead. tuexen@ will add the tracking of the maximum RTT and make this algorithm used when the ''%%sysctl%%''-variable ''%%net.inet.tcp.msl%%'' is set to zero. In a separate the default of the ''%%sysctl%%''-variable ''%%net.inet.tcp.msl%%'' will be changed to zero. tuexen@ will also reach out to the TCPM working group to see what other implementations do. ====== Next Meeting ====== 12 January 2023 @ 1500 UTC