Re: relayd socket splicing timeout

2011-09-04 Thread Alexander Bluhm
On Sat, Sep 03, 2011 at 02:25:37AM +0200, Alexander Bluhm wrote: During socket splicing the relayd session timeouts could not be measured exactly in user land. Use the new idle timeout for socket splicing in the kernel to make it correct. I think, I got the flag handling wrong. Make sure

relayd socket splicing timeout

2011-09-02 Thread Alexander Bluhm
Hi, During socket splicing the relayd session timeouts could not be measured exactly in user land. Use the new idle timeout for socket splicing in the kernel to make it correct. ok? bluhm Index: usr.sbin/relayd//parse.y === RCS

Re: relayd socket splicing

2011-03-15 Thread Alexander Bluhm
On Tue, Mar 08, 2011 at 02:11:31AM +0100, Alexander Bluhm wrote: Hmm, perhaps too small. There is a session timeout and relayctl show sessions idle time. Relayd does not realize when the kernel is transferring data automatically. It should check the splice data length with getsockopt()

Re: relayd socket splicing

2011-03-07 Thread Alexander Bluhm
On Sun, Mar 06, 2011 at 09:12:41AM +0100, Reyk Floeter wrote: this diff will break chunked encoding and keep-alive connections where we need to enable splicing for a specified amount of data only and return for the next HTTP header. I don't think so. I only set F_SPLICE for RELAY_PROTO_TCP

Re: relayd socket splicing

2011-03-07 Thread Theo de Raadt
I do not think splice should be an option that is exposed to users. Either the kernel support works, or doesn't. The option nosplice is useful for performance comparison and debugging. + { nosplice, NOSPLICE }, That is crazy notion. Either it is faster and works, and

Re: relayd socket splicing

2011-03-07 Thread Alexander Bluhm
On Mon, Mar 07, 2011 at 04:23:08PM -0700, Theo de Raadt wrote: I do not think splice should be an option that is exposed to users. That makes the diff much smaller. ok? Index: usr.sbin/relayd/relay.c === RCS file:

Re: relayd socket splicing

2011-03-07 Thread Alexander Bluhm
On Tue, Mar 08, 2011 at 01:00:48AM +0100, Alexander Bluhm wrote: On Mon, Mar 07, 2011 at 04:23:08PM -0700, Theo de Raadt wrote: I do not think splice should be an option that is exposed to users. That makes the diff much smaller. Hmm, perhaps too small. There is a session timeout and

Re: relayd socket splicing

2011-03-06 Thread Reyk Floeter
hi, this diff will break chunked encoding and keep-alive connections where we need to enable splicing for a specified amount of data only and return for the next HTTP header. the env variable should be replaced with a permanent config option in parse.y. reyk On Wed, Mar 02, 2011 at 09:34:14PM

relayd socket splicing

2011-03-02 Thread Alexander Bluhm
This diff implements socket splicing for relayd. Instead of copying data in userland from one TCP socket into another, the kernel is told to move the data himself. The environment variable RELAY_NOSPLICE works like EVENT_NOKQUEUE from libevent. It can be used to easily turn it on and off for

Re: relayd socket splicing

2011-03-02 Thread Alexander Bluhm
I just relized that I did send out an outdated diff. This one has an additional check for F_SSL and F_SSLCLIENT to avoid splicing ssl connections. The RELAY_NOSPLICE environment variable is only for testing and will be removed in the final version. bluhm Index: usr.sbin/relayd/parse.y