Issue 4228: listening socket determination of source / destination File (ftamftp-ftf) Source: DSTC (Mr. Ted McFadden, mcfadden@dstc.edu.au) Nature: Uncategorized Issue Severity: Summary: In general (exception noted below) it is not possible for a receiving FileTransferSession to know what is the destination File for the data coming in over a socket. The receiver is never made aware of the sender's connection host and port, so it cannot distinguish multiple connections to the listening socket. The exception is that the transfer mechanism described in Chapter 4 will work reliably as long as the following limitations apply: 1. A FileTransferSession is involved in only one file transfer at a time so there is no ambiguity as to the data source and destination. AND 2. A server process implementation makes each FileTransferSession listen on a different port or allow only one FileTransferSession to take part in a transfer at a time. This guarantees there is no ambiguity as to which FileTransferSession is involved in a file transfer. These are rather severe restrictions. Simultaneous transfers and reuse of server sockets can be accomplished if the transfer negotiation is augmented to exchange details such as host and port (somewhat like the ftp PORT command does to establish a data connection.) Such an approach is outlined in issue 4209. Resolution: The resolution for issues 4177, 4209, and 4227 applies to this issue. Revised Text: The resolution for issues 4177, 4209, and 4227 applies to this issue. Actions taken: March 21, 2001: received issue Discussion: End of Annotations:===== ate: Wed, 21 Mar 2001 16:26:39 +1000 From: Ted McFadden To: issues@omg.org Subject: ftamftp-ftf issue: listening socket determination of source / destination File Message-ID: <20010321162639.B26849@iona.com> Mail-Followup-To: issues@omg.org Mime-Version: 1.0 X-Mailer: Mutt 1.0i Content-Type: text/plain; charset=us-ascii X-UIDL: h;Ce9DFAe9$O9e9pPkd9 Hi, ftamftp-ftf issue: listening socket determination of source / destination File ------------------------------------------------------------------------------ In general (exception noted below) it is not possible for a receiving FileTransferSession to know what is the destination File for the data coming in over a socket. The receiver is never made aware of the sender's connection host and port, so it cannot distinguish multiple connections to the listening socket. The exception is that the transfer mechanism described in Chapter 4 will work reliably as long as the following limitations apply: 1. A FileTransferSession is involved in only one file transfer at a time so there is no ambiguity as to the data source and destination. AND 2. A server process implementation makes each FileTransferSession listen on a different port or allow only one FileTransferSession to take part in a transfer at a time. This guarantees there is no ambiguity as to which FileTransferSession is involved in a file transfer. These are rather severe restrictions. Simultaneous transfers and reuse of server sockets can be accomplished if the transfer negotiation is augmented to exchange details such as host and port (somewhat like the ftp PORT command does to establish a data connection.) Such an approach is outlined in issue 4209. -- Ted McFadden ted.mcfadden@iona.com Object Oriented Concepts Inc. - An IONA Company http://www.orbacus.com Suite 4, 8 Martha St. +61-7-3324-9633 Camp Hill, Brisbane, 4169, QLD. Australia