9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Bakul Shah <bakul@bitblocks.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] Help with two small shared file servers
Date: Wed, 17 Aug 2011 23:25:01 -0700	[thread overview]
Message-ID: <20110818062501.E4F3EB827@mail.bitblocks.com> (raw)
In-Reply-To: Your message of "Thu, 18 Aug 2011 01:29:29 EDT." <afa907c3be69717b86a41caafe955006@coraid.com>

On Thu, 18 Aug 2011 01:29:29 EDT erik quanstrom <quanstro@labs.coraid.com>  wrote:
> > > Is 9p suitable for this? How will the 40ms latency affect 9p
> > > operation? (I have 100Mbit).
> >
> > With a strict request/response protocol you will get no more
> > than 64KB once every 80ms so your throughput at best will be
> > 6.55Mbps or about 15 times slower than using HTTP/FTP on
> > 100Mbps link for large files.  [John, what was the link speed
> > for the tests in your thesis?]
>
> i calculate 1/0.080s/rt * 64*1024 = 819 kbytes/s.  (i think your
> conversion from mbits/s to bytes/s is faulty.)

*8 for bits. 2^16*8/0.080/10^6 Mbps == 6.5536 Mbps.

MBps == 10^6 bytes/sec.
Mbps == 10^6 bits/sec.

But it is not accurate in another way. 40ms for the server to
receive the request. 40 ms for the client to receive the first
byte of data + time for transmission of 64KB == 2^16*8/10^8 ==
about 5ms. Actually a bit more due to ethernet, ip & tcp
overhead. So the total time will be over 85ms for a  BW of
under 6.17Mbps.

> also you do get 1 oustanding per read or write, not per machine.
> so the real limit is wire speed, but for most programs most of the
> time the limit for a single file transfer would be as you specify.

It is three things:

RTT= round trip time = 2*latency
BW = bandwidth
DS = datasize that can be sent without waiting.

Time to deliver DS bytes will be at least
	RTT+DS/BW

Consider three cases:
1) local (small RTT)
2) remote slow (large RTT, small BW)
3) remote fast (large RTT, large BW)

When RTT effects are small (1 & 2) 9p does fine. For case 3,
to minimize RTT effects you must make DS large but that can't
be done in 9p beyond 64k.

In John's test it was 10Mbps @ 25ms latency. To transfer 64KB
is 50ms rtt + 52ms or about 102ms. He should see 5.1Mbps or
about half the throughput compared to HTTP streaming case but
he says it was 1/4th so there must be other inefficiencies.



  parent reply	other threads:[~2011-08-18  6:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-17 10:09 Aram Hăvărneanu
2011-08-17 14:11 ` Anthony Sorace
2011-08-17 14:32   ` John Floren
2011-08-17 15:39   ` erik quanstrom
     [not found]   ` <CAL4LZyiEk35Kfq_wezUaEvJWsYX3ONeordrD7sQjFr+45fQiWg@mail.gmail.c>
2011-08-18  5:34     ` erik quanstrom
2011-08-18  5:48       ` John Floren
     [not found]       ` <CAL4LZygoKQZoTvof4F_fBQhxqsQZb2r+FR_nkgf=YbU94WvoBQ@mail.gmail.c>
2011-08-18 13:26         ` erik quanstrom
2011-08-18 14:21           ` Lucio De Re
2011-08-19  8:15           ` cinap_lenrek
2011-08-17 21:00 ` Bakul Shah
2011-08-17 21:19   ` John Floren
2011-08-17 21:22   ` Skip Tavakkolian
2011-08-18  5:29   ` erik quanstrom
2011-08-18  5:47     ` Tristan Plumb
2011-08-18  6:25     ` Bakul Shah [this message]
2011-08-30 21:40 ` Ethan Grammatikidis
     [not found] <CAEAzY3_Vx8WW1Oumt0t1_Ay6LtpTFFonpwMD+=0DYCM-yxXaeA@mail.gmail.c>
2011-08-17 15:42 ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110818062501.E4F3EB827@mail.bitblocks.com \
    --to=bakul@bitblocks.com \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).