Tiedostonsiirtoprotokolla -asiakas on tietokoneohjelmistosovellus, jota käytetään datapalvelimen käyttämiseen tiedostonsiirtoprotokollalla (FTP). Tämän yhteisen protokollan avulla asiakas voi siirtää tietoja palvelimelle ja palvelimelta. Asiakassovellus tarjoaa keinot muodostaa yhteys ja antaa sitten sopivat FTP -komennot palvelimelle. Sitä on monessa muodossa, jota käytetään komentoriviliittymän (CLI), graafisen käyttöliittymän (GUI) ja jopa tavallisen selaimen kautta.
FTP on osa Internet -protokolla (IP) -sarjan ylempää sovelluskerrosta, ja tiedonsiirtoon käytetään lähetyksen ohjausprotokollaa (TCP). Tiedostonsiirtoprotokolla -asiakas on siis vastuussa yhteyden muodostamisesta palvelimeen avaamalla lopulta kaksi TCP -yhteyttä. Ensimmäinen on ohjausyhteys, jossa asiakas lähettää komentoja FTP -palvelimelle. Ensimmäiset ohjausyhteyden kautta lähetetyt komennot ovat USER -komento, jossa käyttäjän nimi on argumentti, ja sitten PASS -komento ja salasana. Kun yhteys on muodostettu, ohjausyhteys pysyy auki koko istunnon ajan.
Tässä tiedostonsiirtoprotokolla -asiakas määrittää eri viestintämoodit, joita sillä on palvelimen kanssa. Tyypillisesti tiedot esitetään kahdella tavalla, tekstinä tai binäärinä, riippuen lähetetyistä tai vastaanotetuista tiedoista. Tekstityyppisiä siirtoja käytetään useimmiten tavallisiin tekstitiedostoihin, jotka on koodattu joko American Standard Code for Information Interchange (ASCII) -koodausmenetelmällä. Binaaritila, jota kutsutaan myös kuvatilaksi, on tarkoitettu tiedostojen, kuten digitaalisten kuvien, siirtämiseen muussa kuin tekstimuodossa. Toinen, nimeltään paikallinen tila, on toinen tapa, jolla FTP voi siirtää tietoja käyttämällä ainutlaatuista tai omaa muotoa.
Tiedonsiirtoprotokolla -asiakkaan toinen TCP -kanava on datayhteys. Tämä yhteys on luonteeltaan väliaikainen ja luodaan vain, kun asiakas pyytää luetteloa palvelimen tiedostoista tai siirtää tiedostoa palvelimelle tai palvelimelta. Tietoyhteys tuhoutuu, kun tiedonsiirtoa ei tapahdu. Datayhteys on ainutlaatuinen myös sen muodostamisessa, joko aktiivisesti passiivisesti. Asiakkaan on kerrottava palvelimelle käytettävän datayhteyden tyyppi sen mukaan, minkä tyyppinen yhteys asiakkaalla on käytettävissä.
Kun datayhteys on aktiivinen, tiedostonsiirtoprotokolla -asiakas kertoo palvelimelle, mitä TCP -portin numeroa tietoyhteydessä käytetään. Kun sitä käytetään passiivisessa tilassa, asiakas kuitenkin vain kertoo palvelimelle, että se on passiivinen, ja palvelin ilmoittaa sitten asiakkaalle, mitä TCP -porttia tietoyhteyteen käytetään. Useimmissa tapauksissa asiakas on määritetty passiiviselle yhteydelle, koska se käyttää palomuureja, jotka suojaavat sitä luvattomalta käytöltä.
Yleisen FTP -suojauksen puutteen vuoksi tiedostonsiirtoprotokolla -asiakkaan turvallisuus on olennainen osa sen toimintaa, jotta käyttäjän toiminta on turvassa uteliailta katseilta. Vuosien mittaan on kehitetty useita muita suojaustekniikoita käytettäväksi FTP: n kanssa, kuten asiakas joko nimenomaisesti nimeää käytettävä suojausprotokolla tai se on automaattisesti oletettu. Muut asiakkaat yrittävät käyttää FTP: tä suojatun kuoren (SSH) tunnelin kautta, mikä saattaa aiheuttaa ongelmia tietoyhteyden ohimenevän luonteen vuoksi.