Opened 17 years ago

Last modified 10 years ago

#3119 closed Bug report

Uses 2 connections when the maximum is 1

Reported by: stephen_w Owned by:
Priority: normal Component: Other
Keywords: Cc: stephen_w, Alexander Schuch
Component version: Operating system type:
Operating system version:

Description

I used Filezilla to connect to my private FTP site, which does not allow anonymous logins, so you will not be able to use it to test this problem unless I set you up with an account. If you do need me to do that, please email me at stephen@….

I have my FTP server set up so that it has a restriction that only permits one connection per IP address, so I set the option in the site settings for Filezilla to use a maximum of 1 simultaneous connection. It logged in OK, and allowed me to browse the directories, but when I tried to download a file, Filezilla attempted to open a second connection to do the download, and it was denied by my FTP server which sent this:

421 No more connections accepted from 203.97.46.10, try again later.

each time. Filezilla continued to retry until I told it to disconnect.

I verified that my FTP server was working correctly by using NcFTP to get the file I wanted.

The following is a copy of the Filezilla log for the session:

Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012ECB08) m_pEngine=012D72F8 caller=012F0710
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 230-
Trace: CFtpControlSocket::OnReceive()
Response: 230- / /\ /
/\ / /\ [-> Welcome <-----------------------]
Response: 230- / / / / /_/ / / / /_/ Welcome to this InetPowerServer
Response: 230- / / / / / / /_ /\ powered site, all activity on this
Response: 230- / / / / /
/ _\/ / / site will be logged, if you don't
Response: 230-/_/ / /_/ / /_/ / like that, please disconnect now.
Response: 230-\/ \/ \/ v1.0.2.2 [-> 17:33:51 <-------> 2007/02/23 <-]
Response: 230-
Response: 230-[-> SERVER/CONNECTION INFORMATION <-][-> USER STATS - Retrieved Stored <-]
Response: 230- Server uptime: 3/09:32:27 File count...: 471 501
Response: 230- Connections..: 1 KByte count..: 3563496 42715
Response: 230- Idle time-out: 180 seconds High KBytes/s: 2958 299
Response: 230- Client host..: external.hosting.co.nz <203.97.46.10>
Response: 230-[------------------------------------------------------------------------]
Response: 230 User "stephen" logged in.
Command: SYST
Trace: CFtpControlSocket::OnReceive()
Response: 215 UNIX (IBM OS/2 Warp 4.5 (0) running InetPowerServer/2 v1.0.2.2)
Command: FEAT
Trace: CFtpControlSocket::OnReceive()
Response: 211-Extensions supported:
Trace: CFtpControlSocket::OnReceive()
Response: MDTM
Response: MLST type*;size*;modify*;perm*;
Response: REST STREAM
Response: SIZE
Response: TVFS
Response: 211 END
Status: Connected
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Status: Retrieving directory listing...
Trace: CFtpControlSocket::SendNextCommand(0)
Command: CWD /\k\u\polarbar\Mailer\Maildata\Stephen\inbox/
Trace: CFtpControlSocket::OnReceive()
Response: 250 "/k/u/polarbar/Mailer/Maildata/Stephen/inbox" is current directory.
Command: PWD
Trace: CFtpControlSocket::OnReceive()
Response: 257 "/k/u/polarbar/Mailer/Maildata/Stephen/inbox" is current directory.
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpControlSocket::SendNextCommand(0)
Trace: CFtpControlSocket::ListSend(0)
Trace: CFtpControlSocket::SendNextCommand(0)
Trace: CFtpControlSocket::TransferSend(0)
Command: TYPE I
Trace: CFtpControlSocket::OnReceive()
Response: 200 Transfer type is set to Binary/Image.
Trace: CFtpControlSocket::TransferParseResponse()
Trace: CFtpControlSocket::TransferSend(0)
Command: PORT 172,20,4,85,17,79
Trace: CFtpControlSocket::OnReceive()
Response: 200 PORT command completed.
Trace: CFtpControlSocket::TransferParseResponse()
Trace: CFtpControlSocket::TransferSend(0)
Command: LIST
Trace: CTransferSocket::OnConnect
Trace: CFtpControlSocket::OnReceive()
Response: 150 Opening Binary/Image data connection for "/k/u/polarbar/Mailer/Maildata/Stephen/inbox/*".
Trace: CFtpControlSocket::TransferParseResponse()
Trace: CFtpControlSocket::TransferSend(0)
Trace: CTransferSocket::OnClose
Trace: CTransferSocket::TransferEnd(0)
Trace: CFtpControlSocket::TransferEnd(0)
Trace: CFtpControlSocket::OnReceive()
Response: 226 Directory listing complete.
Trace: CFtpControlSocket::TransferParseResponse()
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpControlSocket::SendNextCommand(0)
Trace: CFtpControlSocket::ListSend(0)
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Status: Directory listing successful
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012F9790) m_pEngine=010BCF60 caller=012FA0D8
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012F9790) m_pEngine=010BCF60 caller=012FA0D8
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012FBA00) m_pEngine=010BCF60 caller=012FA0D8
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 421 No more connections accepted from 203.97.46.10, try again later.
Trace: CFtpControlSocket::ResetOperation(66)
Trace: CControlSocket::ResetOperation(66)
Error: Could not connect to server
Status: Waiting to retry...
Status: Disconnected from server
Trace: CFtpControlSocket::ResetOperation(66)
Trace: CControlSocket::ResetOperation(66)
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012FBA00) m_pEngine=010BCF60 caller=012F0710
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012F9FD0) m_pEngine=010BCF60 caller=012F0710
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012F9790) m_pEngine=010BCF60 caller=012F0710
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server
Status: Resolving IP-Address for ftp.jsw.gen.nz
Trace: ControlSocket.cpp(167): CControlSocket::ContinueConnect(012F7530) m_pEngine=010BCF60 caller=012F0710
Status: Connecting to 203.118.159.112:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 ftp FTPd ready (IPS/2 v1.0.2.2 - http://www.InetPowerServer.com/)
Command: USER stephen
Trace: CFtpControlSocket::OnReceive()
Response: 331 Password required for "stephen".
Command: PASS
Trace: CFtpControlSocket::OnReceive()
Response: 530 Unable to login.
Trace: CFtpControlSocket::ResetOperation(1090)
Trace: CControlSocket::ResetOperation(1090)
Error: Could not connect to server

Change History (3)

comment:1 by Alexander Schuch, 17 years ago

What version of FileZilla 3 are you using? FileZilla 3 beta 6 is the latest.

FTP always needs two connections: One for commands and one for each transfer. So you request a file over the command connection, and then a second data connection is used to transfer the file.

comment:2 by Alexander Schuch, 17 years ago

This is a known problem with FileZilla.

FileZilla creates a secondary control connection when transferring files so that it is still possible to browse the FTP server while files are being transferred. With your setup, the secondary control connection gets rejected by the server due to connection limit.

There is no schedule on when the problem will be solved. But as it is know, it will be implemented as soon as there is time for it.

comment:3 by Alexander Schuch, 17 years ago

Someone else reported the same problem again, but that report is not confidential. In order to have only one bug report per issue, this one will be closed (as duplicate) in favour to the public report:
[ 1687849 ] Limit number of simultaneous connections doesn't work

Note: See TracTickets for help on using tickets.