FTP ક્લાયન્ટ ત્રણ ઘટકો ધરાવે છે: વપરાશકર્તા ઇન્ટરફેસ, ક્લાયન્ટ નિયંત્રણ કાર્યવાહી, ક્લાયન્ટ ડેટા સ્થાનાંતર પ્રક્રિયા. જયારે સર્વર બે ઘટકો ધરાવે છે : સર્વર નિયંત્રણ કાર્યવાહી, સર્વર ડેટા સ્થાનાંતર પ્રક્રિયા. નિયંત્રણ કાર્યવાહીઓ વચ્ચે નિયંત્રણ જોડાણ બને છે. ડેટા સ્થાનાંતર પ્રક્રિયાઓ વચ્ચે ડેટા જોડાણ બને છે. 

નિયંત્રણ જોડાણ સમગ્ર અરસપરસ FTP સત્ર દરમિયાન જોડાયેલ રહે છે. ડેટા જોડાણ દરેક ફાઈલના સ્થાનાંતર અનુસાર ખુલે અને બંધ થાય છે. જયારે વપરાશકર્તા જયરે FTP સત્ર ચાલુ કરે ત્યારે નિયંત્રણ જોડાણ ચાલુ થાય છે. જ્યારે નિયંત્રણ જોડાણ ખુલ્લું હોય ત્યારે ડેટા જોડાણ દરેક ફાઈલ મોકલતી વખતે એક થી વધારે વાર ખુલે છે અને બંધ થાય છે. 
જયારે ક્લાયન્ટ સર્વર જોડે જોડાણની વિનંતી મોકલે છે ત્યારે, સર્વર નિયંત્રણ જોડાણ મારફતે ત્રિ-અંકીય સ્થિતિ કોડથી પ્રતિક્રિયા આપે છે. દા.ત. “૨૦૦” (કે “૨૦૦ OK”) એટલેકે, પાછલો આદેશ સફળ થયો છે. આ સંખ્યાઓ (200) પ્રતિક્રિયા માટે કોડ અને વૈકલ્પિક ટેકસ્ટ (“OK”) માનવ માટે વાંચનીય સમજુતી કે વિનંતી દર્શાવે છે. ડેટા જોડાણ પર સ્થાનાંતર થઇ રહેલા ડેટાને વચ્ચેથી અટકવવા નિયંત્રણ જોડાણ પરથી અવરોધ આદેશ મોકલી શકાય છે. 

FTP તેના ડેટાના જોડાણના આધારે સક્રિય કે પરોક્ષ સ્થિતિમાં ચાલવી શકાય છે. જોડાણની સક્રિય સ્થિતિમાં ક્લાયન્ટ સર્વર સુધી TCP નિયંત્રણ જોડાણ બનાવે છે અને સર્વર એ ક્લાયન્ટનું IP એડ્રેસ મોકલે છે તથા એક ઇચ્છાધીન ક્લાયન્ટ પોર્ટ નંબર આપે છે અને સર્વર તરફથી આ TCP જોડાણ પર આ ક્લાયન્ટના IP એડ્રેસ અને પોર્ટ નંબર ડેટા પરિવહનની રાહ જુએ છે.

જો ક્લાયન્ટ ફાયરવોલથી સુરક્ષિત હોય અને પોતાની તરફ આવતા જોડાણોને સ્વીકારી ના શકતું હોય તેવી સ્થિતિમાં તે પરોક્ષ (Passive) રીતે જોડાણ શક્ય બનાવે છે. આ પરોક્ષ સ્થિતિમાં ક્લાયન્ટ PASV આદેશનો ઉપયોગ કરી સર્વર સાથે નિયંત્રણ જોડાણ બનાવે છે અને તે(ક્લાયન્ટ) સર્વરના IP એડ્રેસ અને સર્વર પોર્ટ નંબર સર્વર પાસેથી મેળવે છે. જેના આધીન ક્લાયન્ટ સર્વરને પોતાનો ઇચ્છાધીન પોર્ટ નંબર મોકલી આપે છે. ૧૯૯૮ માં આ બંને (સક્રિય / પરોક્ષ) સ્થિતિઓને IPv6 ને સમર્થન આપવા સુધારવામાં આવી હતી. તે સમયે વધુ ફેરફારો પરોક્ષ મોડમાં તેને વિસ્તૃત કરવા કરાયા હતા. 

નેટવર્ક પર ડેટા ટ્રાન્સફર કરતી વખતે ચાર ડેટા પરિવહનો નો ઉપયોગ થાય છે. 


ડેટા સ્થાનાંતર ત્રણ રીતમાંથી કોઈ એક રીતે થાય છે. 


સિન્ટેક્ષ
FTPS
સંચાર અને માહિતી સ્થાનાંતર
SSH પર FTP (SFTP નહિ)