Příklad komunikace (relace FTP):


Uživatel /zprávy klienta FTP Na pozadí od klienta Na pozadí –ze serveru
ftp>open ftp.fce.vutbr.cz Connecting to 147.229.17.10 220 hp735 FTP server (Version 16.2 Thu Nov 10 11:35:22 GMT 1993)ready
Connected to hp735.fce.vutbr.cz    
User: anonymous USER anonymous 331 Guest login ok, send ident as password
Password: PASS 230 Guest login ok, access restrictions apply
ftp>    
Proběhlo otevření relace – přihlášení na server.
Uživatel na počátku není autentizován, tzn. může používat pouze ty příkazy FTP, které jsou určeny pro klienta FTP a jeho lokální počítač. Klient zahájí  autentizaci – zadání jména uživatele a pošle je serveru. Server odpoví 331 – výzva k zadání hesla. Po odeslání hesla odpoví server – 230 – uživatel byl úspěšně přihlášen. (Případně 530 login incorrect – pokud bylo heslo zadáno špatně). Po ukončení autentizace je klient FTP připraven přijímat i příkazy pro server. (Nelze teď naopak používat např. příkaz open).
ftp> pwd XPWD 257 ”/” is current directory
ftp> dir PORT 147,229,28,40,5,1 200 PORT command succesful
  LIST 150 Opening ASCII mode data connection for /bin/ls
    226 Transfer Complete
    7116 bytes received in 2,4secs, (28.55Kbps)
Příkaz dir má za následek přenos dat ze serveru na klienta. Z toho důvodu je nejprve odeslán příkaz PORT, kterým klient informuje server o čísle portu, na kterém očekává odpověď. (Číslo je v tomto případě 5,1 – je vyjádřeno po bytech v desítkové soustavě. Je to tedy: 0000 0101 0000 0001=1281). Po kladné odezvě ze serveru teprve posílá příkaz LIST pro výpis obsahu aktuálního adresáře. Jakmile server odešle data, ohlásí stavový kód 226. Pošle také informaci o počtu přenesených bytů.
ftp>cd pub CWD pub 250 CWD command successful
ftp>dir PORT 147,229,28,40,5,2 200 PORT command successful
  LIST 150 Openning ASCII mode data connection for /bin/ss.
    226 Transfer complete
    501 bytes received in 0,44 seconds (1,14kB/s)
ftp>lcd c:\temp    
ftp>!dir    
Proběhla inkrementace portu pro přenos dat při provádění příkazu dir. Příkazy lcd a !dir jsou pro lokální počítač, pro nastavení aktuálního adresáře a zjištění jeho obsahu. Vše probíhá v režii klienta, serveru se nedotýká.
ftp>binary TYPE I 200 Type set to I.
ftp>get mouse.jpg PORT 147,229,28,40,3 200 PORT command successful
  RETR mouse.jpg 150 Opening BINARY mode data connection for mouse.jpg (12308 bytes)
    226 Transfer complete
    12308 bytes received in 0,05seconds (246,16 Kbytes/sec)
ftp>close QUIT 221 Goodbye
Přenášeným souborem má být obrázek, proto je třeba nastavit typ přenosu na binární (standardně je ascii – textový). Opět se inkrementuje port. Příkazem close se ukončuje relace (konec spojení) se serverem.

Základní příkazy standardního klienta FTP

Navázání a ukončení spojení
open název uzlu Otevře spojení s daným uzlem internetu (FTP serverem), zahájí se přihlašovací dialog. Na serveru buď musí mít uživatel účet nebo musí jít o uzel umožňující přístup anonymním uživatelům.
user přihlašovací jméno Přihlášení k serveru. Pokud došlo k chybě při vyplňování přihlašovacího dialogu, je spojení zachováno a lze se přihlásit znovu tímto příkazem.
close Ukončení spojení klienta se serverem – klient zůstává otevřen
bye Ukončení klienta i případného otevřeného spojení.
Práce s adresáři a soubory
pwd Zobrazí jméno aktuálního adresáře na serveru
dir Výpis obsahu aktuálního adresáře na serveru
ls Pouze zkrácený výpis obsahu aktuálního adresáře (jen jména)
cd adresář Změna aktuálního adresáře na serveru
lcd adresář Změna aktuálního adresáře na lokálním počítači (na straně klienta)
mkdir adresář Vytvoří adresář na serveru (má-li k tomu uživatel oprávnění)
rmdir adresář Smaže prázdný adresář na serveru (má-li k tomu uživatel oprávnění)
delete název souboru Smaže vzdálený soubor (na serveru) (má-li k tomu uživatel oprávnění)
Přenos souborů
ascii Nastaví textový režim přenosu
binary Nastaví binární režim přenosu – trvá tak dlouho dokud není nastaven typ ascii
type Zobrazí nastavený typ přenosu
status Zobrazení nastavení parametrů klienta FTP
get souborv souborl Zkopíruje vzdálený soubor do aktuálního adresáře lokálního počítače kam ho umístí pod jménem souborl. Není-li název souborl uveden, uloží se pod původním jménem. (jména lze zadat včetně cesty)
put souborl souborv Zkopíruje souborl z lokálního počítače do aktuálního adresáře serveru, kde se uloží pod jménem souborv. Není-li jméno souborv uvedeno, uloží se pod původním jménem.
append přidat k souboru
Další příkazy
debug Zapíná zobrazování obsahu protokolu FTP mezi klientem a serverem. Implicitně – Off.
verbose Zapíná zobrazování všech zpráv klienta. Implicitně – On.
help Seznam příkazů klienta
remotehelp Seznam příkazů, které je možné zadat serveru
bell Zvuková signalizace dokončení příkazu
hash Při přenosu souboru vypisuje znaky # za každý přenesený blok (blok je 1024 nebo 2048 bytů)
trace Výpis přenášených paketů
disconnect Obdoba close
!příkaz Spuštění lokálního příkazu OS na lokálním počítači (např. !dir)

Některé příkazy posílané klientem na server:

Příkaz pro server Příkaz pro klienta Příkaz pro server Příkaz pro klienta
USER   LIST dir
PASS   STOR put
TYPE binary/asccii RETR get
PORT   XPWD pwd
XMKD mkdir APPE append
XRMD rmdir HELP remotehelp
DELE delete QUIT close/bye