Page MenuHomeFreeBSD
Feed Advanced Search

Oct 12 2016

hiren retitled D8225: Let congestion control algorithms decide congestion window. from to Let congestion control algorithms decide congestion window..
Oct 12 2016, 6:19 AM
hiren accepted D8072: Remove an extraneous call to soisconnected() in syncache_socket(), introduced with r261242..

As Kevin mentioned, this looks good on prod traffic at llnw.

Oct 12 2016, 1:03 AM

Oct 11 2016

hiren accepted D8219: Remove TFO from the packet processing path when the kernel is not configured with TCP_RFC7413.
Oct 11 2016, 11:54 PM
hiren accepted D8219: Remove TFO from the packet processing path when the kernel is not configured with TCP_RFC7413.

Thanks for fixing these corner-cases. :-)

Oct 11 2016, 4:03 PM

Oct 9 2016

hiren added a comment to D7986: Simplify cubic_ack_received.

@kmacy, about the exception you noted, I am a little puzzled.
a state where min_rtt_ticks is zero but we are *not* in slowstart - could still be processed in the old code if other rfc3465 conditions align as the guarding 'if' looks like this:

Oct 9 2016, 8:04 AM
hiren accepted D8199: Remove extra space between point to point links and netmask in ifconfig output.
Oct 9 2016, 2:58 AM

Oct 7 2016

hiren accepted D8185: Add compile-time option to activate hhook(9) framework for TCP.

You may want to briefly list pros/cons of having or not having the framework so people can decide whether its worth including it.

Oct 7 2016, 7:11 PM

Oct 4 2016

hiren updated subscribers of D4366: convert tcp timestamps to scaled sbintime.
Oct 4 2016, 12:46 AM · transport
hiren added a reviewer for D4366: convert tcp timestamps to scaled sbintime: rrs.
Oct 4 2016, 12:45 AM · transport

Sep 30 2016

hiren committed rS306517: MFC r304855.
MFC r304855
Sep 30 2016, 6:14 PM
hiren committed rS306464: This adds a sysctl which allows you to disable the TCP hostcache. This is handy.
This adds a sysctl which allows you to disable the TCP hostcache. This is handy
Sep 30 2016, 12:11 AM
hiren closed D6198: Add sysctl to disable the TCP hostcache by committing rS306464: This adds a sysctl which allows you to disable the TCP hostcache. This is handy.
Sep 30 2016, 12:11 AM

Sep 28 2016

hiren accepted D8053: Properly preserve ip_tos bits for IPv4 packets.

And I agree that it'd be nice if cleanup comes as a separate commit.

Sep 28 2016, 2:34 PM

Sep 26 2016

hiren committed rS306348: Revert r306337. dhw@ reproted a panic which seems related to this and bde@ has.
Revert r306337. dhw@ reproted a panic which seems related to this and bde@ has
Sep 26 2016, 3:45 PM
hiren closed D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors. by committing rS306337: In sendit(), if mp->msg_control is present, then in sockargs() we are allocating.
Sep 26 2016, 10:14 AM
hiren committed rS306337: In sendit(), if mp->msg_control is present, then in sockargs() we are allocating.
In sendit(), if mp->msg_control is present, then in sockargs() we are allocating
Sep 26 2016, 10:14 AM

Sep 24 2016

hiren added a reviewer for D8021: Correctness fixes to Cubic : lstewart.
Sep 24 2016, 12:26 AM

Sep 18 2016

hiren accepted D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors..

Thanks Lohith for the patch.

Sep 18 2016, 7:14 PM
hiren added a reviewer for D7910: Fix to avoid potential mbuf leak in network stack, if userland sends control messages to bad file descriptors.: network.
Sep 18 2016, 12:02 AM

Sep 16 2016

hiren committed rS305853: MFC r301522 (by bz).
MFC r301522 (by bz)
Sep 16 2016, 12:14 AM

Sep 9 2016

hiren accepted D7833: Several small TCP related fixes for getsockopt().

Thanks for the cleanup.

Sep 9 2016, 3:17 PM

Aug 29 2016

hiren committed rS305008: MFC r303626 (by gallatin).
MFC r303626 (by gallatin)
Aug 29 2016, 6:00 PM

Aug 26 2016

hiren committed rS304857: Adjust TCP module fastpath after r304803's cc_ack_received() changes..
Adjust TCP module fastpath after r304803's cc_ack_received() changes.
Aug 26 2016, 7:23 PM
hiren closed D7664: Adjust TCP module fastpath after r304803's cc_ack_received() changes. by committing rS304857: Adjust TCP module fastpath after r304803's cc_ack_received() changes..
Aug 26 2016, 7:23 PM
hiren retitled D7664: Adjust TCP module fastpath after r304803's cc_ack_received() changes. from Adjust TCP module fastpath after r304803's cc_ack_receive() changes. to Adjust TCP module fastpath after r304803's cc_ack_received() changes..
Aug 26 2016, 6:25 PM
hiren added a reviewer for D7664: Adjust TCP module fastpath after r304803's cc_ack_received() changes.: lstewart.
Aug 26 2016, 6:22 PM
hiren retitled D7664: Adjust TCP module fastpath after r304803's cc_ack_received() changes. from to Adjust TCP module fastpath after r304803's cc_ack_receive() changes..
Aug 26 2016, 6:21 PM
hiren committed rS304855: Update TCPS_HAVERCVDFIN() macro to correctly include all states a connection.
Update TCPS_HAVERCVDFIN() macro to correctly include all states a connection
Aug 26 2016, 5:49 PM

Jul 29 2016

hiren accepted D7136: TCP Timer cleanup.

Been using a slight variation of this change without any problems.

Jul 29 2016, 11:56 PM

Jul 15 2016

hiren updated subscribers of D6799: Prepare for network stack as a module: Move protocol-specific functionality out of common jail-related source files..
Jul 15 2016, 4:36 PM

Jul 8 2016

hiren accepted D7152: Add support for the user cookie to DTrace and TCP.

A minor nit inline. Looks good otherwise.

Jul 8 2016, 5:43 AM

Jun 23 2016

hiren accepted D6940: Commit documentation for alternate TCP stacks..

I'd leave wordsmithing to someone else but looks good to me.
Thanks for putting this together!

Jun 23 2016, 4:50 PM

Jun 11 2016

hiren accepted D6790: Add functionality so you can optionally change a progressed socket to a new tcp stack.

Thank you!

Jun 11 2016, 2:38 PM

Jun 9 2016

hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

At hackers lounge BSDCan, @jtl and I discussed this and realized that I was incorrectly interpreting rfc.

Jun 9 2016, 3:59 AM

Jun 8 2016

hiren updated subscribers of D2901: Prepare for network stack as a module..
Jun 8 2016, 5:01 PM

Jun 2 2016

hiren requested changes to D6691: Per-VNET flag on netir and cleanup.

Can you please update netisr manpage?

Jun 2 2016, 6:21 PM

Jun 1 2016

hiren added a comment to D6198: Add sysctl to disable the TCP hostcache.

Seems like this is good to go in. @bz @rwatson ?

Jun 1 2016, 9:40 PM

May 24 2016

hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

Can you guys see if this approach looks okay?

May 24 2016, 8:25 AM

May 19 2016

hiren retitled D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob. from Follow RFC6675 for setting sshthresh and cwnd at fast retransmit. to Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..
May 19 2016, 10:12 PM
hiren updated the diff for D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob.

May 19 2016, 10:11 PM

May 10 2016

hiren accepted D6303: Added functionality for new tcp stacks..
May 10 2016, 5:56 PM

May 9 2016

hiren committed rS299280: Add an option to use rfc6675 based pipe/inflight bytes calculation in htcp..
Add an option to use rfc6675 based pipe/inflight bytes calculation in htcp.
May 9 2016, 7:19 PM

Apr 29 2016

hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..
In D6105#130904, @jtl wrote:
In D6105#130864, @hiren wrote:

Having said that, I know putting it under one knob looks more correct.

s/looks/is :)

FWIW, I agree with @lstewart; however, I think we should avoid an unqualified "RFC 6675" name until we actually implement all of RFC 6675. Maybe I'll actually get to the rest of it this summer.

Apr 29 2016, 3:54 PM
hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

But why do we need such finely grained control? I don't get it. Either it works or it doesn't. We shouldn't be doing 6675 piecemeal. We should be doing 6675 in full and enabled by default. Providing any level of minutiae beyond enabled/disabled is not only unnecessary but a bad idea IMO.

Apr 29 2016, 8:07 AM
hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..
Apr 29 2016, 8:01 AM
hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

Why isn't there simply a do_rfc6675 knob that supersedes this and the previously committed work?

Apr 29 2016, 7:28 AM

Apr 28 2016

hiren accepted D6120: tcp/syncache: Set flowid and hash type properly for SYN|ACK.

I hope you'd write a bit more descriptive commit-log (not just 'what' but also 'why') for the change. Thanks a lot for your work!

Apr 28 2016, 10:34 PM
hiren added a comment to D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..

Bump!
anyone?

Apr 28 2016, 10:22 PM

Apr 26 2016

hiren updated D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob..
Apr 26 2016, 12:35 AM
hiren retitled D6105: Add cwnd and ssthresh recommendations to RFC 6675 support. While here, unify everything under one sysctl knob. from to Follow RFC6675 for setting sshthresh and cwnd at fast retransmit..
Apr 26 2016, 12:34 AM

Apr 21 2016

hiren added a comment to D5872: tcp: Don't prematurely drop receiving-only connections.

I thought that had been fixed ages ago... oops.

Fixed? i.e. doing something other than setting cwnd to 1 seg?

It should be calling cc_cong_signal() with a new congestion type.

Hum... tcp_quench() used to be there which essentially had this 1 line to set cwnd to 1 seg.

Apr 21 2016, 4:42 AM
hiren added a comment to D5872: tcp: Don't prematurely drop receiving-only connections.

... but replace with a macro to check that the rexmit/persist timer is armed if appropriate!

Apr 21 2016, 1:57 AM
hiren added a comment to D5872: tcp: Don't prematurely drop receiving-only connections.

Ack for removing ENOBUFs case.

Apr 21 2016, 1:45 AM

Apr 16 2016

hiren added a comment to D5872: tcp: Don't prematurely drop receiving-only connections.
In D5872#127345, @jtl wrote:
In D5872#127343, @mike-karels.net wrote:

If we get an ENOBUFS when sending data, we will already be running the retransmit timer.

Good point, but see below.

If we drop an ACK on ENOBUFS, either we will receive more data and
attempt another ACK, or the sender will time out and resend data. Either
will get the connection started again.

True, but it may take time if we have to wait for a retransmission time out. That isn't necessarily a bad thing.

But setting retransmission timer on an ACK seems... wrong.

Apr 16 2016, 7:09 AM

Apr 15 2016

hiren closed D5973: Fix the 'type' for a few variables from tcpcb. by committing rS298087: Fix the 'type' for a few variables from tcpcb..
Apr 15 2016, 8:27 PM
hiren committed rS298087: Fix the 'type' for a few variables from tcpcb..
Fix the 'type' for a few variables from tcpcb.
Apr 15 2016, 8:27 PM
hiren added a comment to D5973: Fix the 'type' for a few variables from tcpcb..
In D5973#127283, @markj wrote:

This looks ok to me. (The man page probably should have a .Dd update.)

Thanks, updated the date for commit.

The point of the translator is to provide compatibility with other operating systems that implement this provider (Solaris, OS X), but D scripts generally won't care about integer widths, so I don't think this minor deviation is a problem. That said, are you doing this because one of the fields is actually getting truncated? Or did you just notice a mismatch?

Apr 15 2016, 8:08 PM
hiren updated the diff for D5973: Fix the 'type' for a few variables from tcpcb..

Address comments by @markj to update the manpage.

Apr 15 2016, 7:32 PM
hiren updated subscribers of D5973: Fix the 'type' for a few variables from tcpcb..
Apr 15 2016, 7:21 PM
hiren retitled D5973: Fix the 'type' for a few variables from tcpcb. from to Fix the 'type' for a few variables from tcpcb..
Apr 15 2016, 7:20 PM
hiren added a comment to D5872: tcp: Don't prematurely drop receiving-only connections.
In D5872#127123, @jtl wrote:
Apr 15 2016, 5:05 PM

Mar 22 2016

hiren accepted D5584: Use 32-bit integer for TCP options flags.
Mar 22 2016, 3:35 PM

Mar 16 2016

hiren accepted D5625: Prevent underflows in tp->snd_wnd.

Seems okay to me but I'd let someone else also chime in.

Mar 16 2016, 6:54 PM
hiren added a comment to D5625: Prevent underflows in tp->snd_wnd.

You are right. Let's get this in while we wait for the better fix.

Mar 16 2016, 5:19 PM
hiren added a comment to D5625: Prevent underflows in tp->snd_wnd.

Though I generally agree with the overall idea, I am wondering whether we should discuss the larger question we talked about on email: Should the snd_wnd be decremented by number of bytes acked by the other end when we already get window information from the other end?

Mar 16 2016, 12:44 AM

Mar 3 2016

hiren accepted D5525: Fix dtrace probes for TCPDEBUG.

Regarding m_free(m), I guess it makes sense to have TCP_PROBE follow TCPDEBUG everywhere for better readability.

Mar 3 2016, 5:41 PM

Feb 17 2016

hiren accepted D5307: Activate triggered kevents when they are enabled.

Thanks for picking this up.

Feb 17 2016, 7:21 AM

Feb 10 2016

hiren updated the diff for D5173: Rework initial congestion window calculation..
  • Rework initial congestion window calculation.
  • Rework the rework after talking to lstewart@. :-)
  • Sysctl handlers now work as expected.
Feb 10 2016, 11:45 PM
hiren updated the diff for D5173: Rework initial congestion window calculation..
  • Rework initial congestion window calculation.
  • Rework the rework after talking to lstewart@. :-) Let's see if this is something people like, if so, I'd do more testing.
Feb 10 2016, 8:21 AM

Feb 8 2016

hiren planned changes to D5173: Rework initial congestion window calculation..

Talked to Lawrence on IRC and need to make a bunch of changes. bbib

Feb 8 2016, 8:47 AM
hiren added a comment to D5173: Rework initial congestion window calculation..

Bump!
I'd appreciate any feedback on the approach taken so I can move this forward.

Feb 8 2016, 7:36 AM

Feb 4 2016

hiren accepted D5189: TCP stacks loading issue.
Feb 4 2016, 6:41 PM
hiren accepted D4810: Properly save the original MSS during blackhole detection.

Thanks @kevin.bowling_kev009.com. You made me look at the actual code :p

Feb 4 2016, 7:27 AM
hiren added a comment to D4810: Properly save the original MSS during blackhole detection.

Apologies for a very late response.

Feb 4 2016, 1:44 AM

Feb 3 2016

hiren abandoned D5124: Update <cc>_after_idle to take initcwnd_segments into account. .

https://reviews.freebsd.org/D5173 is what is in the works now.

Feb 3 2016, 7:43 PM
hiren retitled D5173: Rework initial congestion window calculation. from to Rework initial congestion window calculation..
Feb 3 2016, 4:02 PM
hiren updated D5173: Rework initial congestion window calculation..
Feb 3 2016, 4:02 PM
hiren updated D5173: Rework initial congestion window calculation..
Feb 3 2016, 4:02 PM

Feb 2 2016

hiren added a comment to D5124: Update <cc>_after_idle to take initcwnd_segments into account. .

@lstewart I agree and I think its time to improve the initcwnd handling code. But that'd be a separate commit.

Feb 2 2016, 2:19 AM

Jan 29 2016

hiren retitled D5124: Update <cc>_after_idle to take initcwnd_segments into account. from Make congestion control algorithms take initcwnd_segments value into account after resuming from idle state while trying to decide the cwnd value. to Update <cc>_after_idle to take initcwnd_segments into account. .
Jan 29 2016, 10:42 PM
hiren retitled D5124: Update <cc>_after_idle to take initcwnd_segments into account. from to Make congestion control algorithms take initcwnd_segments value into account after resuming from idle state while trying to decide the cwnd value..
Jan 29 2016, 10:40 PM

Jan 28 2016

hiren committed rS295015: MFC r294840.
MFC r294840
Jan 28 2016, 9:31 PM

Jan 26 2016

hiren committed rS294840: Persist timers TCPTV_PERSMIN and TCPTV_PERSMAX are hardcoded with 5 seconds and.
Persist timers TCPTV_PERSMIN and TCPTV_PERSMAX are hardcoded with 5 seconds and
Jan 26 2016, 4:33 PM
hiren closed D5024: Implement sysctl for the min/max values of the TCP persist timer by committing rS294840: Persist timers TCPTV_PERSMIN and TCPTV_PERSMAX are hardcoded with 5 seconds and.
Jan 26 2016, 4:33 PM
hiren added a comment to D5024: Implement sysctl for the min/max values of the TCP persist timer.

Virtualizing non-constants is completely out of the scope for this change.

Jan 26 2016, 4:16 PM

Jan 21 2016

hiren accepted D5024: Implement sysctl for the min/max values of the TCP persist timer.

Cool. I guess I'll do the honors (for slacker wolfe who refuses to commit his own work ;-))

Jan 21 2016, 9:55 PM
hiren accepted D4808: Add basic TCP options to tcp_respond().

Seems okay to me.
But I strongly encourage splitting out functional and cleanup changes into separate commits. And I assume you've tested the patch (excluding TCP_SIGNATURE part) to make sure you see expected results.

Jan 21 2016, 12:42 AM

Jan 15 2016

hiren accepted D4929: [PR 206219] Kernel panic from lagg_ioctl and lagg_port_ioctl.

looks okay to me. I am not sure what was the rationale for removing NULL initializations in the first place. May be @hrs could answer.

Jan 15 2016, 12:19 AM

Jan 12 2016

hiren accepted D4898: Remove dead code from igmp.c.
Jan 12 2016, 5:25 PM

Jan 11 2016

hiren committed rS293711: MFC: r292011.
MFC: r292011
Jan 11 2016, 11:37 PM
hiren committed rS293710: MFC: r292003.
MFC: r292003
Jan 11 2016, 11:34 PM
hiren committed rS293709: MFC: r290122.
MFC: r290122
Jan 11 2016, 11:31 PM

Jan 9 2016

hiren added a comment to D4810: Properly save the original MSS during blackhole detection.

@jtl Help me understand this better. Do we really need to restore 'original' MSS value when trying to restore or the previous one that worked?
AFAIK, in current implementation, once we lower MTU because of blackhole, we don't raise it back even on successful transfer of packets. We don't do upward probing to get back to original MTU. It stays the same (or goes further down). We only unset TF2_PLPMTU_BLACKHOLE when we've tried enough with lowest possible value and we've failed.
So, for example, we start with 1448, detect blackhole and reduce to 1188. Do some packets successfully there and again detect blackhole which reduces further to 524. Now, if we have to restore MSS value, what should it be?

Jan 9 2016, 11:57 PM

Jan 8 2016

hiren added a reviewer for D4810: Properly save the original MSS during blackhole detection: hiren.

I'll try to look at this in a couple (working) days.

Jan 8 2016, 1:09 AM

Dec 14 2015

hiren accepted D3855: Properly drain callouts in the IPFW subsystem.

I am not 100% sure if this is the correct approach but its better than whats going on right now. Please go ahead with this patch.
Rasool Al-Saadi also confirmed that this works and avoids panic.

Dec 14 2015, 1:34 PM

Dec 11 2015

hiren committed rS292087: Clean up unused bandwidth entry in the TCP hostcache..
Clean up unused bandwidth entry in the TCP hostcache.
Dec 11 2015, 6:23 AM
hiren closed D4154: Clean up unused bandwidth entry in the TCP hostcache by committing rS292087: Clean up unused bandwidth entry in the TCP hostcache..
Dec 11 2015, 6:23 AM

Dec 10 2015

hiren committed rS292046: r290122 added 4 bytes and removed 8 in struct sackhint. Add a pad entry of 4.
r290122 added 4 bytes and removed 8 in struct sackhint. Add a pad entry of 4
Dec 10 2015, 3:20 AM

Dec 9 2015

hiren committed rS292012: Add an option to use rfc6675 based pipe/inflight bytes calculation in newreno..
Add an option to use rfc6675 based pipe/inflight bytes calculation in newreno.
Dec 9 2015, 8:54 AM
hiren committed rS292011: Add an option to use rfc6675 based pipe/inflight bytes calculation in cubic..
Add an option to use rfc6675 based pipe/inflight bytes calculation in cubic.
Dec 9 2015, 7:56 AM