FTP (File Transfer
Protocol) adalah suatu protokol yang berfungsi untuk pertukaran file dalam
suatu jaringan komputer yang mendukung protokol TCP/IP. Dua hal pokok pada FTP
yaitu FTP Server dan FTP Client. FTP juga bisa dikatakan sebuah protokol
Internet yang berjalan di dalam lapisan aplikasi yang merupakan standar untuk
pentransferan berkas (file) komputer antar mesin-mesin dalam sebuah framework.
FTP merupakan salah satu protokol
Internet yang paling awal dikembangkan, dan masih digunakan hingga saat ini
untuk melakukan pengunduhan (download) dan pengngunggahan (upload)
berkas-berkas komputer antara FTP Client dan FTP Server. Sebuah Client FTP
merupakan aplikasi yang dapat mengeluarkan perintah-perintah FTP ke sebuah
Server FTP, sementara Server FTP adalah sebuah Windows Service atau daemon yang
berjalan di atas sebuah komputer yang merespons perintah-perintah dari sebuah
Client FTP. Perintah-perintah FTP dapat digunakan untuk mengubah direktori,
mengubah modus transfer antara biner dan ASCII, menggugah berkas komputer ke
Server FTP, serta mengunduh berkas dari Server FTP.
Koneksi
control pada FTP dan koneksi data
Salah satu konsep dalam memahami FTP
adalah bahwa seperti kebanyakan protokol lain yang menggunakan protokol
transport TCP, FTP tidak hanya menggunakan satu koneksi TCP melainkan
menggunakan dua koneksi.
Model
FTP dirancang memerlukan dua kanal logik komunikasi antara proses server dan
klien FTP:
·
Control koneksi, Ini merupakan koneksi
logikal TCP yang dibuat ketika sebuah sesi FTP diadakan. Koneksi logikal
TCP ini memelihara throughput selama sesi FTP dan digunakan hanya untuk melakukan
pertukaran informasi control, seperti perintah FTP dan jawabannya.
·
Koneksi data, Setiap saat ketika data
dikirimkan dari server ke klien atau sebaliknya, sebuah koneksi data TCP nyata
dibangun di antara server dan client. Data kemudian dikirimkan melalui koneksi
data tersebut. Saat pengiriman file selesai, koneksi data ini
dihentikan.
Alasan untuk menggunakan kanal-kanal
yang berbeda ini adalah agar didapatkan keleluasaan bagaimana protokol
FTP ini digunakan.
·
Karena fungsi kontrol dan data dikomunikasikan
melalui kanal yang berbeda, model FTP membagi perangkat lunak pada tiap
peralatan menjadi dua komponen logikal protokol yang bertugas untuk
masing-masing kanal.
·
Protocol interpreter (PI) adalah bagian
dari perangkat lunak yang mengatur koneksi berkaitan dengan pengiriman dan
penerimaan perintah berikut jawabannya. Data transfer process (DTP) bertanggung
jawab terhadap pengiriman dan penerimaan data antara klien dan server.
Sebagai
tambahan pada dua elemen di atas, pada proses FTP user ditambahkan komponen
ketiga yakni antar muka user untuk berinteraksi dengan user FTP sebagai
manusia, ia tidak ditambahkan pada sisi server. Sehingga terdapat dua
komponen proses FTP server dan tiga komponen proses FTP user pada keseluruhan
proses FTP. Untuk lebih jelas perhatikan gambar dibawah ini, beserta penjelasan
fungsi masing-masing elemen berikut ini.
Terminologi
dan komponen-komponen proses FTP
Komponen-komponen
proses FTP pada server
Pada
proses FTP server terdiri dari dua elemen protokol yaitu:
·
Server Protocol Interpreter (Server-PI)
adalah Juru bahasa/penghubung protocol yang bertanggung jawab untuk mengatur
control koneksi pada server. Ia mendengarkan pada port khusus untuk FTP (port
21) untuk permintaan sambungan FTP yang masuk dari user (klien). Saat sebuah
sambungan terjadi, ia menerima perintah dari User-PI, mengirim jawaban kembali
dan mengelola proses transfer data server.
·
Server Data Transfer Process
(Server-DTP) adalah DTP pada sisi server digunakan untuk mengirim atau menerima
data dari atau ke User-DTP (biasanya port 20). Server-DTP mungkin tidak hanya
membangun sebuah koneksi data atau mendengarkan suatu koneksi data yang dating dari
user. Ia juga berinteraksi dengan file system server local untuk menulis dan
membaca file-file.
Komponen-komponen
proses FTP pada user
Proses
FTP user terdiri dari tiga elemen protokol:
·
User Protocol Interpreter (User-PI):
Juru bahasa/penghubung protokol yang bertanggung jawab untuk mengatur kontrol
koneksi pada klien. Ia menginisiasi sesi FTP dengan mengirimkan permintaan ke
Server-PI. Saat sebuah sambungan terjadi, ia memroses perintah dari User-PI,
mengirimkannya ke Server-PI dan menerima jawaban-jawaban kembali’ Ia juga
mengelola proses transfer data user.
·
User Data Transfer Process (User-DTP):
DTP pada sisi user digunakan untuk mengirim atau menerima data dari atau ke
Server-DTP. User-DTP mungkin tidak hanya membangun sebuah koneksi data atau
mendengarkan suatu koneksi data yang dating dari server. Ia juga berinteraksi
dengan file system komponen-komponen local klien.
·
User Interface: Antar muka user
menyediakan antar muka FTP yang lebih “friendly” untuk pengguna manusia. Ia
memungkinkan penggunaan perintah fungsi FTP yang berorientasi pada pengguna
ketimbang perintah internal FTP kriptik, dan juga memungkinkan untuk
menyampaikan pada pengguna hasil dan informasi sesi FTP yang dilakukannya.
Aplikasi
Penggunaan Protokol FTP
a)
Macam-macam koneksi
Seperti
halnya sebagian besar hubungan klien-server lainnya, mesin klien membuka
koneksi ke server pada port tertentu dan server kemudian merespon klien pada
port tersebut. Ketika sebuah klien FTP terhubung ke server FTP membuka koneksi
ke port kontrol FTP 21.
Kemudian klien memberitahu server FTP
apakah akan membangun koneksi aktif atau pasif. Jenis koneksi yang dipilih oleh
klien menentukan bagaimana server merespon dan transaksi port akan terjadi.
Dua jenis koneksi data:
Koneksi
aktif FTP
Ketika sambungan aktif dijalankan, klien
dari port tinggi mengirim permintaan ke port 21 pada server. Kemudian server
membuka sambungan data ke klien dari port 20 ke range port tinggi pada mesin
klien. Semua data yang diminta dari server kemudian dilewatkan melalui koneksi
ini.
Koneksi
pasif FTP
Ketika
sambungan pasif (PASV) dijalankan, klien dari port tinggi mengirim ke port 21
pada server, klien meminta server FTP untuk membentuk koneksi port pasif,
yang dapat dilaksanakan pada port yang lebih tinggi dari 10.000. Server
kemudian mengikat ke port nomor tinggi untuk sesi khusus ini dan menyerahkan
nomor port kembali ke klien.
Klien kemudian membuka port baru yang
telah disetujui untuk koneksi data. Setiap data meminta klien untuk membuat
hasil dalam koneksi data terpisah. Kebanyakan klien FTP modern mencoba untuk
membuat sambungan pasif ketika meminta data dari server.
b)
FTP User
FTP merupakan cara paling umum untuk
melakukan proses pemindahan file-file dari sebuah FTP server ke komputer
pengguna, misalnya untuk mengunduh file dokumen, gambar, program maupun
file-file image DVD installer Linux. Juga dapat melakukan pemindahan file-file
dari komputer pengguna ke server misalnya untuk keperluan hosting web
pengguna.
Jika hanya memerlukan untuk mengunduh
file-file dari situs internet dapat pula dilakukan dengan menggunakan aplikasi
browser sebagai antar muka pengguna seperti dicontohkan pada Gambar dibawah
ini.
Aplikasi penggunaan protokol FTP di sisi
user/pengguna dilakukan dengan menggunakan antar muka pengguna FTP klien untuk
dapat memindah sejumlah file yang besar atau folder dengan lebih mudah dan
efisien. Sistem operasi yang saat ini banyak digunakan biasanya sudah
dilengkapi dengan aplikasi FTP clent yang berbasis teks. Seperti ditunjukkan
pada Gambar di bawah ini adalah aplikasi FTP clent berbasis teks command DOS
pada system operasi Windows.
Perintah
untuk memulai aplikasi FTP klien adalah dengan mengetik C:> ftp maka
prompt akan berubah menjadi ftp>jika
ingin menghubungi server 192.168.0.2
dilakukan dengan mengetikkan ftp>open
192.168.0.2.
Sebelum terjadi koneksi kita akan
diminta menuliskan username dan password, sebagai user kebanyakan maka kita
isikan username User <192.168.0.2:<none>>: anonymous kemudian Password:
plengdut@gmail.com (alamat email dan tidak terbaca waktu diketikkan).
Jika berhasil maka server akan
menjawab 230 Logged on lalu muncul prompt ftp> berarti saat
itu kita sudah terkoneksi dengan Server FTP 192.168.0.2. Selanjutnya kita bisa
melakukan aplikasi kirim terima file. Langkah memulai aplikasi FTP klien pada
DOS sama dengan yang dapat dilakukan pada terminal UNIX/Linux.
Terdapat banyak sekali aplikasi antar
muka dari pihak ketiga (3rd party software) FTP klien tidak berbayar yang dapat
diunduh dari situs-situs internet yang dapat diinstal pada system operasi
komputer. Salah satunya adalah Filezilla yang mampu berjalan di atas system operasi
Windows, Linux maupun Mac berbasis grafis dan dapat diunduh dari URL https://filezilla-project.org/download.php?type=client.
Antar muka FTP klien yang lain misalnya:
WinFTP, FireFTP, FTPExplorer, CyberDuck, CuteFTP, dan masih banyak lagi yang
gratis maupun berbayar.Pada kebanyakan aplikasi antar muka FTP klien
ditampilkan dengan bentuk grafis dan menampilkan proses koneksi data, direktori
server FTP dan direktori komputer lokal.
Pada saat akan dimulai proses koneksi
pengguna diwajibkan untuk masuk menggunakan username, untuk pengguna umum
biasanya masuk dengan anonymous, lalu harus mengisikan password, biasanya
berupa alamat email. Hal tersebut merupakan proses yang terjadi pada kanal port
21 kontrol koneksi aplikasi FTP. Setelah tersambung, baru dapat melakukan
koneksi data, yakni proses kirim terima data pada kanal port yang lain. Karena
proses kerja protokol FTP menggunakan dua kanal/port TCP.
c)
FTP server
FTP server adalah suatu server yang
menjalankan piranti lunak/software yang berfungsi untuk memberikan layanan
tukar menukar file sehingga server tersebut selalu siap memberikan layanan FTP
apabila mendapat permintaan (request) dari FTP klien. Port standar yang
digunakan oleh Server FTP adalah 21. Ketika user mencoba untuk log in, server
FTP menggunakan standar system panggilan untuk memeriksa username dan password
dengan membandingkan yang ada pada file password system.
Jika berhasil login dengan benar user
diberi akses untuk masuk ke Server FTP, maka user/klien dapat men-mengunduh,
mengunggah, mengganti nama file, menghapus file, dll sesuai dengan
ijin/permission yang diberikan oleh FTP server.
Tujuan dari FTP server adalah sebagai
berikut :
·
Untuk tujuan sharing data, menyediakan
indirect atau implicit remote computer
·
Untuk menyediakan tempat penyimpanan
bagi user
·
Untuk menyediakan transfer data yang
reliable dan efisien
Berbeda dengan antar muka FTP klien yang
telah disediakan oleh system operasi kebanyakan dewasa ini, piranti lunak
Server FTP harus diinstal dan dikonfigurasi sendiri.
Kebanyakan piranti lunak Server FTP bisa didapatkan dengan gratis, mereka biasanya dibuat khusus untuk masing-masing platform system operasi.
Kebanyakan piranti lunak Server FTP bisa didapatkan dengan gratis, mereka biasanya dibuat khusus untuk masing-masing platform system operasi.
Demikian juga platform windows, system
operasi tidak menyertakan aplikasi Server FTP di dalamnya, kita bisa
mengaplikasikan server FTP di windows server dengan menginstal melalui menu Add
Remove Program, Application Server, IIS (Internet Information Services) pada
pilihan FTP Services. Sistem windows server akan menggunakan CD/DVD installer
untuk melakukan instalasi server FTP hingga selesai dan server FTP siap untuk
digunakan. Piranti lunak aplikasi FTP server dari pihak ke-3 seperti
Filezilla Server yang berbasis grafis juga dapat dinstal dan dioperasikan pada
platform windows seperti gambar di bawah ini.
Untuk platform SO Linux/UNIX server FTP
standar / tradisional sudah disertakan di dalamnya yakni dapat dieksekusi
melalui inetd (daemon superserver internet).
0 komentar:
Posting Komentar