FTP
This tutorial shows how to test FTP with a commercial UE on Amari Callbox. If you are using the USIM card from Amarisoft, you don't need to change any settings in the default configuration (You just need to understand about the settings on default configuration).
FTP stands for File Transfer Protocol. This is a TCP based protocol that is used to file download or upload (You don't need to understand the details of ftp protocol itself for this tutorial. But if you are interested in the details of the protocol, check out this note). If you want to do TCP testing in more practical situation, FTP would be a good thing to try.
In this tutorial, I used LTE for radio protocol (radio pipe), but you can apply the same setup (ftp setups in this tutorial) for any other radio protocol (e.g, NR NSA, NR SA etc). For ftp test, you need to have ftp server on server PC and ftp client on your UE (or a client PC tethered with the UE). For a server, you can use any ftp server. Some of the servers commonly used in wireless testing is listed below. I used the first one in this tutorial.
- vsftpd : If you are using Linux PC (e.g, Amarisoft Callbox), this would be the common choice
- fileZilla server : If you are using a Windows PC, this would be a more frequent choice
- Any file download site on the internet : If you don't want to setup any server, you may find any site in the internet from which you can download the files. In this case, the Amarisoft Internet Access tutorial would better be a better help.
Table of Contents
- FTP
Test Setup
Test setup for this tutorial is as shown below.
- SIM Card used in this tutorial is the one delivered with the system as it is.
- If you want to change the configuration, The tutorial Configuration Guide would help
Test 1 : FTP Download
In this test, I will show you how to configure all the components (Callbox, ftpserver,ftp client app) for download (i.e, copy a file from server to ftp client app).
Configuration
There are multiple componets involved in this test, so you need to configure all of the components(Callbox, ftpserver,ftp client app) appropriately for the test.
Callbox
I used the enb.default.cfg (LTE default configuration) as it is without changing any contents in it. (NOTE : I used the LTE default configuration here, but you may use any configuration that would assign a UE an IP address that belong to any Tun interface configured by the callbox)
I also used the default configuration for mme as shown below.
vsftpd
I installed a ftp server on Amari Callbox. You can install any ftp server, but in this tutorial I installed vsftpd. You may google on how to install vsftpd on Callbox (Fedor 32 in my case). An example of installation guide can be found here (NOTE : follow the instruction only for installation. For vsftpd.conf setting (/etc/vsftpd/vsftpd.conf), configure as follows for this tutorial. Note that I enabled anoynmous access for each test.
Confirm if the following directories are created (It would be created automatically during the vsftpd installation. If you don't find this directory, you can create a directory by yourself .. or create any directory and set that directory to anon_root in vsftpd.conf file. Before the test, I would suggest you to put some files in this directory or pub directory so that you can download from UE later.
Then restart vsftpd
# service vsftpd restart
Make it sure that it is running.
ftp client on UE
You may use any ftp client you can install on your device, but I installed the app called AndFTP on my UE and created a connection profile as below. Note that I put the IP 192.168.3.1 here. It mean that UE should get IP of 192.168.3.x during the registration.
Perform the test
Start LTE service and check basic cell configuration. Any cell configuration is OK as long as it is LTE cell.
Power On UE and make it sure that UE get registerred.
Make it sure that UE is assigned with a IP address as below. (NOTE : UE is assigned with an IP 192.168.3.x. It would be OK if it is assigned with different IP subnet, in that you need to change accordingly the IP address on ftp client settings on UE)
Launch ftp client on UE and download a file.
Log Analysis
You may not need any detailed log analysis for this since it is based on basic LTE call process. One thing you may want to check would be to check IP traffic and see ftp is going through the callbox radio stack as shown below. You can identify ftp traffic by the ftp port number as underlined.
First you can check if you see IP traffic while you are downloading file via ftp and confirm that it is ftp traffic (no other traffic) by port number printed on the log.
Test 2 : FTP Upload
FTP server usually put stricter rule in terms of server side setting most likely for security reason. This server side setting requirement would be even stricter when in comes to 'anonymous' access. In this test, I will show you about the additional settings/preparations you need to do to allow ftp upload for anonymous access. Once you have done this, you don't need to change anythning back to do ftp download test. You may keep this setting for both download and upload test.
Configuration
There are multiple componets involved in this test, so you need to configure all of the components(Callbox, ftpserver,ftp client app) appropriately for the test.
Callbox
Same as in Test 1. No difference between download and Upload
vsftpd
I changed the configuration as follows to allow the uplink.
I have created an new directory within the pub directory and give the directory a full authorization for everybody (NOTE : I have tried with changing access right to pub directory itself in the hope of doing both uplink and downlink with the same directory, but anonymous login with andFTP itself failed in this case. I am not 100% sure if this is due to vsftpd issue or andFTP issue though).
Then restart vsftpd
# service vsftpd restart
Make it sure that it is running.
ftp client on UE
Same as in Test 1. You can use the same profile that you created in andFTP for Test 1.
Perform the test
Start LTE service and check basic cell configuration. Any cell configuration is OK as long as it is LTE cell.
Power On UE and make it sure that UE get registerred.
Make it sure that UE is assigned with a IP address as below. (NOTE : UE is assigned with an IP 192.168.3.x. It would be OK if it is assigned with different IP subnet, in that you need to change accordingly the IP address on ftp client settings on UE)
Launch ftp client on UE and download a file. If you are using the same mobile app as I do, just follow through each of the screenshots shown below.