Pengertian
Client server Adalah sebuah model komputerisasi dimana sebuah aplikasi client dijalankan di komputer desktop atau komputer pribadi yang mengakses informasi pada server atau host yang terletak di lain tempat. Bagian dari aplikasi yang dijalankan di client biasanya digunakan untuk mengoptimalkan interaksi dengan user, dimana server menyediakan proses tersentralisasi dan bekerja secara multiuser.
Server adalah komputer yang dapat memberikan service ke server, sedangkan client adalah komputer yang mengakses beberapa service yang ada di client. Ketika client membutuhkan suatu service yang ada di server, dia akan mengirim request kepada server lewat jaringan. Jika request tersebut dapat dilaksanakan, maka server akan mengirim balasan berupa service yang dibutuhkan untuk saling berhubungan menggunakan Socket.
- Karakteristik Server
- Pasif
- Menunggu request
- Menerima request, memproses mereka dan mengirimkan balasan berupa service
- Karakteristik Client
· Aktif
· Mengirim request
· Menunggu dan menerima balasan dari server
Socket adalah sebuah endpoint untuk komunikasi didalam jaringan. Sepasang proses atau thread berkomunikasi dengan membangun sepasang socket, yang masing-masing proses memilikinya. Socket dibuat dengan menyambungkan dua buah alamat IP melalui port tertentu. Secara umum socket digunakan dalam client/server system, dimana sebuah server akan menunggu client pada port tertentu. Begitu ada client yang menghubungi server maka server akan menyetujui komunikasi dengan client melalui socket yang dibangun.
Sebagai contoh sebuah program web browser pada host x (IP 146.86.5.4) ingin berkomunikasi dengan web server (IP 152.118.25.15) yang sedang menunggu pada port 80. Host x akan menunjuk sebuah port. Dalam hal ini port yang digunakan ialah port 1655. Sehingga terjadi sebuah hubungan dengan sepasang socket (146.86.5.4:1655) dengan (152.118.25.15:80).
Model Client - Server
Client - Server model adalah bentuk distributed computing dimana sebuah program (client) berkomunikasi dengan program lain (server) dengan tujuan untuk bertukar informasi. Pada umumnya sebuah client memiliki tugas sebagai berikut (Morgan, 2004):
1. Menyediakan user interface.
2. Menterjemahkan permintaan user ke dalam bentuk protokol yang sesuai.
3. Mengirimkan permintaan user ke server.
4. Menunggu respon dari server.
5. Menterjemahkan respon tersebut ke dalam format yang dapat dibaca.
6. Menyajikan hasil format tersebut ke user.
Kata client juga sering disebut dengan kata host yang menandakan bahwa device tersebut tersambung dalam sebuah jaringan. Sedangkan sebuah server memiliki tanggung jawab sebagai berikut:
1. Mendengarkan permintaan dari client.
2. Memproses permintaan tersebut.
3. Mengembalikan hasil proses tersebut ke client.
Dalam praktek sehari-harinya terdapat berbagai macam server yang ada dalam jaringan. Setiap server tersebut memiliki fungsi khusus sesuai dengan tujuan pembuatan server tersebut. Beberapa contoh server berikut kegunaannya:
· Proxy Server
Proxy server umumnya berfungsi sebagai gerbang (gateway) dari sebuah LAN menuju ke jaringan yang lebih besar. Umumnya proxy server memiliki fitur cache engine, yaitu tempat penampungan sementara (cache/buffer) halaman web atau isi sebuah situs untuk mempercepat akses koneksi, dan fitur firewall, yang berfungsi untuk mengamankan sebuah jaringan dari akses yang tidak berhak.
· Mail Server
Mail server berfungsi sebagai tempat konsentrasi email, layaknya sebuah kantor pos, yang berfungsi untuk menampung sementara, mengolah dan memproses email tersebut agar dapat dikirimkan sampai ke tempat tujuannya.
· Web Server
Web server berfungsi untuk menyediakan layanan web berupa situs kepada user. Web server menggunakan user interface berupa web browser untuk dapat berkomunikasi dengan user dalam jaringan.
· Database Server
Database server adalah sebuah server yang didedikasikan khusus untuk menampung data-data dalam jumlah besar yang disimpan menggunakan perangkat lunak khusus. Database server memiliki tugas utama untuk melayani permintaan data dari user.
· Application Server
Application server adalah sebuah server yang didedikasikan khusus untuk menjalankan aplikasi. Aplikasi server ditujukan untuk melayani komputer client dalam jumlah yang besar. Penggunaan Aplikasi server ditujukan untuk tidak memberatkan komputer client.
· VPN Server.
VPN server adalah sebuah server yang didedikasikan khusus untuk melayani perlindungan jaringan publik ( biasanya internet ) menjadi jaringan private.
Keuntungan VPN adalah :
a) Meningkatkan secutity.
b) Memberikan konektivitas geografis yang luas.
c) Mereduksi biaya operational
d) Mereduksi waktu transit dan biaya transportasi untuk user-user remote.
e) Meningkatkan produktifitas
f) Menyederhanakan topologi jaringan
g) Memberikan peluang-peluang networking global
h) Meberikan dukungan atas telecommuter
i) Memberikan kompatibilitas networking broadband.
Guna menjamin keamana konesi dan data, VPN server juga memperkerjakan beberapa metode security sebagai berikut :
a) Firewall
Memberikan restriksi yang kuat antara jaringan privat perusahaan dengan jaringan publik seperti memeriksa paket-paket mana yang arus diteruskan dan protokol-protokol mana yang diizinkan.
b) Enkripsi
Enkripsi tidak lain proses penyandian data yang diambil dari satu komputer ke komputer lain. Data disandikan ke bentuk tertentu yang tidak muda dibaca dan hanya penerima yang sah yang dapat membacanya.
c) IPSec
Internet Protocol Security Protocol (IPSec) memberikan kapabiliti sekuriti yang lebih jauh melalui algoritma-algoritma enkripsi dan authentication. IPSec memiliki dua mode enkripsi yaitu tunnel yang bekerja mengenkripsi header dan payload yang dimiliki setiap paket data dan transport yang hanya menenkripsi payload-nya saja.
d) Authentication, Authorization dan Accounting.
Authentication, Authorization dan Accounting dapat memberikan rasa aman dikarenakan AAA akan melakukan pengujian Authentication (siapa anda), Authorization (apa yang boleh anda lakukan) dan Accounting (apa yangsebenarnya anda lakukan).
