Re: [Storagesync] Some preliminary investigations on ownCloud

Linhui Sun <lh.sunlinh@gmail.com> Thu, 26 November 2015 03:28 UTC

Return-Path: <lh.sunlinh@gmail.com>
X-Original-To: storagesync@ietfa.amsl.com
Delivered-To: storagesync@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AF8FC1A9166 for <storagesync@ietfa.amsl.com>; Wed, 25 Nov 2015 19:28:02 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] 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 i6QPOoVjXvk5 for <storagesync@ietfa.amsl.com>; Wed, 25 Nov 2015 19:28:00 -0800 (PST)
Received: from mail-wm0-x234.google.com (mail-wm0-x234.google.com [IPv6:2a00:1450:400c:c09::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A99A91A9170 for <storagesync@ietf.org>; Wed, 25 Nov 2015 19:27:59 -0800 (PST)
Received: by wmww144 with SMTP id w144so5711259wmw.0 for <storagesync@ietf.org>; Wed, 25 Nov 2015 19:27:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=lt2YdEzAZ0zbjIKKl2NuEy4vPC2RlodvD3PFDzNq7lE=; b=OQ8NFi71veULQ5EMqaW0dgmFkRJCQQC5yOzAlD+8fhP+4D/4P1XfOIPPXhLb+jcvOR 0QI0olLE9afK+y7VicdNLlevdAZMiUATfVKFwU2NM8ThF2ZuRHgI6LgstcWbbnIDjdMe 9gRcM4ohVOGLQFmMzDCLQ2m3MVEV4wVfc5p526W3Scx3Aoe/OuWeesEWAK8eaU968b6E oNZa2HEuEEjI9tUlde8TVFqp9i21ImeNkiGaE2Fmfb+OIiCNS2H3pt7aUZ3jbLsWRJ7S MZgg5yA2HjS/MjnGQCehPlHfvPeOlqRpb1bLfoq037c5klFoLidDAOp/T+HLiTu/R+iU CX7Q==
X-Received: by 10.28.103.84 with SMTP id b81mr952260wmc.39.1448508478286; Wed, 25 Nov 2015 19:27:58 -0800 (PST)
MIME-Version: 1.0
Received: by 10.28.27.147 with HTTP; Wed, 25 Nov 2015 19:27:38 -0800 (PST)
In-Reply-To: <201511261111483122529@bjtu.edu.cn>
References: <CAO_YprZTz+O-e82hsTgMBOLr645jJqbhtVKngubnLhimyfB2cg@mail.gmail.com> <201511261111483122529@bjtu.edu.cn>
From: Linhui Sun <lh.sunlinh@gmail.com>
Date: Thu, 26 Nov 2015 11:27:38 +0800
Message-ID: <CAO_YpraNavS0S-K6wSM-ijjtBDCSELxSnFhkYqS01WET4gjBSA@mail.gmail.com>
To: fsong <fsong@bjtu.edu.cn>
Content-Type: multipart/alternative; boundary="001a114b679c4d708805256929de"
Archived-At: <http://mailarchive.ietf.org/arch/msg/storagesync/NDRZPO0crDBxv2vS2nFiFQRxVVw>
Cc: storagesync <storagesync@ietf.org>
Subject: Re: [Storagesync] Some preliminary investigations on ownCloud
X-BeenThere: storagesync@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Mechanisms to synchronize client file systems with Internet-based data storage services <storagesync.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/storagesync>, <mailto:storagesync-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/storagesync/>
List-Post: <mailto:storagesync@ietf.org>
List-Help: <mailto:storagesync-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/storagesync>, <mailto:storagesync-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 26 Nov 2015 03:28:02 -0000

Hi Fei,

2015-11-26 11:11 GMT+08:00 Fei Song <fsong@bjtu.edu.cn>:

> Hi all
>
>
> --------------
> Fei Song
> >Hi all,
> >
> >As I mentioned before, I think the developers could benefit from the IETF
> >standards. The ownCloud (https://owncloud.org/) is just an example. It is
> >developed for those who do not trust commercial storage services and want
> >to build their own network-based storage services. The ownCloud is using
> >WebDAV (RFC4918) to achieve the data sync. IMO, the WebDAV is designed for
> >distributed work but not for the sync. Thus, I made some preliminary
> >investigations on how the ownCloud uses WebDAV for sync purposes. A brief
> >summary of what I've found is in the following, please correct me if I am
> >wrong.
> >
> >I installed the ownCloud server (v8.2.1) on the CentOS7, and the client is
> >a desktop client on Windows.
> >
> >1. To find whether there is a change to the synced directory, the client
> >continuously sends PROPFIND to the server at regular intervals (around 34
> >seconds under my observation). The server will respond a 207 Multi-Status
> >Response to tell whether the main directory has been changed. To perform
> >this regular check, the client will open a new TCP connection to send the
> >PROPFIND, the server will close the existing TCP connection after
> >responding the 207 Multi-Status Response. For the next check, the client
> >will open another new TCP connection.
>
> I wonder whether these message you got had been encrypt or not.
>
The ownCloud suggests people use HTTPS, but you could also use the HTTP.
And that is what I did.

>
> >
> >2. Every time adding (or creating) a new file to the local folder, the
> >client will open a new TCP connection (if there is no connection existing)
> >to send the file asap. The client will first send several PROPFINDs to
> find
> >out which sub-directory has been changed. And then it sends the file using
> >PUT. The server will respond a 201 Created Response and then terminate the
> >connection. Currently, I haven't found any application layer chunking, all
> >the segmentation are performed by TCP.
> >
> >3. Every time I delete (or rename) a file locally, the client will also
> >open a new TCP connection to send several PROPFINDs to find out which file
> >has been removed (or renamed). Then it will send DELETE (or MOVE). The
> >server will respond a 204 No Content Response (or 201 Created Response)
> and
> >then terminate the connection.
> >
> >4. I open a file and frequently edit and save it (actually this is what I
> >usually do with the Dropbox). The client will send the whole file to the
> >server every time I save the file.
> >
> >To summarize, it seems that the ownCloud makes heavily use of PROPFIND to
> >achieve the sync process. Each sync operation (e.g. upload, modify and
> >etc.) will start with sending one or more PROPFINDs. And currently, if I
> >add a file to the server (directly from the server side via web
> interface),
> >the client cannot find the change. I need to interrupt the sync and
> recover
> >it to make the client be aware of the change and download the newly added
> >file. I'm not sure whether this is caused by the sync mechanism or an
> >improper server configuration. I need to investigate this further and also
> >how the ownCloud works for multiple clients (or devices).
>
> What do you mean by "directly from the server side via web interface".
> If all the configuration were correct, do you want to identify that the
> sync in
> ownCloud is only unidirectional?
>
People could access to the ownCloud service via desktop, mobile client or
web interface (i.e. browser), the point I want to say here is an operation
on the server side cannot be detected automatically. I'm not sure whether
I've configured the server correctly. But the sync is not unidirectional
since after I recovering the sync, the client could download the asap.

>
> >
> >For ISS, I think ownCloud has demonstrated to some extent that similar
> IETF
> >protocols could be deployed and employed. The intention of this message is
> >to investigate the current state of using WebDAV for sync purposes to see
> >what needs to be improved here and whether we need new protocols.
>
>
> >
> >Comments are welcome : )
> >
> >Regards,
> >Linhui
> >
> _______________________________________________
> Storagesync mailing list
> Storagesync@ietf.org
> https://www.ietf.org/mailman/listinfo/storagesync
>