Jaringan Komputer | File Transfer Protocol (FTP)

Jaringan Komputer | File Transfer Protocol (FTP)

File Transfer Protocol (FTP) adalah protokol lapisan aplikasi yang memindahkan file antara sistem file lokal dan jarak jauh. Ini berjalan di atas TCP, seperti HTTP. Untuk mentransfer file, 2 koneksi TCP digunakan oleh FTP secara paralel: kontrol koneksi dan koneksi data.
Apa itu koneksi kontrol? 
Untuk mengirim informasi kontrol seperti identifikasi pengguna, kata sandi, perintah untuk mengubah direktori jarak jauh, perintah untuk mengambil dan menyimpan file dll., FTP memanfaatkan koneksi kontrol. Koneksi kontrol dimulai pada nomor port 21.
Apa itu koneksi data? 
Untuk mengirim file yang sebenarnya, FTP memanfaatkan koneksi data. Koneksi data dimulai pada nomor port 20. 
FTP mengirimkan informasi kontrol out-of-band karena menggunakan koneksi kontrol terpisah. Beberapa protokol mengirim baris header permintaan dan respons dan data dalam koneksi TCP yang sama. Untuk alasan ini, mereka dikatakan mengirim informasi kontrol mereka di-band. HTTP dan SMTP adalah contohnya.


Sesi FTP:
Ketika sesi FTP dimulai antara klien dan server, klien memulai koneksi TCP kontrol dengan sisi server. Klien mengirimkan informasi kontrol atas ini. Ketika server menerima ini, itu memulai koneksi data ke sisi klien. Hanya satu file yang dapat dikirim melalui satu koneksi data. Tetapi koneksi kontrol tetap aktif selama sesi pengguna. Seperti yang kita ketahui, HTTP adalah stateless, artinya HTTP tidak harus melacak status pengguna apa pun. Tetapi FTP perlu mempertahankan status tentang penggunanya selama sesi berlangsung.
Struktur Data: FTP memungkinkan tiga jenis struktur data:
  1. Struktur File - Dalam struktur file tidak ada struktur internal dan file dianggap sebagai urutan berkelanjutan dari byte data.
  2. Struktur Catatan - Dalam struktur catatan file terdiri dari catatan berurutan.
  3. Struktur Halaman - Dalam struktur halaman file terdiri dari halaman yang diindeks independen.
Perintah FTP - Beberapa perintah FTP adalah:
USER - Perintah ini mengirimkan identifikasi pengguna ke server. 
LULUS - Perintah ini mengirimkan kata sandi pengguna ke server. 
CWD - Perintah ini memungkinkan pengguna untuk bekerja dengan direktori atau dataset yang berbeda untuk penyimpanan atau pengambilan file tanpa mengubah login atau informasi akuntingnya. 
RMD - Perintah ini menyebabkan direktori yang ditentukan dalam path-name dihapus sebagai direktori. 
MKD - Perintah ini menyebabkan direktori yang ditentukan dalam nama path dibuat sebagai direktori. 
PWD - Perintah ini menyebabkan nama direktori kerja saat ini dikembalikan dalam balasan. 
RETR- Perintah ini menyebabkan host jarak jauh memulai koneksi data dan mengirim file yang diminta melalui koneksi data. 
STOR - Perintah ini menyebabkan untuk menyimpan file ke direktori saat ini dari host jarak jauh. 
LIST - Mengirim permintaan untuk menampilkan daftar semua file yang ada di direktori. 
ABOR - Perintah ini memberi tahu server untuk membatalkan perintah layanan FTP sebelumnya dan setiap transfer data terkait. 
QUIT - Perintah ini mengakhiri USER dan jika transfer file tidak sedang berlangsung, server menutup koneksi kontrol.
Balasan FTP - Beberapa balasan FTP adalah:
200 Perintah oke. 
530 Tidak masuk. 
331 Nama pengguna baik-baik saja, perlu kata sandi. 
225 Koneksi data terbuka; tidak ada transfer yang sedang berlangsung. 
221 Koneksi kontrol penutupan layanan. 
551 Tindakan yang diminta dibatalkan: jenis halaman tidak diketahui. 
502 Perintah tidak diimplementasikan. 
503 urutan perintah yang salah. 
504 Perintah tidak diterapkan untuk parameter itu.
Anonymous FTP:
Anonymous FTP diaktifkan di beberapa situs yang file-nya tersedia untuk akses publik. Seorang pengguna dapat mengakses file-file ini tanpa memiliki nama pengguna atau kata sandi. Alih-alih, nama pengguna ditetapkan ke anonim dan kata sandi untuk tamu secara default. Di sini, akses pengguna sangat terbatas. Sebagai contoh, pengguna dapat diizinkan untuk menyalin file tetapi tidak untuk menavigasi direktori.
Referensi: https://en.wikipedia.org/wiki/File_Transfer_Protocol
Artikel ini disumbangkan oleh Achiv Chauhan . Jika Anda menyukai GeeksforGeeks dan ingin berkontribusi, Anda juga dapat menulis artikel menggunakan berkontribusi.geeksforgeeks.org atau mengirim artikel Anda ke berkontribusi@geeksforgeeks.org. Lihat artikel Anda yang muncul di halaman utama GeeksforGeeks dan bantu Geeks lainnya.
Silakan tulis komentar jika Anda menemukan sesuatu yang salah, atau Anda ingin berbagi informasi lebih lanjut tentang topik yang dibahas di atas.


Posting Komentar