Skip to Content.
Sympa Menu

freetds - RE: [freetds] FreeBSD 5.0 performance problems with TCP_NOPUSH

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "ZIGLIO, Frediano, VF-IT" <Frediano.Ziglio AT vodafone.com>
  • To: "FreeTDS Development Group" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] FreeBSD 5.0 performance problems with TCP_NOPUSH
  • Date: Tue, 15 Mar 2005 13:14:06 +0100

>
> > I don't have FreeBSD to test with. What I did is to search
> on internet
> > an option similar to TCP_CORK. Some mails (4 year ago!!)
> reported that
> > newer behavior of TCP_NO_PUSH was equal to TCP_CORK. Today
> I tried to
> > search again and I found a patch that add support for
> TCP_CORK even to
> > FreeBSD... I don't know if this patch has been committed.
>
> > You tested that TCP_NOPUSH under FreeBSD 5.0 do not work
> correctly so
> > would be so kind to try with
>
> > /* Try to use TCP_CORK on *BSD */
> > #elif (defined(__FreeBSD__) || defined(__GNU_FreeBSD__) ||
> > defined(__OpenBSD__)) && defined(TCP_CORK)
> > #define USE_CORK 1
>
> Hi Freddy,
>
> That works fine on my FreeBSD 5.0 system.
>
> FWIW here are the avaliable options from tcp.h
>
> #define TCP_NODELAY 0x01 /* don't delay send to
> coalesce packets */
> #if __BSD_VISIBLE
> #define TCP_MAXSEG 0x02 /* set maximum segment size */
> #define TCP_NOPUSH 0x04 /* don't push last block of write */
> #define TCP_NOOPT 0x08 /* don't use TCP options */
> #endif
>

So I think is working using NODELAY option... do you know a way to
"emulate" linux CORK behavior, that is coalesce packets and flush them
when needed ??

freddy77




Archive powered by MHonArc 2.6.24.

Top of Page