Page MenuHomeFreeBSD

tuexen (Michael Tuexen)
User

Projects

User Details

User Since
Feb 4 2016, 4:45 PM (263 w, 6 d)

Recent Activity

Sun, Feb 21

tuexen committed R10:b963ce4588b3: sctp: improve computation of an alternate net (authored by tuexen).
sctp: improve computation of an alternate net
Sun, Feb 21, 4:17 PM
tuexen committed R10:5ac839029d01: sctp: clear a pointer to a net which will be removed (authored by tuexen).
sctp: clear a pointer to a net which will be removed
Sun, Feb 21, 12:53 PM

Sat, Feb 20

tuexen accepted D28816: Use new SACK Recovery (RFC6675) pipe calculation with PRR.
Sat, Feb 20, 5:35 PM

Thu, Feb 18

tuexen accepted D28265: kern: net: remove TCP_LINGERTIME.

This fixes actually a bug. With this patch the following packetdrill runs successfully:

 0.000 socket(..., SOCK_STREAM, IPPROTO_TCP) = 3
+0.000 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
+0.000 bind(3, ..., ...) = 0
+0.000 setsockopt(3, SOL_SOCKET, SO_LINGER, {onoff=1, linger=0}, 8) = 0
+0.000 listen(3, 1) = 0
+0.000 < S    0:0(0)       win 65535 <mss 1460,sackOK,eol,eol>
+0.000 > S.   0:0(0) ack 1 win 65535 <mss 1460,sackOK,eol,eol>
+0.000 <  .   1:1(0) ack 1 win 65535
+0.000 accept(3, ..., ...) = 4
+0.000 close(3) = 0
+0.000 getsockopt(4, SOL_SOCKET, SO_LINGER, {onoff=128, linger=0}, [8]) = 0
+0.000 close(4) = 0
+0.000 > R.   1:1(0) ack 1 win     0

Thanks for finding the bug and fixing it.

Thu, Feb 18, 1:20 PM

Tue, Feb 16

tuexen added a comment to D28265: kern: net: remove TCP_LINGERTIME.

Let me have a look into it tomorrow. I agree, it looks strange.

Tue, Feb 16, 7:24 PM
tuexen added a comment to D28702: Rename rfc6675_pipe to sack.revised, and enable by default.

Any chance to have a more specific name than newsack?

Tue, Feb 16, 1:42 PM

Mon, Feb 15

tuexen added a comment to D28686: Perform TFO cookie exchange for all TFO cookie requests.

Let's discuss this at the next Transport call...

Mon, Feb 15, 6:33 PM
tuexen added a comment to D28686: Perform TFO cookie exchange for all TFO cookie requests.

My understanding is that if net.inet.tcp.fastpath.acceptany is set, all cookies are excepted. This includes empty cookies as mentioned in RFC 7413.

Correct, it may generate an empty cookie - and accept SYN data with a empty cookie. However, with acceptany, the server will never actually generate a FastOpen response, thus a Client will not know that TFO is supported by the server.

A client will have to perform SYN+data speculatively, since the Server never response even with an empty TFO.

Looking at the client side, it appears that SYN+data is only sent on a subsequent sendto(), if a prior session carried the TFO in the SYN,ACK from the server - when the client has a key entry for that server.

Let me expand the special case here perhaps, to return a zero-filled, minimum-length cookie without doing the hashing.

Mon, Feb 15, 4:41 PM
tuexen added a comment to D28686: Perform TFO cookie exchange for all TFO cookie requests.

My understanding is that if net.inet.tcp.fastpath.acceptany is set, all cookies are excepted. This includes empty cookies as mentioned in RFC 7413.

Mon, Feb 15, 3:38 PM

Sun, Feb 14

tuexen added inline comments to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.
Sun, Feb 14, 1:44 PM
tuexen added inline comments to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.
Sun, Feb 14, 12:42 PM
tuexen added inline comments to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.
Sun, Feb 14, 11:37 AM
tuexen committed R10:ed782b9f5a7a: tcp: improve behaviour when using TCP_NOOPT (authored by tuexen).
tcp: improve behaviour when using TCP_NOOPT
Sun, Feb 14, 11:19 AM
tuexen closed D28656: Fix SEG.SEQ in SYN.ACK when handling SYN in SYN-SENT on socket with TCP_NOOPT enabled..
Sun, Feb 14, 11:18 AM
tuexen added a comment to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.

The above modifications are necessary in combination with D28656 to allow the following packetdrill script to run successfully:

 0.00 `sysctl -w net.inet.tcp.hostcache.purgenow=1`
+0.00 `sysctl -w net.inet.tcp.syncookies_only=0`
+0.00 `sysctl -w net.inet.tcp.syncookies=1`
+0.00 `sysctl -w net.inet.tcp.rfc1323=1`
+0.00 `sysctl -w net.inet.tcp.sack.enable=1`
+0.00 `sysctl -w net.inet.tcp.ecn.enable=2`
Sun, Feb 14, 12:30 AM
tuexen added inline comments to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.
Sun, Feb 14, 12:21 AM
tuexen requested changes to D28652: Don't retain TF_RCVD_TSTMP when TF_NOOPT prevents sending timestamps.
Sun, Feb 14, 12:21 AM

Sat, Feb 13

tuexen requested review of D28656: Fix SEG.SEQ in SYN.ACK when handling SYN in SYN-SENT on socket with TCP_NOOPT enabled..
Sat, Feb 13, 11:57 PM

Tue, Feb 9

tuexen committed R10:f25266bee7da: libsysdecode: fix decoding of TCP_NOPUSH and TCP_MD5SIG (authored by tuexen).
libsysdecode: fix decoding of TCP_NOPUSH and TCP_MD5SIG
Tue, Feb 9, 10:43 PM

Mon, Feb 1

tuexen committed R10:bdd4630c9a9c: sctp: small cleanup, no functional change intended. (authored by tuexen).
sctp: small cleanup, no functional change intended.
Mon, Feb 1, 1:06 PM

Sun, Jan 31

tuexen committed R10:af885c57d65d: sctp: improve input validation (authored by tuexen).
sctp: improve input validation
Sun, Jan 31, 10:47 PM
tuexen committed R10:8dc6a1edca6d: sctp: fix a locking issue for old unordered data (authored by tuexen).
sctp: fix a locking issue for old unordered data
Sun, Jan 31, 10:01 AM

Thu, Jan 28

tuexen accepted D28357: Update the tcp_ratelimit code to finally work right :).

Please consider MFC'ing to stable/13.

Thu, Jan 28, 1:35 PM

Wed, Jan 27

tuexen added a comment to D25215: Remove TCP option alignment padding.

Let us discuss this on the bi-weekly transport call... I'm not convinced that the gain you get from this is higher than the risk to run into bugs on peer implementations.

Wed, Jan 27, 4:37 PM
tuexen accepted D28362: pf: Improve pf_rule input validation.

I tested the patch. It fixes: panic: pfi_dynaddr_setup: non-NULL dyn (2).

Wed, Jan 27, 9:19 AM

Jan 25 2021

tuexen accepted D28326: TCP PRR: Patch div/0 in tcp_prr_partialack.
Jan 25 2021, 1:28 PM
tuexen accepted D28329: Adjust line length in tcp_prr_partialack.
Jan 25 2021, 1:25 PM
tuexen added inline comments to D28329: Adjust line length in tcp_prr_partialack.
Jan 25 2021, 12:23 PM
tuexen accepted D28326: TCP PRR: Patch div/0 in tcp_prr_partialack.

I would suggest to separate the whitspace changes and the functional changes into two commits.

Jan 25 2021, 10:40 AM

Jan 24 2021

tuexen added a comment to D28326: TCP PRR: Patch div/0 in tcp_prr_partialack.

Maybe mm@ can test this?

Jan 24 2021, 9:34 PM
tuexen committed R10:e82353f84c58: tcp: add sysctl to tolerate TCP segments missing timestamps (authored by tuexen).
tcp: add sysctl to tolerate TCP segments missing timestamps
Jan 24 2021, 3:21 PM
tuexen committed R10:d05d908d6d3c: tcp: fix handling of TCP RST segments missing timestamps (authored by tuexen).
tcp: fix handling of TCP RST segments missing timestamps
Jan 24 2021, 3:17 PM
tuexen committed R10:0f7573ffd614: sctp: fix PR-SCTP stats when adding addtional streams (authored by tuexen).
sctp: fix PR-SCTP stats when adding addtional streams
Jan 24 2021, 10:18 AM
tuexen committed R10:7a051c0a7890: sctp: improve consistency (authored by tuexen).
sctp: improve consistency
Jan 24 2021, 9:16 AM

Jan 21 2021

tuexen added a comment to D28265: kern: net: remove TCP_LINGERTIME.

Can you describe how one can hit the code you are suggesting to be removed?

Jan 21 2021, 4:46 AM

Jan 14 2021

tuexen closed D28142: tcp: add sysctl to tolerate TCP segments missing timestamps.
Jan 14 2021, 8:54 PM
tuexen accepted D28142: tcp: add sysctl to tolerate TCP segments missing timestamps.
Jan 14 2021, 8:53 PM
tuexen closed D28143: tcp: fix handling of TCP RST segments missing timestamps.

Committed in cc3c34859eab1b317d0f38731355b53f7d978c97.

Jan 14 2021, 8:52 PM
tuexen added a comment to D28142: tcp: add sysctl to tolerate TCP segments missing timestamps.

Committed in d2b3ceddccac60b563f642898e3a314647666a10.

Jan 14 2021, 8:50 PM
tuexen committed R10:d2b3ceddccac: tcp: add sysctl to tolerate TCP segments missing timestamps (authored by tuexen).
tcp: add sysctl to tolerate TCP segments missing timestamps
Jan 14 2021, 7:40 PM
tuexen updated the diff for D28142: tcp: add sysctl to tolerate TCP segments missing timestamps.

Rebase.

Jan 14 2021, 7:37 PM
tuexen committed R10:cc3c34859eab: tcp: fix handling of TCP RST segments missing timestamps (authored by tuexen).
tcp: fix handling of TCP RST segments missing timestamps
Jan 14 2021, 1:52 PM
tuexen added a comment to D28143: tcp: fix handling of TCP RST segments missing timestamps.

Functionally, I concur that this is the right way to handle RST packets.

From an implementation, perhaps having the check for TH_RST and the V_tcp_tolerate_missing_ts sysctl of D28142 in a combined || check, rather than two fully independent branches (which is likely if D28142 and D28143 are applied independently).

Jan 14 2021, 10:16 AM

Jan 13 2021

tuexen added reviewers for D28143: tcp: fix handling of TCP RST segments missing timestamps: kevans, dmgk.
Jan 13 2021, 10:56 PM
tuexen requested review of D28143: tcp: fix handling of TCP RST segments missing timestamps.
Jan 13 2021, 10:50 PM
tuexen requested review of D28142: tcp: add sysctl to tolerate TCP segments missing timestamps.
Jan 13 2021, 10:19 PM

Jan 9 2021

tuexen closed D27948: Don't allow KTLS specific socket options on listening sockets.
Jan 9 2021, 8:28 PM
tuexen committed R10:6685e259e319: tcp: don't use KTLS socket option on listening sockets (authored by tuexen).
tcp: don't use KTLS socket option on listening sockets
Jan 9 2021, 8:28 PM

Jan 8 2021

tuexen added inline comments to D27948: Don't allow KTLS specific socket options on listening sockets.
Jan 8 2021, 8:35 PM
tuexen updated the diff for D27948: Don't allow KTLS specific socket options on listening sockets.

Address jhb's comments.

Jan 8 2021, 8:33 PM

Jan 4 2021

tuexen requested review of D27948: Don't allow KTLS specific socket options on listening sockets.
Jan 4 2021, 4:46 AM

Jan 1 2021

tuexen committed R10:a7aa5eea4fff: sctp: improve handling of aborted associations (authored by tuexen).
sctp: improve handling of aborted associations
Jan 1 2021, 3:44 PM

Dec 22 2020

tuexen accepted D27696: pf: Fix unaligned checksum updates.
Dec 22 2020, 12:18 PM

Dec 21 2020

tuexen accepted D27696: pf: Fix unaligned checksum updates.
Dec 21 2020, 11:11 PM
tuexen added a comment to D27696: pf: Fix unaligned checksum updates.

I guess you need a similar dance (for 16-bit) in pf_normalize_tcpopt() when updating the MSS.

Dec 21 2020, 10:30 AM

Dec 18 2020

tuexen committed rS368757: MFC r368593:.
MFC r368593:
Dec 18 2020, 10:13 AM
tuexen committed rS368755: MFC r368394:.
MFC r368394:
Dec 18 2020, 10:08 AM

Dec 15 2020

tuexen committed rS368657: When receiving a file having a length, which is a mulitple of the blocksize,.
When receiving a file having a length, which is a mulitple of the blocksize,
Dec 15 2020, 9:43 AM

Dec 14 2020

tuexen committed rS368647: Improve the counting of blocks used to transfer a file from the.
Improve the counting of blocks used to transfer a file from the
Dec 14 2020, 10:14 PM

Dec 13 2020

tuexen committed rS368622: Harden the handling of outgoing streams in case of an restart or INIT.
Harden the handling of outgoing streams in case of an restart or INIT
Dec 13 2020, 11:52 PM
tuexen committed R9:ec8c6190422c: Add entry for myself. (authored by tuexen).
Add entry for myself.
Dec 13 2020, 6:01 PM
tuexen committed R9:e21824478074: Add entry for myself. (authored by tuexen).
Add entry for myself.
Dec 13 2020, 5:39 PM
tuexen committed R9:479ae0fd75aa: Add entry for myself. (authored by tuexen).
Add entry for myself.
Dec 13 2020, 5:39 PM
tuexen committed R9:85c2e2bb7f60: Add entry for becoming a committer. (authored by tuexen).
Add entry for becoming a committer.
Dec 13 2020, 5:39 PM

Dec 12 2020

tuexen committed rS368593: Clean up more resouces of an existing SCTP association in case of.
Clean up more resouces of an existing SCTP association in case of
Dec 12 2020, 10:23 PM

Dec 10 2020

tuexen committed rS368521: Fix the TFTP client when performing a RRQ for files smaller than 512 bytes.
Fix the TFTP client when performing a RRQ for files smaller than 512 bytes
Dec 10 2020, 7:36 PM

Dec 6 2020

tuexen committed rS368394: When dropping packets (RRQ or WRQ) for debugging, report the send.
When dropping packets (RRQ or WRQ) for debugging, report the send
Dec 6 2020, 6:43 PM

Dec 3 2020

tuexen added a comment to D27464: Fix hung TCP sessions on shutdown.

When committing, please add a reference to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251540

Dec 3 2020, 8:11 PM
tuexen accepted D27464: Fix hung TCP sessions on shutdown.

It fixes the issue. For SCTP we would need something like sctpdrop. I can try to add that...

Dec 3 2020, 8:09 PM

Nov 30 2020

tuexen committed rS368183: MFC r367530:.
MFC r367530:
Nov 30 2020, 10:58 AM
tuexen committed rS368181: MFC r367530:.
MFC r367530:
Nov 30 2020, 9:46 AM
tuexen committed rS368180: MFC r367520:.
MFC r367520:
Nov 30 2020, 9:22 AM
tuexen committed rS368179: MFC r367464:.
MFC r367464:
Nov 30 2020, 9:21 AM
tuexen committed rS368178: MFC r366750:.
MFC r366750:
Nov 30 2020, 9:18 AM
tuexen committed rS368177: MFC r366517:.
MFC r366517:
Nov 30 2020, 9:17 AM
tuexen committed rS368176: MFC r366489:.
MFC r366489:
Nov 30 2020, 9:15 AM
tuexen committed rS368175: MFC r366483:.
MFC r366483:
Nov 30 2020, 9:14 AM
tuexen committed rS368174: MFC r366482:.
MFC r366482:
Nov 30 2020, 9:12 AM
tuexen committed rS368173: MFC r366480:.
MFC r366480:
Nov 30 2020, 9:11 AM
tuexen committed rS368172: MFC 366474:.
MFC 366474:
Nov 30 2020, 9:10 AM
tuexen committed rS368171: MFC r366426:.
MFC r366426:
Nov 30 2020, 9:09 AM
tuexen committed rS368170: MFC r366425:.
MFC r366425:
Nov 30 2020, 9:07 AM

Nov 23 2020

tuexen added inline comments to D27148: Improve RFC 7323 Compliance.
Nov 23 2020, 10:24 AM
tuexen committed rS367946: Fix two occurences of a typo in a comment introduced in r367530..
Fix two occurences of a typo in a comment introduced in r367530.
Nov 23 2020, 10:14 AM

Nov 20 2020

tuexen committed rS367891: Fix an issue I introuced in r367530: tcp_twcheck() can be called.
Fix an issue I introuced in r367530: tcp_twcheck() can be called
Nov 20 2020, 1:00 PM

Nov 12 2020

tuexen accepted D27173: Add regression test for D27164.
Nov 12 2020, 6:53 PM

Nov 10 2020

tuexen accepted D27164: Fix implicit automatic local port selection during connect calls.
Nov 10 2020, 6:56 PM
tuexen closed D27148: Improve RFC 7323 Compliance.

Committed in r367530.

Nov 10 2020, 3:19 PM
tuexen committed rS367530: RFC 7323 specifies that:.
RFC 7323 specifies that:
Nov 10 2020, 2:14 AM

Nov 9 2020

tuexen committed rS367520: Fix a potential use-after-free bug introduced in.
Fix a potential use-after-free bug introduced in
Nov 9 2020, 1:12 PM
tuexen updated the summary of D27148: Improve RFC 7323 Compliance.
Nov 9 2020, 11:51 AM
tuexen requested review of D27148: Improve RFC 7323 Compliance.
Nov 9 2020, 11:51 AM

Nov 7 2020

tuexen closed D26897: Improve ioctl() for listening TCP sockets.
Nov 7 2020, 9:18 PM
tuexen committed rS367464: The ioctl() calls using FIONREAD, FIONWRITE, FIONSPACE, and SIOCATMARK.
The ioctl() calls using FIONREAD, FIONWRITE, FIONSPACE, and SIOCATMARK
Nov 7 2020, 9:18 PM

Oct 22 2020

tuexen accepted D26808: TCP Cubic: improve reaction to (and rollback from) RTO.
Oct 22 2020, 2:30 PM
tuexen accepted D26807: move cwnd and ssthresh updates into individual congestion control module.
Oct 22 2020, 2:27 PM

Oct 21 2020

tuexen requested review of D26897: Improve ioctl() for listening TCP sockets.
Oct 21 2020, 10:08 PM

Oct 16 2020

tuexen committed rS366750: Improve the handling of cookie life times..
Improve the handling of cookie life times.
Oct 16 2020, 10:45 AM

Oct 9 2020

tuexen accepted D26446: Stop sending tiny new data segments during SACK recovery.
Oct 9 2020, 10:16 AM

Oct 8 2020

tuexen accepted D26518: Extend netstat to display TCP stack and detailed congestion state.
Oct 8 2020, 2:26 PM