Re: [hybi] Encourage disabling Nagle in the standard text?

Andy Green <> Wed, 19 April 2017 02:57 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id CE3B812EBD1 for <>; Tue, 18 Apr 2017 19:57:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id NHZSHTRA-eWW for <>; Tue, 18 Apr 2017 19:57:47 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 661E312945A for <>; Tue, 18 Apr 2017 19:57:47 -0700 (PDT)
Date: Wed, 19 Apr 2017 10:57:04 +0800
In-Reply-To: <>
References: <>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
To:, Adam Rice <>, "" <>
From: Andy Green <>
Message-ID: <>
Archived-At: <>
Subject: Re: [hybi] Encourage disabling Nagle in the standard text?
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Server-Initiated HTTP <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 19 Apr 2017 02:57:50 -0000

On April 19, 2017 10:34:33 AM GMT+08:00, Adam Rice <> wrote:
>Numerous developers have run into issues when using WebSocket servers
>have the Nagle algorithm enabled [Citation:
>]. My impression is that
>this ends up with most WebSocket servers disabling Nagle.
>I am wondering if it would be better if the standard had text to the
>that implementations SHOULD disable Nagle (ie. set TCP_NODELAY on the
>Does anyone have any use cases where Nagle is beneficial?
>For reference, Chrome always disables Nagle. pywebsocket doesn't (but
>probably should).

libwebsockets always disables Nagle... AFAIK there is no value to it for general ws use.  But I dunno it needs the standard changing, if things have higher than expected latencies people will probably work it out for themselves.