Protokół transferu plików FTP

speed testy
speed testy

Protokół transferu plików, FTP (od ang. File Transfer Protocol) – protokół komunikacyjny typu klient-serwer wykorzystujący protokół sterowania transmisją (TCP) według modelu TCP/IP (krótko: połączenie TCP), umożliwiający dwukierunkowy transfer plików w układzie serwer FTP–klient FTP.

FTP jest zdefiniowany przez IETF w dokumencie RFC 959 ↓.

FTP jest protokołem 8-bitowym i dlatego nie wymaga kodowania danych do 7 bitów, tak jak w przypadku poczty elektronicznej.

Do komunikacji wykorzystywane są dwa połączenia TCP. Jedno z nich jest połączeniem kontrolnym, za pomocą którego przesyłane są polecenia, a drugie służy do transmisji danych. Połączenie za pomocą protokołu FTP (krótko: połączenie FTP) może działać w dwóch trybach: aktywnym i pasywnym:

jeżeli połączenie FTP działa w trybie aktywnym, używa portu 21 dla poleceń (zestawiane przez klienta) i portu 20 do przesyłu danych (zestawiane przez serwer)
jeżeli połączenie FTP pracuje w trybie pasywnym, używa portu 21 dla poleceń i portu o numerze powyżej 1024 do transmisji danych (obydwa połączenia zestawiane są przez klienta).

W sieciach chronionych zaporą sieciową komunikacja z serwerami FTP wymaga zwolnienia odpowiednich portów na tej zaporze lub routerze. Możliwe jest zainstalowanie wielu serwerów FTP na jednym routerze. Warunkiem jest rozdzielenie portów przez router dla każdego serwera.

Serwer FTP, zależnie od konfiguracji, może pozwalać na anonimowy, czyli bez podawania hasła uwierzytelniającego, dostęp do jego zasobów. Najczęściej jednak serwer FTP autoryzuje każde połączenie za pomocą loginu i hasła.

Protokół transferu plików, FTP (od ang. File Transfer Protocol) – protokół komunikacyjny typu klient-serwer wykorzystujący protokół sterowania transmisją (TCP) według modelu TCP/IP (krótko: połączenie TCP), umożliwiający dwukierunkowy transfer plików w układzie serwer FTP–klient FTP.

FTP jest zdefiniowany przez IETF w dokumencie RFC 959 ↓.

FTP jest protokołem 8-bitowym i dlatego nie wymaga kodowania danych do 7 bitów, tak jak w przypadku poczty elektronicznej.

Do komunikacji wykorzystywane są dwa połączenia TCP. Jedno z nich jest połączeniem kontrolnym, za pomocą którego przesyłane są polecenia, a drugie służy do transmisji danych. Połączenie za pomocą protokołu FTP (krótko: połączenie FTP) może działać w dwóch trybach: aktywnym i pasywnym:

jeżeli połączenie FTP działa w trybie aktywnym, używa portu 21 dla poleceń (zestawiane przez klienta) i portu 20 do przesyłu danych (zestawiane przez serwer)
jeżeli połączenie FTP pracuje w trybie pasywnym, używa portu 21 dla poleceń i portu o numerze powyżej 1024 do transmisji danych (obydwa połączenia zestawiane są przez klienta).

W sieciach chronionych zaporą sieciową komunikacja z serwerami FTP wymaga zwolnienia odpowiednich portów na tej zaporze lub routerze. Możliwe jest zainstalowanie wielu serwerów FTP na jednym routerze. Warunkiem jest rozdzielenie portów przez router dla każdego serwera.

Serwer FTP, zależnie od konfiguracji, może pozwalać na anonimowy, czyli bez podawania hasła uwierzytelniającego, dostęp do jego zasobów. Najczęściej jednak serwer FTP autoryzuje każde połączenie za pomocą loginu i hasła.

GNU Wget – program służący do pobierania plików z Internetu za pośrednictwem protokołów HTTP, HTTPS i FTP. Jego cechą wyróżniającą jest stosunek możliwości do niewielkich rozmiarów.

GNU Wget zaliczany jest do kategorii narzędziowych programów sieciowych. Należy do wolnego oprogramowania. Każdy może go używać, rozpowszechniać je lub zmieniać na warunkach określonych w Powszechnej Licencji Publicznej GNU (GNU General Public License), opublikowanej przez Free Software Foundation[styl do poprawy].

Program jest instalowany domyślnie w większości dystrybucji systemu GNU/Linux. Istnieje też wersja Wget dla Microsoft Windows.
Spis treści

1 Możliwości
2 Wget2
3 Nakładki graficzne
4 Linki zewnętrzne
5 Przypisy

Możliwości

Program ma wiele funkcji ułatwiających pobieranie plików. Oto niektóre z nich:

potrafi zagłębiać się rekurencyjnie w strukturę dokumentów HTML i drzew katalogowych FTP, tworząc lokalną kopię struktur katalogów podobną do istniejącej na zdalnym serwerze. Cechę tę można wykorzystać przy tworzeniu kopii lustrzanych (mirror) archiwów i stron głównych lub przy przeglądaniu sieci w poszukiwaniu danych, podobnie jak czynią to roboty WWW. Program Wget rozpoznaje polecenia zawarte w plikach robots.txt
przy pobieraniu plików przez FTP dostępne jest posługiwanie się maskami nazw plików i tworzenie rekurencyjnych kopii lustrzanych. Wget umie odczytać znaczniki czasowe plików podawane przez serwery HTTP i FTP i lokalnie je zapisać. Potrafi zauważyć, że zdalny plik zmienił się od czasu ostatniego pobrania i automatycznie pobrać nową wersję. Dzięki temu Wget nadaje się do tworzenia kopii lustrzanych zarówno ośrodków FTP, jak i stron głównych.
działa szczególnie dobrze z powolnymi bądź niestabilnymi połączeniami, ponawiając pobieranie dokumentu aż do pełnego ściągnięcia lub przekroczenia zadanej przez użytkownika liczby prób. Próbuje wznawiać pobieranie od miejsca przerwania, stosując komendę REST przy FTP i Range przy HTTP, na serwerach, które je obsługują.
potrafi korzystać z serwerów proxy, co może odciążyć sieć, przyspieszyć pobieranie i umożliwić dostęp poza zapory sieciowe (firewalle). Jeśli jednak znajdujemy się za zaporą ogniową, która wymaga stosowania bramki typu SOCKS, można skompilować Wget z biblioteką SOCKS. Wget obsługuje też, jako opcję, bierne pobieranie FTP (passive downloading)
wbudowane funkcje oferują mechanizm precyzyjnego wyboru odnośników
pobieranie można wygodnie obserwować na ekranie dzięki wypisywanym kropkom, z których każda reprezentuje ustaloną ilość otrzymanych danych (domyślnie 1KB). Oznakowanie to można dostosować do własnych upodobań
większość funkcji jest w pełni konfigurowalna, albo za pośrednictwem opcji wiersza poleceń, albo poprzez plik inicjujący .wgetrc. Wget umożliwia definiowanie ogólnosystemowych, globalnych plików startowych (domyślnie /usr/local/etc/wgetrc) zawierających ustawienia dla całego serwera
Wget może przedstawić się jako przeglądarka (opcja -U, np. wget -U "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003")

Wget2

Następna ważna aktualizacja Wget powinna nastąpić w wget2[1][2]. Wget2 ma znaczną liczbę ulepszeń w stosunku do Wget, przede wszystkim w zakresie wydajności:

HTTP/2;
Kompresja HTTP;
połączenia równoległe;
TCP Fast Open;

i wiele innych.

Głównym twórcą wget2 jest Tim Rühsen (Tim Rühsen), który jest również jednym z głównych programistów i obecnych opiekunów Wget.

źródlo: wikipedia.pl