Lew said:
I think we're running into a layer issue here. As I understand FTP, the
"server" from the app standpoint is the one to whom requests are made.
Active and passive FTP are lower layer matters dealing with the network
or transport, no?
FTP runs on two sessions, a command session and a data session. The
command session is initiated by the client; that part is easy. In
classic FTP, the data session is then initiated by the FTP server.
Because this nowadays typically causes firewall problems at the client,
a new "passive mode" FTP has been defined, in which, instead of
initiating the data session, the server requests the client, via the
command session, to initiate it, "active mode" being a retronym for the
original design. Passive mode must be requested explicitly, since not
all software supports it.
I don't know why they didn't just use a single session with a side
channel implemented in the data format in the first place, unless it was
simply to squeeze out the last drop of bandwidth.
So it may be technically correct to say, in describing how to program
for TCP, that it is always the client, by definition, that initiates the
session. But when explaining to someone who has just asked, "What is
TCP?", to whom "the server" means "the big box in the air-conditioned
room" and "the client" means "my PC", it is a pragmatic truth that "TCP
sessions may initiate with either the client or the server". To tell
him, "A TCP session always originates with the client," will only make
him believe a dangerous falsehood, and explaining the whole situation
runs the risk of making him go all Blanche DuBois on you ("My head is
swimming!"), at least in my experience.
If he needs to know more later, then we can say, "When setting up a TCP
session, the side that initiates it is always called the 'client', no
matter what happens after the session is set up." Anyone who needs to
know that will readily understand it.
--
John W. Kennedy
"Cricket is a game where you have 2 sides - one out in the field and the
other in, off the field. Each man in the side that is in, goes out, and
when he is out, comes in, and the next man goes out until he is out,
then he comes in. When the side that is in, goes out, they go in to get
the others which are in, out. Sometimes you get men still in, but not
out, but they are out. They go in when the side goes out, to be put in,
but not out. When both sides have been in and out, even those that are
not out, but also not in, that is the end of the game."
-- Anon.
--
John W. Kennedy
"There are those who argue that everything breaks even in this old dump
of a world of ours. I suppose these ginks who argue that way hold that
because the rich man gets ice in the summer and the poor man gets it in
the winter things are breaking even for both. Maybe so, but I'll swear I
can't see it that way."
-- The last words of Bat Masterson