Re: [hybi] Multiplexing: Pre-AddChannelResponse quota

"Arman Djusupov" <arman@noemax.com> Fri, 22 June 2012 06:05 UTC

Return-Path: <arman@noemax.com>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67E2E11E8083 for <hybi@ietfa.amsl.com>; Thu, 21 Jun 2012 23:05:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.391
X-Spam-Level:
X-Spam-Status: No, score=-1.391 tagged_above=-999 required=5 tests=[AWL=-1.207, BAYES_40=-0.185, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id S+HaBu0Gp7bi for <hybi@ietfa.amsl.com>; Thu, 21 Jun 2012 23:05:46 -0700 (PDT)
Received: from mail.noemax.com (mail.noemax.com [64.34.201.8]) by ietfa.amsl.com (Postfix) with ESMTP id 5503A21F8617 for <hybi@ietf.org>; Thu, 21 Jun 2012 23:05:46 -0700 (PDT)
DKIM-Signature: a=rsa-sha1; t=1340345149; x=1340949949; s=m1024; d=noemax.com; c=relaxed/relaxed; v=1; bh=CVX270XkXS8QJYJPMOKCqGhq0jE=; h=From:Subject:Date:Message-ID:To:Cc:MIME-Version:Content-Type:In-Reply-To:References; b=F9cqqSr4FlmIL2UsF3p+ZYgcMXRUA+qEP7IVY72O+Upgke130ABAoKcSp5j2qUpCyBawMbrkCMUvmq7EF0jWieAqchoC+yJ5IuF2r/joBQL3qe3RPHKiGP4bqZUK73Nlpa0zszx1JOWnrtI1hbpA7bQljZ9MCr/+wCdal7DY9kI=
Received: from mail.noemax.com by mail.noemax.com (IceWarp 10.4.1) with ASMTP (SSL) id GMB73747; Fri, 22 Jun 2012 09:05:47 +0300
From: Arman Djusupov <arman@noemax.com>
To: 'Takeshi Yoshino' <tyoshino@google.com>
References: <CAH9hSJZUAHQzDm4ofq6onc620SNretLQDOcjSnr2eQ0YA9yFdQ@mail.gmail.com> <002f01cd3cc4$4791b380$d6b51a80$@noemax.com> <20120607034440.GD26406@jl-vm1.vm.bytemark.co.uk> <CAH9hSJZWMgvQMNLapZAg_CS0vri=jZbfPLpLhfninjzG+JxxmA@mail.gmail.com> <CAH9hSJbChf6NPUqraaeEeLnDO=YyYja4SkwZJsWRfM5VUwZ59Q@mail.gmail.com> <002001cd4a14$53eb66f0$fbc234d0$@noemax.com> <CAH9hSJbz9HQrN67=Jf6bEmJikTGEViNEqjDP8XbHKrPKhYD19Q@mail.gmail.com> <001301cd4acf$d8c5cda0$8a5168e0$@noemax.com> <CAH9hSJYzbfUKMjuV3J1-tdapV59N5aewO-nAMLMexzF2f6KosA@mail.gmail.com> <6A3569A8-C253-4363-B00C-F336B0CA3128@noemax.com> <CAH9hSJayEAqJEE7=KdYuq669HOaG76kS9AVwUMUYaPKLtO=zEw@mail.gmail.com>
In-Reply-To: <CAH9hSJayEAqJEE7=KdYuq669HOaG76kS9AVwUMUYaPKLtO=zEw@mail.gmail.com>
Date: Fri, 22 Jun 2012 09:05:29 +0300
Message-ID: <000301cd503d$0aff8f00$20fead00$@noemax.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0004_01CD5056.304CC700"
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHbEEjWH8q2xL+U7IgUz4ieagM0MAIpCHL8APvLbp8B3rSIHAHfCnvqAiE9EN8B8r7HPACD0WVjAIKfMBgB696tEgIeY34vlmoe0KA=
Content-Language: en-us
Cc: hybi@ietf.org
Subject: Re: [hybi] Multiplexing: Pre-AddChannelResponse quota
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.12
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, 22 Jun 2012 06:05:47 -0000

Hello Takeshi,

 

This will result in the protocol having two different stages of
communication. One stage before the handshake during which flow control
should be based on the common quota, and a second stage after the
end-of-pre-handshake-data frame is received during which flow control is
based on the logical channel quota. I'm ok with this solution, but I have
the impression that this is a bit of overkill.

 

It will be difficult to implement in a high concurrency multithreaded
environment. I can't say if there are any practical problems until I try
implementing it. But there might be difficulties that are not evident now.
In general it's becoming a bit more complex than simply working with a
self-assigned initial quota. 

 

With best regards,

Arman

 

From: Takeshi Yoshino [mailto:tyoshino@google.com] 
Sent: Thursday, June 21, 2012 3:27 PM
To: Arman Djusupov
Cc: Jamie Lokier; hybi@ietf.org
Subject: Re: [hybi] Multiplexing: Pre-AddChannelResponse quota

 

On Tue, Jun 19, 2012 at 4:06 PM, Arman Djusupov <arman@noemax.com> wrote:

For reasons of simplicity and API limitations, browsers may simply always
level the quota along the channels, or they might prefer to slightly delay
sending the AddChannelRequest to check what is the size of the first message
being sent so that the AddChannelRequest with IQ_X = message size is sent
along with the first message, to avoid an extra roundtrip.

 

Considering the concern Jamie showed, how about sending some FlowControl
frame variant indicating the end of pre-handshake data after pre-handshake
frames? The client consumes total pre-handshake data quota it has for the
new channel as it like. And then, sends the end-of-pre-handshake-data frame.
It can be after or before receiving AddChannelResponse for the request. The
server knows how much pre-handshake data quota has been spent for the new
channel attempt by summing the data size of frames before the
end-of-pre-handshake-data frame. Delaying AddChannelRequest is fine but not
so flexible enough to address the concern Jamie showed.