Re: [hybi] New Chrome WebSocket implementation: testers wanted

Adam Rice <ricea@google.com> Fri, 06 June 2014 03:50 UTC

Return-Path: <ricea@google.com>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3B5FF1A0149 for <hybi@ietfa.amsl.com>; Thu, 5 Jun 2014 20:50:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.429
X-Spam-Level:
X-Spam-Status: No, score=-1.429 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, J_CHICKENPOX_55=0.6, RP_MATCHES_RCVD=-0.651, SPF_PASS=-0.001] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6utbiQK3NEEj for <hybi@ietfa.amsl.com>; Thu, 5 Jun 2014 20:50:27 -0700 (PDT)
Received: from mail-oa0-x233.google.com (mail-oa0-x233.google.com [IPv6:2607:f8b0:4003:c02::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 86E3D1A019D for <hybi@ietf.org>; Thu, 5 Jun 2014 20:50:27 -0700 (PDT)
Received: by mail-oa0-f51.google.com with SMTP id n16so2176224oag.24 for <hybi@ietf.org>; Thu, 05 Jun 2014 20:50:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=/lNbrrtkECOZLPEdScGckyKZNfA1fO14WDtwXoalnvM=; b=QBuA6ppKzHdxZ8R0c0m7A0YUACl5T/CSDQ8Pjl/fDv5cr2vzwpGHl4sevv34Fk3+Q5 a2+zYl0cTie9n4uEjwnzxYWvmnug6maqexmMYju2/JK5ek+HlDh04/4DAbOlKvj9+oiK FIrrpHwvuticHk//wtcAgR0o439/4ufHrOySnXzreGxl+2rrwZ3hMcjjYOzf4TQ71VeR mUdH4Mro3xyxySUehbbdWxwWjbIdYLo2cYbFzgpFQDhMETytFulMsyHr5R/1ofp1qzht RJumOVoTJAaEGB2hGqvZ3/UC3bL6pPUWMG7a3JlY5rKJPhVcPO4T+CSuNNK0JO+8t8yl OBqw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=/lNbrrtkECOZLPEdScGckyKZNfA1fO14WDtwXoalnvM=; b=AvMRSI1H6rvIYY3XxZ77TxYtDTdn1f0WGO5lG4DGXGvJ7aPni0r8n04aZSogHvzAN9 yLzs9g3J9e1zS6GTyw7r6Z2Pkqcc7G91WQLhVv/ONxkQbLXB3ft4AP7r4RRj9yi3nMnh wsyuaQJO7Kd0U+pu87jHDQP4IGlQJoie6j3tDod8Lzod4mQYS9sEz9yd0xMIgZSbeu4K TVE9kLo/ZZxEH3mCdZ9AjxTV6rw57NTSTy6gdJpBsbWlGSUPfqX1RrSnba9JMULwBHDQ yFFSJth+86Ic9cfaMzi0bjM8yHYklQaPUEnp8n5hbixFJs3nWwMU/dvrfS3JDevAl28x yFPA==
X-Gm-Message-State: ALoCoQk1mvrBAUNqqPQ6hfHZbZtUsld66d02zCnpmQ3dv/sD7yE2Rb+Lu8oOnGmvqslpY5GkEBSX
MIME-Version: 1.0
X-Received: by 10.182.216.236 with SMTP id ot12mr972385obc.21.1402026620789; Thu, 05 Jun 2014 20:50:20 -0700 (PDT)
Received: by 10.182.193.8 with HTTP; Thu, 5 Jun 2014 20:50:20 -0700 (PDT)
In-Reply-To: <CAPwYjpnd+B7f-Mk3RXTGLZFHXwvpMJPebDtWs_u1T+SXB7WPJA@mail.gmail.com>
References: <CAPwYjp=uVdPLS4dq4xeuRXFN5di6x=ydv=agPPdBO82pMd6pDA@mail.gmail.com> <CAHixhFo3n_yc_kVqOoNOFqrDmrsAMDp4K7HVcztRuxu_4VBYqw@mail.gmail.com> <CAPwYjpnd+B7f-Mk3RXTGLZFHXwvpMJPebDtWs_u1T+SXB7WPJA@mail.gmail.com>
Date: Fri, 06 Jun 2014 12:50:20 +0900
Message-ID: <CAHixhFrVQ2g4cswv8NqdLG0vcN1dUOmPa_XQHnTfX-uZyOa=ZQ@mail.gmail.com>
From: Adam Rice <ricea@google.com>
To: Dario Crivelli <dario.crivelli@lightstreamer.com>
Content-Type: multipart/alternative; boundary="001a1134b2bcb2c0a104fb22c27d"
Archived-At: http://mailarchive.ietf.org/arch/msg/hybi/umP3_rWOLKCC7TBRaCxQD8LZU1A
Cc: "hybi@ietf.org" <hybi@ietf.org>
Subject: Re: [hybi] New Chrome WebSocket implementation: testers wanted
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi/>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 06 Jun 2014 03:50:29 -0000

Sorry for the delay in responding. This turned out to be more complicated
than I expected, but the fix landed on Chromium trunk yesterday (
https://codereview.chromium.org/304093003 ). It should be available in a
dev build some time soon.


On 17 April 2014 16:33, Dario Crivelli <dario.crivelli@lightstreamer.com>
wrote:

> Yes, Adam.
> And this is furtherly confirmed by the fact that from the viewpoint of my
> server (which leverages Java's SSLEngine) the handskake completes
> successfully and only when the server waits for a request to come is the
> socket broken.
> Then, for some reason, Chrome seems to recover when it has to do a normal
> https request, whereas it doesn't when it has to do a wss interaction.
> I can try to provide you with more details; please advise if I can keep
> doing that legitimately through this mailing list.
>
> Dario
>
>
>
>
> On Thu, Apr 17, 2014 at 5:41 AM, Adam Rice <ricea@google.com> wrote:
>
>> Dario,
>>
>> Thank you for the feedback. I will check this scenario.
>>
>> I assume you have already instructed the browser to accept the
>> certificate? Otherwise it should fail with either implementation.
>>
>> Thanks,
>> Adam
>>
>>
>>
>> On 16 April 2014 20:09, Dario Crivelli <dario.crivelli@lightstreamer.com>
>> wrote:
>>
>>> Hi Adam,
>>>
>>> We have tried the extended version of Chrome against our Lightstreamer
>>> Server and we have noticed that, with the new implementation enabled, the
>>> browser can't open a WebSocket towards Lightstreamer Server in the
>>> following conditions:
>>> - wss: is used
>>> - the server certificate is self-signed
>>> (on the other hand, when using either plain ws: or a valid certificate
>>> we found no issue).
>>>
>>> The failure seems to be related not with the WebSocket protocol itself,
>>> but with the failure to establish a SSL connection.
>>> However, the same does not happen with the new implementation disabled.
>>>
>>> In particular, we have noticed small differences in the way the browser
>>> opens the sockets for SSL.
>>> When the certificate is self-signed, the browser sometimes seems to need
>>> two attempts in order to establish a connection:
>>> in the first attempt, the handshake succeeds but, after that, the
>>> browser immediately closes the socket;
>>> then the second attempt succeeds fully.
>>> We see the above pattern also when the new implementation is not
>>> enabled, but when it is enabled we see more occurrences of the pattern and
>>> this seems correlated with the failure in WebSocket establishment.
>>>
>>> Dario Crivelli
>>>
>>>
>>>
>>>> Message: 1
>>>> Date: Tue, 15 Apr 2014 15:11:49 +0900
>>>> From: Adam Rice <ricea@google.com>
>>>> To: "hybi@ietf.org" <hybi@ietf.org>
>>>> Subject: [hybi] New Chrome WebSocket implementation: testers wanted
>>>> Message-ID:
>>>>         <
>>>> CAHixhFrA2FH6JOOFkd9sjBtgvBKEO6CZ9K9T-NdKf8PvXTiG2A@mail.gmail.com>
>>>> Content-Type: text/plain; charset="utf-8"
>>>>
>>>>
>>>> The latest dev build of Chrome includes a new WebSocket implementation
>>>> behind an experimental flag. If you have version 36.0.1933.0 or greater,
>>>> you can enable it using the "Enable experimental Web Platform features"
>>>> flag in about:flags.
>>>>
>>>> An easy way to distinguish the different implementations is that the
>>>> stable
>>>> implementation does not set the "Accept-Language:" header, whereas the
>>>> new
>>>> implementation does. You can examine the headers by opening the Network
>>>> panel in "Developer Tools" before creating the WebSocket connection.
>>>>
>>>> A known issue with the new implementation is that RFC6455 connection
>>>> throttling is not implemented yet. This will be done Real Soon Now.
>>>>
>>>> We are interested in hearing about any compatibility problems you might
>>>> encounter, either server side or in client libraries.
>>>>
>>>> Feedback welcome.
>>>>
>>>> Adam Rice
>>>>
>>>
>>>
>>> _______________________________________________
>>> hybi mailing list
>>> hybi@ietf.org
>>> https://www.ietf.org/mailman/listinfo/hybi
>>>
>>>
>>
>