Ovo je stara izmjena dokumenta!
How do you write an abstract? Identify your purpose. You're writing about a correlation between lack of lunches in schools and poor grades. … Explain the problem at hand. Abstracts state the “problem” behind your work. … Explain your methods. … (Source) Save your work regularly!!! Describe your results (informative abstract only). … Abstract should be no longer that 400 words. Napomena: sadržaj na vrhu stranice generira se automatski na temelju naslova u dokumentu.
Ključne riječi: File Transfer Protocol; datoteke; klijent-poslužitelj arhitektura;
File Transfer Protocol (FTP) je komunikacijski protokol aplikacijskog sloja čija je osnovna namjena prijenos datoteka između poslužitelja i klijenta. Temelji se na arhitekturi klijent-poslužitelj, te za prijenos podataka uspostavlja dvije konekcije – jednu za kontrolu i jednu za prijenos podataka.
FTP je nastao 1971. godine, a originalnu specifikaciju napisao Indijski informatičar Abhay Bhushan. Ta specifikacija poznata je kao RFC 114 i izdana je 16. travnja 1971. Prve klijentske aplikacije za FTP bile su programi pokretani iz komandne linije zbog toga što tada operacijski sustavi još nisu imali grafičko sučelje. Međutim, od tada se FTP razvio u protokol koji se koristi na različitim tipovima uređaja – osobnim računalima, poslužiteljima, mobilnim uređajima i raznoraznom drugom hardveru itd.
Od siječnja 2021. godine Google Chrome 88 i Firefox 88.0 prestali su podržavati FTP, a od srpnja 2021. godine Firefox 90 je u potpunosti ukinuo podršku za FTP. U listopadu 2021 Google Chrome 95 učinio je istu stvar.
FTP je protokol aplikacijskog sloja koji se na transportnom sloju oslanja na protokol TCP, a na mrežnom sloju na protokol IP. Protokol FTP podržava dva načina rada – aktivni i pasivni. Komunikaciju uvijek započinje klijent sa slučajno odabranih mrežnih vrata (engl. port) na svojoj strani, dok se na poslužitelju koristi port 21. Ovaj port koristi se za kontrolu komunikacije i prijenosa podataka. Nakon što poslužitelj prihvati zahtjev za komunikacijom, klijent otvara port za primanje podataka na svojoj strani. Poslužitelj tada s porta 20 počinje slati tražene podatke klijentu. Dakle, na poslužiteljskoj strani port 20 koristi se za kontrolne informacije i uspostavu sjednice, a port 21 za slanje podataka. Na klijentskoj strani se u oba slučaja koristi slučajno odabrani port.
U aktivnom načinu rada protokol se ponaša kako je prethodno opisano. Međutim, u pasivnom načinu rada protokol FTP ponaša se malo drugačije. Za početak, pasivni način koristi se u situacijama kada se klijent nalazi iza vatrozida, te zbog toga ne može uspostavljati dolazeće TCP konekcije. Poslužitelj saznaje da se klijent nalazi iza vatrozida tako što ga klijent preko kontrolne veze obavještava o tome porukom PASV. U slučaju primitka ove poruke, poslužitelj šalje klijentu IP adresu i port koji klijent onda koristi za uspostavljanje podatkovne veze. Razlika između aktivnog i pasivnog načina rada protokola FTP ilustrirana je na slici 1. FTP koristi dva porta zato što je originalno razvijen za rad s protokolom NCP (Network Control Protocol) koji je simplex protokol. To znači da je komunikacija jednosmjerna, te su za dvosmjernu komunikaciju tada potrebne dvije veze, a time i dva porta. Pojavom protokola TCP i UDP omogućeno je korištenje istog porta za dvosmjernu komunikaciju, međutim FTP nikad nije prilagođen za takav način rada. FTP izvorno radi s protokolom IPv4, ali je pojavom IPv6 prilagođen za rad s novom verzijom IP protokola. Najviše promjena tada je doživio pasivni način rada protokola FTP, te se od tada naziva proširenim pasivnim načinom rada.
Slično kao protokol HTTP, FTP koristi statusne kodove kao odgovore na zahtjeve klijenata. Prva znamenka definira ishod zahtjeva koji može biti uspjeh, pogreška ili nepotpuni odgovor, te greška. Druga znamenka definira vrstu greške, a treća daje dodatne informacije o grešci ovisno o tome kojoj kategoriji pripada (kategoriju definira druga znamenka). Detaljnije informacije o statusnim kodovima:
FTP statusni kodovi – značenje prve znamenke
FTP statusni kodovi – značenje druge znamenke u slučaju greške:
Obzirom da je FTP izvorno namijenjen za korištenje iz komandne linije, za korištenje funkcionalnosti protokola stvorene su različite naredbe. Neke od češćih naredbi su:
Puna lista naredbi nalazi se u popisu literature na kraju dokumenta.