From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pb-smtp2.pobox.com ([64.147.108.71]) by ewsd; Fri Apr 24 03:50:59 EDT 2020 Received: from pb-smtp2.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id B6C8B41B88; Fri, 24 Apr 2020 03:50:45 -0400 (EDT) (envelope-from unobe@cpan.org) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=date :in-reply-to:references:mime-version:content-type :content-transfer-encoding:subject:to:from:message-id; s=sasl; bh=c8c4rmx8qju2sthNebuXxHQhuRM=; b=gV2VZOJXfu3bexyRqgpGb8h4uiBm Ad+ZcPaoEhGKHcbli+kr6v8RGO70/U25wcKBznRmRz2C/m4YXZrp8p9ZNeiT8iH8 dPFGhBlj50O1WlwRiFKY0JAnV67/iRqOExt/IPvsjMPWeeRxJMFQLeG8HelXJMGr 0f3zhF3vH1usGz0= Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id AFB0141B87; Fri, 24 Apr 2020 03:50:45 -0400 (EDT) (envelope-from unobe@cpan.org) Received: from [10.0.1.31] (unknown [137.25.138.56]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id 235DA41B86; Fri, 24 Apr 2020 03:50:45 -0400 (EDT) (envelope-from unobe@cpan.org) Date: Fri, 24 Apr 2020 07:50:42 +0000 In-Reply-To: References: <2DE413B1-B05D-45EF-A08A-6F9F119FB745@cpan.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [9front] Slow cp, support for 9P2000.s To: 9front@9front.org,aiju From: Romano Message-ID: <436A949A-4A55-4F46-936B-F369038CCB47@cpan.org> X-Pobox-Relay-ID: 4DCC780A-8600-11EA-9DCD-D1361DBA3BAF-09620299!pb-smtp2.pobox.com List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: scale-out replication replication NoSQL realtime-java-scale map/reduce base Thank you, Aiju! Using fcp , I get 0=2E36u 0=2E70s 25=2E66r, so more than halving the time= =2E And in retrospect I should have read the man page for cp first, where I= would have seen fcp=2E I lurk on reddit=2Ecom, so no account=2E I see there's reddit=2Ecom/r/9P20= 20, but it's private=2E Is the discussion re: 9P2020 mostly there, or elsew= here? I grepped 9P2020 under /n/lists/9front and only saw your message to m= e=2E On April 24, 2020 4:28:15 AM UTC, aiju wrote: >Yes his solution has been discussed and found wanting=2E If I remember >right=20 >it breaks the syscall interface and forces 9P to run over TCP=2E > >There have been ongoing talks about our own protocol 9P2020 to solve >this=20 >problem, but little progress because it's a hard problem to solve >properly=20 >without messing up Plan 9 too much=2E > >In the meantime, `fcp` is fast cp=2E > >- aiju > > > >On Fri, 24 Apr 2020, Romano wrote: > >> On my local wireless network at home between my work laptop and my >rpi 4, I tested using 'cp' while in drawterm=2E I ran drawterm -G on my >rpi, and used srvfs to export its file system=2E I ran drawterm on my >work laptop, and mounted the exported filesystem as /n/pi=2E I then >timed a 20MB file from /mnt/term/root/ on my work laptop to the /n/pi: >0=2E20u 0=2E82s 70=2E14r=2E 70s is atrociously slow for a local copy when >compared to http or scp, so I decided to look to see if this was known >and if any work had been done on this problem for 9p=2E I came across >John Floren's thesis from 2010[1] and his testing showed that increased >latency over 9p significantly increased the time files took to >transfer=2E He also shows modifications to 'cp' and 'exportfs' to allow >for streams to make 9p have similar speeds as http=2E >> >> So considering Floren's research, I then decided to look at my >latency on my local network, and sure enough, I'm getting the following >ping results (for 144 packets transmitted, with 1 packet lost): >round-trip min/avg/max/stddev =3D 2=2E273/15=2E264/497=2E869/44=2E018 ms = =2E With >an average latency of 15ms, the time it took for 20MB file to transfer >over 9p roughly matches Floren's tests=2E >> >> I think that modifying 'cp' and 'exportfs' would resolve this problem >and will look at patching it per Floren's thesis to confirm=2E Would >modifying 'cp' and 'exportfs' to allow for streams be something others >would be interested in? Or has this already been discussed and the >stream solution been found wanting for some technical reason? The >protocol, as mentioned in the paper, is called 9P2000=2Es=2E I don't see >that flavor listed here: http://9p=2Ecat-v=2Eorg/implementations >> >> [1] >https://pdfs=2Esemanticscholar=2Eorg/9b47/22e251df61b4abbe0da61720e57ac7b= 62f61=2Epdf >>