Re: [arch-d] HTTP 2.0 + Performance improvement Idea

Joe Touch <touch@isi.edu> Tue, 25 March 2014 21:17 UTC

Return-Path: <touch@isi.edu>
X-Original-To: architecture-discuss@ietfa.amsl.com
Delivered-To: architecture-discuss@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C06861A0241 for <architecture-discuss@ietfa.amsl.com>; Tue, 25 Mar 2014 14:17:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 DTnIrhZPU2I7 for <architecture-discuss@ietfa.amsl.com>; Tue, 25 Mar 2014 14:17:45 -0700 (PDT)
Received: from darkstar.isi.edu (darkstar.isi.edu [128.9.128.127]) by ietfa.amsl.com (Postfix) with ESMTP id A632E1A0239 for <architecture-discuss@ietf.org>; Tue, 25 Mar 2014 14:17:45 -0700 (PDT)
Received: from [128.9.160.81] (nib.isi.edu [128.9.160.81]) (authenticated bits=0) by darkstar.isi.edu (8.13.8/8.13.8) with ESMTP id s2PLHG6o003559 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Tue, 25 Mar 2014 14:17:16 -0700 (PDT)
Message-ID: <5331F25C.20803@isi.edu>
Date: Tue, 25 Mar 2014 14:17:16 -0700
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
MIME-Version: 1.0
To: Rakshith Venkatesh <vrock28@gmail.com>, architecture-discuss@ietf.org
References: <CANw0z+Wy09iGvwL2DgzkMLdNxcwxOHmd38yxGz0H6v=FGpzEJw@mail.gmail.com>
In-Reply-To: <CANw0z+Wy09iGvwL2DgzkMLdNxcwxOHmd38yxGz0H6v=FGpzEJw@mail.gmail.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 8bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Archived-At: http://mailarchive.ietf.org/arch/msg/architecture-discuss/mmww-DeYEOeWETHy28BTiDQG3e0
Subject: Re: [arch-d] HTTP 2.0 + Performance improvement Idea
X-BeenThere: architecture-discuss@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: open discussion forum for long/wide-range architectural issues <architecture-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/architecture-discuss>, <mailto:architecture-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/architecture-discuss/>
List-Post: <mailto:architecture-discuss@ietf.org>
List-Help: <mailto:architecture-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/architecture-discuss>, <mailto:architecture-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 25 Mar 2014 21:17:48 -0000

You sound like you're looking for NFS; maybe you should propose an "NSF 
over HTTP" variant where responses can be issued out of order?

Joe

On 3/25/2014 4:56 AM, Rakshith Venkatesh wrote:
> Hi,
>
> I was going through SPDY draft or the HTTP 2.0 initial draft. I had an
> idea which I think would require a change in the architecture of the
> same and so I am dropping this mail. Here is the idea:
>
> A Http client expects the server to send data in-order. (NOTE: When I
> say a server, I am referring to an appliance to which disks are attached
> and the file resides on the disk.). If there is a file let’s say 10GB
> and if the client asks for this file from the server, the data has to be
> given in-order from the 1^st byte till the last byte. Now let’s say I
> implement an engine at the server side to do a parallel read on this
> huge file to fetch data at various offsets within the file, I will be
> able to fetch the data faster for sure but, I will not be able to send
> across the data immediately as and when I fetch it. I am expected to
> finish doing all parallel reads on the file till I read all the bytes,
> then send across the wire to the client.
>
> Now if we can have some tag or header which can be introduced as part of
> HTTP 2.0 which actually can help re-order the byte stream at the session
> layer or at a layer in between the application and session layer, we
> could potentially improve the performance for File reads using HTTP by
> making sure that the new module looks at this new tag and jumbles around
> the data based on this tag and eventually presents the data to HTTP to
> make it look all seamless.
>
> So the server can just do parallel reads on the same file at various
> offsets without worrying about ordering and send across the read chunks
> and this new module sitting at the client side can intervene and look at
> some form of tag/header to make sure it swaps the data accordingly and
> waits till all data is received and then present it to the Application
> protocol.
>
> NOTE: I am not referring to packet-reordering at TCP.
>
> By having this, servers can attain true parallelism in reading the file
> and can effectively improve file transfer rates.
>
>
> Thanks,
>
> Rakshith
>
>
>
> _______________________________________________
> Architecture-discuss mailing list
> Architecture-discuss@ietf.org
> https://www.ietf.org/mailman/listinfo/architecture-discuss
>