Knowledgebase: Pre-Sales
Why are Multiple Data Ports Needed?
Posted by - NA -, Last modified by Aly Essa on 04 August 2016 12:03 PM

Environment

FileCatalyst Direct Suite v3.0 and later.

 

Overview

Communication between the Client Side software and the FileCatalyst Server is always done through the Control Socket or Command Channel. This connection is usually configured over a non-secure Port such as 21 or a Port secured using SSL, such as 990. The login credentials and commands like, GET, PUT, LS and more.

Once the credentials are verified between the FileCatalyst Server and the Client Side software, a separate link is negotiated where the data flow takes place. Data does not normally flow back and forth over the Command Channel for FileCatalyst Products using UDP acceleration.

Exactly what range is configurable on the FileCatalyst Server?

By default, we specify the port range to be 8000-8999. You are free to change this as you see fit, however, keep in mind that for every command you send out (LS/DIR, PUT, GET, etc), one port needs to be opened up and closed. Thus, if you’re transferring 1000 small 1k files, you are spending all of your time opening and closing sockets (so it’s preferable to zip archive these files). It also means that if you limit the port range to a very small number (say, 10 ports), you are potentially setting yourself up for a port availability issue, even with 1 user connecting. Ports are released by Java relatively quickly, but the OS can hang onto some ports for a long time. These release times vary from OS to OS. The FileCatalyst server does recycle the port list, but it’s always a good idea to have more rather than less.