From mboxrd@z Thu Jan 1 00:00:00 1970 From: ckkashyap@gmail.com (C K Kashyap) Date: Mon, 30 May 2011 13:37:11 +0530 Subject: Disabling nagle algorithm In-Reply-To: References: Message-ID: To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org > > Yes, TCP_NODELAY is a socket option: > > Going back to the kernel source: > > include/linux/tcp.h: > > #define TCP_NODELAY 1 /* Turn off Nagle's algorithm. */ > > and this: > > u8 nonagle : 4,/* Disable Nagle algorithm? */ > > and looking into the kernel source code: > > ./fs/ocfs2/cluster/tcp.c: > ret = sock->ops->setsockopt(sock, SOL_TCP, TCP_NODELAY, > > ./net/rds/tcp.c: > sock->ops->setsockopt(sock, SOL_TCP, TCP_NODELAY, (char __user > *)&val, > the above are just two of the examples of how to set TCP_NODELAY in the > kernel. > > At the userspace level: > > > http://www.linuxquestions.org/questions/other-*nix-55/how-do-i-disable-the-nagle-algorithm-in-enterprise-linux-3-kernel-ver-2-4-21-4-a-556170/ > > should be the correct way, except that the poster is attempting to do > it in a kernel that does not support it. > > As documented in http://linux.die.net/man/7/tcp, the supported kernel > is 2.5.71 and onwards. > > Okay ... so, the situation I have at hand is that there is this app I cannot modify. I'd like to see its performance with nagle disabled. Is this possible? While at it, is there a way to see the socket options of the socket descriptors in a running app? Regards, Kashyap -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110530/15b44221/attachment.html