[ftpext] End byte of transfer in FTP

Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> Sun, 28 November 2010 16:20 UTC

Return-Path: <tatsuhiro.t@gmail.com>
X-Original-To: ftpext@core3.amsl.com
Delivered-To: ftpext@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D8B4228C102 for <ftpext@core3.amsl.com>; Sun, 28 Nov 2010 08:20:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.299
X-Spam-Level:
X-Spam-Status: No, score=-2.299 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, J_CHICKENPOX_101=0.6]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qlC6xPSCfCjm for <ftpext@core3.amsl.com>; Sun, 28 Nov 2010 08:20:22 -0800 (PST)
Received: from mail-fx0-f44.google.com (mail-fx0-f44.google.com [209.85.161.44]) by core3.amsl.com (Postfix) with ESMTP id D460728C0FC for <ftpext@ietf.org>; Sun, 28 Nov 2010 08:20:21 -0800 (PST)
Received: by fxm9 with SMTP id 9so2835288fxm.31 for <ftpext@ietf.org>; Sun, 28 Nov 2010 08:21:29 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:from:date :message-id:subject:to:content-type; bh=HqvRnvqfKpEm3JH9kK8CBooDsPGT2HTYa/PLlSes+e8=; b=rRtOoTO+qnPW1JDL7khoJ7jwQRAoMmPMVhmw9pScKOOcFkngt4FPunojLIaXoKeBd6 XXVKkd5XlPvhvLkkgRjm4mdRJOLpRUVicqmRWxeImI/+IRo+ro5RVqVL7gcwGYsvTEs9 bCjROTI2z9Pa+IF2zmNXUziCjB5jV39krvcW4=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:from:date:message-id:subject:to:content-type; b=fgHrf07QpV/o0puuj8oUyiDfZ1asTQpFxEYgDv/JXPbclEFVTVR7+nzNd1atQIPj8T g1npt8217fKm7cj1bWamNvkDqdDzl8NNxIBm0kqiQqrl8P8ELfFDBUo9YytGOwJgiAJk XbDLsybM+bxreTxIkwmYsE4Ml6AWcVFzxhjx8=
Received: by 10.223.101.131 with SMTP id c3mr4403890fao.95.1290961289102; Sun, 28 Nov 2010 08:21:29 -0800 (PST)
MIME-Version: 1.0
Received: by 10.223.101.205 with HTTP; Sun, 28 Nov 2010 08:21:08 -0800 (PST)
From: Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>
Date: Mon, 29 Nov 2010 01:21:08 +0900
Message-ID: <AANLkTi=_OsGPMsC=BHtOyHzTTM5vJ1=yW9fYk_Tp1xm7@mail.gmail.com>
To: ftpext@ietf.org
Content-Type: text/plain; charset="ISO-8859-1"
Subject: [ftpext] End byte of transfer in FTP
X-BeenThere: ftpext@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <ftpext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ftpext>, <mailto:ftpext-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ftpext>
List-Post: <mailto:ftpext@ietf.org>
List-Help: <mailto:ftpext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ftpext>, <mailto:ftpext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Nov 2010 16:20:22 -0000

Hi,

In FTP, user can set start byte of transfer by REST command.
But it seems it lacks the feature to set end byte of transfer, like
HTTP's Range request.
Does it really lack this feature? Are there any ftp server/client support this?

Issuing ABOR command is workaround but sometimes it does not stop immediately
and unused bytes are transfered.
Another possible workaround is that just closing data connection and
wait for reply
from control connection(I've not tested this yet).

A example of utilization this feature is Metalink download.
In Metalink, it contains several URIs for one file. So we can download it from
several sources. From each server, client downloads non-overlapping segment.
For example, when downloading 1 file using 2 FTP servers.
We can use REST command for second half of the download and it downloads given
 point to the end of file. This is fine. The control connection can be reused.
For the first half of the download, since we cannot set end byte, we
have to close connection
entirely after first half of file is downloaded. The control
connection cannot be reused this time.
We can use ABOR, but it has drawback as I mentioned earlier.

Best regards,

Tatsuhiro Tsujikawa